Verified Release Notes: Python 3.13 Python 3.13 is a landmark stable release that introduces experimental support for two of the most requested features in the language's history: a Just-In-Time (JIT) compiler and a GIL-free (free-threaded) mode. This version focuses on modernization, performance groundwork, and significant quality-of-life improvements for developers. 1. Major Architectural Advancements
The most impactful updates are currently experimental and require specific builds or flags to enable.
Experimental Free-Threaded Mode (PEP 703): Users can now install a special build of CPython (often identified as python3.13t) that disables the Global Interpreter Lock (GIL). This allows threads to run in true parallel on multi-core CPUs, which is a major leap for CPU-bound tasks like machine learning and heavy data processing.
Experimental JIT Compiler (PEP 744): A "copy-and-patch" JIT compiler has been introduced to improve execution speed by converting bytecode into machine code at runtime. While initial benchmarks show a modest 2–9% average speedup, it provides the foundation for double-digit performance gains in future releases. 2. Developer Experience & REPL python 313 release notes verified
The interactive interpreter (REPL) has undergone its most significant makeover in years. Is Python Really That Slow? - miguelgrinberg.com
Python 3.13, released on October 7, 2024 , is a transformative update focused on enhancing developer experience and laying the groundwork for massive performance gains. This "stable" release introduces several highly anticipated, albeit experimental, features that fundamentally change how the language handles concurrency and execution. Key Highlights of Python 3.13 What's New In Python 3.13 — Python 3.14.4 documentation
Python 3.13 introduces an experimental Just-In-Time (JIT) compiler based on the "copy-and-patch" technique described by Haoran Xu and Fredrik Kjolstad (Stanford). This is not a high-performance JIT like PyPy’s; instead, it’s a low-effort, low-complexity JIT that compiles small units of bytecode to machine code at runtime. Verified Release Notes: Python 3
What this means for you:
--enable-experimental-jit). It is not enabled by default in pre-built binaries.The JIT is explicitly marked as experimental and may be removed or completely rewritten in Python 3.14. Its main purpose is to validate the architecture before committing to a full JIT.
There has been a lot of noise about Python "finally getting a JIT." The reality, verified against the 3.13 release notes, is more nuanced. Removed dead batteries: crypt
What the release notes actually say: "Python 3.13 includes an experimental copy-and-patch JIT compiler."
Verification: The JIT is not enabled by default. You must compile CPython from source with the --enable-experimental-jit flag. Even then, it only compiles relatively small parts of the interpreter's bytecode dispatch loop.
os module:os.pidfd_open() now available on Linux (pid file descriptors for safer process management).Verified Source: Python 3.13 standard library documentation.
ssl module updates:SSLContext.post_handshake_auth for modern TLS features.crypt, nis, dbm (old ndbm), mailcap, audioop (moved to external PyPI), chunk, imghdr, sndhdr, sunau, telnetlib, uu, xdrlibThese changes are all present in the default python command on standard builds. No third-party libraries required.
Verified Source: PEP 701 – Improved REPL