Python 3.15.0 candidate 2 is here!

Simon Willison's Blog Tools

Summary

Hugo van Kemenade announces the final release candidate for Python 3.15, scheduled for October, and encourages third-party maintainers to prepare their projects by testing and publishing wheels.

No content available
Original Article
View Cached Full Text

Cached at: 09/01/26, 03:48 PM

# Python 3.15.0 candidate 2 is here! Source: [https://simonwillison.net/2026/Sep/1/python-315-rc-2/](https://simonwillison.net/2026/Sep/1/python-315-rc-2/) 1st September 2026 \- Link Blog **[Python 3\.15\.0 candidate 2 is here\!](https://discuss.python.org/t/python-3-15-0-candidate-2-is-here/108841)**\([via](https://bsky.app/profile/hugovk.dev/post/3muhjndhw322i)\) Hugo van Kemenade \(release manager for Python 3\.14 and 3\.15\) announces the final release candidate for Python 3\.15, scheduled for release in October: > Entering the release candidate phase, only reviewed code changes which are clear bug fixes are allowed between this release candidate and the final release\. \[\.\.\.\] We**strongly encourage**maintainers of third\-party Python projects to prepare their projects for 3\.15 during this phase, and publish Python 3\.15 wheels on PyPI to be ready for the final release of 3\.15\.0, and to help other projects do their own testing\. Any binary wheels built against Python 3\.15\.0 release candidates**will work**with future versions of Python 3\.15\. Back in 2021 I[found a bug in Python 3\.10](https://simonwillison.net/2021/Oct/9/finding-and-reporting-a-bug/)by running my test suites against it\.\.\. but I hadn't done this during the RC period, so that bug had already shipped\! Since then I've always paid much closer attention to these RCs\. The new RC isn't available for GitHub Actions just yet \- keep an eye on[actions/python\-versions](https://github.com/actions/python-versions/releases)for that\. For the moment though you can add this to a testing matrix: ``` strategy: matrix: python-version: ["3.14", "3.15"] steps: - uses: actions/setup-python@v7 with: python-version: ${{ matrix.python-version }} allow-prereleases: true check-latest: true ``` The[allow\-prereleases](https://github.com/actions/setup-python/blob/main/docs/advanced-usage.md#allow-pre-releases)and[check\-latest](https://github.com/actions/setup-python/blob/main/docs/advanced-usage.md#check-latest-version)flags mean that today this will test against RC1, and when RC2 lands it will automatically switch to that version \(and then the stable version once that comes out\.\)

Similar Articles

Python 3.15: features that didn't make the headlines

Hacker News Top

Python 3.15 introduces smaller but notable features including graceful TaskGroup cancellation and context manager improvements for decorators, alongside major features like lazy imports and the tachyon profiler.

Are you expected to run five Python type-checkers now?

Hacker News Top

A blog post arguing that Python library maintainers should prioritize running multiple type-checkers on their test suite to ensure public API compatibility, highlighting challenges with compatibility and code pollution.

Self-contained highly-portable Python distributions

Hacker News Top

This project provides self-contained, highly-portable Python distributions with minimal runtime dependencies, useful for embedding Python in larger binaries or running on diverse systems.