
Reference configuration, replacing global configuration variables and

This PEP also adds _PyRuntimeState.preconfig ( PyPreConfig type)Īnd nfig ( P圜onfig type) fields to these Providing finer control on the whole configuration and better error reporting. The PEP 587 adds a new C API to configure the Python Initialization PEP 587: Python Initialization Configuration ¶ (Contributed by Victor Stinner in bpo-36721.) This change is backward incompatible on purpose. C extensions must not be linked to libpython (except onĪndroid and Cygwin, whose cases are handled by the script) On the other hand, pkg-config python3.8 -libs no longer contains Previous command fails (replace X.Y with the Python version). To support both 3.8 and older, try pkg-config python-X.Y-embed -libs firstĪnd fallback to pkg-config python-X.Y -libs (without -embed) if the To support both 3.8 and older, try python3-config -libs -embed first and fallback to python3-config -libs (without -embed)Īdd a pkg-config python-3.8-embed module to embed Python into anĪpplication: pkg-config python-3.8-embed -libs includes -lpython3.8. Python3-config -libs -embed to get -lpython3.8 (link the application To embed Python into an application, a new -embed option must be passed to (Contributed by Victor Stinner in bpo-36722.) On Unix, when Python is built in debug mode, import now also looks for CĮxtensions compiled in release mode and for C extensions compiled with the (Contributed by Victor Stinner in bpo-21536.) On Unix, C extensions are no longer linked to libpython except on Androidįor a statically linked Python to load a C extension built using a shared (Contributed by Victor Stinner in bpo-36465.) configure -with-trace-refs build option.

The Py_TRACE_REFS macro, whichĪdds the sys.getobjects() function and the PYTHONDUMPREFSĮnvironment variable, can be set using the new. Py_DEBUG macro no longer implies the Py_TRACE_REFS macro, which Release builds and debug builds are now ABI compatible: defining the Unix, when Python is built in debug mode, it is now possible to load CĮxtensions built in release mode and C extensions built using the stable ABI. Python now uses the same ABI whether it’s built in release or debug mode. Pickle protocol 5 with out-of-band data buffersĭebug build uses the same ABI as release build ¶.PEP 590: Vectorcall: a fast calling protocol for CPython.PEP 587: Python Initialization Configuration.

f-strings support = for self-documenting expressions and debugging.Debug build uses the same ABI as release build.Parallel filesystem cache for compiled bytecode files.
