Hi,

On 16 Oct 2001, Jérôme Marant wrote:
<...>
>   I installed both python1.5 and python2.1. And installing both on the same
>   system broke _all_ my python 1.5 packages: this is the alternative issue
>   Perl people have warned us about.
>
>   I discovered that /usr/bin/python is pointing to python2.1, so running those
>   python 1.5 scripts makes them fail.
>
>   FYI, my packages are python-4suite and python-xml.
>
>   Was that issue expected?

Yes.

It seems to be a convention issue.
how's this...

If a program requires python1.5 (or any specific version of Python),
it should do so explicitly.

    #!/usr/bin/env python1.5
or
    #!/usr/bin/python1.5 [arg list]

The first form lets the program work with a Python-1.5 installed
anywhere on the PATH, he second is required if options need to be
passed to the interpreter.

Scripts that call Python-1.5 code need to do:

    python1.5 some1.5dependentcode.py

Users wanting to do, "python some1.5code.py", will need to either:
be given a wrapper that does "exec python1.5 ..." (whatever works
best), or live with using "python1.5 ..." (and having to remember
which Python is linked to "python"?).    :-(  :-(
Best if users don't need to do "python aversiondependent.py",
is that realistic?

Code depending on Python-2.x can use the virtual "python2"
interpreter;  provided by any 2.x package, managed by alternatives
or maybe a debconf interface and some utilities (?).  A "python1"
should not be necessary, but a "python3" may be when the potentially
code-breaking Python-3.0 is released.

A plain "python" would only be usable by code that works with any
version of Python included in the stable archive.


- Bruce


Reply via email to