On 4/15/14 7:11 PM, Joshua Landau wrote:
On 15 April 2014 23:18, Ned Batchelder <n...@nedbatchelder.com> wrote:
On 4/15/14 5:34 PM, Joshua Landau wrote:
Arch is on 3.4 *default*.

      $> python
      Python 3.4.0 (default, Mar 17 2014, 23:20:09)
      [...]

Yeah, that's the wrong way to do it, and they shouldn't have done that.
"python" needs to mean Python 2.x for a long time.

Why?

The only things that break are things outside of the official repos,
and the vast majority of the user repository works flawlessly. If I
get something from the source, I normally run it explicitly ("python
the_thing") and on the very rare occasion it breaks (when it's 2.x and
uses "python" to mean "python2") I can trivially patch or wrap it, and
file a bug report.

The python = python3 choice of Arch is not what takes up maintenance
time, and it's good to prepare developers ahead of time. That's what
rolling release is all about: getting the best and preparing the rest.


The problem is files that use shebang lines:

    #!/usr/bin/python

or:

    #!/usr/bin/env python

If these are Python 2 files, they now don't work. Keep in mind, these might not be files that you have written, they may have been installed as part of another package, or written long ago.

For the official statement on "python" meaning Python 2, and more on why, see PEP 394: 'The "python" Command on Unix-Like Systems': http://legacy.python.org/dev/peps/pep-0394/

--
Ned Batchelder, http://nedbatchelder.com

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to