[Python-Dev] Compatibility between Python 2.3.x and Python 2.4.x
Rich.Burridge at Sun.COM
Fri Sep 16 00:08:33 CEST 2005
Hi Neal, Ray,
> The binary versions (.pyc and .pyo) are not compatible, their magic
> number is different. I don't know the details, but if you want to
> investigate yourself. Get a CVS version, cd python/dist/src ; cvs
> diff -r r23 -r r24 Python/import.c
> That shows the magic number changing. You will need to read CVS logs
> to figure out why. It's possible the numbers don't really *need* to
> change. I see two comments in the logs are:
> * Bump the magic number to avoid sharing bytecode between 2.3 and 2.4.
> Revise the long comment that explained details of the magic number
> in gory detail.
> * With Guido's okay, bumped up the magic number so that this patch gets
> widely exercised before the alpha goes out.
> There are other patches which may have bumped the magic number for
> other reasons.
>>Can somebody point me at this information please?
> And I forgot to give you this link:
That lists the changes. It's not clear (at least to me) whether
these changes are incompatible.
> BTW, this list probably isn't the best place to post this question.
> comp.lang.python (python-list at python.org) is generally preferred for
> details about implementation.
Understood. I'll try there tomorrow.
> If you are really interested in finding out more about Python, perhaps
> you can come to the BayPIGGIES (Python Users Group) meeting at Google
> tonight (7.30pm) in Mt. View. Contact me off-list if you want more
Thanks for the pointer. Unfortunately I have other plans for tonight.
> The new LIST_APPEND opcode won't run on Py2.3.
It was more a case of wondering whether Python 2.3.x
.py, .pyo, .pyc files should "just work" with the Python 2.4.x run-time
We are not too concerned with 2.4.x files working with the Python 2.3.x
runtime. This sort of binary incompatibly is common.
More information about the Python-Dev