Releases: astral-sh/python-build-standalone
20250612
20250610
Upgrades
- CPython 3.14.0b2
Distribution changes
- Add patch for stable
uuid.getnode
on 3.13
Full Changelog: 2025060...2025061
20250604
Upgrades
- CPython 3.14.0b1, 3.13.4, 3.12.11, 3.11.13, 3.10.18 and 3.9.23
Full Changelog: 2025052...2025060
20250529
Distribution changes
- Fix the implementation of the workaround mentioned in the previous release notes for third-party packages that incorrectly assume the interpreter is statically linking libpython (#623)
- Disable an unsafe optimization that started applying to the statically-linked interpreter which made e.g. subclasses of
str
misbehave (#622, see also astral-sh/uv#13610) - Update the "quirks" documentation page (#625)
Upgrades
- xcb-proto 1.14.1 -> 1.17.0 (#627)
Build system changes
- Remove build support for Linux x86 builds (#626). Note that Linux x86 builds have not actually been done since 2023.
- Remove the need for the
xcb
Docker image as part of #627 - Remove build support for sccache, which was also unused (#629)
Full Changelog: 2025052...2025052
20250521
Build changes
- Remove various older X11 packages and expand use of xorgproto (#609)
Distribution changes
- Allow the experimental JIT to be enabled at runtime on Python 3.13 and 3.14 on macOS on aarch64 aka Apple Silicon (#544). Linux was added previously in #538 and #543; our macOS compatibility baseline is too old for x86_64 to enable it at the moment.
- Work around third-party packages that (incorrectly) assume the interpreter is dynamically linking libpython (#621). As with the 20250517 release, we are still statically linking libpython into the interpreter for performance and compatibility, and still shipping a dynamic libpython for compatibility with various tools/workflows that expect it, but we have now tweaked the build to increase the compatibility of this configuration.
Full Changelog: 2025051...2025052
20250517
Updates
- CPython 3.14.0a7
- LLVM 21.0.4
Distribution changes
- Include Python 3.14 in published musl distributions
- Include free-threaded Python in published musl distributions
- Statically link
libpython
into interpreter on Linux (but keep buildinglibpython3.x.so
) - Fix potential filedescriptor leak by not applying
-hugify
Full Changelog: 2025040...2025051
20250409
Updates
- CPython 3.13.3
- CPython 3.12.10
- CPython 3.11.12
- CPython 3.10.17
- CPython 3.9.22
Build changes
- Add support for building Python 3.14 on musl (distributions are not yet published)
- Add support for building free-threaded Python on musl (distributions are not yet published)
Full Changelog: 2025031...2025040
20250317
Upgrades
- CPython 3.14.0a6
Distribution changes
- Compile sqlite with FTS3 enhanced query syntax enabled
- Declare the
target_cxx
value for all targets
Build changes
- Use a mirror for bzip2 to bypass rate limits on downloads
- Cache dependency downloads in CI on Linux
Full Changelog: 2025031...2025031
20250311
Breaking changes
-
The musl distributions are now dynamically linked
Previously, the musl distributions were fully statically linked, which prevented them from being used with extension modules. Now, the musl distributions have a shared
libpython
and dynamically link musl libc. Similar to the GNU libc distributions, this means that musl libc will need to be installed to use these distributions. These distributions are intended for use on musl Linux distributions, such as Alpine. The minimum required musl version is 1.2.2. The statically linked musl distributions are still available and are tagged with the+static
build option, e.g.,cpython-3.10.16+20250311-x86_64-unknown-linux-musl-debug+static-full.tar.zst
. See #541 for implementation details. -
Windows artifacts with the
-shared
suffix will no longer be published: this variant became the default in 20240415 and duplicate archives have been published under the-shared
suffix for backwards compatibility. Use the equivalent archives without the suffix.
Upgrades
-
LLVM 19.1.6 -> 20.1.0
This upgrade also includes a pair of cherry-picked pull requests (llvm/llvm-project#114990 and llvm/llvm-project#120267) that improve handling of computed gotos; fixing a performance regression in LLVM 19 and enabling BOLT optimizations to work on computed gotos.
Distribution changes
- Allow the experimental JIT to be enabled at runtime on Python 3.13 and 3.14 on Linux: for details, see #538 and #543; for macOS support, see #544
Build system changes
- Populate
CXX
during builds to avoid calling the system toolchain
Full Changelog: 2025021...2025031
20250212
Upgrades
- OpenSSL 3.0.15 -> 3.0.16
- CPython 3.14.0a4 -> 3.14.0a5
Distribution changes
- Add attestations to remaining release artifacts
- Use an array for cross-platform sed args to avoid unexpected shell expansion; eliminating extraneous
.pc
files - Enable the tail call interpreter on 3.14+ clang builds; providing a significant performance improvement
Build system changes
Full Changelog: 2025020...2025021