[Buildbot-devel] writing custom sources?

Brian Warner warner-buildbot at lothar.com
Sun Jul 27 21:37:38 UTC 2003

> Really, creating an IChangeSource does not involve anything more than
> you did in this e-mail; Interfaces are largely documentation.  Just put
> a 'class IChangeSource(Interface)' in front of these methods and  add a
> __implements__ = (IChangeSource,) attribute to the FreshCVSSource class.

Ok, done. Cool.

> Interfaces are also used by Adapters and Componentized systems, but you
> don't need to know anything about those in order to define an Interface.

Is it worth doing either of the two following things in

  assert(components.implements(source, IChangeSource))


  source = IChangeSource(source)


I see the first as a sanity check, and the second as a way to allow an
Adapter to be used. But I notice that there aren' very many instances of the
second in Twisted itself.. perhaps this kind of Adaptation isn't very useful
in practice?


More information about the devel mailing list