summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Shannon <mark@hotpy.org>2023-07-28 16:07:33 (GMT)
committerGitHub <noreply@github.com>2023-07-28 16:07:33 (GMT)
commit1ee605c5888fbc3d51b3e7610bac38ea6bc25e31 (patch)
tree162f98ffdbeb6d3e457c08b16434ae02b08ff98e
parent2aaa83d5f5c7b025f4bf2e04836139eb01a33bd8 (diff)
downloadcpython-1ee605c5888fbc3d51b3e7610bac38ea6bc25e31.zip
cpython-1ee605c5888fbc3d51b3e7610bac38ea6bc25e31.tar.gz
cpython-1ee605c5888fbc3d51b3e7610bac38ea6bc25e31.tar.bz2
GH-101291: Add warning to "what's new" that `PyLongObject` internals have changed. (GH-107388)
-rw-r--r--Doc/whatsnew/3.12.rst11
1 files changed, 11 insertions, 0 deletions
diff --git a/Doc/whatsnew/3.12.rst b/Doc/whatsnew/3.12.rst
index 68e5b06..99500e1 100644
--- a/Doc/whatsnew/3.12.rst
+++ b/Doc/whatsnew/3.12.rst
@@ -1865,6 +1865,17 @@ Porting to Python 3.12
subinterpreter that they don't support (or haven't yet been loaded in). See
:gh:`104668` for more info.
+* :c:struct:`PyLongObject` has had its internals changed for better performance.
+ Although the internals of :c:struct:`PyLongObject` are private, they are used
+ by some extension modules.
+ The internal fields should no longer be accessed directly, instead the API
+ functions beginning ``PyLong_...`` should be used instead.
+ Two new *unstable* API functions are provided for efficient access to the
+ value of :c:struct:`PyLongObject`\s which fit into a single machine word:
+
+ * :c:func:`PyUnstable_Long_IsCompact`
+ * :c:func:`PyUnstable_Long_CompactValue`
+
Deprecated
----------