[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Please install /usr/bin/python2



On Mon, Sep 16, 2013 at 4:05 AM, Steve Langasek <vorlon@debian.org> wrote:
> On Sun, Sep 15, 2013 at 09:53:41PM +1000, Ben Finney wrote:
>> Lachlan <lachlan.00@gmail.com> writes:
>
>> > i'm not an expert by any means but i fail to see how this is an issue?
>
>> In short: Debian is not the only Unix-like system where Python is
>> installed, and consistency across operating systems is valuable.
>
> Yes, it is, which is what makes the Arch devs' change to make things
> *inconsistent* by pointing /usr/bin/python to python3 an unforgivable
> screwup.
>
> /usr/bin/python is an interface for python2.  Having this change over time
> to point to something incompatible, such as python3, is Evil Bad Wrong.  We
> are now in the situation that we have to ship /usr/bin/python2 for
> compatibility with scripts originating from Arch, but that in no way implies
> that /usr/bin/python should be changed to python3.  Repurposing
> /usr/bin/python should only happen following an intervening release in which
> python2 is not shipped *at all*.
>
>> > -Everyone wrote scripts for python 2.x using /usr/bin/python
>
>> And eventually Python 2 will be long obsolete.
>
> And *once that happens*, we can discuss resurrecting /usr/bin/python and
> pointing it to python3.  It should not change until then.

That's a wrong strategy. The scripts should be patched to use right
version of Python, and they could not be patched until Debian doesn't
provide right version for them, i.e. python2.

>> > -With python3, scripts were written specifically for python3 using
>> > /usr/bin/python3
>
>> Not all of them, and the expectation is that more and more systems will
>> assume “/usr/bin/python” is the current version of Python.
>
> Who expects that?  Arch is negligible.  Debian and Ubuntu are not going to
> make this change.  What other OSes are making the ill-conceived change to
> /usr/bin/python?

Windows never did the conversion. It just came natural for this
'poorly designed OS' to rewrite Python binaries with the latest
installed. You could never expect to find Python of required version
on this platform. Probably it was one of the reasons why virtualenv
was born.

>> See PEP 394 <URL:http://www.python.org/dev/peps/pep-0394/>.
>
> It's not the first or last time that an upstream has made a poor
> recommendation that Debian rightly ignores.
>
> Enabling /usr/bin/python2 compatibility benefits our users, yes.  Promoting
> its use, or making /usr/bin/python incompatible with the many existing
> scripts running on older Debian releases, does not.

As a Python developer I couldn't care less for the "default Python"
stuff as long as my scripts use proper shebang. python for 2/3
compatible stuff, python2 for 2.x only and python3 where needed. The
Debian python policy should require that. This is an upstream
recommendation that Debian wrongly didn't pay attention to, choosing
to complain about inevitable natural processes instead.

Take it easy.
-- 
anatoly t.


Reply to: