diff options
| author | Antoine Pitrou <antoine@python.org> | 2019-05-29 22:12:38 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-05-29 22:12:38 +0200 |
| commit | ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8 (patch) | |
| tree | e908340371be04bce6b7676fd5f034aff3591a4a /Doc/whatsnew | |
| parent | 43fdbd2729cb7cdbb5afb5d16352f6604859e564 (diff) | |
| download | cpython-git-ada319bb6d0ebcc68d3e0ef2b4279ea061877ac8.tar.gz | |
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')
| -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 b4a8030917..5cd9a8edc7 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 ------------------------ |
