[Python-Dev] Python 3 as a Default in Linux Distros

Nick Coghlan ncoghlan at gmail.com
Wed Jul 24 17:41:33 CEST 2013


On 25 July 2013 01:26, Toshio Kuratomi <a.badger at gmail.com> wrote:
> On Wed, Jul 24, 2013 at 09:34:11AM -0400, Brett Cannon wrote:
>> A similar discussion broke out when Arch Linux switched python to point to
>> python3. This led to http://www.python.org/dev/peps/pep-0394/ which says have
>> python2/python3, and have python point at whatever makes the most sense to you
>> based on your users and version uptake (option 3/4).
>
> <nod>  I think bkabrda is looking for some clarification on PEP-394.  My
> reading and participation in the previous discussions lead me to believe
> that while PEP-394 wants to be diplomatic, the message it wants to get
> across is:
>
> 1) warn distributions that what Arch was doing was premature.
> 2) provide a means to get them to switch at roughly the same time (when the
>    recommendation in the PEP is flipped to suggest linking /usr/bin/python
>    to /usr/bin/python3)
>
> This is especially my reading from the Recommendations section of the PEP.
> Unfortunately, we're getting stuck in the Abstract section which has this
> bullet point:
>
> * python should refer to the same target as python2 but may refer to python3
> on some bleeding edge distributions
>
> Knowing the history, I read this in two parts:
> * Recommendation to distributions: "python should refer to the same target
>   as python2".
> * Statement of fact: "but may refer to python3 on some bleeding edge
>   *ahem*Arch*ahem* distributions"
>
> However, other people are reading this as one recommendation for
> distributions:
>
> If you are a conservative, slow moving distro (like RHEL or Debian Stable)
> then you should point to python2.  If you are a fast moving distro like
> Arch or Fedora or Ubuntu then you should point to python3.
>
> So -- is there some opinion on which of these is correct?

It's the first one, but I can definitely see how it could be read as
the second one.

How's this for an updated wording in the abstract:

  * for the time being, all distributions should ensure that python
refers to the same target as python2
  * however, users should be aware that python refers to python3 on at
least Arch Linux (that change is
    what prompted the creation of this PEP), so "python" should be
used in the shebang line only for
    scripts that are source compatible with both Python 2 and 3

That's what the previous bullet point was *trying* to say, but it
wasn't very clear, since the first half of the sentence was aimed at
distributions, while the second was aimed at end users.

Cheers,
Nick.



-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia


More information about the Python-Dev mailing list