@@ -15,8 +15,8 @@ Abstract
1515Version 3.15 of the Stable ABI will be compatible with both free-threaded and
1616GIL-enabled builds.
1717To allow this, the :c:type: `PyObject ` internal structure and related APIs
18- will be removed from version 3.15 of the Limited API, requiring migration to new API
19- for common tasks like defining modules and most classes.
18+ will be removed from version 3.15 of the Limited API, requiring migration to
19+ new API for common tasks like defining modules and most classes.
2020
2121
2222Terminology
@@ -31,8 +31,8 @@ Motivation
3131
3232The Stable ABI is currently not available for free-threaded builds.
3333Extensions will fail to build when :c:macro: `Py_LIMITED_API ` is defined,
34- and extensions built for GIL-enabled builds of CPython will fail to load (or crash)
35- on free-threaded builds.
34+ and extensions built for GIL-enabled builds of CPython will fail to load
35+ (or crash) on free-threaded builds.
3636
3737In its `acceptance post <https://discuss.python.org/t/84319/123 >`__
3838for :pep: `779 `, the Steering Council stated that it “expects that Stable ABI
@@ -79,8 +79,8 @@ One ABI
7979
8080No backwards compatibility
8181 The new limited API will not support CPython 3.14 and below.
82- Projects that need this support can build separate extensions specifically for
83- the 3.14 free-threaded interpreter, and for older stable ABI versions.
82+ Projects that need this support can build separate extensions specifically
83+ for the 3.14 free-threaded interpreter, and for older stable ABI versions.
8484
8585API changes are OK
8686 The new Limited API may require extension authors to make significant
@@ -176,8 +176,8 @@ Runtime ABI checks
176176Users -- or rather the tools they use for building and installing extensions --
177177will continue to be responsible for not putting incompatible extensions on
178178Python's import paths.
179- This decision makes sense since tools typically have much richer metadata than what CPython
180- can check.
179+ This decision makes sense since tools typically have much richer metadata than
180+ what CPython can check.
181181
182182However, CPython will add a line of defense against outdated or misconfigured
183183tools, or human mistakes, in the form of a new *module slot * containing
@@ -198,12 +198,13 @@ Check for older ``abi3``
198198Additionally, in free-threaded builds, :c:func: `PyModuleDef_Init ` will detect
199199extensions using the pre-free-threading Stable ABI, emit an informative
200200message when one is loaded, *and * raise an exception.
201- (Implementation note: A message will be printed before raising the exception, because extensions
202- that attempt to handle an exception using incompatible ABI will likely crash
203- and lose the exception's message.)
201+ (Implementation note: A message will be printed before raising the exception,
202+ because extensions that attempt to handle an exception using incompatible ABI
203+ will likely crash and lose the exception's message.)
204204
205- This check for older ``abi3 `` relies on internal bit patterns and may be removed in future CPython
206- versions, if the internal object layout needs to change.
205+ This check for older ``abi3 `` relies on internal bit patterns and may be
206+ removed in future CPython versions, if the internal object layout needs
207+ to change.
207208
208209
209210Wheel tags
0 commit comments