- cross-posted to:
- hackernews@lemmy.smeargle.fans
- programming@programming.dev
- cross-posted to:
- hackernews@lemmy.smeargle.fans
- programming@programming.dev
GIL or Global Interpreter Lock can be disabled in Python version 3.13. This is currently experimental.
Python 3.13 brings major new features compared to Python 3.12 and one of them is free-threaded mode, which disables the Global Interpreter Lock, allowing threads to run more concurrently.
The GIL will be disabled when you configure the Python with the
--disable-gil
option which is nothing but a build configuration (free threading build) at the time of installation.
This will allow optionally enabling and disabling GIL using the environment variable
PYTHON_GIL
which can be set to 1 and 0 respectively.
It will also provide a command-line option
-X gil
which can also be set to 0 (disable) and 1 (enable).
This is huge news. Great work to the contributors involved in making this happen.
I learned relatedly that there’s a page to track free threaded support for (non-pure python) packages (thanks PythonBytes).
Really cool to see this progressing so steadily.
Wake me up when pyside is on that list. I’ve been waiting for this day for a decade…
This doesn’t really jive with my understanding of semantic versioning/semver but I guess versioning is very challenging and political in the Pythonverse.
Python does not follow semver.
https://docs.python.org/3/faq/general.html#how-does-the-python-version-numbering-scheme-work