[Zope3-dev] Re: Heads up! Major interface changes coming this weekend

Jim Fulton jim@zope.com
Sat, 03 May 2003 06:23:46 -0400


Sidnei da Silva wrote:
> Jim Fulton wrote:
> 
>>
>> This weekend, I'm going to merge a number of interface changes into the
>> Zope 3 head.  These changes are described in:
>>
>>   http://dev.zope.org/Zope3/BetterInterfaceImplements
>>
>> Note particularly the backward compatability section, Whicj I've
>> included below. The Zope 3 core will be updated and I'll check products
>> in the zopeproducts section of the repository, but other products may
>> need to be updated.
> 
> 
> What are the plans to get this included in Zope 2 (and if there are 
> plans, may I volunteer to make the changes on Zope 2 codebase?)

Funny you should ask. We (ZC) have a project in which we are using Zope 3
interfaces, schema, forms, CA, and ZCML in Zope 2.  So we are working on
making these changes work with Zope 2.

Recently, I created a Zope 2 compatability layer for Zope 3 interfaces.
In the respository in Packages3/Interfaces is an Interfaces package that
can be used in Zope 2 that delegates to the Zope 3 interface package
so that Zope 3 interfaces are used rather than Zope 2 interfaces. This
has worked fine for the project we are doing.

One issue with using the new interface changes with Zope 2 is that the
changes rely on descriptors and ExtensionClass doesn't support descriptors.
I don't use descriptors when old-style declarations are used. So the interface
updates will work for ExtensionClass if old-style declarations are used.
I will investigate whether some new style declarations can be made to work
with ExtensionClass.

It is my hope, by the end of the summer, to provide a new implementation of
ExtensionClass based on new style classes that supports descriptors. This
will allow us to use more Zope 3 features in Zope 2 and to migrate to ZODB 4.

Jim

-- 
Jim Fulton           mailto:jim@zope.com       Python Powered!
CTO                  (703) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org