Software 43948 Published by

Recent updates to Python 3.14.1, the first maintenance release for version 3.14, and Python 3.13.10 have brought several features and improvements. The new versions include official support for free-threaded builds and enhanced annotation handling, as well as template string literals for easier custom string formatting and improved concurrent execution handling. Additionally, user experience benefits from syntax highlighting in PyREPL, basic color support in command-line utilities, and performance improvements in the uuid module. These updates extend to developer tools, including better error messages, enhanced security features, and refined debugging capabilities.



Python 3.14.1 and 3.13.10 released

Python 3.14.1, the first maintenance release for version 3.14, and Python 3.13.10 have both landed recently.

Screenshot_from_2025_05_08_07_26_58

The new version has some genuinely intriguing features. One of them is official support for free-threaded builds, which allows developers to work with concurrent tasks more efficiently. Alongside that, there are improvements in how annotations are handled; their evaluation is now deferred, which actually helps clarify the semantics when you're using them extensively.

Template string literals represent another significant step forward. Think of these new 't-strings' as a familiar way to handle custom string formatting; they feel quite natural and align nicely with existing patterns. This feature builds on previous enhancements like improved concurrent execution handling, which now makes multiple interpreters available directly within the standard library, which is something particularly helpful for managing different environments or optimizing performance.

For developers working with data compression, there's a welcome addition: the compression.zstd module provides support for the Zstandard algorithm. Its advantage is clear, which makes processing compressed data more efficient and helps reduce memory usage when dealing with large datasets. You can now simplify code parsing by omitting brackets in except and except* statements.

Not only do core features receive enhancements, but the user experience also benefits from them. Syntax highlighting has arrived in PyREPL, making it easier to navigate and understand your code interactively. Command-line utilities like unittest, argparse, json, and calendar now offer basic support for color, adding another layer of usability improvement. Even the uuid module feels more capable, supporting versions 6-8 natively while speeding up generation for versions 3-5 by a considerable margin, which potentially saves time in some scenarios.

Looking towards Python's internals, there are changes aimed at streamlining development work as well. The C API has been improved for configuration tasks, making interaction with the core language easier. An entirely new type of interpreter exists now; it offers performance benefits for certain setups, though it requires opt-in and building from source.

These updates extend beyond the code itself to developer support tools. Python's error messages have gotten better, making diagnosis slightly less frustrating when you run into bugs. The built-in HMAC implementation, featuring formally verified code, also addresses security, providing greater confidence in cryptographic operations. And for inspecting things like what libraries are loaded by a running process, there's now dedicated command-line tool support.

Finally, debugging capabilities see another refinement. The pdb module can now be used to remotely attach to processes, letting you diagnose issues happening 'in the wild' or peek at code executing asynchronously, which is quite handy for complex projects and real-time troubleshooting.

Get started with Python 3.14.1 by downloading it from this link. If you need Python 3.13.10 instead, that is available through this location.