Python 3.12.7 and 3.13.0rc3 released

This is not the release you’re looking for…

(unless you’re looking for 3.12.7.)

Because no plan survives contact with reality, instead of the actual Python 3.13.0 release we have a new Python 3.13 release candidate today. Python 3.13.0rc3 rolls back the incremental cyclic garbage collector (GC), which was added in one of the alpha releases. The incremental GC had more significant performance regressions in specific workloads than we expected. Rather than try to fiddle with its details in the hope of fixing them (and not making anything else worse) we decided to revert back to the old GC in 3.13. Work on the incremental GC will continue in 3.14. We also took the opportunity to fix some other (rare) bugs and issues found in 3.13.0rc2. The final release of Python 3.13.0 will now happen next week, Monday October 7th.

In an effort to return to normalcy, we’ve also released Python 3.12.7 as scheduled, despite the expedited release a month ago. It’s important to be regular!

3.13.0rc3

The final cut of 3.13.0 (really, honest). Besides the incremental GC revert it contains a small number of other fixes, as well as many documentation improvements and testsuite improvements (~145 changes in total).

Call to action

We strongly encourage maintainers of third-party Python projects to prepare their projects for 3.13 compatibilities during this phase, and where necessary publish Python 3.13 wheels on PyPI to be ready for the final release of 3.13.0. Any binary wheels built against Python 3.13.0rc1 and later will work with future versions of Python 3.13. As always, report any issues to the Python bug tracker .

Please keep in mind that this is a preview release and while it’s as close to the final release as we can get it, its use is not recommended for production environments. Next week, though!

New features in Python 3.13

Python 3.12.7

A small release since 3.12.6 was only a month ago, but nevertheless 3.12.7 contains ~120 bug fixes, build improvements and documentation changes.

More resources

Enjoy the new releases

Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organization contributions to the Python Software Foundation.

Regards from a positively melting Menlo Park for some reason this time,

Your release team,
Thomas Wouters @thomas
Łukasz Langa @ambv
Ned Deily @nad
Steve Dower @steve.dower

12 Likes

Is it intentional that python-3.12.7-docs-html.tar.bz2 has the directory named python-3.12-docs-html rather than python-3.12.7-docs-html, as have been in the previous releases?

This was an accident. We got a fix in Doc: Fix archive filenames for standard builds by AA-Turner · Pull Request #124826 · python/cpython · GitHub but I believe Thomas made some manual fixes for today’s two releases. I expect future releases will go back to the previous pattern.

1 Like
  1. In https://www.python.org/ → Downloads, the current stable release is listed as 3.12.6 (not 3.12.7).
  2. Python Release Python 3.12.7 | Python.org page shows no changelog for 3.12.7, so regular people don’t know what has been changed.

Thanks.

Hmm, the “Downloads” tab at https://www.python.org/ has a 3.12.6 download button (on macOS), and the “Download” box links to 3.12.6. However, https://www.python.org/downloads/ has the correct download button for 3.12.7…

Let’s ask @JacobCoffee.

I’ve updated it to include a link to the full changelog: Changelog — Python 3.12.7 documentation

We nightowls were looking a bit ago but I’ll dig in in the morning

edit: all fixed up :slight_smile:

1 Like