[Zope3-dev] Re: Requiring Python 2.3

Tim Peters tim at zope.com
Thu Sep 25 00:34:21 EDT 2003


[Martijn Faassen]
> Tim Peters wrote:
> [using 2.3 is the sane, obvious thing to do]

For a developer judging by technical merit, or for someone who values
cost-free support done by others, that's so.  There may well be other
considerations, but since I'm a a developer judging by technical merit, I'm
incapable of considering them <wink>.

> In this case it is important that Zope 2 gets a 2.3 stamp of approval
> as soon as possible.

No released final version of Zope 2 even has a 2.2.3 stamp of approval yet,
right?  Since the 19 months of Python 2.3 development after 2.2 was released
went by without stamping 2.2, and now a few more months have gone by and
2.3.1 is out (2.3.1 was released Wednesday), it makes a whole lot of sense
on many counts to skip the Python 2.2 line.

> I'm not running Zope 2 on 2.2 yet even as Zope 2.7 isn't out yet
> which has official support for 2.2 whereas Zope 2.6 still blathers if
> you start it with 2.2.

Many Windows Zope users must have already bitten this bullet, since no
version of Python 2.1 supports "large files" on Windows (full support for
that didn't exist before Python 2.2.3, where it was backported from
long-working code new in 2.3).

> Let's try to avoid such a situation for 2.3.. Since 2.3 is not a very
> end-user visible change (unlike 2.2) this should be relatively easy
> to accomplish if 2.2 support already exists.

That's what Shane and Tres have testified about their Zope-under-2.3
experiences, and, indeed, the Zope2 and ZODB3 and Zope3 and ZODB4 test
suites were ones we routinely ran under CVS Python during 2.3 development.
If there's something that still doesn't work under 2.3, it must be something
not covered by the test suites.

I've got another reason for wanting to skip 2.2:  there's an excruciating
subtlely involving the interaction between new-style classes and ZODB's C
persistence code that leaves zodb33-devel-branch working fine under 2.3 but
segfaulting left and right under 2.2.3.  We have more work we want to do on
ZODB and ZEO than we can do, and I would rather spend 3 days improving ZEO
scalability than hacking in layers of painful tricks to worm around the
relevant flaw in Python 2.2.3.  So that's something to keep in mind too,
easy to overlook if you're not doing the work:  it's not a question of
whether you get 2.2 compatability in addition to everything else, it's that
you get 2.2 compatibility at the expense of not getting other things.

likening-2.2-to-bastiat's-broken-window<wink>-ly y'rs  - tim




More information about the Zope3-dev mailing list