bpo-36722: Add What's New entry for debug ABI (GH-12957)
https://github.com/python/cpython/commit/404606974051c5ec093312aa57cf1bcbc52... commit: 404606974051c5ec093312aa57cf1bcbc52e1d85 branch: master author: Victor Stinner <vstinner@redhat.com> committer: GitHub <noreply@github.com> date: 2019-04-26T17:56:44+02:00 summary: bpo-36722: Add What's New entry for debug ABI (GH-12957) files: M Doc/whatsnew/3.8.rst diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index 4cb9c4f0f20e..444625040afb 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -98,6 +98,30 @@ subdirectories). (Contributed by Carl Meyer in :issue:`33499`.) +Debug build uses the same ABI as release build +----------------------------------------------- + +Python now uses the same ABI when built in release and in debug mode. On Unix, +when Python is build in debug mode, it is now possible to load C extensions +built in release mode and C extensions built using the stable ABI. + +Release build and debug build are now ABI compatible: the ``Py_DEBUG`` define +no longer implies the ``Py_TRACE_REFS`` define which introduces the only ABI +incompatibility. A new ``./configure --with-trace-refs`` build option is now +required to get ``Py_TRACE_REFS`` define which adds :func:`sys.getobjects` +function and :envvar:`PYTHONDUMPREFS` environment variable. +(Contributed by Victor Stinner in :issue:`36465`.) + +On Unix, C extensions are no longer linked to libpython. It is now possible to +load a C extension built using a shared library Python +with a statically linked Python. +(Contributed by Victor Stinner in :issue:`21536`.) + +On Unix, when Python is built in debug mode, import now also looks for C +extensions compiled in release mode and for C extensions compiled with the +stable ABI. +(Contributed by Victor Stinner in :issue:`36722`.) + Other Language Changes ======================
participants (1)
-
Victor Stinner