End of support for python 2.7?

PythonPython 3.xPython 2.7Python 2.x

Python Problem Overview


Is there a known date/timeframe when python 2.7 will not be supported any more in favor of python 3?

Python Solutions


Solution 1 - Python

As of 13 Apr 2014, from http://hg.python.org/peps/rev/76d43e52d978 (PEP 373, Python 2.7 Release Schedule):

> The End Of Life date (EOL, sunset date) for Python 2.7 has been moved five years into the future, to 2020. This decision was made to clarify the status of Python 2.7 and relieve worries for those users who cannot yet migrate to Python 3. See also PEP 466.

Solution 2 - Python

In May 2010, Word of God was that patchlevel releases for Python 2.7 will probably be made for at least 6 years.

So, maybe 2016, probably later.

Edit: Pushed back to 2020. See the revision to PEP 373, linked to in other answers.

Solution 3 - Python

> Recently, that date has been updated to January 1, 2020.

see https://pythonclock.org/

Solution 4 - Python

you should read this carefully (ref : https://news.ycombinator.com/item?id=7582300 ):

>There are a lot of comments here from people who aren't on the python-dev list and don't really understand what this diff actually means. The core developers are not required to maintain 2.7 post-2015, and most of them won't be involved in it. That part hasn't changed. What is happening is that Red Hat is preparing to cut a RHEL 7 release, which AFAIK depending on how much you pay them they support for 13 years. So they will need to figure out how to support 2.7 themselves at least through 2027. Here is where I am reading between the lines. RH are well within their right to fork Python and keep their maintenance patches to themselves and their customers (Python's not copyleft). But, they are nice guys and so maybe they are willing to upstream their changes at least for awhile if there is still a Python project willing to accept them. Again, this is my speculation based on the ML discussion, not what RH has actually said they will do. An analogy can be made to Rails LTS, a commercial fork of Rails 2.x that patio11 was involved in [0]. Inevitably somebody is going to step in to support 2.7, and so let's see what we can do to avoid a situation where the only way to keep running 2.7 is to subscribe to RHEL. Meanwhile, there are some large companies that use 2.7 extensively on Windows (e.g. Enthought, Anaconda) and the thinking goes that somebody can probably be found to produce a Windows installer once in awhile, assuming that Python.org will still host a download. So really what is happening here is not very exciting. The core committers aren't doing anything different than leaving the project as originally planned. What is happening is that they will leave the lights on in the source control repository and on the FTP server, so as to capture the free labor from people at large companies who have an interest in continuing to support 2.7. The alternative is that RH and other vendors create proprietary and expensive forks of Python 2.7. That may end up happening anyway, but it will take longer for your employer to notice you should stop contributing your patches back if binaries still appear on python.org and you don't have to ask IT to set up SCM and a bug tracker, etc.

Solution 5 - Python

This article says: “When 2.7 is released, the 2.x line will move into five years of a bug fix-only mode.”

So, as far as I see, Python 2.7 was the last 2.x feature-adding release, and though found bugs are going to be fixed (for some time), new features only go to 3.x releases.

Solution 6 - Python

PEP 373 (Python 2.7 Release Schedule) is the official source for the kind of information you asked for.

It currently says "Planned future release dates:"

  • 2.7.7 May 2014
  • 2.7.8 November 2014
  • 2.7.9 May 2015
  • beyond this date, releases as needed

Also, it says "The End Of Life date (EOL, sunset date) for Python 2.7 has been moved five years into the future, to 2020."

Edited in April 2014, according to http://hg.python.org/peps/rev/76d43e52d978

Solution 7 - Python

There is also a pretty ominous countdown clock to the EOS at 2020.

Solution 8 - Python

The Python Developer’s Guide lists the "Status of Python branches" from version 2.6 up to the current version, including their current support status with End-of-life dates.

Currently supported (bug + security fixes):

  • Python 3.8 (current master/development branch)
  • Python 3.7
  • Python 3.6
  • Python 2.7 (until 2020-01-01)

Security fixes only:

  • Python 3.5

  • Python 3.4

Solution 9 - Python

Python 2.7 wil be around forever. There is too much old code that uses it that no one wants to rewrite. There is already a fork called Tauthon, but we may see others if this pointless deadline gets real.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionStiiviView Question on Stackoverflow
Solution 1 - PythonMarco MarianiView Answer on Stackoverflow
Solution 2 - PythonFrédéric HamidiView Answer on Stackoverflow
Solution 3 - PythonRaymondView Answer on Stackoverflow
Solution 4 - PythonNavid RahimiView Answer on Stackoverflow
Solution 5 - PythonArsenyView Answer on Stackoverflow
Solution 6 - PythonDr. Jan-Philip GehrckeView Answer on Stackoverflow
Solution 7 - PythonnpitView Answer on Stackoverflow
Solution 8 - PythonchrkiView Answer on Stackoverflow
Solution 9 - PythonMaxView Answer on Stackoverflow