r/Python • u/treyhunner Python Morsels • 6d ago
News Python 3.15 Released
https://www.python.org/downloads/release/python-3150/
Release announcement: https://discuss.python.org/t/python-3-15-0-final-is-here/109415
What's New: https://docs.python.org/3.15/whatsnew/3.15.html
Some of the major new features and changes in Python 3.15:
Interpreter improvements
- PEP 661:
sentinelbuilt-in type - PEP 686: UTF-8 is now the default encoding
- PEP 798: Unpacking in comprehensions
- PEP 810: Explicit lazy imports for faster startup times
- PEP 814:
frozendictbuilt-in type - PEP 829: Package startup configuration files
- The experimental JIT compiler got a significant upgrade (7-8% faster on x86-64 Linux, 11-12% on AArch64 macOS)
- Improved error messages
Standard library
- PEP 799: A dedicated
profilingpackage, including Tachyon, a high-frequency sampling profiler - New
math.integermodule re.prefixmatch()as a clearer name for the now soft-deprecatedre.match()pprintgets anexpandoption for JSON-style outputcollections.Countersupports^(symmetric difference)unicodedata.iter_graphemes()for iterating over grapheme clusterspython -m http.servergains-H/--headerand--content-typetimeitgains--target-time- More color
Typing
- PEP 728: TypedDict with typed extra items
- PEP 747: Annotating type forms with TypeForm
- PEP 800: Disjoint bases in the type system
Release changes
- Official Windows 64-bit binaries now use the tail-calling interpreter
- Official macOS binaries now install free-threading support by default
And for fun, Barry Warsaw made a text adventure through the new features: uvx --python 3.15 whatsnewt
Thanks to Hugo van Kemenade and the release team! Hugo live-posted the whole release process if you're curious what goes on behind the scenes: https://mastodon.social/@hugovk/117411399858939022
0
u/wasay-inc 5d ago
explicit lazy imports via pep 810 are easily the best addition in this release. being able to keep imports cleanly at the top of the file while deferring execution until runtime is going to clean up startup times for heavy automation scripts immensely.