For new projects in Django, is it OK to use Python 2.7 or should I start with Python 3.x in anticipation of Python 2 support being discontinued?
Approximately how long will Django continue to support the Python 2 branch?
Python 2 Risks In 2022 Python 2 applications will become less reliable and more vulnerable as bugs, security issues and CVEs continue to crop up, even 2 years after it was sunsetted. Popular packages have already sunset Python 2 support for their projects.
Python compatibility Django 2.0 supports Python 3.4, 3.5, 3.6, and 3.7. We highly recommend and only officially support the latest release of each series. The Django 1.11. x series is the last to support Python 2.7.
The sunset date has now passed; it was January 1st, 2020. What happens now? As of January 1st, 2020 no new bug reports, fixes, or changes will be made to Python 2, and Python 2 is no longer supported. A few changes were made between when we released Python 2.7.
Django 1.8 supports Python 2.7, and it has been designated a long-term release guaranteeing 3 years of support from its release (currently scheduled April 2015).
Therefore, Django is committed to support at least the latest version of Python 2 until some time in 2018.
The following information is on the Django Roadmap (h/t to @RemcoGerlich in comments), and is still current as of today (2015-11-09), regarding keeping Python 2 support until 2020, when Python 2 support will actually be discontinued by Python itself. In other words, as of now, as long as there is a Python 2, Django will continue to support it.
As a final heads up, Django 1.11 is likely to be the last version to support Python 2.7 as it will be supported until the end of Python 2 upstream support in 2020. We’ve adopted a Python version support policy as follows:
We will support a Python version up to and including the first Django LTS release whose security support ends after security support for that version of Python ends. For example, Python 3.3 security support ends September 2017 and Django 1.8 LTS security support ends April 2018. Therefore Django 1.8 is the last version to support Python 3.3.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With