For those with Python 2 baselines that aren't (or will never be) ported, PyPy will support version 2 basically forever [0]. PyPy supports a huge number (but not all) of Python packages, including numpy [1]. Moreover, PyPy is significantly faster in many cases [2], and for the numerical types of things I like to write [3], it's amazingly faster.<p><pre><code> > time pypy mandel.py > pypy.pgm
seconds: 0.318101
real 0m0.426s
user 0m0.396s
sys 0m0.013s
> time python2 mandel.py > python2.pgm
seconds: 30.141954
real 0m30.156s
user 0m30.136s
sys 0m0.003s
</code></pre>
That's just a silly Mandelbrot example, but for numerical algorithms like this PyPy is nearly 100 times faster than Python2, and that includes startup cost for the JIT!<p>I'm not in any way associated with the PyPy project, but I can't help but believe a sane world would've moved from Python to PyPy in the same way everything moved from Brandon Eich's original JavaScript interpreter to the modern JIT ones like V8.<p>[0] <a href="https://doc.pypy.org/en/latest/faq.html#how-long-will-pypy-support-python2" rel="nofollow">https://doc.pypy.org/en/latest/faq.html#how-long-will-pypy-s...</a><p>[1] <a href="http://packages.pypy.org/" rel="nofollow">http://packages.pypy.org/</a><p>[2] <a href="https://speed.pypy.org/" rel="nofollow">https://speed.pypy.org/</a><p>[3] <a href="https://godbolt.org/z/J9Xwp6" rel="nofollow">https://godbolt.org/z/J9Xwp6</a>
Python is currently one of the most successful languages out there. Most of the growth at this point is coming from python 3. So, from that point of view, it's been a huge success.<p>If at this point you are still stuck on 2.7; you probably don't care a lot about updates in any case; including point releases. It's been well over a decade since it was made clear that this was going to end. So, IMHO the impact to remaining 2.7 users is minimal. They were in any case extremely conservative updating and are probably also running lots of other outdated stuff like Red Hat / Ubuntu versions that long dropped out of LTS, etc. That's fine and valid but at this point you shouldn't be surprised that you are on your own. If you didn't plan for this, that's on you.<p>From a security point of view that just means you probably don't want to run unprotected 2.7 servers running e.g. a web server. But otherwise it's fine if you shield it a bit. Lots of python is more about other types of jobs where the impact of security vulnerabilities is much less.<p>And, I'm sure that if there's demand, somebody might actually step up to do the occasional patch release if it is really needed. This has also happened in the Java world where several companies provide support for openjdk 6, 7, and 8 where Oracle no longer supports that (v8 stopped getting public updates already; you can still pay for some extended support but that too is being ramped down). I imagine, e.g. Red Hat might step up here as they seem to have continued to ship this for quite long and their LTS cycles might out run the python 2.7 cut off date.
This isn't a knock per Perl, but looking back, it's really interesting to see how the two communities handled their respective transitions: Python 2 to Python 3, and Perl 5 to Perl 6 (now called raku [1])<p>I say it isn't a knock because I think they were equally fine with the goals: Perl was looking to make a bold break towards an unknown future [2], and Python wanted a very slow and sustainable migration.<p>I'm glad to see Python 3 go mainstream, I'm glad that Python 2 succeeded so well, and I'm glad there are segments of computer science that still throw mugs and aim for the moon.<p>[1] <a href="http://blogs.perl.org/users/ovid/2019/10/larry-has-approved-renaming-perl-6-to-raku.html" rel="nofollow">http://blogs.perl.org/users/ovid/2019/10/larry-has-approved-...</a><p>[2] <a href="https://www.nntp.perl.org/group/perl.packrats/2002/07/msg3.html" rel="nofollow">https://www.nntp.perl.org/group/perl.packrats/2002/07/msg3.h...</a>
If you're interested in what actually changed in this update, the release notes are here: <a href="https://github.com/python/cpython/blob/2.7/Misc/NEWS.d/2.7.18rc1.rst" rel="nofollow">https://github.com/python/cpython/blob/2.7/Misc/NEWS.d/2.7.1...</a>
Still know a heck of a lot of people using it. Even know one researcher using it for a new project.<p>It will be decades before the final Python 2 program goes offline.
We've switched off Python 2, but I really miss it. For a glorious several years we were done with "production has Python X.Y, but the code needs X.Z" and always chasing the latest minor version on LTS OS releases.<p>But now we're back on that treadmill...
I still occasionally mistype `print s`.<p>RIP, python2, you will be missed. And a big thank you to all the contributers who have kept it alive for so long!
My personal thoughts on the matter aside, here is an informative post from Brett Cannon on why the Python 2/3 split happened:<p><a href="https://snarky.ca/why-python-3-exists/" rel="nofollow">https://snarky.ca/why-python-3-exists/</a>
I'm curious if there's going to be some community supported fork.<p>Software using Python 2.7 won't magically disappear and I believe there is going to be a demand after fixes.<p>(I know about Tauthon but I don't think it applies here ...)
I love so much about Python 3.<p>Python 2 has paid the bills for over a decade, but I love writing Python 3.8 so much more. I even love the walrus operator. We’re in the process of upgrading, finally.
Trying to click the release notes for it on <a href="https://www.python.org/downloads/" rel="nofollow">https://www.python.org/downloads/</a> seems to do nothing. I'm working on legacy apps running on 2.7 so I'm eager to see what's included.
I am still on Python 2 due to complex vendor reasons. Probably will be for a couple more years. I wish folks were a little more understanding that edge business cases exist that they might not have considered; it isn't all greenfield development.
Perhaps, but only because the PSF wields the Python trademark to prevent people who want to continue releasing the Python 2 language from doing so:<p><a href="https://github.com/naftaliharris/tauthon" rel="nofollow">https://github.com/naftaliharris/tauthon</a>