Python Versions

  • Since Python 3.9: PEP 602 -- Annual Release Cycle for Python

  • New Python release every 12 months (1 year)

  • 12 months (1 year) release cycle

  • 18 months (1.5 year) of bugfix updates

  • 42 months (3.5 year) of security updates

Python Release Cycle

  • Since Python 3.9: PEP 602 -- Annual Release Cycle for Python

  • Python 3.9-3.12: one and a half years of full support, followed by three and a half years of security fixes

  • Python 3.13 and newer: two years of full support, followed by three years of security fixes

  • 12 months (1 year) release cycle

  • 24 months (2 year) of bugfix updates

  • 48 months (4 year) of security updates

../_images/pep602-release-calendar.png

Figure 1. Python 12 months release cycle.

Which Version?

Table 1. Current Python Versions [3]

Version

PEP

Status

Release

End-of-life

Release Manager

3.14

PEP 745

feature

2025-10-07

2030-10

Hugo van Kemenade

3.13

PEP 719

bugfix

2024-10-07

2029-10

Thomas Wouters

3.12

PEP 693

bugfix

2023-10-03

2028-10

Thomas Wouters

3.11

PEP 664

bugfix

2022-10-24

2027-10

Pablo Galindo Salgado

3.10

PEP 619

security

2021-10-04

2026-10

Pablo Galindo Salgado

Table 2. End-of-life Python Versions (no longer maintained) [3]

Version

PEP

Status

Release

End-of-life

Release Manager

3.9

PEP 596

end-of-life

2020-10-05

2025-10-07

Łukasz Langa

3.8

PEP 569

end-of-life

2019-10-20

2024-10-07

Łukasz Langa

3.7

PEP 537

end-of-life

2018-06-27

2023-06-27

Ned Deily

3.6

PEP 494

end-of-life

2016-12-23

2021-12-23

Ned Deily

3.5

PEP 478

end-of-life

2015-09-13

2020-09-13

Larry Hastings

3.4

PEP 429

end-of-life

2014-03-16

2019-03-16

Larry Hastings

3.3

PEP 398

end-of-life

2012-09-29

2017-09-29

Georg Brandl

3.2

PEP 392

end-of-life

2011-02-20

2016-02-20

Georg Brandl

3.1

PEP 375

end-of-life

2009-06-27

2012-04-09

Benjamin Peterson

3.0

PEP 361

end-of-life

2008-12-03

2009-01-13

Barry Warsaw

2.7

PEP 373

end-of-life

2010-07-03

2020-04-20

Benjamin Peterson

2.6

PEP 361

end-of-life

2008-10-01

2013-10-29

Barry Warsaw

features

new features, bugfixes, and security fixes are accepted.

prerelease

feature fixes, bugfixes, and security fixes are accepted for the upcoming feature release.

bugfix

bugfixes and security fixes are accepted, new binaries are still released. (Also called maintenance mode or stable release)

security

only security fixes are accepted and no more binaries are released, but new source-only versions can be released

end-of-life

release cycle is frozen; no further changes can be pushed to it.

Why not Python 2?

  • PEP 373 -- Python 2.7 Release Schedule

  • PEP 404 -- Python 2.8 Un-release Schedule

  • 2020-04-20 - end of Life for Python 2.7

  • Python 2 is no longer developed [1], [2]

  • Python 2.7 is the last in 2.x branch, and there won't be Python 2.8

  • Python 2.7.18, the last release of Python 2 [4]

References