Hacker News new | ask | show | jobs
by jacobmischka 3430 days ago
> always supposed to be Python 2

This is not correct. It's a symlink to python2 on systems that rely on calls to python to be python2. On modern systems, python is usually a symlink to python3. This is the case on Arch Linux and I believe other recent distro releases.

1 comments

Arch is the oddball. I'm not aware of anybody else who's made the switch.

Given that they're not mutually compatible except in rare cases, it's a very silly thing to do. You can upgrade GCC with the same name because you know it will handle most of the same input. If you do that with Python you're breaking tons of existing scripts for very close to zero benefit. Why would you do that?

It's not silly. One of Arch's primary draws is being the first to get updates and integrate new technologies. Other distros will follow soon enough if there really aren't any others.

It's not as if python2 suddenly doesn't exist, it's not terribly life-changing to add a 2 in the places where the scripts are still on the last version.

I'm glad to be on a system where the default Python version isn't one that will be officially unsupported in three years.

Edit: It's worth pointing out that this switch was made 6 years ago and the world is still spinning.

https://www.archlinux.org/news/python-is-now-python-3/

They can adopt Python 3 and drop Python 2 without adding this link which encourages a convention of /usr/bin/env python for Python 3 on their platform, creating unnecessary incompatibility with other platforms.

As you said, it's old news now, and not the end of the world. But I'm hoping others don't follow.

I'm pretty sure Ubuntu 16.04 is Python 3 by default and you have to ask for 2.

edit: nope, been imagining things. too much time in venvs i guess. need to get more sleep :)