The main branch is currently the future Python 3.16, and is the only branch that accepts new features. The latest release for each Python version can be found on the
.
'19 '20 '21 '22 '23 '24 '25 '26 '27 '28 '29 '30 '31 '32 end-of-life end-of-life Python 2.7 end-of-life end-of-life Python 3.6 end-of-life end-of-life Python 3.7 end-of-life end-of-life Python 3.8 end-of-life end-of-life Python 3.9 security security Python 3.10 security security Python 3.11 security security Python 3.12 bugfix bugfix Python 3.13 bugfix bugfix Python 3.14 prerelease prerelease Python 3.15 feature feature Python 3.16 (See
for a chart with older versions. Another useful visualization is
.)
Supported versions
Dates shown in italic are scheduled and can be adjusted.
Branch
Schedule
Status
First release
End of life
Release manager
main
feature
2027-10-06
2032-10
Savannah Ostrowski
3.15
prerelease
2026-10-01
2031-10
Hugo van Kemenade
3.14
bugfix
2025-10-07
2030-10
Hugo van Kemenade
3.13
bugfix
2024-10-07
2029-10
Thomas Wouters
3.12
security
2023-10-02
2028-10
Thomas Wouters
3.11
security
2022-10-24
2027-10
Pablo Galindo Salgado
3.10
security
2021-10-04
2026-10
Pablo Galindo Salgado
Unsupported versions
Branch
Schedule
Status
First release
End of life
Release manager
3.9
end-of-life
2020-10-05
2025-10-31
Łukasz Langa
3.8
end-of-life
2019-10-14
2024-10-07
Łukasz Langa
3.7
end-of-life
2018-06-27
2023-06-27
Ned Deily
3.6
end-of-life
2016-12-23
2021-12-23
Ned Deily
3.5
end-of-life
2015-09-13
2020-09-30
Larry Hastings
3.4
end-of-life
2014-03-16
2019-03-18
Larry Hastings
3.3
end-of-life
2012-09-29
2017-09-29
Georg Brandl & Ned Deily (3.3.7)
3.2
end-of-life
2011-02-20
2016-02-20
Georg Brandl
3.1
end-of-life
2009-06-27
2012-04-09
Benjamin Peterson
3.0
end-of-life
2008-12-03
2009-06-27
Barry Warsaw
2.7
end-of-life
2010-07-03
2020-01-01
Benjamin Peterson
2.6
end-of-life
2008-10-01
2013-10-29
Barry Warsaw
Full chart
'08 '09 '10 '11 '12 '13 '14 '15 '16 '17 '18 '19 '20 '21 '22 '23 '24 '25 '26 '27 '28 '29 '30 '31 '32 end-of-life end-of-life Python 2.6 end-of-life end-of-life Python 2.7 end-of-life end-of-life Python 3.0 end-of-life end-of-life Python 3.1 end-of-life end-of-life Python 3.2 end-of-life end-of-life Python 3.3 end-of-life end-of-life Python 3.4 end-of-life end-of-life Python 3.5 end-of-life end-of-life Python 3.6 end-of-life end-of-life Python 3.7 end-of-life end-of-life Python 3.8 end-of-life end-of-life Python 3.9 security security Python 3.10 security security Python 3.11 security security Python 3.12 bugfix bugfix Python 3.13 bugfix bugfix Python 3.14 prerelease prerelease Python 3.15 feature feature Python 3.16 Status key
Python releases go through five phases, as described in
. Release managers can adjust specific dates as needed.
feature:Before the first beta, the next full release can accept new features, bug fixes, and security fixes.
prerelease:After the first beta, no new features can go in, but feature fixes (including significant changes to new features), bug fixes, and security fixes are accepted for the upcoming feature release.
bugfix:Once a version has been fully released, bug fixes and security fixes are accepted. New binaries are built and released roughly every two months. This phase is also called maintenance mode or stable release.
security:After two years (18 months for versions before 3.13), only security fixes are accepted and no more binaries are released. New source-only versions can be released as needed.
end-of-life:Five years after a release, support ends. The release cycle is frozen; no further changes are allowed.
See also the
page for more information about branches and backporting.