[Python-Dev] The end of 2.7

Barry Warsaw barry at python.org
Tue Apr 9 00:05:23 CEST 2013

Hash: SHA256

On Apr 08, 2013, at 05:08 PM, Tres Seaver wrote:

>FWIW, the effort of porting the "modern" bits of the Zope ecosystem (the
>ones I still use in Pyramid apps today, meaning the component
>architecture, the ZODB, and a few others) soaked up basically all of my
>FLOSS time between the two Santa Clara PyCons.
>To be fair, some of that effort went into improving test coverage, docs,
>etc., to ensure that the apps running against the ported librarties
>wouldn't break, even on Python2:  but is was *not* a trivial effort.

I've ported a ton of stuff, most of it not written by me.  The actual job of
porting (not counting convincing your manager to let you do it) will either be
easy and quick or painful and difficult <wink>.  It's often hard to know
before you start.  It almost always comes down to bytes vs. strings, IME.
Sometimes, the code you're porting has a clear model and you just have to
understand it, and then the porting goes fairly smoothly.  Often, the model
isn't clear or there *is* no distinction, in which case your life will suck.

It's important to realize that everyone doing porting work now is also making
Python 3 better by helping to find the pain points in the language and stdlib.
The u-prefix is a perfect example of this.  .format() on bytes (issue3982) and
some of the discussions around issue17445 are two examples where we're at
least identifying additional pain, if not yet fixing it.

Python 3.3 is easier to port to than 3.2 is.  I hope that we'll be able to
take all of our experiences and funnel that into 3.4 to make it a better
porting target still.  Then, even though people will still be using Python 2
when Orlijn is BDFL, we'll at least be making progress.  We also want to make
3.4 and future Python 3 releases so compelling that starting new projects in
Python 3 will be a no-brainer, and we want to make sure that the batteries,
both in the stdlib and 3rd party are up to the task.

Eventually Python 2 programmers will be like today's COBOL programmers (which
is good for future employment prospects :), but there's more Python 3 code out
there waiting to be written than there is existing Python 2 code today. :)
Don't worry about what you *can't* port!

- -Barry
Version: GnuPG v1.4.12 (GNU/Linux)


More information about the Python-Dev mailing list