On Feb 07, 2017, at 02:15 PM, Mike Miller wrote: >Does anyone know why Python 3.6 is not the default Python 3 under the >upcoming Ubuntu Zesty, or what may be holding it back?
I guess that would be me. :) >Is there anyone that could give it a nudge? It's in the repos but not as >python3: > >http://packages.ubuntu.com/zesty/python3 >http://packages.ubuntu.com/zesty/python3.6 I posted about this on the ubuntu-devel mailing list: https://lists.ubuntu.com/archives/ubuntu-devel/2017-January/039648.html It's in the Zesty (and actually Yakkety) archives so that we can do the test rebuilds described in the above message. But it's not yet a "supported" version, which means that while most pure-Python third party modules should be importable, anything with an extension module will not be. On Debian and derivatives, we share what is essentially site-packages among all *installed* versions of Python 3, which doesn't necessarily mean that those packages will work, but they should be available on the import path with no extra work. Packages may still need to be functionally ported to Python 3.6 of course. However, because extension modules need to be recompiled by the Ubuntu build daemons, they only get done for "supported" versions. That term has a specific meaning in the Debian Python packaging sense, but I don't think the details are important (ask if you're interested). "Supported" is a step before "default", which is where we change the /usr/bin/python3 symlink. This step does not require an archive rebuild. Still for now you can `apt install python3.6` and run it via /usr/bin/python3.6 with the above caveats of course. It's functional enough to build venvs (you might want the python3.6-venv package), and tox will work, so it's everything folks should need to do porting work. Here's another page collecting some information: https://wiki.ubuntu.com/Python With a 9-12% build failure (again, forgetting about whether the packages actually work), it's enough that given where we are in the cycle, supporting Python 3.6 is not feasible. Debian Stretch just entered freeze so any work we do in Ubuntu to make packages Python 3.6 compatible will eventually have to be synced back to Debian, since they can't be uploaded there directly until Stretch is released. Zesty itself enters feature freeze on Feb 16, so that's another looming deadline on the amount of work we can accomplish this cycle. My plan is to enable Python 3.6 as a supported version early in the Zesty+1 cycle, hopefully before the first archive rebuild. I don't know whether Stretch will be released by then, but we'll deal with as we have before if that's the case. In the meantime, this should give upstreams a couple of more months to continue to port, and it will give us a full cycle to work on porting packages in Ubuntu. I plan for 18.04 LTS to ship only Python 3.6 (similarly for Debian Stretch+1). Dropping Python 3.5 does require an archive rebuild, but it's much less risky than adding a new version. The best way to help right now is to work with upstreams to port to Python 3.6 if necessary. You can see our test rebuild results here: https://launchpad.net/~pythoneers/+archive/ubuntu/python-rebuilds/+packages Anything with a red X means the package failed to build. That usually flexes at least the upstream's own unittests, but there may be deeper issues and other tests that fail, which may or may not hold up individual packages, and anything that depends on them. The Fedora/RH ecosystem probably has their own list, which I'd expect to mostly overlap with ours, but I don't have those links handy. Cheers, -Barry _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com