Python 3.15.0, the newest major release of the Python programming language, was published on Oct. 9, 2026. It contains many new features and optimisations compared to Python 3.14, drawn from 5,643 commits by 1,012 contributors.
The interpreter gains several improvements. These include PEP 661, which adds a sentinel built-in type; PEP 686, which makes UTF-8 the default encoding; PEP 798, which enables unpacking in comprehensions; PEP 810, which adds explicit lazy imports for faster startup; PEP 814, which adds a frozendict built-in type; and PEP 829, which introduces package startup configuration files. The experimental JIT compiler has also been significantly upgraded, with 7-8% geometric mean performance improvement on x86-64 Linux over the standard interpreter and an 11-12% speedup on AArch64 macOS over the tail-calling interpreter. Error messages have been improved as well.
The standard library and typing system see further changes. PEP 799 adds a dedicated profiling package and the Tachyon high-frequency statistical sampling profiler. Typing gains PEP 728 (TypedDict with typed extra items), PEP 747 (annotating type forms), and PEP 800 (disjoint bases). C API updates include PEP 782, PEP 788, and stable ABI support for free-threaded builds under PEP 803, 820, and 793. Frame pointers are now enabled by default under PEP 831.
Release notes also cover platform changes. Official Windows 64-bit binaries now use the tail-calling interpreter, and official macOS binaries install free-threading support by default. Users of IDLE or tkinter on macOS 27.0 may experience hangs when opening dialogs, a problem tied to an operating system behavior change. Users may wish to defer the upgrade until a workaround is available, and updates can be tracked in issue #158053.
Source: Hacker News · Summarized by HeadlinesBriefing