.. bpo: 44409
.. date: 2021-06-13-23-12-18
.. nonce: eW4LS-
.. release date: 2021-06-17
.. section: Core and Builtins

Fix error location information for tokenizer errors raised on initialization
of the tokenizer. Patch by Pablo Galindo.

..

.. bpo: 44396
.. date: 2021-06-11-18-17-42
.. nonce: Z9EKim
.. section: Core and Builtins

Fix a possible crash in the tokenizer when raising syntax errors for
unclosed strings. Patch by Pablo Galindo.

..

.. bpo: 44349
.. date: 2021-06-08-22-49-06
.. nonce: xgEgeA
.. section: Core and Builtins

Fix an edge case when displaying text from files with encoding in syntax
errors. Patch by Pablo Galindo.

..

.. bpo: 44335
.. date: 2021-06-08-01-13-47
.. nonce: GQTTkl
.. section: Core and Builtins

Fix a regression when identifying incorrect characters in syntax errors.
Patch by Pablo Galindo

..

.. bpo: 44304
.. date: 2021-06-05-02-34-57
.. nonce: _MAoPc
.. section: Core and Builtins

Fix a crash in the :mod:`sqlite3` module that happened when the garbage
collector clears :class:`sqlite.Statement` objects. Patch by Pablo Galindo

..

.. bpo: 44305
.. date: 2021-06-03-22-51-50
.. nonce: 66dVDG
.. section: Core and Builtins

Improve error message for ``try`` blocks without ``except`` or ``finally``
blocks. Patch by Pablo Galindo.

..

.. bpo: 43833
.. date: 2021-04-18-18-07-33
.. nonce: oChkCi
.. section: Core and Builtins

Emit a deprecation warning if the numeric literal is immediately followed by
one of keywords: and, else, for, if, in, is, or. Raise a syntax error with
more informative message if it is immediately followed by other keyword or
identifier.

..

.. bpo: 11105
.. date: 2020-06-02-13-21-14
.. nonce: wceryW
.. section: Core and Builtins

When compiling :class:`ast.AST` objects with recursive references through
:func:`compile`, the interpreter doesn't crash anymore instead it raises a
:exc:`RecursionError`.

..

.. bpo: 42972
.. date: 2021-06-15-13-51-25
.. nonce: UnyYo1
.. section: Library

The _thread.RLock type now fully implement the GC protocol: add a traverse
function and the :const:`Py_TPFLAGS_HAVE_GC` flag. Patch by Victor Stinner.

..

.. bpo: 44422
.. date: 2021-06-14-23-28-17
.. nonce: BlWOgv
.. section: Library

The :func:`threading.enumerate` function now uses a reentrant lock to
prevent a hang on reentrant call. Patch by Victor Stinner.

..

.. bpo: 44389
.. date: 2021-06-12-22-58-20
.. nonce: WTRnoC
.. section: Library

Fix deprecation of :data:`ssl.OP_NO_TLSv1_3`

..

.. bpo: 44362
.. date: 2021-06-10-20-07-32
.. nonce: oVOMfd
.. section: Library

Improve :mod:`ssl` module's deprecation messages, error reporting, and
documentation for deprecations.

..

.. bpo: 44342
.. date: 2021-06-10-15-06-47
.. nonce: qqkGlj
.. section: Library

[Enum] Change pickling from by-value to by-name.

..

.. bpo: 44356
.. date: 2021-06-10-08-35-38
.. nonce: 6oDFhO
.. section: Library

[Enum] Allow multiple data-type mixins if they are all the same.

..

.. bpo: 44351
.. date: 2021-06-10-07-26-12
.. nonce: rvyf2v
.. section: Library

Restore back :func:`parse_makefile` in :mod:`distutils.sysconfig` because it
behaves differently than the similar implementation in :mod:`sysconfig`.

..

.. bpo: 44242
.. date: 2021-06-07-10-26-14
.. nonce: MKeMCQ
.. section: Library

Remove missing flag check from Enum creation and move into a ``verify``
decorator.

..

.. bpo: 44246
.. date: 2021-05-31-11-34-56
.. nonce: yHAkF0
.. section: Library

In ``importlib.metadata``, restore compatibility in the result from
``Distribution.entry_points`` (``EntryPoints``) to honor expectations in
older implementations and issuing deprecation warnings for these cases: A.
``EntryPoints`` objects are once again mutable, allowing   for ``sort()``
and other list-based mutation operations.   Avoid deprecation warnings by
casting to a   mutable sequence (e.g.   ``list(dist.entry_points).sort()``).
B. ``EntryPoints`` results once again allow   for access by index. To avoid
deprecation warnings,   cast the result to a Sequence first   (e.g.
``tuple(dist.entry_points)[0]``).

..

.. bpo: 44246
.. date: 2021-05-31-11-28-03
.. nonce: nhmt-v
.. section: Library

In importlib.metadata.entry_points, de-duplication of distributions no
longer requires loading the full metadata for PathDistribution objects,
improving entry point loading performance by ~10x.

..

.. bpo: 43853
.. date: 2021-04-15-12-02-17
.. nonce: XXCVAp
.. section: Library

Improved string handling for :mod:`sqlite3` user-defined functions and
aggregates:

* It is now possible to pass strings with embedded null characters to UDFs
* Conversion failures now correctly raise :exc:`MemoryError`

Patch by Erlend E. Aasland.

..

.. bpo: 43318
.. date: 2021-02-25-08-32-06
.. nonce: bZJw6V
.. section: Library

Fix a bug where :mod:`pdb` does not always echo cleared breakpoints.

..

.. bpo: 37022
.. date: 2020-01-25-12-58-20
.. nonce: FUZI25
.. section: Library

:mod:`pdb` now displays exceptions from ``repr()`` with its ``p`` and ``pp``
commands.

..

.. bpo: 44392
.. date: 2021-06-16-18-09-49
.. nonce: 6RF1Sc
.. section: Documentation

Added a new section in the C API documentation for types used in type
hinting.  Documented ``Py_GenericAlias`` and ``Py_GenericAliasType``.

..

.. bpo: 38291
.. date: 2021-06-14-09-20-37
.. nonce: VMYa_Q
.. section: Documentation

Mark ``typing.io`` and ``typing.re`` as deprecated since Python 3.8 in the
documentation. They were never properly supported by type checkers.

..

.. bpo: 44322
.. date: 2021-06-06-14-12-00
.. nonce: K0PHfE
.. section: Documentation

Document that SyntaxError args have a details tuple and that details are
adjusted for errors in f-string field replacement expressions.

..

.. bpo: 44363
.. date: 2021-06-10-11-19-43
.. nonce: -K9jD0
.. section: Tests

Account for address sanitizer in test_capi. test_capi now passes when run
GCC address sanitizer.

..

.. bpo: 43921
.. date: 2021-06-03-03-29-34
.. nonce: nwH1FS
.. section: Tests

Fix test_ssl.test_wrong_cert_tls13(): use ``suppress_ragged_eofs=False``,
since ``read()`` can raise :exc:`ssl.SSLEOFError` on Windows. Patch by
Victor Stinner.

..

.. bpo: 43921
.. date: 2021-06-02-17-41-42
.. nonce: xP7yZ4
.. section: Tests

Fix test_pha_required_nocert() of test_ssl: catch two more EOF cases (when
the ``recv()`` method returns an empty string). Patch by Victor Stinner.

..

.. bpo: 44381
.. date: 2021-06-10-18-08-44
.. nonce: Xpc1iX
.. section: Build

The Windows build now accepts :envvar:`EnableControlFlowGuard` set to
``guard`` to enable CFG.

..

.. bpo: 40128
.. date: 2021-06-11-17-43-39
.. nonce: 7vDN3U
.. section: IDLE

Mostly fix completions on macOS when not using tcl/tk 8.6.11 (as with 3.9).
The added update_idletask call should be harmless and possibly helpful
otherwise.

..

.. bpo: 33962
.. date: 2021-06-10-00-50-02
.. nonce: ikAUNg
.. section: IDLE

Move the indent space setting from the Font tab to the new Windows tab.
Patch by Mark Roseman and Terry Jan Reedy.

..

.. bpo: 40468
.. date: 2021-06-08-03-04-51
.. nonce: tUCGUb
.. section: IDLE

Split the settings dialog General tab into Windows and Shell/ED tabs. Move
help sources, which extend the Help menu, to the Extensions tab. Make space
for new options and shorten the dialog. The latter makes the dialog better
fit small screens.

..

.. bpo: 43795
.. date: 2021-06-15-16-28-18
.. nonce: fy0AXK
.. section: C API

The list in :ref:`stable-abi-list` now shows the public name
:c:struct:`PyFrameObject` rather than ``_frame``. The non-existing entry
``_node`` no longer appears in the list.

..

.. bpo: 44378
.. date: 2021-06-10-15-22-31
.. nonce: jGYakF
.. section: C API

:c:func:`Py_IS_TYPE` no longer uses :c:func:`Py_TYPE` to avoid a compiler
warning: no longer cast ``const PyObject*`` to ``PyObject*``. Patch by
Victor Stinner.
