[PYTHONMAC-SIG] Re: MacPython 1.5 questions and suggestions

Jack Jansen Jack.Jansen@cwi.nl
Fri, 12 Sep 1997 10:54:17 +0200


It's actually not the file name that's important but the fragment name. I 
changed it around 1.4, so that you could have a 1.4 working distribution and a 
1.5alfa distribution on the same machine without the two interfering with each 
other. In the case of 1.4 and 1.5a?? this is a good thing, as 1.4 used the 
plaugher C libraries and 1.5 uses MSL, so if a plugin ever did some I/O it 
would break spectacularly.

Besides that I'm also strict in version-numbering the fragments: each fragment 
implements a single version. It is possible to change that with the fragment 
version numbering scheme: I could say something like "this PythonCore fragment 
implements interface version 100 but is still backwards-compatible with 
interfaces from version 90 onwards". However, since the interface to 
PythonCore is so complex (it is essentially comprised of all external symbols 
and their arguments) I cannot really guarantee that any single module that 
works with one version continues to work with the next.

The only way this could really change is when Guido defines an external 
interface: a set of routines and addresses that plugin modules are allowed to 
use. We could then export only these symbols, and increment the version 
numbers whenever there is a change here (compatible changes like extra 
routines increment only the "most recent" version number, incompatible changes 
like removal of routines or changes in parameters increment the most recent 
version number and set the oldest-version-supported to the same value as the 
most recent).

In practice I think that there's little to be gained here: so many things 
change between Python releases that you'll still be stuck with a complete new 
version probably. It *is* a nuisance that you have to recompile all your 
extension modules, even those for which you know that they can still function 
with newer Pythons because you use little or no functionality of the 
PythonCore, but I see no practical solution to it right away.
--
Jack Jansen             | ++++ stop the execution of Mumia Abu-Jamal ++++
Jack.Jansen@cwi.nl      | ++++ if you agree copy these lines to your sig ++++
http://www.cwi.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm 



_______________
PYTHONMAC-SIG  - SIG on Python for the Apple Macintosh

send messages to: pythonmac-sig@python.org
administrivia to: pythonmac-sig-request@python.org
_______________