[Zope-dev] Re: [Zope3-dev] RFC: Reunite Zope 2 and Zope 3 in the source code repository

Gary Poster gary at zope.com
Wed Nov 23 22:14:00 EST 2005


While I don't agree with the +1 voters, I understand and appreciate  
their arguments.  That said...

On Nov 23, 2005, at 6:49 PM, Jens Vagelpohl wrote:

> People keep telling Zope2 developers that the inclusion of Zope3  
> doesn't mean you have to touch it, if you don't use it it is just  
> inert code that won't cause any change in your Zope2 development  
> style. Ok, I accept that, no problem at all. But why should this be  
> any different for Zope3 developers, obviously including Zope2 code  
> would mean exactly the same thing for them. Come on now.

...this is not true.

Zope 2 depends on Zope 3, via Five.  Zope 3 does not depend on Zope 2.

Therefore, making a change in Zope 2 cannot affect functionality in  
the slightest, let alone break a test, in Zope 3.  The same cannot be  
said of the reverse.

Zope 2 devs don't have to touch Zope 3 unless they want to leverage  
some cool new feature--in which case they are Zope Five devs,  
probably.  Zope 3 devs must touch Zope 2, in this new world order,  
whether they want to or not, when changes break the stuff that Zope 2  
has leveraged.

To grant a point to Philipp's argument, it's possible that changes  
that break Zope 2 are non-backwards-compatible changes in Zope 3 that  
should have been caught.  But consider this story: a Zope 3 dev  
changes something and deprecates an API.  As part of the dev's  
responsibility, the checkin also makes all code in Zope 3 use the  
replacement API.  Now Zope 2 works, but is generating deprecation  
warnings whenever the deprecated API is called.  Is it the Zope 3  
dev's responsibility to change Zope 2 to eliminate the deprecation  
warnings?  What about in the following release when the old Zope 3  
API is eliminated--whose responsibility is it then to fix Zope 2?  If  
you view Zope 2 as a downstream client of Zope 3, you probably give  
one answer; if you view the two projects as a mingled whole, you  
probably give another.

The question here is effectively whether all Zope 3 developers must  
become Zope 'Five' developers.  As you said, Zope 2 developers can  
choose to proceed essentially unaffected.  Zope 3 devs could not.

Gary


More information about the Zope-Dev mailing list