Python

As of January 1st, 2020, Python 2.7 has officially reached the end of life and will no longer receive security updates, bug fixes, or other improvements going forward.

Released in 2000, Python 2.7 has been used by developers, administrators, and security professionals for 20 years.  While Python 3 was released in 2006, due to the number of users continuing to use 2.7, the Python team decided to support both development branches.

Originally slated to be retired in 2015, the development team pushed the sunset of Python 2.7 to 2020.

To focus on Python 3 and increase the speed of its development and bug fixes, the development team has now sunset Python 2.7 and the team recommends that all users upgrade to Python 3 to continue receiving important updates.

"We are volunteers who make and take care of the Python programming language. We have decided that January 1, 2020, will be the day that we sunset Python 2. That means that we will not improve it anymore after that day, even if someone finds a security problem in it. You should upgrade to Python 3 as soon as you can."

Python does plan on releasing one more version of Python 2.7 in April 2020, which will be its final release. This release will include bug and security fixes that were developed in 2019, and possibly later ones as determined by the release manager, to ensure the stability of the final release.

For those who require Python 2.7 and do not wish to upgrade their scripts or applications, they can switch to PyPy, which will continue to support Python 2.7 after 2020. This, though, may not be fully compatible as third-party developers update their libraries to support Python 3.

Linux distributions and the sunset of Python 2.7

As Python 2.7 reaches the end of life, Linux distributions are also changing how they will continue to support the legacy version of Python.

Most of the distributions are following the same practice of adding upgraded packages for dependencies and libraries that support Python 3.x with the eventual goal of switching to Python 3 as the default version.

This process will take quite some time, so Python 2.7 will continue to be offered.

Red Hat

Red Hat has stated that even though the Python Software Foundation (PSF) has retired Python 2.7, they will continue to support it through the normal RHEL lifecycle.

"Just because the PSF consider Python 2 "unsupported" does not mean that Python 2 is "unsupported" within RHEL."

For Red Hat Enterprise Linux 8, the Python 2.7 package will be supported until June 2024. After this date, Red Hat will recommend that users upgrade to Python 3, but customers may continue to use 2.7 in a self-supported manner.

"After this date, customers are encouraged to upgrade to a later Python release such as Python 3. Customers may also continue with Python 2.7 as self-supported without official Red Hat Support."

Debian and Ubuntu

Both Debian and Ubuntu have started updating Python 2 libraries to their Python 3 equivalents in the preparation of the sunset of Python 2.7.

As of Debian Buster (10x) and Ubuntu 18.04 LTS, Python 3 is the default version, but Python 2.7 will still be available for those wishing to install it.

Fedora

Like the other distributions, Fedora has been updating Python 2 packages to the Python 3 equivalents.

In the current release of Fedora 31, Python 3.6 is the default version installed, though. 

Fedora with Python 3.7 as default
Fedora with Python 3.7 as default

Python 2.7 is still available as an installable package.

Kali Linux

Like Ubuntu, Kali Linux is following Debian's lead and has begun adding support for packages upgraded to Python 3.

Once all packages and dependencies are upgraded to Python 3, Kali will eventually remove Python 2.x.

Picus Blue Report 2025 is Here: 2X increase in password cracking

46% of environments had passwords cracked, nearly doubling from 25% last year.

Get the Picus Blue Report 2025 now for a comprehensive look at more findings on prevention, detection, and data exfiltration trends.

Related Articles:

APT36 hackers abuse Linux .desktop files to install malware in new attacks

PyPI now blocks domain resurrection attacks used for hijacking accounts

Docker Hub still hosts dozens of Linux images with the XZ backdoor

Windows 11 23H2 Home and Pro reach end of support in November

New Plague Linux malware stealthily maintains SSH access