]> granicus.if.org Git - python/commitdiff
bpo-36722: Add What's New entry for debug ABI (GH-12957)
authorVictor Stinner <vstinner@redhat.com>
Fri, 26 Apr 2019 15:56:44 +0000 (17:56 +0200)
committerGitHub <noreply@github.com>
Fri, 26 Apr 2019 15:56:44 +0000 (17:56 +0200)
Doc/whatsnew/3.8.rst

index 4cb9c4f0f20e94a74062f15b062a1bf5807054bf..444625040afb2e529b1d821cf3d2594772e76692 100644 (file)
@@ -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
 ======================