[Twisted-Python] Twisted and Component Architecture

Itamar Shtull-Trauring twisted at itamarst.org
Sun Apr 21 15:19:42 EDT 2002

Well, since it's been mentioned here, guess I'll step in.

First, I implemented a simplistic system because I needed adapters for 
Twisted's config system (it used to use mixin classes *shudder*), so I 
quickly wrote up something which implemented them. The fact that 
__implements__ checks the class is an implementation artifact - I can 
easily change it so it works like Zope3's.

Which brings us to the next issue - should I be using Zope3's CA? 
Apparently I can't - Twisted is intended to run on 1.5.2 upwards, and 
even we drop 1.5.2 support we will be using 2.1 as the baseline. 
Interface packages and CA package are 2.2 only.

So, this is what I think I'll do - I'll refactor the minimum 
implementation Twisted's uses, making sure that it uses the same 
semantics and syntax as Zope3's (e.g. __implements__ being a 
tuple/singelton instead of lists - why was this made inconsistent in 
Zope, anyway?). If Zope3 is importable then Zope.CA's implementation 
will be used instead.

Any issues anyone can think of in doing this?

More information about the Twisted-Python mailing list