.. bpo: 38576
.. date: 2020-03-14-14-57-44
.. nonce: OowwQn
.. release date: 2020-03-23
.. section: Security

Disallow control characters in hostnames in http.client, addressing
CVE-2019-18348. Such potentially malicious header injection URLs now cause a
InvalidURL to be raised.

..

.. bpo: 40010
.. date: 2020-03-20-13-51-55
.. nonce: QGf5s8
.. section: Core and Builtins

Optimize pending calls in multithreaded applications. If a thread different
than the main thread schedules a pending call (:c:func:`Py_AddPendingCall`),
the bytecode evaluation loop is no longer interrupted at each bytecode
instruction to check for pending calls which cannot be executed. Only the
main thread can execute pending calls.

Previously, the bytecode evaluation loop was interrupted at each instruction
until the main thread executes pending calls.

..

.. bpo: 1635741
.. date: 2020-03-20-13-42-35
.. nonce: bhIu5M
.. section: Core and Builtins

Port _weakref extension module to multiphase initialization (:pep:`489`).

..

.. bpo: 1635741
.. date: 2020-03-19-23-34-22
.. nonce: ayunLM
.. section: Core and Builtins

Port _collections module to multiphase initialization (:pep:`489`).

..

.. bpo: 40010
.. date: 2020-03-19-02-26-13
.. nonce: Y-LIR0
.. section: Core and Builtins

Optimize signal handling in multithreaded applications. If a thread
different than the main thread gets a signal, the bytecode evaluation loop
is no longer interrupted at each bytecode instruction to check for pending
signals which cannot be handled. Only the main thread of the main
interpreter can handle signals.

Previously, the bytecode evaluation loop was interrupted at each instruction
until the main thread handles signals.

..

.. bpo: 39984
.. date: 2020-03-19-00-45-37
.. nonce: u-bHIq
.. section: Core and Builtins

If :c:func:`Py_AddPendingCall` is called in a subinterpreter, the function
is now scheduled to be called from the subinterpreter, rather than being
called from the main interpreter. Each subinterpreter now has its own list
of scheduled calls.

..

.. bpo: 1635741
.. date: 2020-03-18-19-48-53
.. nonce: ELEihr
.. section: Core and Builtins

Port _heapq module to multiphase initialization.

..

.. bpo: 1635741
.. date: 2020-03-18-00-17-26
.. nonce: 7AtdhP
.. section: Core and Builtins

Port itertools module to multiphase initialization (:pep:`489`).

..

.. bpo: 37207
.. date: 2020-03-17-22-35-29
.. nonce: sBAV1j
.. section: Core and Builtins

Speed up calls to ``frozenset()`` by using the :pep:`590` ``vectorcall``
calling convention. Patch by Dong-hee Na.

..

.. bpo: 39984
.. date: 2020-03-17-01-55-33
.. nonce: y5Chgb
.. section: Core and Builtins

subinterpreters: Move ``_PyRuntimeState.ceval.tracing_possible`` to
``PyInterpreterState.ceval.tracing_possible``: each interpreter now has its
own variable.

..

.. bpo: 37207
.. date: 2020-03-15-23-16-00
.. nonce: 6XbnQA
.. section: Core and Builtins

Speed up calls to ``set()`` by using the :pep:`590` ``vectorcall`` calling
convention. Patch by Dong-hee Na.

..

.. bpo: 1635741
.. date: 2020-03-15-20-51-15
.. nonce: iH0JND
.. section: Core and Builtins

Port _statistics module to multiphase initialization (:pep:`489`).

..

.. bpo: 39968
.. date: 2020-03-15-13-51-10
.. nonce: f-Xi39
.. section: Core and Builtins

Use inline function to replace extension modules' get_module_state macros.

..

.. bpo: 39965
.. date: 2020-03-15-03-52-01
.. nonce: Od3ZdP
.. section: Core and Builtins

Correctly raise ``SyntaxError`` if *await* is used inside non-async
functions and ``PyCF_ALLOW_TOP_LEVEL_AWAIT`` is set (like in the asyncio
REPL). Patch by Pablo Galindo.

..

.. bpo: 39562
.. date: 2020-03-12-22-13-50
.. nonce: E2u273
.. section: Core and Builtins

Allow executing asynchronous comprehensions on the top level when the
``PyCF_ALLOW_TOP_LEVEL_AWAIT`` flag is given. Patch by Batuhan Taskaya.

..

.. bpo: 37207
.. date: 2020-03-12-02-41-12
.. nonce: ye7OM3
.. section: Core and Builtins

Speed up calls to ``tuple()`` by using the :pep:`590` ``vectorcall`` calling
convention. Patch by Dong-hee Na.

..

.. bpo: 38373
.. date: 2020-03-11-12-28-16
.. nonce: FE9S21
.. section: Core and Builtins

Chaged list overallocation strategy. It no longer overallocates if the new
size is closer to overalocated size than to the old size and adds padding.

..

.. bpo: 39926
.. date: 2020-03-10-19-14-42
.. nonce: H19bAa
.. section: Core and Builtins

Update Unicode database to Unicode version 13.0.0.

..

.. bpo: 19466
.. date: 2020-03-08-12-11-38
.. nonce: OdOpXP
.. section: Core and Builtins

Clear the frames of daemon threads earlier during the Python shutdown to
call objects destructors. So "unclosed file" resource warnings are now
emitted for daemon threads in a more reliable way.

..

.. bpo: 38894
.. date: 2020-03-06-21-04-39
.. nonce: nfcGKv
.. section: Core and Builtins

Fix a bug that was causing incomplete results when calling
``pathlib.Path.glob`` in the presence of symlinks that point to files where
the user does not have read access. Patch by Pablo Galindo and Matt
Wozniski.

..

.. bpo: 39877
.. date: 2020-03-06-18-30-00
.. nonce: bzd1y0
.. section: Core and Builtins

Fix :c:func:`PyEval_RestoreThread` random crash at exit with daemon threads.
It now accesses the ``_PyRuntime`` variable directly instead of using
``tstate->interp->runtime``, since ``tstate`` can be a dangling pointer
after :c:func:`Py_Finalize` has been called. Moreover, the daemon thread now
exits before trying to take the GIL.

..

.. bpo: 39871
.. date: 2020-03-06-06-12-37
.. nonce: dCAj_2
.. section: Core and Builtins

Fix a possible :exc:`SystemError` in ``math.{atan2,copysign,remainder}()``
when the first argument cannot be converted to a :class:`float`. Patch by
Zachary Spytz.

..

.. bpo: 39776
.. date: 2020-03-02-20-12-33
.. nonce: fNaxi_
.. section: Core and Builtins

Fix race condition where threads created by PyGILState_Ensure() could get a
duplicate id.

This affects consumers of tstate->id like the contextvar caching machinery,
which could return invalid cached objects under heavy thread load (observed
in embedded scenarios).

..

.. bpo: 39778
.. date: 2020-03-02-19-21-21
.. nonce: _YGLEc
.. section: Core and Builtins

Fixed a crash due to incorrect handling of weak references in
``collections.OrderedDict`` classes. Patch by Pablo Galindo.

..

.. bpo: 1635741
.. date: 2020-02-22-14-33-59
.. nonce: BTJ0cX
.. section: Core and Builtins

Port audioop extension module to multiphase initialization (:pep:`489`).

..

.. bpo: 39702
.. date: 2020-02-20-08-12-52
.. nonce: 4_AmyF
.. section: Core and Builtins

Relax :term:`decorator` grammar restrictions to allow any valid expression
(:pep:`614`).

..

.. bpo: 38091
.. date: 2020-02-14-23-10-07
.. nonce: pwR0K7
.. section: Core and Builtins

Tweak import deadlock detection code to not deadlock itself.

..

.. bpo: 1635741
.. date: 2020-02-05-07-55-57
.. nonce: H_tCC9
.. section: Core and Builtins

Port _locale extension module to multiphase initialization (:pep:`489`).

..

.. bpo: 39087
.. date: 2020-02-03-21-12-39
.. nonce: YnbUpL
.. section: Core and Builtins

Optimize :c:func:`PyUnicode_AsUTF8` and :c:func:`PyUnicode_AsUTF8AndSize`
slightly when they need to create internal UTF-8 cache.

..

.. bpo: 39520
.. date: 2020-02-02-00-12-07
.. nonce: uicBq6
.. section: Core and Builtins

Fix unparsing of ext slices with no items (``foo[:,]``). Patch by Batuhan
Taskaya.

..

.. bpo: 39220
.. date: 2020-01-06-13-58-37
.. nonce: KGFovE
.. section: Core and Builtins

Do not optimize annotations if 'from __future__ import annotations' is used.
Patch by Pablo Galindo.

..

.. bpo: 35712
.. date: 2019-05-08-11-11-45
.. nonce: KJthus
.. section: Core and Builtins

Using :data:`NotImplemented` in a boolean context has been deprecated. Patch
contributed by Josh Rosenberg.

..

.. bpo: 22490
.. date: 2018-09-23-16-32-58
.. nonce: 8e0YDf
.. section: Core and Builtins

Don't leak environment variable ``__PYVENV_LAUNCHER__`` into the interpreter
session on macOS.

..

.. bpo: 39830
.. date: 2020-03-23-05-21-13
.. nonce: IkqU1Y
.. section: Library

Add :class:`zipfile.Path` to ``__all__`` in the :mod:`zipfile` module.

..

.. bpo: 40000
.. date: 2020-03-18-12-54-25
.. nonce: FnsPZC
.. section: Library

Improved error messages for validation of ``ast.Constant`` nodes. Patch by
Batuhan Taskaya.

..

.. bpo: 39999
.. date: 2020-03-18-11-50-25
.. nonce: 8aOXDT
.. section: Library

``__module__`` of the AST node classes is now set to "ast" instead of
"_ast". Added docstrings for dummy AST node classes and deprecated
attributes.

..

.. bpo: 39991
.. date: 2020-03-17-12-40-38
.. nonce: hLPPs4
.. section: Library

:func:`uuid.getnode` now skips IPv6 addresses with the same string length
than a MAC address (17 characters): only use MAC addresses.

..

.. bpo: 39988
.. date: 2020-03-17-09-35-00
.. nonce: kXGl35
.. section: Library

Deprecated ``ast.AugLoad`` and ``ast.AugStore`` node classes because they
are no longer used.

..

.. bpo: 39656
.. date: 2020-03-16-11-38-45
.. nonce: MaNOgm
.. section: Library

Ensure ``bin/python3.#`` is always present in virtual environments on POSIX
platforms - by Anthony Sottile.

..

.. bpo: 39969
.. date: 2020-03-15-17-56-48
.. nonce: 6snm0c
.. section: Library

Deprecated ``ast.Param`` node class because it's no longer used. Patch by
Batuhan Taskaya.

..

.. bpo: 39360
.. date: 2020-03-15-05-41-05
.. nonce: cmcU5p
.. section: Library

Ensure all workers exit when finalizing a :class:`multiprocessing.Pool`
implicitly via the module finalization handlers of multiprocessing. This
fixes a deadlock situation that can be experienced when the Pool is not
properly finalized via the context manager or a call to
``multiprocessing.Pool.terminate``. Patch by Batuhan Taskaya and Pablo
Galindo.

..

.. bpo: 35370
.. date: 2020-03-13-14-41-28
.. nonce: df50Q7
.. section: Library

sys.settrace(), sys.setprofile() and _lsprof.Profiler.enable() now properly
report :c:func:`PySys_Audit` error if "sys.setprofile" or "sys.settrace"
audit event is denied.

..

.. bpo: 39936
.. date: 2020-03-12-21-59-47
.. nonce: Ca9IKe
.. section: Library

AIX: Fix _aix_support module when the subprocess is not available, when
building Python from scratch. It now uses new private _bootsubprocess
module, rather than having two implementations depending if subprocess is
available or not. So _aix_support.aix_platform() result is now the same if
subprocess is available or not.

..

.. bpo: 36144
.. date: 2020-03-12-11-55-16
.. nonce: 9bxGH_
.. section: Library

:class:`collections.OrderedDict` now implements ``|`` and ``|=``
(:pep:`584`).

..

.. bpo: 39652
.. date: 2020-03-11-23-08-25
.. nonce: gbasrk
.. section: Library

The column name found in ``sqlite3.Cursor.description`` is now truncated on
the first '[' only if the PARSE_COLNAMES option is set.

..

.. bpo: 39915
.. date: 2020-03-10-19-38-47
.. nonce: CjPeiY
.. section: Library

Ensure :attr:`unittest.mock.AsyncMock.await_args_list` has call objects in
the order of awaited arguments instead of using
:attr:`unittest.mock.Mock.call_args` which has the last value of the call.
Patch by Karthikeyan Singaravelan.

..

.. bpo: 36144
.. date: 2020-03-10-19-22-31
.. nonce: LABm7W
.. section: Library

Updated :data:`os.environ` and :data:`os.environb` to support :pep:`584`'s
merge (``|``) and update (``|=``) operators.

..

.. bpo: 38662
.. date: 2020-03-10-15-32-31
.. nonce: o1DMXj
.. section: Library

The ``ensurepip`` module now invokes ``pip`` via the ``runpy`` module. Hence
it is no longer tightly coupled with the internal API of the bundled ``pip``
version, allowing easier updates to a newer ``pip`` version both internally
and for distributors.

..

.. bpo: 38075
.. date: 2020-03-10-12-52-06
.. nonce: qbESAF
.. section: Library

Fix the :meth:`random.Random.seed` method when a :class:`bool` is passed as
the seed.

..

.. bpo: 39916
.. date: 2020-03-09-18-56-27
.. nonce: BHHyp3
.. section: Library

More reliable use of ``os.scandir()`` in ``Path.glob()``. It no longer emits
a ResourceWarning when interrupted.

..

.. bpo: 39850
.. date: 2020-03-09-01-45-06
.. nonce: eaJNIE
.. section: Library

:mod:`multiprocessing` now supports abstract socket addresses (if abstract
sockets are supported in the running platform). When creating arbitrary
addresses (like when default-constructing
:class:`multiprocessing.connection.Listener` objects) abstract sockets are
preferred to avoid the case when the temporary-file-generated address is too
large for an AF_UNIX socket address. Patch by Pablo Galindo.

..

.. bpo: 36287
.. date: 2020-03-08-09-53-55
.. nonce: mxr5m8
.. section: Library

:func:`ast.dump()` no longer outputs optional fields and attributes with
default values. The default values for optional fields and attributes of AST
nodes are now set as class attributes (e.g. ``Constant.kind`` is set to
``None``).

..

.. bpo: 39889
.. date: 2020-03-07-16-44-51
.. nonce: 3RYqeX
.. section: Library

Fixed :func:`ast.unparse` for extended slices containing a single element
(e.g. ``a[i:j,]``). Remove redundant tuples when index with a tuple (e.g.
``a[i, j]``).

..

.. bpo: 39828
.. date: 2020-03-05-00-57-49
.. nonce: yWq9NJ
.. section: Library

Fix :mod:`json.tool` to catch :exc:`BrokenPipeError`. Patch by Dong-hee Na.

..

.. bpo: 13487
.. date: 2020-03-04-16-10-59
.. nonce: gqe4Fb
.. section: Library

Avoid a possible *"RuntimeError: dictionary changed size during iteration"*
from :func:`inspect.getmodule` when it tried to loop through
:attr:`sys.modules`.

..

.. bpo: 39674
.. date: 2020-03-03-16-21-41
.. nonce: HJVkD5
.. section: Library

Revert "bpo-37330: open() no longer accept 'U' in file mode". The "U" mode
of open() is kept in Python 3.9 to ease transition from Python 2.7, but will
be removed in Python 3.10.

..

.. bpo: 28577
.. date: 2020-03-02-23-52-38
.. nonce: EK91ae
.. section: Library

The hosts method on 32-bit prefix length IPv4Networks and 128-bit prefix
IPv6Networks now returns a list containing the single Address instead of an
empty list.

..

.. bpo: 39826
.. date: 2020-03-02-15-15-01
.. nonce: DglHk7
.. section: Library

Add getConnection method to logging HTTPHandler to enable custom
connections.

..

.. bpo: 39763
.. date: 2020-03-02-14-43-19
.. nonce: 5a822c
.. section: Library

Reimplement :func:`distutils.spawn.spawn` function with the
:mod:`subprocess` module.

..

.. bpo: 39794
.. date: 2020-02-29-19-17-39
.. nonce: 7VjatS
.. section: Library

Add --without-decimal-contextvar build option.  This enables a thread-local
rather than a coroutine local context.

..

.. bpo: 36144
.. date: 2020-02-29-15-54-08
.. nonce: 4GgTZs
.. section: Library

:class:`collections.defaultdict` now implements ``|`` (:pep:`584`).

..

.. bpo: 39517
.. date: 2020-02-29-11-20-50
.. nonce: voQZb8
.. section: Library

Fix runpy.run_path() when using pathlike objects

..

.. bpo: 39775
.. date: 2020-02-28-16-42-16
.. nonce: IuSvVb
.. section: Library

Change ``inspect.Signature.parameters`` back to ``collections.OrderedDict``.
This was changed to ``dict`` in Python 3.9.0a4.

..

.. bpo: 39678
.. date: 2020-02-28-12-59-30
.. nonce: 3idfxM
.. section: Library

Refactor queue_manager in :class:`concurrent.futures.ProcessPoolExecutor` to
make it easier to maintain.

..

.. bpo: 39764
.. date: 2020-02-27-18-21-07
.. nonce: wqPk68
.. section: Library

Fix AttributeError when calling get_stack on a PyAsyncGenObject Task

..

.. bpo: 39769
.. date: 2020-02-27-00-40-21
.. nonce: hJmxu4
.. section: Library

The :func:`compileall.compile_dir` function's *ddir* parameter and the
compileall command line flag `-d` no longer write the wrong pathname to the
generated pyc file for submodules beneath the root of the directory tree
being compiled.  This fixes a regression introduced with Python 3.5.

..

.. bpo: 36144
.. date: 2020-02-25-09-28-06
.. nonce: Rbvvi7
.. section: Library

:class:`types.MappingProxyType` objects now support the merge (``|``)
operator from :pep:`584`.

..

.. bpo: 38691
.. date: 2020-02-23-02-09-03
.. nonce: oND8Sk
.. section: Library

The :mod:`importlib` module now ignores the :envvar:`PYTHONCASEOK`
environment variable when the :option:`-E` or :option:`-I` command line
options are being used.

..

.. bpo: 39719
.. date: 2020-02-21-22-35-57
.. nonce: 2jLy1C
.. section: Library

Remove :meth:`tempfile.SpooledTemporaryFile.softspace` as files no longer
have the ``softspace`` attribute in Python 3. Patch by Shantanu.

..

.. bpo: 39667
.. date: 2020-02-17-22-38-15
.. nonce: QuzEHH
.. section: Library

Improve pathlib.Path compatibility on zipfile.Path and correct performance
degradation as found in zipp 3.0.

..

.. bpo: 39638
.. date: 2020-02-15-20-38-11
.. nonce: wm_RS3
.. section: Library

Keep ASDL signatures in the docstrings for ``AST`` nodes. Patch by Batuhan
Taskaya

..

.. bpo: 39639
.. date: 2020-02-15-15-29-34
.. nonce: 3mqJjm
.. section: Library

Deprecated ``ast.Suite`` node class because it's no longer used. Patch by
Batuhan Taskaya.

..

.. bpo: 39609
.. date: 2020-02-11-19-45-31
.. nonce: dk40Uw
.. section: Library

Add thread_name_prefix to default asyncio executor

..

.. bpo: 39548
.. date: 2020-02-06-05-33-52
.. nonce: DF4FFe
.. section: Library

Fix handling of header in :class:`urllib.request.AbstractDigestAuthHandler`
when the optional ``qop`` parameter is not present.

..

.. bpo: 39509
.. date: 2020-02-01-00-03-06
.. nonce: -YxUSf
.. section: Library

HTTP status codes ``103 EARLY_HINTS`` and ``425 TOO_EARLY`` are added to
:class:`http.HTTPStatus`. Patch by Dong-hee Na.

..

.. bpo: 39507
.. date: 2020-01-31-14-24-05
.. nonce: 3oln1a
.. section: Library

Adding HTTP status 418 "I'm a Teapot" to HTTPStatus in http library. Patch
by Ross Rhodes.

..

.. bpo: 39495
.. date: 2020-01-30-07-02-02
.. nonce: 8LsIRN
.. section: Library

Remove default value from *attrs* parameter of
:meth:`xml.etree.ElementTree.TreeBuilder.start` for consistency between
Python and C implementations.

..

.. bpo: 38971
.. date: 2019-12-20-16-06-28
.. nonce: fKRYlF
.. section: Library

Open issue in the BPO indicated a desire to make the implementation of
codecs.open() at parity with io.open(), which implements a try/except to
assure file stream gets closed before an exception is raised.

..

.. bpo: 38641
.. date: 2019-10-30-15-31-09
.. nonce: HrTL9k
.. section: Library

Added starred expressions support to ``return`` and ``yield`` statements for
``lib2to3``. Patch by Vlad Emelianov.

..

.. bpo: 37534
.. date: 2019-08-20-00-02-37
.. nonce: TvjAUi
.. section: Library

When using minidom module to generate XML documents the ability to add
Standalone Document Declaration is added. All the changes are made to
generate a document in compliance with Extensible Markup Language (XML) 1.0
(Fifth Edition) W3C Recommendation (available here:
https://www.w3.org/TR/xml/#sec-prolog-dtd).

..

.. bpo: 34788
.. date: 2019-07-17-08-26-14
.. nonce: pwV1OK
.. section: Library

Add support for scoped IPv6 addresses to :mod:`ipaddress`. Patch by
Oleksandr Pavliuk.

..

.. bpo: 34822
.. date: 2018-09-27-19-31-47
.. nonce: EztBhL
.. section: Library

Simplified AST for subscription. Simple indices are now represented by their
value, extended slices are represented as tuples.  :mod:`ast` classes
``Index`` and ``ExtSlice`` are considered deprecated and will be removed in
future Python versions. In the meantime, ``Index(value)`` now returns a
``value`` itself, ``ExtSlice(slices)`` returns ``Tuple(slices, Load())``.

..

.. bpo: 39868
.. date: 2020-03-05-16-29-03
.. nonce: JQoHhO
.. section: Documentation

Updated the Language Reference for :pep:`572`.

..

.. bpo: 13790
.. date: 2020-02-28-14-39-25
.. nonce: hvLaRI
.. section: Documentation

Change 'string' to 'specification' in format doc.

..

.. bpo: 17422
.. date: 2020-02-27-17-35-27
.. nonce: eS1hVh
.. section: Documentation

The language reference no longer restricts default class namespaces to dicts
only.

..

.. bpo: 39530
.. date: 2020-02-23-13-26-40
.. nonce: _bCvzQ
.. section: Documentation

Fix misleading documentation about mixed-type numeric comparisons.

..

.. bpo: 39718
.. date: 2020-02-21-22-05-20
.. nonce: xtBoSi
.. section: Documentation

Update :mod:`token` documentation to reflect additions in Python 3.8

..

.. bpo: 39677
.. date: 2020-02-18-14-28-31
.. nonce: vNHqoX
.. section: Documentation

Changed operand name of **MAKE_FUNCTION** from *argc* to *flags* for module
:mod:`dis`

..

.. bpo: 40019
.. date: 2020-03-20-00-30-36
.. nonce: zOqHpQ
.. section: Tests

test_gdb now skips tests if it detects that gdb failed to read debug
information because the Python binary is optimized.

..

.. bpo: 27807
.. date: 2020-03-18-16-04-33
.. nonce: 9gKjET
.. section: Tests

``test_site.test_startup_imports()`` is now skipped if a path of
:data:`sys.path` contains a ``.pth`` file.

..

.. bpo: 26067
.. date: 2020-03-16-20-54-55
.. nonce: m18_VV
.. section: Tests

Do not fail test_shutil test_chown test when uid or gid of user cannot be
resolved to a name.

..

.. bpo: 39855
.. date: 2020-03-04-23-03-01
.. nonce: Ql5xv8
.. section: Tests

test_subprocess.test_user() now skips the test on an user name if the user
name doesn't exist. For example, skip the test if the user "nobody" doesn't
exist on Linux.

..

.. bpo: 39761
.. date: 2020-03-03-15-56-07
.. nonce: k10aGe
.. section: Build

Fix build with DTrace but without additional DFLAGS.

..

.. bpo: 39763
.. date: 2020-03-02-14-44-09
.. nonce: GGEwhH
.. section: Build

setup.py now uses a basic implementation of the :mod:`subprocess` module if
the :mod:`subprocess` module is not available: before required C extension
modules are built.

..

.. bpo: 1294959
.. date: 2020-02-06-18-08-25
.. nonce: AZPg4R
.. section: Build

Add ``--with-platlibdir`` option to the configure script: name of the
platform-specific library directory, stored in the new
:attr:`sys.platlibdir` attribute. It is used to build the path of
platform-specific dynamic libraries and the path of the standard library. It
is equal to ``"lib"`` on most platforms. On Fedora and SuSE, it is equal to
``"lib64"`` on 64-bit platforms. Patch by Jan Matějek, Matěj Cepl,
Charalampos Stratakis and Victor Stinner.

..

.. bpo: 39930
.. date: 2020-03-11-10-15-56
.. nonce: LGHw1j
.. section: Windows

Ensures the required :file:`vcruntime140.dll` is included in install
packages.

..

.. bpo: 39847
.. date: 2020-03-04-17-05-11
.. nonce: C3N2m3
.. section: Windows

Avoid hang when computer is hibernated whilst waiting for a mutex (for
lock-related objects from :mod:`threading`) around 49-day uptime.

..

.. bpo: 38597
.. date: 2020-03-01-15-04-54
.. nonce: MnHdYl
.. section: Windows

:mod:`distutils` will no longer statically link :file:`vcruntime140.dll`
when a redistributable version is unavailable. All future releases of
CPython will include a copy of this DLL to ensure distributed extensions can
continue to load.

..

.. bpo: 38380
.. date: 2020-02-28-23-51-27
.. nonce: TpOBCj
.. section: Windows

Update Windows builds to use SQLite 3.31.1

..

.. bpo: 39789
.. date: 2020-02-28-22-46-09
.. nonce: 67XRoP
.. section: Windows

Update Windows release build machines to Visual Studio 2019 (MSVC 14.2).

..

.. bpo: 34803
.. date: 2020-02-25-18-43-34
.. nonce: S3VcS0
.. section: Windows

Package for nuget.org now includes repository reference and bundled icon
image.

..

.. bpo: 38380
.. date: 2020-02-28-23-51-47
.. nonce: u-ySyA
.. section: macOS

Update macOS builds to use SQLite 3.31.1

..

.. bpo: 27115
.. date: 2020-03-09-02-45-12
.. nonce: 8hSHMo
.. section: IDLE

For 'Go to Line', use a Query box subclass with IDLE standard behavior and
improved error checking.

..

.. bpo: 39885
.. date: 2020-03-08-14-27-36
.. nonce: 29ERiR
.. section: IDLE

Since clicking to get an IDLE context menu moves the cursor, any text
selection should be and now is cleared.

..

.. bpo: 39852
.. date: 2020-03-06-01-55-14
.. nonce: QjA1qF
.. section: IDLE

Edit "Go to line" now clears any selection, preventing accidental deletion.
It also updates Ln and Col on the status bar.

..

.. bpo: 39781
.. date: 2020-02-27-22-17-09
.. nonce: bbYBeL
.. section: IDLE

Selecting code context lines no longer causes a jump.

..

.. bpo: 36184
.. date: 2020-03-09-13-28-13
.. nonce: BMPJ0D
.. section: Tools/Demos

Port python-gdb.py to FreeBSD. python-gdb.py now checks for "take_gil"
function name to check if a frame tries to acquire the GIL, instead of
checking for "pthread_cond_timedwait" which is specific to Linux and can be
a different condition than the GIL.

..

.. bpo: 38080
.. date: 2019-09-18-13-49-56
.. nonce: Nbl7lF
.. section: Tools/Demos

Added support to fix ``getproxies`` in the :mod:`lib2to3.fixes.fix_urllib`
module. Patch by José Roberto Meza Cabrera.

..

.. bpo: 40024
.. date: 2020-03-20-18-41-33
.. nonce: 9zHpve
.. section: C API

Add :c:func:`PyModule_AddType` helper function: add a type to a module.
Patch by Dong-hee Na.

..

.. bpo: 39946
.. date: 2020-03-20-17-05-52
.. nonce: 3NS-Ls
.. section: C API

Remove ``_PyRuntime.getframe`` hook and remove ``_PyThreadState_GetFrame``
macro which was an alias to ``_PyRuntime.getframe``. They were only exposed
by the internal C API. Remove also ``PyThreadFrameGetter`` type.

..

.. bpo: 39947
.. date: 2020-03-20-14-55-09
.. nonce: W7uCJ3
.. section: C API

Add :c:func:`PyThreadState_GetFrame` function: get the current frame of a
Python thread state.

..

.. bpo: 37207
.. date: 2020-03-14-01-56-03
.. nonce: R3jaTy
.. section: C API

Add _PyArg_NoKwnames helper function. Patch by Dong-hee Na.

..

.. bpo: 39947
.. date: 2020-03-13-18-10-58
.. nonce: gmEAaU
.. section: C API

Add :c:func:`PyThreadState_GetInterpreter`: get the interpreter of a Python
thread state.

..

.. bpo: 39947
.. date: 2020-03-13-17-43-00
.. nonce: 1Cu_d2
.. section: C API

Add :c:func:`PyInterpreterState_Get` function to the limited C API.

..

.. bpo: 35370
.. date: 2020-03-13-16-44-23
.. nonce: sXRA-r
.. section: C API

If :c:func:`PySys_Audit` fails in :c:func:`PyEval_SetProfile` or
:c:func:`PyEval_SetTrace`, log the error as an unraisable exception.

..

.. bpo: 39947
.. date: 2020-03-13-00-15-19
.. nonce: w3dIru
.. section: C API

Move the static inline function flavor of Py_EnterRecursiveCall() and
Py_LeaveRecursiveCall() to the internal C API: they access PyThreadState
attributes. The limited C API provides regular functions which hide
implementation details.

..

.. bpo: 39947
.. date: 2020-03-12-23-47-57
.. nonce: -nCdFV
.. section: C API

Py_TRASHCAN_BEGIN_CONDITION and Py_TRASHCAN_END macro no longer access
PyThreadState attributes, but call new private _PyTrash_begin() and
_PyTrash_end() functions which hide implementation details.

..

.. bpo: 39884
.. date: 2020-03-12-00-27-26
.. nonce: CGOJBO
.. section: C API

:c:func:`PyDescr_NewMethod` and :c:func:`PyCFunction_NewEx` now include the
method name in the SystemError "bad call flags" error message to ease debug.

..

.. bpo: 39877
.. date: 2020-03-10-00-18-16
.. nonce: GOYtIm
.. section: C API

Deprecated :c:func:`PyEval_InitThreads` and
:c:func:`PyEval_ThreadsInitialized`. Calling :c:func:`PyEval_InitThreads`
now does nothing.

..

.. bpo: 38249
.. date: 2020-03-09-20-27-19
.. nonce: IxYbQy
.. section: C API

:c:macro:`Py_UNREACHABLE` is now implemented with
``__builtin_unreachable()`` and analogs in release mode.

..

.. bpo: 38643
.. date: 2020-03-08-22-56-22
.. nonce: k2ixx6
.. section: C API

:c:func:`PyNumber_ToBase` now raises a :exc:`SystemError` instead of
crashing when called with invalid base.

..

.. bpo: 39882
.. date: 2020-03-06-23-56-04
.. nonce: Iqhcqm
.. section: C API

The :c:func:`Py_FatalError` function is replaced with a macro which logs
automatically the name of the current function, unless the
``Py_LIMITED_API`` macro is defined.

..

.. bpo: 39824
.. date: 2020-03-02-11-29-45
.. nonce: 71_ZMn
.. section: C API

Extension modules: :c:member:`~PyModuleDef.m_traverse`,
:c:member:`~PyModuleDef.m_clear` and :c:member:`~PyModuleDef.m_free`
functions of :c:type:`PyModuleDef` are no longer called if the module state
was requested but is not allocated yet. This is the case immediately after
the module is created and before the module is executed
(:c:data:`Py_mod_exec` function). More precisely, these functions are not
called if :c:member:`~PyModuleDef.m_size` is greater than 0 and the module
state (as returned by :c:func:`PyModule_GetState`) is ``NULL``.

Extension modules without module state (``m_size <= 0``) are not affected.

..

.. bpo: 38913
.. date: 2020-02-25-20-10-34
.. nonce: siF1lS
.. section: C API

Fixed segfault in ``Py_BuildValue()`` called with a format containing "#"
and undefined PY_SSIZE_T_CLEAN whwn an exception is set.

..

.. bpo: 38500
.. date: 2019-11-22-14-06-28
.. nonce: nPEdjH
.. section: C API

Add a private API to get and set the frame evaluation function: add
:c:func:`_PyInterpreterState_GetEvalFrameFunc` and
:c:func:`_PyInterpreterState_SetEvalFrameFunc` C functions. The
:c:type:`_PyFrameEvalFunction` function type now takes a *tstate* parameter.
