◐ Shell
clean mode source ↗

Message 410442 - Python tracker

I prepared 3 pull requests to revert the commit 7247407c35330f3f6292f1d40606b7ba6afd5700:

* PR 30564: main branch
* PR 30565: 3.10 branch
* PR 30566: 3.9 branch

The problem is that the "Check if the ABI has changed" CI job fails in 3.9 and 3.10 branches.

I recently had the issue for a different revert in bpo-46006: I decided to keep the "removed" member, and mark it as "unused". See the commit 72c260cf0c71eb01eb13100b751e9d5007d00b70 in the 3.10 branch:

struct _Py_unicode_state {
(...)

-    PyObject *interned;

+    // Unused member kept for ABI backward compatibility with Python 3.10.0:
+    // see bpo-46006.
+    PyObject *unused_interned;

(...)
}


I can keep the "gc" member in PyInterpreterState, but adding a new "gc" member in the _PyRuntimeState structure also causes the ABI CI check to fail.