gh-121103: Update site module docs for free-threaded installs (#122737)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
This commit is contained in:
Sam Gross 2024-08-06 14:34:34 -04:00 committed by GitHub
parent c4e8196940
commit 1429651a06
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 13 additions and 4 deletions

View File

@ -32,7 +32,10 @@ It starts by constructing up to four directories from a head and a tail part.
For the head part, it uses ``sys.prefix`` and ``sys.exec_prefix``; empty heads For the head part, it uses ``sys.prefix`` and ``sys.exec_prefix``; empty heads
are skipped. For the tail part, it uses the empty string and then are skipped. For the tail part, it uses the empty string and then
:file:`lib/site-packages` (on Windows) or :file:`lib/site-packages` (on Windows) or
:file:`lib/python{X.Y}/site-packages` (on Unix and macOS). For each :file:`lib/python{X.Y[t]}/site-packages` (on Unix and macOS). (The
optional suffix "t" indicates the :term:`free threading` build, and is
appended if ``"t"`` is present in the :attr:`sys.abiflags` constant.)
For each
of the distinct head-tail combinations, it sees if it refers to an existing of the distinct head-tail combinations, it sees if it refers to an existing
directory, and if so, adds it to ``sys.path`` and also inspects the newly directory, and if so, adds it to ``sys.path`` and also inspects the newly
added path for configuration files. added path for configuration files.
@ -40,6 +43,11 @@ added path for configuration files.
.. versionchanged:: 3.5 .. versionchanged:: 3.5
Support for the "site-python" directory has been removed. Support for the "site-python" directory has been removed.
.. versionchanged:: 3.13
On Unix, :term:`Free threading <free threading>` Python installations are
identified by the "t" suffix in the version-specific directory name, such as
:file:`lib/python3.13t/`.
If a file named "pyvenv.cfg" exists one directory above sys.executable, If a file named "pyvenv.cfg" exists one directory above sys.executable,
sys.prefix and sys.exec_prefix are set to that directory and sys.prefix and sys.exec_prefix are set to that directory and
it is also checked for site-packages (sys.base_prefix and it is also checked for site-packages (sys.base_prefix and
@ -188,11 +196,12 @@ Module contents
Path to the user site-packages for the running Python. Can be ``None`` if Path to the user site-packages for the running Python. Can be ``None`` if
:func:`getusersitepackages` hasn't been called yet. Default value is :func:`getusersitepackages` hasn't been called yet. Default value is
:file:`~/.local/lib/python{X.Y}/site-packages` for UNIX and non-framework :file:`~/.local/lib/python{X.Y}[t]/site-packages` for UNIX and non-framework
macOS builds, :file:`~/Library/Python/{X.Y}/lib/python/site-packages` for macOS macOS builds, :file:`~/Library/Python/{X.Y}/lib/python/site-packages` for macOS
framework builds, and :file:`{%APPDATA%}\\Python\\Python{XY}\\site-packages` framework builds, and :file:`{%APPDATA%}\\Python\\Python{XY}\\site-packages`
on Windows. This directory is a site directory, which means that on Windows. The optional "t" indicates the free-threaded build. This
:file:`.pth` files in it will be processed. directory is a site directory, which means that :file:`.pth` files in it
will be processed.
.. data:: USER_BASE .. data:: USER_BASE