From 195fdf91c07236ab42d8f52af135dfe89d0d2dc8 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 14 Jun 2019 18:50:31 +0200 Subject: [PATCH 1/3] bpo-36707: Document "m" removed from sys.abiflags --- Doc/library/sys.rst | 4 ++++ Doc/whatsnew/3.8.rst | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst index 817c3f1e56f91f..c073431c894817 100644 --- a/Doc/library/sys.rst +++ b/Doc/library/sys.rst @@ -16,6 +16,10 @@ always available. On POSIX systems where Python was built with the standard ``configure`` script, this contains the ABI flags as specified by :pep:`3149`. + .. versionchanged:: 3.8 + Default flags became an empty string (``m`` flag for pymalloc has been + removed). + .. versionadded:: 3.2 diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index b63bcef5de4762..92db14aa764b60 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -955,6 +955,20 @@ Optimizations Build and C API Changes ======================= +* Default :data:`sys.abiflags` became an empty string: the ``m`` flag for + pymalloc became useless (builds with and without pymalloc are ABI compatible) + and so has been removed. (Contributed by Victor Stinner in :issue:`36707`.) + + Example of changes: + + * Only ``python3.8`` program is installed, ``python3.8m`` program is gone. + * Only ``python3.8-config`` script is installed, no ``python3.8m-config`` is + gone. + * The ``m`` flag has been removed from the suffix of dynamic library + filenames. On Linux, for example, the Python 3.7 suffix + ``.cpython-37m-x86_64-linux-gnu.so`` became + ``.cpython-38-x86_64-linux-gnu.so`` in Python 3.8. + * The header files have been reorganized to better separate the different kinds of APIs: From 988dd519bb7068afd0e00ce5910f741c2bf34a9a Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Fri, 14 Jun 2019 19:46:49 +0200 Subject: [PATCH 2/3] Address Ned's comment --- Doc/whatsnew/3.8.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index 92db14aa764b60..5b2fc4718ad6d0 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -965,7 +965,9 @@ Build and C API Changes * Only ``python3.8-config`` script is installed, no ``python3.8m-config`` is gone. * The ``m`` flag has been removed from the suffix of dynamic library - filenames. On Linux, for example, the Python 3.7 suffix + filenames: extension modules in the standard library as well as those + produced and installed by third-party packages, like those downloaded from + PyPI. On Linux, for example, the Python 3.7 suffix ``.cpython-37m-x86_64-linux-gnu.so`` became ``.cpython-38-x86_64-linux-gnu.so`` in Python 3.8. From 014343ba5d902d556b17e19823c342d372cee0c0 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sat, 15 Jun 2019 03:16:18 +0200 Subject: [PATCH 3/3] Fix typo --- Doc/whatsnew/3.8.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index 5b2fc4718ad6d0..cc3fb76e9c55fc 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -962,8 +962,8 @@ Build and C API Changes Example of changes: * Only ``python3.8`` program is installed, ``python3.8m`` program is gone. - * Only ``python3.8-config`` script is installed, no ``python3.8m-config`` is - gone. + * Only ``python3.8-config`` script is installed, ``python3.8m-config`` script + is gone. * The ``m`` flag has been removed from the suffix of dynamic library filenames: extension modules in the standard library as well as those produced and installed by third-party packages, like those downloaded from