Python 3.12
Current patch release: 3.12.12
End of life in 974 days (October 31, 2028). Plan your upgrade now.
October 2, 2023
April 2, 2025
October 31, 2028
3.12.12 (October 9, 2025)
About Python 3.12
Python 3.12 delivered major performance gains, better error messages, and introduced the new type parameter syntax (PEP 695). It is the current production-recommended version for most teams.
Key Changes in Python 3.12
- ●5-10% faster than 3.11 with continued specialization improvements
- ●New type parameter syntax:
type Point = tuple[float, float](PEP 695) - ●Per-interpreter GIL (PEP 684) laying groundwork for true parallelism
- ●Improved f-string parsing allowing nested quotes and backslashes
- ●Better error messages with suggestions for common mistakes
Breaking Changes
- ▲distutils fully removed (use setuptools instead)
- ▲wstr and wstr_length removed from Unicode objects (C API)
- ▲Some deprecated unittest features removed
Python 3.12 has transitioned into security-only maintenance since April 2, 2025. This means it still receives critical security patches, but no new features, performance improvements, or non-critical bug fixes will be backported. It remains a safe choice for production systems that cannot upgrade immediately, but you should begin planning your migration path.
When you are ready to upgrade, Python 3.14 is the recommended target. Test your application against 3.14 in a staging environment first, paying attention to any deprecated APIs you may be using.
Lifecycle Progress
47% through its lifecycle. 974 days remaining.
All Python Versions
| Version | Released | EOL | Latest | Status |
|---|---|---|---|---|
| 3.14 | October 7, 2025 | October 31, 2030 | 3.14.3 | Active |
| 3.13 | October 7, 2024 | October 31, 2029 | 3.13.12 | Active |
| 3.12 (current page) | October 2, 2023 | October 31, 2028 | 3.12.12 | Security Only |
| 3.11 | October 24, 2022 | October 31, 2027 | 3.11.14 | Security Only |
| 3.10 | October 4, 2021 | October 31, 2026 | 3.10.19 | Security Only |
| 3.9 | October 5, 2020 | October 31, 2025 | 3.9.25 | End of Life |
| 3.8 | October 14, 2019 | October 7, 2024 | 3.8.20 | End of Life |
| 3.7 | June 27, 2018 | June 27, 2023 | 3.7.17 | End of Life |
| 3.6 | December 23, 2016 | December 23, 2021 | 3.6.15 | End of Life |
| 3.5 | September 13, 2015 | September 30, 2020 | 3.5.10 | End of Life |
| 3.4 | March 16, 2014 | March 18, 2019 | 3.4.10 | End of Life |
| 3.3 | September 29, 2012 | September 29, 2017 | 3.3.7 | End of Life |
| 3.2 | February 20, 2011 | February 20, 2016 | 3.2.6 | End of Life |
| 2.7 | July 3, 2010 | January 1, 2020 | 2.7.18 | End of Life |
| 3.1 | June 27, 2009 | April 9, 2012 | 3.1.5 | End of Life |
| 3.0 | December 3, 2008 | June 27, 2009 | 3.0.1 | End of Life |
| 2.6 | October 1, 2008 | October 29, 2013 | 2.6.9 | End of Life |
Frequently Asked Questions
When was Python 3.12 released?
When does Python 3.12 reach end of life?
What is the latest patch version of Python 3.12?
Is Python 3.12 still getting updates?
Related Resources
Get release updates for Python
Breaking changes, security patches, EOL warnings. Monthly digest, no spam.
Free forever. Unsubscribe anytime. We track 50+ technologies.