[Python-checkins] gh-98586: Add What's New entry and update docs (#99056)

erlend-aasland webhook-mailer at python.org
Sun Nov 6 17:55:01 EST 2022


https://github.com/python/cpython/commit/57a405213cd7565b7c327b594378e22a5fb2817e
commit: 57a405213cd7565b7c327b594378e22a5fb2817e
branch: main
author: Wenzel Jakob <wenzel.jakob at epfl.ch>
committer: erlend-aasland <erlend.aasland at protonmail.com>
date: 2022-11-06T23:54:55+01:00
summary:

gh-98586: Add What's New entry and update docs (#99056)

Co-authored-by: C.A.M. Gerlach <CAM.Gerlach at Gerlach.CAM>
Co-authored-by: Erlend E. Aasland <erlend.aasland at protonmail.com>

files:
M Doc/c-api/call.rst
M Doc/whatsnew/3.12.rst
M Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst

diff --git a/Doc/c-api/call.rst b/Doc/c-api/call.rst
index 6fb2e1519610..4dc66e318cd1 100644
--- a/Doc/c-api/call.rst
+++ b/Doc/c-api/call.rst
@@ -93,7 +93,7 @@ This is a pointer to a function with the following signature:
    and they must be unique.
    If there are no keyword arguments, then *kwnames* can instead be *NULL*.
 
-.. c:macro:: PY_VECTORCALL_ARGUMENTS_OFFSET
+.. data:: PY_VECTORCALL_ARGUMENTS_OFFSET
 
    If this flag is set in a vectorcall *nargsf* argument, the callee is allowed
    to temporarily change ``args[-1]``. In other words, *args* points to
diff --git a/Doc/whatsnew/3.12.rst b/Doc/whatsnew/3.12.rst
index fb28d6758d3c..53c72e957d64 100644
--- a/Doc/whatsnew/3.12.rst
+++ b/Doc/whatsnew/3.12.rst
@@ -677,6 +677,18 @@ New Features
   ``__dict__`` and weakrefs with less bookkeeping,
   using less memory and with faster access.
 
+* API for performing calls using
+  :ref:`the vectorcall protocol <vectorcall>` was added to the
+  :ref:`Limited API <stable>`:
+
+  * :c:func:`PyObject_Vectorcall`
+  * :c:func:`PyObject_VectorcallMethod`
+  * :const:`PY_VECTORCALL_ARGUMENTS_OFFSET`
+
+  This means that both the incoming and outgoing ends of the vector call
+  protocol are now available in the :ref:`Limited API <stable>`. (Contributed
+  by Wenzel Jakob in :gh:`98586`.)
+
 * Added two new public functions,
   :c:func:`PyEval_SetProfileAllThreads` and
   :c:func:`PyEval_SetTraceAllThreads`, that allow to set tracing and profiling
diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst b/Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst
index 5d7b0c892496..6a1ae3568a17 100644
--- a/Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst	
+++ b/Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst	
@@ -1,6 +1,6 @@
 Added the methods :c:func:`PyObject_Vectorcall` and
 :c:func:`PyObject_VectorcallMethod` to the :ref:`Limited API <stable>` along
-with the auxiliary macro constant :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET`.
+with the auxiliary macro constant :const:`PY_VECTORCALL_ARGUMENTS_OFFSET`.
 
 The availability of these functions enables more efficient :PEP:`590` vector
 calls from binary extension modules that avoid argument boxing/unboxing



More information about the Python-checkins mailing list