|
95 | 95 | windows = 'maybe' |
96 | 96 |
|
97 | 97 |
|
| 98 | +### Python 3.2 (initial version) ############################################ |
| 99 | + |
98 | 100 | # Mentioned in PEP 384: |
99 | 101 |
|
100 | 102 | [struct.PyObject] |
|
627 | 629 | added = '3.2' |
628 | 630 | [function.PyErr_Display] |
629 | 631 | added = '3.2' |
630 | | -[function.PyErr_DisplayException] |
631 | | - added = '3.12' |
632 | 632 | [function.PyErr_ExceptionMatches] |
633 | 633 | added = '3.2' |
634 | 634 | [function.PyErr_Fetch] |
|
735 | 735 | added = '3.2' |
736 | 736 | [data.PyExc_BaseException] |
737 | 737 | added = '3.2' |
738 | | -[data.PyExc_BaseExceptionGroup] |
739 | | - added = '3.11' |
740 | 738 | [data.PyExc_BufferError] |
741 | 739 | added = '3.2' |
742 | 740 | [data.PyExc_BytesWarning] |
|
1867 | 1865 | [function.PyThread_start_new_thread] |
1868 | 1866 | added = '3.2' |
1869 | 1867 |
|
| 1868 | + |
| 1869 | +### Python 3.3 ############################################################## |
| 1870 | + |
1870 | 1871 | # The following were added in PC/python3.def in Python 3.3: |
1871 | 1872 | # 7800f75827b1be557be16f3b18f5170fbf9fae08 |
1872 | 1873 | # 9c56409d3353b8cd4cfc19e0467bbe23fd34fc92 |
|
1896 | 1897 | [function.PyThread_GetInfo] |
1897 | 1898 | added = '3.3' |
1898 | 1899 |
|
| 1900 | + |
| 1901 | +### Python 3.4 ############################################################## |
| 1902 | + |
1899 | 1903 | # The following were added in PC/python3.def in Python 3.4: |
1900 | 1904 | # 3ba3a3ee56c142e93d6bbe20ff6bf939212a30f0 |
1901 | 1905 |
|
|
1904 | 1908 | [function.PyType_GetSlot] |
1905 | 1909 | added = '3.4' |
1906 | 1910 |
|
| 1911 | + |
| 1912 | +### Python 3.5 ############################################################## |
| 1913 | + |
1907 | 1914 | # The following were added in PC/python3.def in Python 3.5: |
1908 | 1915 | # 11d7b1423fc44d764eba7065ea5eba58ed748b21 |
1909 | 1916 | # f3b73ad51da3097d7915796fdc62608b1ab90c0a |
|
1942 | 1949 | [const.Py_tp_finalize] |
1943 | 1950 | added = '3.5' |
1944 | 1951 |
|
| 1952 | + |
| 1953 | +### Python 3.6 ############################################################## |
| 1954 | + |
1945 | 1955 | # The following were added in PC/python3.def in Python 3.6: |
1946 | 1956 |
|
1947 | 1957 | [function.Py_FinalizeEx] |
|
1956 | 1966 | [data.PyExc_ModuleNotFoundError] |
1957 | 1967 | added = '3.6' |
1958 | 1968 |
|
| 1969 | + |
| 1970 | +### Python 3.7 ############################################################## |
| 1971 | + |
1959 | 1972 | # The following were added in PC/python3.def in Python 3.6.1 and 3.5.3/3.5.4: |
1960 | 1973 |
|
1961 | 1974 | [function.PyCodec_NameReplaceErrors] |
|
2151 | 2164 | [const.METH_METHOD] |
2152 | 2165 | added = '3.7' |
2153 | 2166 |
|
| 2167 | + |
| 2168 | +### Python 3.8 ############################################################## |
| 2169 | + |
2154 | 2170 | # The following were added in PC/python3.def in Python 3.8: |
2155 | 2171 |
|
2156 | 2172 | [function.PyImport_GetModule] |
|
2174 | 2190 | [function.Py_BytesMain] |
2175 | 2191 | added = '3.8' |
2176 | 2192 |
|
2177 | | -# New type flag (PEP 590): |
| 2193 | +# New type flag in Python 3.8 (PEP 590): |
2178 | 2194 |
|
2179 | 2195 | [const.Py_TPFLAGS_METHOD_DESCRIPTOR] |
2180 | 2196 | added = '3.8' |
2181 | 2197 |
|
| 2198 | + |
| 2199 | +### Python 3.9 ############################################################## |
| 2200 | + |
2182 | 2201 | # The following were added in PC/python3.def in Python 3.9: |
2183 | 2202 |
|
2184 | 2203 | [function.Py_EnterRecursiveCall] |
|
2198 | 2217 | [function.PyObject_GC_IsTracked] |
2199 | 2218 | added = '3.9' |
2200 | 2219 |
|
| 2220 | + |
| 2221 | +### Python 3.10 ############################################################# |
| 2222 | + |
2201 | 2223 | # The following were added in PC/python3.def in Python 3.10: |
2202 | 2224 |
|
2203 | 2225 | [function.Py_GetArgcArgv] |
|
2262 | 2284 | [data.PyExc_EncodingWarning] |
2263 | 2285 | added = '3.10' |
2264 | 2286 |
|
2265 | | -# Support for Stable ABI in debug builds |
| 2287 | +# Added in 3.7 but in the Stable ABI from 3.10 |
| 2288 | +[const.METH_FASTCALL] |
| 2289 | + added = '3.10' |
| 2290 | + |
| 2291 | +# Support for Stable ABI in debug builds (Python 3.10) |
2266 | 2292 |
|
2267 | 2293 | [data._Py_RefTotal] |
2268 | 2294 | added = '3.10' |
|
2273 | 2299 | ifdef = 'Py_REF_DEBUG' |
2274 | 2300 | abi_only = true |
2275 | 2301 |
|
2276 | | -# New slots in 3.10: |
| 2302 | +# New slots in Python 3.10: |
2277 | 2303 |
|
2278 | 2304 | [const.Py_am_send] |
2279 | 2305 | added = '3.10' |
2280 | 2306 |
|
2281 | 2307 |
|
2282 | | -# New GC control functions in Py3.10 (https://bugs.python.org/issue28254) |
| 2308 | +# New GC control functions in Python 3.10 (https://github.com/python/cpython/issues/72441) |
2283 | 2309 |
|
2284 | 2310 | [function.PyGC_Disable] |
2285 | 2311 | added = '3.10' |
|
2288 | 2314 | [function.PyGC_IsEnabled] |
2289 | 2315 | added = '3.10' |
2290 | 2316 |
|
2291 | | -# Add new C API in Python 3.11 |
2292 | 2317 |
|
| 2318 | +### Python 3.11 ############################################################# |
| 2319 | + |
| 2320 | +[data.PyExc_BaseExceptionGroup] |
| 2321 | + added = '3.11' |
2293 | 2322 | [function.PyType_GetName] |
2294 | 2323 | added = '3.11' |
2295 | 2324 | [function.PyType_GetQualName] |
2296 | 2325 | added = '3.11' |
2297 | 2326 | [data.PyStructSequence_UnnamedField] |
2298 | 2327 | added = '3.11' |
2299 | 2328 |
|
2300 | | -# Added in 3.7 but in the Stable ABI from 3.10 |
2301 | | -[const.METH_FASTCALL] |
2302 | | - added = '3.10' |
2303 | | - |
2304 | 2329 | # Add stable Py_buffer API in Python 3.11 (https://bugs.python.org/issue45459) |
2305 | 2330 | [struct.Py_buffer] |
2306 | 2331 | added = '3.11' |
|
2379 | 2404 | [const.PyBUF_WRITE] |
2380 | 2405 | added = '3.11' |
2381 | 2406 |
|
2382 | | - |
2383 | 2407 | # (Detailed comments aren't really needed for further entries: from here on |
2384 | 2408 | # we can use version control logs.) |
2385 | 2409 |
|
|
2390 | 2414 | [function.PyErr_SetHandledException] |
2391 | 2415 | added = '3.11' |
2392 | 2416 |
|
| 2417 | + |
| 2418 | +### Python 3.12 ############################################################# |
| 2419 | + |
| 2420 | +[function.PyErr_DisplayException] |
| 2421 | + added = '3.12' |
2393 | 2422 | [function.PyType_FromMetaclass] |
2394 | 2423 | added = '3.12' |
2395 | 2424 | [const.Py_TPFLAGS_HAVE_VECTORCALL] |
|
2473 | 2502 | # Note: value changed in 3.15 (old value is still accepted) |
2474 | 2503 | added = '3.12' |
2475 | 2504 |
|
| 2505 | + |
| 2506 | +### Python 3.13 ############################################################# |
| 2507 | + |
2476 | 2508 | [function.PyImport_AddModuleRef] |
2477 | 2509 | added = '3.13' |
2478 | 2510 | [function.PyWeakref_GetRef] |
|
2555 | 2587 | # Note: value changed in 3.15 (old value is still accepted) |
2556 | 2588 | added = '3.13' |
2557 | 2589 |
|
| 2590 | + |
| 2591 | +### Python 3.14 ############################################################# |
| 2592 | + |
2558 | 2593 | [function.Py_TYPE] |
2559 | 2594 | # Before 3.14, this was a macro that accessed the PyObject member |
2560 | 2595 | added = '3.14' |
|
2616 | 2651 | [function.Py_PACK_VERSION] |
2617 | 2652 | added = '3.14' |
2618 | 2653 |
|
| 2654 | + |
| 2655 | +### Python 3.15 ############################################################# |
| 2656 | + |
2619 | 2657 | [function.PySys_GetAttr] |
2620 | 2658 | added = '3.15' |
2621 | 2659 | [function.PySys_GetAttrString] |
|
2773 | 2811 | added = '3.15' |
2774 | 2812 | [const.Py_tp_module] |
2775 | 2813 | added = '3.15' |
2776 | | -[function.Py_HashBuffer] |
2777 | | - added = '3.16' |
| 2814 | +[function.PyObject_CallFinalizerFromDealloc] |
| 2815 | + added = '3.15' |
2778 | 2816 |
|
2779 | | -# PEP 757 import/export API. |
| 2817 | +# Python 3.15 PEP 757 import/export API. |
2780 | 2818 |
|
2781 | 2819 | [function.PyLong_GetNativeLayout] |
2782 | 2820 | added = '3.15' |
|
2802 | 2840 | # (The definition of 'full-abi' was clarified when this entry was added.) |
2803 | 2841 | struct_abi_kind = 'full-abi' |
2804 | 2842 |
|
2805 | | -# PEP 788 finalization protection |
| 2843 | +# Python 3.15 PEP 788 finalization protection |
2806 | 2844 |
|
2807 | 2845 | [struct.PyInterpreterGuard] |
2808 | 2846 | added = '3.15' |
|
2832 | 2870 | added = '3.15' |
2833 | 2871 | struct_abi_kind = 'opaque' |
2834 | 2872 |
|
2835 | | -[function.PyObject_CallFinalizerFromDealloc] |
2836 | | - added = '3.15' |
| 2873 | + |
| 2874 | +### Python 3.16 ############################################################# |
| 2875 | + |
| 2876 | +[function.Py_HashBuffer] |
| 2877 | + added = '3.16' |
0 commit comments