Skip to content

Commit 1dfd142

Browse files
generatedunixname1734921407115435meta-codesync[bot]
authored andcommitted
Sync pre-release CPython 3.15 branch from GitHub (2026-10-07)
Summary: Imported python/cpython `3.15.0rc3+dev` from upstream rev [`19fd4df`](https://www.github.com/python/cpython/commit/19fd4df98a1878c78961888625e0962fe2232806) (committed 2026-10-07 12:45:00+00:00). # Commit Info - Base: (`3.15.0rc3+dev`) - [`6fae227`](https://www.github.com/python/cpython/commit/6fae227c51f4457796c9e9f4088efe8c0a517682) (commit date: 2026-10-06 13:47:00+00:00) - Imported: (`3.15.0rc3+dev`) - [`19fd4df`](https://www.github.com/python/cpython/commit/19fd4df98a1878c78961888625e0962fe2232806) (commit date: 2026-10-07 12:45:00+00:00) Differential Revision: D124036321 fbshipit-source-id: c8d7f64fce41480fe2331941485114d4b9d19fe8
1 parent 2c2bd2f commit 1dfd142

3 files changed

Lines changed: 28 additions & 10 deletions

File tree

‎Doc/howto/abi3t-migration.rst‎

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -169,14 +169,22 @@ or :c:member:`PyTypeObject.tp_itemsize`), it cannot be ported to
169169
``abi3t`` 3.15.
170170

171171

172+
.. _abi3t-migration-build:
173+
172174
Setting up the build
173175
====================
174176

175-
If you use a build tool (such as setuptools, meson-python, scikit-build-core),
176-
search its documentation for a way to select ``abi3t``.
177-
At the time of writing, not all of them have this; but if your tool does,
178-
use it.
179-
You may want to verify that it set the right flag by temporarily adding the
177+
If you use a build tool, search its documentation for "``abi3t``", and follow
178+
any instructions to select the ABI.
179+
For reference, here are direct links for several popular build tools:
180+
181+
- `meson-python
182+
<https://mesonbuild.com/meson-python/how-to-guides/limited-api.html#the-abi3t-stable-abi>`__
183+
- `scikit-build-core
184+
<https://scikit-build-core.readthedocs.io/en/stable/configuration/#customizing-the-output-wheel>`__
185+
- `Maturin <https://www.maturin.rs/bindings#py_limited_apiabi3>`__
186+
187+
You may want to verify that the tool set the right flag by temporarily adding the
180188
following just after ``#include <Python.h>``::
181189

182190
#if Py_TARGET_ABI3T+0 <= 0x30f0000
@@ -185,6 +193,13 @@ following just after ``#include <Python.h>``::
185193

186194
This should result in a different error than "``abi3t`` define is not set".
187195

196+
.. seealso::
197+
198+
`Building and distributing abi3t extensions
199+
<https://py-free-threading.github.io/abi3t/>`__:
200+
Build configuration and wheel testing examples in the community-maintained
201+
Python Free-Threading Guide.
202+
188203
.. note::
189204

190205
If your build tool doesn't support ``abi3t`` yet, set the following macro

‎Doc/library/sys.rst‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2110,7 +2110,7 @@ always available. Unless explicitly noted otherwise, all variables are read-only
21102110
See :ref:`remote-debugging` for more information about the remote debugging
21112111
mechanism.
21122112

2113-
.. audit-event:: sys.remote_exec pid script_path
2113+
.. audit-event:: sys.remote_exec pid,script_path
21142114

21152115
When the code is executed in the remote process, an
21162116
:ref:`auditing event <auditing>` ``sys.remote_exec`` is raised with

‎Doc/whatsnew/3.15.rst‎

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -572,16 +572,19 @@ the existing Stable ABI (``abi3``) and the version-specific ABI for
572572
free-threading (``cp315t``) separately.
573573

574574
Stable ABI for Free-Threaded Builds should typically
575-
be selected in a build tool (such as, for example, Setuptools, meson-python,
576-
scikit-build-core, or Maturin).
577-
At the time of writing, these tools do **not** support ``abi3t``.
578-
If this is the case for your tool, compile for ``cp315t`` separately.
575+
be selected in a build tool. Tools with ``abi3t`` support include
576+
meson-python, scikit-build-core, and Maturin; see
577+
:ref:`abi3t-migration-build` for links to their documentation on ``abi3t`` builds.
578+
If your build tool does not support ``abi3t``, compile for ``cp315t`` separately.
579579
If not using a build tool -- or when writing such a tool -- you can select
580580
``abi3t`` by setting the macro :c:macro:`!Py_TARGET_ABI3T` as discussed
581581
in :ref:`abi3-compiling`.
582582

583583
A practical :ref:`migration guide <abi3t-migration-howto>` for switching to
584584
``abi3t`` is available.
585+
The community-maintained `Python Free-Threading Guide
586+
<https://py-free-threading.github.io/abi3t/>`__ provides examples of building
587+
and testing ``abi3t`` wheels.
585588

586589
.. seealso:: :pep:`803` for further details.
587590

0 commit comments

Comments
 (0)