[Python-Dev] Python 3 migration status update across some key subcommunities (was Re: 2.7 is here until 2020, please don't call it a waste.) (original) (raw)

Terry Reedy tjreedy at udel.edu
Sun May 31 17:10:31 CEST 2015


On 5/31/2015 10:15 AM, Nick Coghlan wrote:

The education community started switching a while back - if you watch Carrie-Anne Philbin's PyCon UK 2014 keynote, one of her requests for the broader Python community was for everyone else to just catch up already in order to reduce student's confusion (she phrased it more politely than that, though). Educators need to tweak examples and exercises to account for a version switch, but that's substantially easier than migrating hundreds of thousands or even millions of lines of production code.

There is another somewhat invisible but real aspect of migration that tends to get ignored: the Python embedded in applications. LibreOffice 4.0, for instance, upgraded from 2.6 to 3.3 (around Jan 14 I think). It is currently in lo4dir/program/python-core-3.3.1. I presume unicode everywhere pluse the new-in-3.3 efficient, cross-platform unicode implementation had something to do with this. lo4dir/program/wizards is a package with subpackages and over 100 .py files. There are now perhaps 20 million LO4 users (and indirect 3.3 users) around the world (my guess from Wikipedia article). A few will use the PyUNO bridge for scripting. Installations are from CDs, direct downloads, torrents, and linux distributions, but not from pypi. In a few years, the number might grow to 100 million as more LO3 users upgrade and new users start with LO4.

[...]

In terms of reducing barriers to adoption, after inviting them to speak at the 2014 language summit, we spent a fair bit of time with the Twisted and Mercurial folks over the past year or so working through "What's still missing from Python 3 for your use cases?", as Python 3.4 was still missing some features for binary data manipulation where we'd been a bit too ruthless in pruning back the binary side of things when deciding what counted as text-only features, and what was applicable to binary data as well. So 3.5 brings back binary interpolation, adds a hex() method to bytes, and adds binary data support directly to a couple of standard library modules (tempfile, difflib).

Perhaps we should investigate whether other apps with embedded but user accessible python has migrated and if not, ask why not (dependencies?) and whether planned.

-- Terry Jan Reedy



More information about the Python-Dev mailing list