(Unfortunately, there doesn't appear to be a short summary of the most important changes/bugfixes, like there have been for some of the earlier releases.)
This late in Python 2.7's life the changes being made are mostly fixes for esoteric bugs. One exception is the SSL module, which gets special treatment due to its importance for security. It has gained a new feature in this release (ALPN, necessary for supporting HTTP/2), and RC4 has been removed from the default cipher list.
I'm curious to hear reasons for this, given that Python 3 provides so much good stuff, and pretty much all the important libraries and environments now support Python 3.
Well, I'd say switch just because all mainline development is now happening on the Python 3. I'm not too familiar with the development roadmap and which "features" might be useful for different audiences (e.g. the unicode overhaul and the asyncio stuff that landed in 3.4 are probably the biggest wins for the stuff I do) but I think just that reason alone is enough.
But I do think the biggest leap in adoption will be once Python 3 will be the default on most OSs, and we're definitely getting there. After we pass that, Python 2 will be the outlier, and Python 3 the norm.
My personal libraries are full of metaclasses and decorators that don't translate over very easily and I rely on Py2's import system very heavily. When I start something new I use Go or Py3 if I can but it is still faster for me to use Py2 most of the time. Over the next year I plan on fixing this as I am really excited about asyncio (right now I am using a py2 port of it https://pypi.python.org/pypi/trollius).
> Is anyone still using Python 2 for new projects?
Yes, as long as the packages provided by the OS vendors (i.e. Ubuntu LTS, CentOS) are 2.7 by default. Sure, I could just compile my own packages (and I do where necessary), but then that becomes yet another piece of infrastructure to maintain.
10 comments
[ 2.7 ms ] story [ 34.5 ms ] threadhttps://hg.python.org/cpython/raw-file/v2.7.10/Misc/NEWS
(Unfortunately, there doesn't appear to be a short summary of the most important changes/bugfixes, like there have been for some of the earlier releases.)
I'm curious to hear reasons for this, given that Python 3 provides so much good stuff, and pretty much all the important libraries and environments now support Python 3.
That will change with Python 3.5 and the matrix multiplication operator @.
Is there any other reason for me to consider Python 3?
But I do think the biggest leap in adoption will be once Python 3 will be the default on most OSs, and we're definitely getting there. After we pass that, Python 2 will be the outlier, and Python 3 the norm.
I've got a few relatively new projects that had to be done on python2 due to this.
Yes, as long as the packages provided by the OS vendors (i.e. Ubuntu LTS, CentOS) are 2.7 by default. Sure, I could just compile my own packages (and I do where necessary), but then that becomes yet another piece of infrastructure to maintain.