Notice: This page displays a fallback because interactive scripts did not run. Possible causes include disabled JavaScript or failure to load scripts or stylesheets.

Python 3.15.0b4

Release date: July 18, 2026

Here comes the final beta.

This is a beta preview of Python 3.15

Python 3.15 is still in development. This release, 3.15.0b4, is the final planned beta release, containing around 298 bugfixes, build improvements and documentation changes since 3.15.0b3.

Beta release previews are intended to give the wider community the opportunity to test new features and bug fixes and to prepare their projects to support the new feature release.

Call to action

We strongly encourage maintainers of third-party Python projects to test with 3.15 during the beta phase and report issues found to the Python bug tracker as soon as possible. While the release is planned to be feature-complete entering the beta phase, it is possible that features may be modified or, in rare cases, removed up until the start of the release candidate phase (2026-08-04). Our goal is to have no ABI changes after beta 4 and as few code changes as possible after the first release candidate. To achieve that, it will be extremely important to get as much exposure for 3.15 as possible during the beta phase.

This includes creating pre-release wheels for 3.15, as it helps other projects to do their own testing. However, we recommend that your regular production releases wait until 3.15.0rc1, to avoid the risk of ABI breaks.

Please keep in mind that this is a preview release and its use is not recommended for production environments.

Major new features of the 3.15 series, compared to 3.14

Some of the major new features and changes in Python 3.15 are:

  • PEP 810: Explicit lazy imports for faster startup times
  • PEP 814: Add frozendict built-in type
  • PEP 661: Add sentinel built-in type
  • PEP 799: A dedicated profiling package for organizing Python profiling tools
  • PEP 799: Tachyon: High frequency statistical sampling profiler
  • PEP 831: Frame pointers are enabled by default for improved system-level observability
  • PEP 798: Unpacking in comprehensions
  • PEP 686: Python now uses UTF-8 as the default encoding
  • PEP 829: Package startup configuration files
  • PEP 728: TypedDict with typed extra items
  • PEP 747: Annotating type forms with TypeForm
  • PEP 800: Disjoint bases in the type system
  • PEP 782: A new PyBytesWriter C API to create a Python bytes object
  • PEP 803, 820, 793: Stable ABI for free-threaded builds and related C API
  • The JIT compiler has been significantly upgraded, with 8-9% geometric mean performance improvement on x86-64 Linux over the standard interpreter, and 12-13% speedup on AArch64 macOS over the tail-calling interpreter
  • The official Windows 64-bit binaries now use the tail-calling interpreter
  • The official macOS binaries now install free-threading support by default
  • Improved error messages
  • More color
  • (Hey, fellow core team member, if a feature you find important is missing from this list, let Hugo know.)

For more details on the changes to Python 3.15, see What’s new in Python 3.15. The next pre-release of Python 3.15 will be 3.15.0rc1, scheduled for 2026-08-04.

Removals and new deprecations

More resources

And now for something completely different

“Have you guessed the riddle yet?” the Hatter said, turning to Alice again.

“No, I give it up,” Alice replied: “what’s the answer?”

“I haven’t the slightest idea,” said the Hatter.

Enjoy the new release

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 organisation contributions to the Python Software Foundation.

Full Changelog

Files

Version Operating system Description File size Sigstore SBOM SHA-256 checksum
Gzipped source tarball Source release 41.6 MB .sigstore SPDX 4825af9329834306ad4a9cb56b94455381b52bcde4b653604a39f387cc559fc9
XZ compressed source tarball Source release 33.9 MB .sigstore SPDX 93efb9c88d7b6633368e7f7b8f8db6e98988f7f761c09b77849447262841ce3a
Android embeddable package (aarch64) Android 22.7 MB .sigstore 789d5ef9cc2d19fe93b8801b7e1e9073daa69807472da898323dae31facf3dfc
Android embeddable package (x86_64) Android 23.0 MB .sigstore 069d4bcaa9a3937d3485a04eede7b91aa4ca90c6130ffd4bf7f6fd43ee9fc1c7
iOS XCframework iOS 80.0 MB .sigstore dbf1095502e0b4a0dc2a4d96ae1b1d92ee8c0b7bea773862f7124ede0017e3dc
macOS installer macOS for macOS 10.15 and later 88.2 MB .sigstore 6f1ed07cc92ed6e694b38b29d929a4e55190532fddb3828afe68d07cd4bf4aff
Windows installer (64-bit) Windows Recommended 43.8 MB .sigstore SPDX 56387cf17effe4ae5464c3af0fa2f74758cbfaddcd1d30b0dd29afdf0e5b4295
Windows installer (32-bit) Windows 42.1 MB .sigstore SPDX ac73870532e62f18810283ee49db38ec0618c8de7b2e4c7521e5b4c2aa164c3e
Windows installer (ARM64) Windows Experimental 43.1 MB .sigstore SPDX 4f761b4999a234e35959ef8d4e1d36a497daf243e4a576bb6e970a13ea87e4c2
Windows embeddable package (64-bit) Windows 13.1 MB .sigstore SPDX f542274f710f1d98843a874b3bc84da081acdd24d1e0e99cf7d04187d2602dd9
Windows embeddable package (32-bit) Windows 11.4 MB .sigstore SPDX c8967d96f4432b78f5c68db3787790cf35164ac0ae9119c0c213da3ec0ab1090
Windows embeddable package (ARM64) Windows 12.5 MB .sigstore SPDX 0fe2a0d2eb9a2f17041a45f58c55092cbd4cb18c11f74bef5a02f5a9fd963ef0
Windows release manifest Windows Install with 'py install 3.15' 15.1 KB .sigstore 4a3bd8d997922a77970dd664dc765f5ea7aa132a81b68d7d2b31371fc8351822