Skip to content

Commit

Permalink
bpo-36722: Style and grammar edits for ABI news entries (pythonGH-12979)
Browse files Browse the repository at this point in the history
  • Loading branch information
pganssle authored and vstinner committed Apr 27, 2019
1 parent 55d0351 commit 5c403b2
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 22 deletions.
25 changes: 13 additions & 12 deletions Doc/whatsnew/3.8.rst
Original file line number Diff line number Diff line change
Expand Up @@ -101,20 +101,21 @@ subdirectories).
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.
Python now uses the same ABI whether it built in release or debug mode. On
Unix, when Python is built in debug mode, it is now possible to load C
extensions built in release mode and C extensions built using the stable ABI.

Release builds and debug builds are now ABI compatible: defining the
``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro, which
introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` macro, which
adds the :func:`sys.getobjects` function and the :envvar:`PYTHONDUMPREFS`
environment variable, can be set using the new ``./configure --with-trace-refs``
build option.
(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.
On Unix, C extensions are no longer linked to libpython. It is now possible
for a statically linked Python to load a C extension built using a shared
library Python.
(Contributed by Victor Stinner in :issue:`21536`.)

On Unix, when Python is built in debug mode, import now also looks for C
Expand Down
11 changes: 6 additions & 5 deletions Misc/NEWS.d/next/Build/2019-04-09-18-19-43.bpo-36465.-w6vx6.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Release build and debug build are now ABI compatible: the ``Py_DEBUG`` define
no longer implies ``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 ``PYTHONDUMPREFS`` environment variable.
Release builds and debug builds are now ABI compatible: defining the
``Py_DEBUG`` macro no longer implies the ``Py_TRACE_REFS`` macro, which
introduces the only ABI incompatibility. The ``Py_TRACE_REFS`` macro, which
adds the :func:`sys.getobjects` function and the :envvar:`PYTHONDUMPREFS`
environment variable, can be set using the new ``./configure --with-trace-refs``
build option.
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
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.
It is now possible for a statically linked Python to load a C extension built
using a shared library Python.

When Python is embedded, ``libpython`` must not be loaded with ``RTLD_LOCAL``,
but ``RTLD_GLOBAL`` instead. Previously, using ``RTLD_LOCAL``, it was already
not possible to load C extensions which were not linked to ``libpython``, like
C extensions of the standard library built by the ``*shared*`` section of
not possible to load C extensions which were not linked to ``libpython``, such
as C extensions of the standard library built by the ``*shared*`` section of
``Modules/Setup``.

distutils, python-config and python-config.py have been modified.
2 changes: 1 addition & 1 deletion Misc/SpecialBuilds.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
This file describes some special Python build types enabled via compile-time
preprocessor defines.
preprocessor directives.

IMPORTANT: if you want to build a debug-enabled Python, it is recommended that
you use ``./configure --with-pydebug``, rather than the options listed here.
Expand Down

0 comments on commit 5c403b2

Please sign in to comment.