-
-
Notifications
You must be signed in to change notification settings - Fork 31.7k
[C API] Py_MOD_PER_INTERPRETER_GIL_SUPPORTED added to limited C API without versionning #110968
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
* Only add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED to limited C API version 3.13. * errno, xxlimited and _ctypes_test extensions now need the limited C API version 3.13 to get Py_MOD_PER_INTERPRETER_GIL_SUPPORTED. They now include standard header files explicitly: <errno.h>, <string.h> and <stdio.h>. * xxlimited_35: Remove Py_mod_multiple_interpreters slot, incompatible with limited C API version 3.5.
* Only add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED to limited C API version 3.13. * errno, xxlimited and _ctypes_test extensions now need the limited C API version 3.13 to get Py_MOD_PER_INTERPRETER_GIL_SUPPORTED. They now include standard header files explicitly: <errno.h>, <string.h> and <stdio.h>. * xxlimited_35: Remove Py_mod_multiple_interpreters slot, incompatible with limited C API version 3.5.
* Only add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED to limited C API version 3.13. * errno, xxlimited and _ctypes_test extensions now need the limited C API version 3.13 to get Py_MOD_PER_INTERPRETER_GIL_SUPPORTED. They now include standard header files explicitly: <errno.h>, <string.h> and <stdio.h>. * xxlimited_35: Remove Py_mod_multiple_interpreters slot, incompatible with limited C API version 3.5.
IMO it's harmless to include these, even if they'd just be treated as false/true on older versions. The bigger problem here is the slot ID, |
Yeah, it was definitely unintentional to expose any of these in the wrong place. Also, they were added to 3.12 (1c420e1), right before feature freeze. Would we be okay to add the version ifdefs in 3.12.1? (I'd think so, but I sometimes get this subtle sort of compatibility concern wrong.)
Agreed. gh-110969 missed fixing it. |
Constants like Py_MOD_PER_INTERPRETER_GIL_SUPPORTED were only added to the limited C API version 3.12 and newer.
….12 (#111588) Constants like Py_MOD_PER_INTERPRETER_GIL_SUPPORTED were only added to the limited C API version 3.12 and newer.
Thanks for taking care of this, @vstinner! |
… Py_LIMITED_API (pythongh-111707) This should have been done in pythongh-104148. (A similar fix has already be done for that slot's value macros, and backported to 3.12. See pythongh-110968.) (cherry picked from commit 836e0a7) Co-authored-by: Eric Snow <[email protected]>
… Py_LIMITED_API (pythongh-111707) This should have been done in pythongh-104148. (A similar fix has already be done for that slot's value macros, and backported to 3.12. See pythongh-110968.)
…ython#110969) * Only add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED to limited C API version 3.13. * errno, xxlimited and _ctypes_test extensions now need the limited C API version 3.13 to get Py_MOD_PER_INTERPRETER_GIL_SUPPORTED. They now include standard header files explicitly: <errno.h>, <string.h> and <stdio.h>. * xxlimited_35: Remove Py_mod_multiple_interpreters slot, incompatible with limited C API version 3.5.
… Py_LIMITED_API (pythongh-111707) This should have been done in pythongh-104148. (A similar fix has already be done for that slot's value macros, and backported to 3.12. See pythongh-110968.)
…ython#110969) * Only add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED to limited C API version 3.13. * errno, xxlimited and _ctypes_test extensions now need the limited C API version 3.13 to get Py_MOD_PER_INTERPRETER_GIL_SUPPORTED. They now include standard header files explicitly: <errno.h>, <string.h> and <stdio.h>. * xxlimited_35: Remove Py_mod_multiple_interpreters slot, incompatible with limited C API version 3.5.
… Py_LIMITED_API (pythongh-111707) This should have been done in pythongh-104148. (A similar fix has already be done for that slot's value macros, and backported to 3.12. See pythongh-110968.)
Three constants for PyModuleDef_Slot were added to the limited C API in Python 3.13:
Problem: there are added without version, as if they are available on Python 3.12 and older, whereas it's not the case.
cc @encukou @ericsnowcurrently
Linked PRs
The text was updated successfully, but these errors were encountered: