]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Correct Stable ABI documentation for METH_FASTCALL (GH-149593)
authorda-woods <dw-git@d-woods.co.uk>
Wed, 3 Jun 2026 13:20:35 +0000 (14:20 +0100)
committerGitHub <noreply@github.com>
Wed, 3 Jun 2026 13:20:35 +0000 (15:20 +0200)
* Correct Stable ABI documentation for METH_FASTCALL

The current documentation says:

>
> METH_FASTCALL
>    Part of the Stable ABI since version 3.7.
>
> [...]
>
>   Added in version 3.7.
>
>    Changed in version 3.10: METH_FASTCALL is now part of the stable ABI.

so is contradictory about when it was added to the Stable ABI.  Looking at the header it seems like 3.10 is right.

Doc/data/stable_abi.dat
Misc/stable_abi.toml

index 2d4278c9d97c8599e293ccce48e60d279198dee2..86080fac7163838b6324bf9993a5d15c83c70555 100644 (file)
@@ -1,7 +1,7 @@
 role,name,added,ifdef_note,struct_abi_kind
 macro,METH_CLASS,3.2,,
 macro,METH_COEXIST,3.2,,
-macro,METH_FASTCALL,3.7,,
+macro,METH_FASTCALL,3.10,,
 macro,METH_METHOD,3.7,,
 macro,METH_NOARGS,3.2,,
 macro,METH_O,3.2,,
index 8fd7aba09241e63a0781e33a7b0274c6fb2d780f..d59a7c788fa9e02b32e8329ca1eede4d13fa229d 100644 (file)
 [const.METH_COEXIST]
     added = '3.2'
 # METH_STACKLESS is undocumented
-# METH_FASTCALL is not part of limited API.
 
 # The following are defined in private headers, but historically
 # they were exported as part of the stable ABI.
 
 # New method flags in 3.7 (PEP 590):
 
-[const.METH_FASTCALL]
-    added = '3.7'
 [const.METH_METHOD]
     added = '3.7'
 
 [data.PyStructSequence_UnnamedField]
     added = '3.11'
 
+# Added in 3.7 but in the Stable ABI from 3.10
+[const.METH_FASTCALL]
+    added = '3.10'
+
 # Add stable Py_buffer API in Python 3.11 (https://bugs.python.org/issue45459)
 [struct.Py_buffer]
     added = '3.11'