diff options
author | Antoine Pitrou <antoine@python.org> | 2019-05-29 20:12:38 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-29 20:12:38 (GMT) |
commit | ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8 (patch) | |
tree | e908340371be04bce6b7676fd5f034aff3591a4a /Doc/whatsnew/3.8.rst | |
parent | 43fdbd2729cb7cdbb5afb5d16352f6604859e564 (diff) | |
download | cpython-ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8.zip cpython-ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8.tar.gz cpython-ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8.tar.bz2 |
bpo-32388: Remove cross-version binary compatibility requirement in tp_flags (GH-4944)
It is now allowed to add new fields at the end of the PyTypeObject struct without having to allocate a dedicated compatibility flag in tp_flags.
This will reduce the risk of running out of bits in the 32-bit tp_flags value.
Diffstat (limited to 'Doc/whatsnew/3.8.rst')
-rw-r--r-- | Doc/whatsnew/3.8.rst | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index b4a8030..5cd9a8e 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -1265,6 +1265,15 @@ Changes in the C API (Contributed by Zackery Spytz in :issue:`33407`.) +* The interpreter does not pretend to support binary compatibility of + extension types accross feature releases, anymore. A :c:type:`PyTypeObject` + exported by a third-party extension module is supposed to have all the + slots expected in the current Python version, including + :c:member:`~PyTypeObject.tp_finalize` (:const:`Py_TPFLAGS_HAVE_FINALIZE` + is not checked anymore before reading :c:member:`~PyTypeObject.tp_finalize`). + + (Contributed by Antoine Pitrou in :issue:`32388`.) + CPython bytecode changes ------------------------ |