ZODB and Python 2.5

"Martin v. Löwis" martin at v.loewis.de
Sat Oct 21 12:06:18 EDT 2006


Jean-Paul Calderone schrieb:
> Python 2.5 made quite a changes which were not backwards compatible,
> though.  I think for the case of Python 2.4 -> Python 2.5 transition,
> quite a few apps will be broken, many of them in relatively subtle
> ways (for example, they may have been handling OSError instead of
> WindowsError

That shouldn't cause a problem, though: OSError is a base class
of WindowsError, so if handled OSError, the same exception handlers
will get invoked.

The problem occurs when they had been handling WindowsError, and looked
at errno, treating it as a windows error code: errno is now a real POSIX
error number (with the same values that the errno module uses), and
the windows error number is stored in an additional attribute.

> or it might define a
> slightly buggy but previously working __hash__ which returns the id() of
> an object

That shouldn't cause problems, either. It did cause problems in the beta
release, but IIRC, somebody solved this before the release...

> it might have relied on the atime and mtime fields of a
> stat structure being integers rather than floats).

This was actually changed in 2.3, not in 2.5; 2.5 just changed the
value of os.stat_float_times. Advance warning about this change was
given for quite some time (but certainly, most people have ignored
it).

Regards,
Martin



More information about the Python-list mailing list