[Zope-dev] Zope 2.8, Five and Interfaces

Martijn Faassen faassen at infrae.com
Wed May 4 06:58:51 EDT 2005


yuppie wrote:
> I had a closer look at Zope 2.8's Five and I'm concerned about the fact 
> that Five ships with redundant interface definitions:
> 
> - redundant code is always a problem because it's hard to keep things in 
> sync
> 
> - the fact that Five is maintained in a different repository and should 
> work with different Zope versions makes it almost impossible to change 
> Zope interfaces in a consistent way
> 
> So my questions are:
> 
> 1.) Why are interfaces that are available as Zope 2 interfaces 
> duplicated in Five/interfaces.py instead of bridged?

Partially I suspect this reason is historical -- the Zope 2 interfaces 
were created by Philipp von Weitershausen before Tres implemented the 
bridging functionality.

> 2.) Could we move the interfaces that are currently not available as 
> Zope 2 interfaces to the corresponding packages in Zope 2.8, using 
> Five/interfaces.py just as an fallback for Zope 2.7 and old Five products?
> 
> If people agree that this is problem, I'd volunteer to help resolving it.

It sounds like a reasonable idea, but it does introduce complications. 
This does mean we need a separate version of Five for merging into Zope 
2.8. Another potential problem is that some Five-based code is also 
likely to stop working as the interface will change location (I'm not 
sure what bridge does in this respect; does it create a new location for 
the bridged interface?). If the interfaces change location due to 
bridging, this also means Five + 2.7 code would be incompatible with 
Zope 2.8 code that makes use of Five.

I'm a bit worried about doing it now as it will take time and testing 
effort, then again, if we are to do it, it would be better to start 
moving things around before we release Zope 2.8..

Regards,

Martijn


More information about the Zope-Dev mailing list