From 370425be4d6cea2b717ac385082e81c2c12ed39f Mon Sep 17 00:00:00 2001 From: sayakpaul <22957388+sayakpaul@users.noreply.github.com> Date: Mon, 28 Sep 2026 06:08:19 +0000 Subject: [PATCH] kernel-abi-check: refresh vendored ABI symbol files --- .../src/manylinux/manylinux-policy.json | 75 ++++++++++++++++ .../src/python_abi/stable_abi.toml | 88 +++++++++++++++---- 2 files changed, 145 insertions(+), 18 deletions(-) diff --git a/kernel-abi-check/src/manylinux/manylinux-policy.json b/kernel-abi-check/src/manylinux/manylinux-policy.json index 3a957a199..a1db18a0a 100644 --- a/kernel-abi-check/src/manylinux/manylinux-policy.json +++ b/kernel-abi-check/src/manylinux/manylinux-policy.json @@ -1023,5 +1023,80 @@ "blacklist": { "libz.so.1": ["_dist_code", "_length_code", "_tr_align", "_tr_flush_block", "_tr_init", "_tr_stored_block", "_tr_tally", "adler32_default", "crc32_acle", "crc32_le_vgfm_16", "crc32_neon", "crc32_vpmsum", "crc32_z_default", "deflate_copyright", "gzflags", "inflate_copyright", "inflate_fast", "inflate_table", "sse2_slide_hash", "z_errmsg", "z_vstring", "zcalloc", "zcfree"] } + }, + { + "name": "manylinux_2_42", + "aliases": [], + "priority": 50, + "symbol_versions": { + "i686": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "FLOAT128", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "4.0.0", "4.2.0", "4.3.0", "4.4.0", "4.5.0", "4.7.0", "4.8.0", "7.0.0", "12.0.0", "13.0.0", "14.0.0"], + "GLIBC": ["2.0", "2.1", "2.1.1", "2.1.2", "2.1.3", "2.2", "2.2.1", "2.2.2", "2.2.3", "2.2.4", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "x86_64": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "FLOAT128", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "4.8.0", "7.0.0", "12.0.0", "13.0.0", "14.0.0"], + "GLIBC": ["2.2.5", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR", "ABI_DT_X86_64_PLT", "ABI_GNU2_TLS"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "aarch64": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.5.0", "4.7.0", "7.0.0", "11.0", "13.0.0", "14.0", "14.0.0"], + "GLIBC": ["2.0", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "ppc64le": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "IEEE128_1.3.13", "LDBL_1.3", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"], + "GLIBC": ["2.0", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34", "IEEE128_3.4.29", "IEEE128_3.4.30", "IEEE128_3.4.31", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "s390x": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "LDBL_1.3", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.1.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"], + "GLIBC": ["2.2", "2.2.1", "2.2.2", "2.2.3", "2.2.4", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.19", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "armv7l": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "ARM_1.3.3", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.3.4", "3.4", "3.4.2", "3.5", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"], + "GLIBC": ["2.0", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "riscv64": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "1.3.16", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.4.0", "4.5.0", "4.7.0", "7.0.0", "14.0.0"], + "GLIBC": ["2.0", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + }, + "loongarch64": { + "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "TM_1"], + "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.4.0", "4.5.0", "4.7.0", "7.0.0", "14.0.0"], + "GLIBC": ["2.0", "2.36", "2.38", "2.39", "2.40", "2.41", "2.42", "ABI_DT_RELR"], + "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "3.4.34"], + "LIBATOMIC": ["1.0", "1.1", "1.2"], + "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"] + } + }, + "lib_whitelist": ["libatomic.so.1", "libgcc_s.so.1", "libstdc++.so.6", "libm.so.6", "libmvec.so.1", "libanl.so.1", "libdl.so.2", "librt.so.1", "libc.so.6", "libnsl.so.1", "libutil.so.1", "libpthread.so.0", "libX11.so.6", "libXext.so.6", "libXrender.so.1", "libICE.so.6", "libSM.so.6", "libGL.so.1", "libgobject-2.0.so.0", "libgthread-2.0.so.0", "libglib-2.0.so.0", "libresolv.so.2", "libexpat.so.1", "libz.so.1"], + "blacklist": { + "libz.so.1": ["_dist_code", "_length_code", "_tr_align", "_tr_flush_block", "_tr_init", "_tr_stored_block", "_tr_tally", "adler32_default", "crc32_acle", "crc32_le_vgfm_16", "crc32_neon", "crc32_vpmsum", "crc32_z_default", "deflate_copyright", "gzflags", "inflate_copyright", "inflate_fast", "inflate_table", "sse2_slide_hash", "z_errmsg", "z_vstring", "zcalloc", "zcfree"] + } } ] diff --git a/kernel-abi-check/src/python_abi/stable_abi.toml b/kernel-abi-check/src/python_abi/stable_abi.toml index d59a7c788..0425fba42 100644 --- a/kernel-abi-check/src/python_abi/stable_abi.toml +++ b/kernel-abi-check/src/python_abi/stable_abi.toml @@ -95,6 +95,8 @@ windows = 'maybe' +### Python 3.2 (initial version) ############################################ + # Mentioned in PEP 384: [struct.PyObject] @@ -627,8 +629,6 @@ added = '3.2' [function.PyErr_Display] added = '3.2' -[function.PyErr_DisplayException] - added = '3.12' [function.PyErr_ExceptionMatches] added = '3.2' [function.PyErr_Fetch] @@ -715,6 +715,7 @@ added = '3.2' [function.PyEval_InitThreads] added = '3.2' + abi_only = true [function.PyEval_ReleaseLock] added = '3.2' abi_only = true @@ -735,8 +736,6 @@ added = '3.2' [data.PyExc_BaseException] added = '3.2' -[data.PyExc_BaseExceptionGroup] - added = '3.11' [data.PyExc_BufferError] added = '3.2' [data.PyExc_BytesWarning] @@ -1351,8 +1350,10 @@ abi_only = true [function.PySys_SetArgv] added = '3.2' + abi_only = true [function.PySys_SetArgvEx] added = '3.2' + abi_only = true [function.PySys_SetObject] added = '3.2' [function.PySys_SetPath] @@ -1642,6 +1643,7 @@ added = '3.2' [data.Py_FileSystemDefaultEncoding] added = '3.2' + abi_only = true [function.Py_Finalize] added = '3.2' [function.Py_GetBuildInfo] @@ -1676,6 +1678,7 @@ added = '3.2' [data.Py_HasFileSystemDefaultEncoding] added = '3.2' + abi_only = true [function.Py_IncRef] added = '3.2' [function.Py_Initialize] @@ -1696,8 +1699,10 @@ added = '3.2' [function.Py_SetProgramName] added = '3.2' + abi_only = true [function.Py_SetPythonHome] added = '3.2' + abi_only = true [function.Py_SetRecursionLimit] added = '3.2' [function.Py_VaBuildValue] @@ -1867,6 +1872,9 @@ [function.PyThread_start_new_thread] added = '3.2' + +### Python 3.3 ############################################################## + # The following were added in PC/python3.def in Python 3.3: # 7800f75827b1be557be16f3b18f5170fbf9fae08 # 9c56409d3353b8cd4cfc19e0467bbe23fd34fc92 @@ -1896,6 +1904,9 @@ [function.PyThread_GetInfo] added = '3.3' + +### Python 3.4 ############################################################## + # The following were added in PC/python3.def in Python 3.4: # 3ba3a3ee56c142e93d6bbe20ff6bf939212a30f0 @@ -1904,6 +1915,9 @@ [function.PyType_GetSlot] added = '3.4' + +### Python 3.5 ############################################################## + # The following were added in PC/python3.def in Python 3.5: # 11d7b1423fc44d764eba7065ea5eba58ed748b21 # f3b73ad51da3097d7915796fdc62608b1ab90c0a @@ -1942,6 +1956,9 @@ [const.Py_tp_finalize] added = '3.5' + +### Python 3.6 ############################################################## + # The following were added in PC/python3.def in Python 3.6: [function.Py_FinalizeEx] @@ -1956,6 +1973,9 @@ [data.PyExc_ModuleNotFoundError] added = '3.6' + +### Python 3.7 ############################################################## + # The following were added in PC/python3.def in Python 3.6.1 and 3.5.3/3.5.4: [function.PyCodec_NameReplaceErrors] @@ -2151,12 +2171,16 @@ [const.METH_METHOD] added = '3.7' + +### Python 3.8 ############################################################## + # The following were added in PC/python3.def in Python 3.8: [function.PyImport_GetModule] added = '3.8' [data.Py_UTF8Mode] added = '3.8' + abi_only = true [function.PyExceptionClass_Name] added = '3.8' [function.PyIndex_Check] @@ -2174,11 +2198,14 @@ [function.Py_BytesMain] added = '3.8' -# New type flag (PEP 590): +# New type flag in Python 3.8 (PEP 590): [const.Py_TPFLAGS_METHOD_DESCRIPTOR] added = '3.8' + +### Python 3.9 ############################################################## + # The following were added in PC/python3.def in Python 3.9: [function.Py_EnterRecursiveCall] @@ -2198,6 +2225,9 @@ [function.PyObject_GC_IsTracked] added = '3.9' + +### Python 3.10 ############################################################# + # The following were added in PC/python3.def in Python 3.10: [function.Py_GetArgcArgv] @@ -2237,6 +2267,7 @@ added = '3.10' [data.Py_FileSystemDefaultEncodeErrors] added = '3.10' + abi_only = true [function.PyCodec_Unregister] added = '3.10' [function.PyErr_SetInterruptEx] @@ -2262,7 +2293,11 @@ [data.PyExc_EncodingWarning] added = '3.10' -# Support for Stable ABI in debug builds +# Added in 3.7 but in the Stable ABI from 3.10 +[const.METH_FASTCALL] + added = '3.10' + +# Support for Stable ABI in debug builds (Python 3.10) [data._Py_RefTotal] added = '3.10' @@ -2273,13 +2308,13 @@ ifdef = 'Py_REF_DEBUG' abi_only = true -# New slots in 3.10: +# New slots in Python 3.10: [const.Py_am_send] added = '3.10' -# New GC control functions in Py3.10 (https://bugs.python.org/issue28254) +# New GC control functions in Python 3.10 (https://github.com/python/cpython/issues/72441) [function.PyGC_Disable] added = '3.10' @@ -2288,8 +2323,11 @@ [function.PyGC_IsEnabled] added = '3.10' -# Add new C API in Python 3.11 +### Python 3.11 ############################################################# + +[data.PyExc_BaseExceptionGroup] + added = '3.11' [function.PyType_GetName] added = '3.11' [function.PyType_GetQualName] @@ -2297,10 +2335,6 @@ [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' @@ -2379,7 +2413,6 @@ [const.PyBUF_WRITE] added = '3.11' - # (Detailed comments aren't really needed for further entries: from here on # we can use version control logs.) @@ -2390,6 +2423,11 @@ [function.PyErr_SetHandledException] added = '3.11' + +### Python 3.12 ############################################################# + +[function.PyErr_DisplayException] + added = '3.12' [function.PyType_FromMetaclass] added = '3.12' [const.Py_TPFLAGS_HAVE_VECTORCALL] @@ -2473,6 +2511,9 @@ # Note: value changed in 3.15 (old value is still accepted) added = '3.12' + +### Python 3.13 ############################################################# + [function.PyImport_AddModuleRef] added = '3.13' [function.PyWeakref_GetRef] @@ -2555,6 +2596,9 @@ # Note: value changed in 3.15 (old value is still accepted) added = '3.13' + +### Python 3.14 ############################################################# + [function.Py_TYPE] # Before 3.14, this was a macro that accessed the PyObject member added = '3.14' @@ -2616,6 +2660,9 @@ [function.Py_PACK_VERSION] added = '3.14' + +### Python 3.15 ############################################################# + [function.PySys_GetAttr] added = '3.15' [function.PySys_GetAttrString] @@ -2773,8 +2820,10 @@ added = '3.15' [const.Py_tp_module] added = '3.15' +[function.PyObject_CallFinalizerFromDealloc] + added = '3.15' -# PEP 757 import/export API. +# Python 3.15 PEP 757 import/export API. [function.PyLong_GetNativeLayout] added = '3.15' @@ -2800,7 +2849,7 @@ # (The definition of 'full-abi' was clarified when this entry was added.) struct_abi_kind = 'full-abi' -# PEP 788 finalization protection +# Python 3.15 PEP 788 finalization protection [struct.PyInterpreterGuard] added = '3.15' @@ -2830,5 +2879,8 @@ added = '3.15' struct_abi_kind = 'opaque' -[function.PyObject_CallFinalizerFromDealloc] - added = '3.15' + +### Python 3.16 ############################################################# + +[function.Py_HashBuffer] + added = '3.16'