diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2023-06-01 22:24:55 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-01 22:24:55 (GMT) |
commit | c38ceb032d59d6c8f2006ab9a347d7e207f9f84e (patch) | |
tree | a75d62f7309df274b9608acf59edfba201c129c4 /Misc/NEWS.d/next/C API | |
parent | 83c7386cee59d8dfe9fa8f5db80ab4afeb3a7b8a (diff) | |
download | cpython-c38ceb032d59d6c8f2006ab9a347d7e207f9f84e.zip cpython-c38ceb032d59d6c8f2006ab9a347d7e207f9f84e.tar.gz cpython-c38ceb032d59d6c8f2006ab9a347d7e207f9f84e.tar.bz2 |
[3.12] gh-105020: Share tp_bases and tp_mro Between Interpreters For All Static Builtin Types (gh-105115) (gh-105124)
In gh-103912 we added tp_bases and tp_mro to each PyInterpreterState.types.builtins entry. However, doing so ignored the fact that both PyTypeObject fields are public API, and not documented as internal (as opposed to tp_subclasses). We address that here by reverting back to shared objects, making them immortal in the process.
(cherry picked from commit 7be667d)
Co-authored-by: Eric Snow ericsnowcurrently@gmail.com
Diffstat (limited to 'Misc/NEWS.d/next/C API')
-rw-r--r-- | Misc/NEWS.d/next/C API/2023-05-30-17-45-32.gh-issue-105115.iRho1K.rst | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/C API/2023-05-30-17-45-32.gh-issue-105115.iRho1K.rst b/Misc/NEWS.d/next/C API/2023-05-30-17-45-32.gh-issue-105115.iRho1K.rst new file mode 100644 index 0000000..595cc0e --- /dev/null +++ b/Misc/NEWS.d/next/C API/2023-05-30-17-45-32.gh-issue-105115.iRho1K.rst @@ -0,0 +1,3 @@ +``PyTypeObject.tp_bases`` (and ``tp_mro``) for builtin static types are now +shared by all interpreters, whereas in 3.12-beta1 they were stored on +``PyInterpreterState``. Also note that now the tuples are immortal objects. |