[Zope-Coders] Python Versions, Zope Versions, etc

Guido van Rossum guido@python.org
Wed, 09 Oct 2002 20:00:26 -0400


> I'll again say - I thought one of the big reasons for the concurrent 
> 2.6 / 2.7 development mess was that the 'Support Python 2.2' project 
> and 'Zope 2.7' were generally meant to be the same thing.  I guess
> that's changed now, but none of the fishbowl pages reflect exactly
> (or even approximately) what the plans are for Zope 2.6 or 2.7.
> But, maybe I've just been too busy to keep up with the current
> states of things.

The party line for 2.6 hasn't changed: 2.6 only works with 2.1[.x].
Shane and I and some others believe that 2.6 works fine with 2.2[.x],
and we will try to fix anything that would be a problem; but Zope Corp
won't make that its official position; if you want Python 2.2, you'll
have to wait for Zope 2.7.

The party line for Zope 2.7 has changed if you believe that until last
weekend Zope 2.7 worked just as well with Python 2.1 as with Python
2.2.  Possibly that was a coincident; it seems that it has been Jim's
plan for a long time to let Zope 2.7 require Python 2.2.

> A problem that continues to pop up for Zope and Python version 
> differences is that as new features and/or deprecations show up in 
> Python, accidental checkins may occur where someone uses a new Python 
> feature without even realizing the implications.

That's why it's good to keep the party line well understood, and run
tests with the appropriate Python version -- then violations can be
fixed quickly.

> I guess we shouldn't only keep a copy of PEP 291 close at hand, but
> come up with some similar information documents for Zope as well -
> one that documents minimum Python version requirements for code
> expected to work with a certain version of Zope, and possibly a list
> of available or unavailable Zope features that go back to a certain
> point in time.

Good point.  For example, I expect that ZODB3 will be required to run
on Python 2.1 (as well as 2.2) for a long time.  That means
Persistence, ZODB and the Berkeley storages, ZEO, but also BTrees,
ExtensionClass, ThreadedAsync, zLOG, zdaemon, and the new ZopeUndo
package.

> At least if a SOON to happen Zope release can run comfortably with a 
> Python 2.2 release, I can finally use some of the 2.2 features in my 
> own code.

In practice, even Zope 2.5.1 runs well with Python 2.2, especially
with 2.2.2.  So for your own site (and possibly for your full-service
customers) shouldn't feel held back.

--Guido van Rossum (home page: http://www.python.org/~guido/)