| .. bpo: 40904 |
| .. date: 2020-06-08-01-08-57 |
| .. nonce: 76qQzo |
| .. release date: 2020-06-08 |
| .. section: Core and Builtins |
| |
| Fix possible segfault in the new PEG parser when parsing f-string containing |
| yield statements with no value (:code:`f"{yield}"`). Patch by Pablo Galindo |
| |
| .. |
| |
| .. bpo: 40903 |
| .. date: 2020-06-07-22-50-10 |
| .. nonce: 7dWejS |
| .. section: Core and Builtins |
| |
| Fixed a possible segfault in the new PEG parser when producing error |
| messages for invalid assignments of the form :code:`p=p=`. Patch by Pablo |
| Galindo |
| |
| .. |
| |
| .. bpo: 40880 |
| .. date: 2020-06-06-00-23-19 |
| .. nonce: fjdzSh |
| .. section: Core and Builtins |
| |
| Fix invalid memory read in the new parser when checking newlines in string |
| literals. Patch by Pablo Galindo. |
| |
| .. |
| |
| .. bpo: 40883 |
| .. date: 2020-06-05-23-25-00 |
| .. nonce: M6sQ-Q |
| .. section: Core and Builtins |
| |
| Fix memory leak in when parsing f-strings in the new parser. Patch by Pablo |
| Galindo |
| |
| .. |
| |
| .. bpo: 40870 |
| .. date: 2020-06-05-12-48-28 |
| .. nonce: 9cd2sk |
| .. section: Core and Builtins |
| |
| Raise :exc:`ValueError` when validating custom AST's where the constants |
| ``True``, ``False`` and ``None`` are used within a :class:`ast.Name` node. |
| |
| .. |
| |
| .. bpo: 40854 |
| .. date: 2020-06-03-13-53-24 |
| .. nonce: O6vfQU |
| .. section: Core and Builtins |
| |
| Allow overriding :data:`sys.platlibdir` via a new :envvar:`PYTHONPLATLIBDIR` |
| environment variable. |
| |
| .. |
| |
| .. bpo: 40826 |
| .. date: 2020-06-01-20-31-07 |
| .. nonce: XCI4M2 |
| .. section: Core and Builtins |
| |
| Fix GIL usage in :c:func:`PyOS_Readline`: lock the GIL to set an exception |
| and pass the Python thread state when checking if there is a pending signal. |
| |
| .. |
| |
| .. bpo: 40780 |
| .. date: 2020-05-26-17-43-58 |
| .. nonce: 3Ckdgm |
| .. section: Core and Builtins |
| |
| Fix a corner case where g-style string formatting of a float failed to |
| remove trailing zeros. |
| |
| .. |
| |
| .. bpo: 38964 |
| .. date: 2020-05-25-21-49-11 |
| .. nonce: lrml90 |
| .. section: Core and Builtins |
| |
| When there's a :exc:`SyntaxError` in the expression part of an fstring, the |
| filename attribute of the :exc:`SyntaxError` gets correctly set to the name |
| of the file the fstring resides in. |
| |
| .. |
| |
| .. bpo: 40750 |
| .. date: 2020-05-24-02-42-26 |
| .. nonce: ZmO9Ev |
| .. section: Core and Builtins |
| |
| Support the "-d" debug flag in the new PEG parser. Patch by Pablo Galindo |
| |
| .. |
| |
| .. bpo: 40217 |
| .. date: 2020-05-23-01-15-51 |
| .. nonce: jZsHTc |
| .. section: Core and Builtins |
| |
| Instances of types created with :c:func:`PyType_FromSpecWithBases` will no |
| longer automatically visit their class object when traversing references in |
| the garbage collector. The user is expected to manually visit the object's |
| class. Patch by Pablo Galindo. |
| |
| .. |
| |
| .. bpo: 40696 |
| .. date: 2020-05-21-01-54-00 |
| .. nonce: u3n8Wx |
| .. section: Core and Builtins |
| |
| Fix a hang that can arise after :meth:`generator.throw` due to a cycle in |
| the exception context chain. |
| |
| .. |
| |
| .. bpo: 39791 |
| .. date: 2020-06-05-19-29-10 |
| .. nonce: _CcO3d |
| .. section: Library |
| |
| Refresh importlib.metadata from importlib_metadata 1.6.1. |
| |
| .. |
| |
| .. bpo: 40807 |
| .. date: 2020-06-04-16-25-15 |
| .. nonce: yYyLWx |
| .. section: Library |
| |
| Stop codeop._maybe_compile, used by code.InteractiveInterpreter (and IDLE). |
| from from emitting each warning three times. |
| |
| .. |
| |
| .. bpo: 39791 |
| .. date: 2020-06-02-02-16-02 |
| .. nonce: StCJlA |
| .. section: Library |
| |
| Built-in loaders (SourceFileLoader and ZipImporter) now supply |
| ``TraversableResources`` implementations for ``ResourceReader``, and the |
| fallback function has been removed. |
| |
| .. |
| |
| .. bpo: 17005 |
| .. date: 2020-05-31-23-32-36 |
| .. nonce: JlRUGB |
| .. section: Library |
| |
| The topological sort functionality that was introduced initially in the |
| :mod:`functools` module has been moved to a new :mod:`graphlib` module to |
| better accommodate the new tools and keep the original scope of the |
| :mod:`functools` module. Patch by Pablo Galindo |
| |
| .. |
| |
| .. bpo: 40777 |
| .. date: 2020-05-28-17-32-29 |
| .. nonce: 1kJU6N |
| .. section: Library |
| |
| Initialize PyDateTime_IsoCalendarDateType.tp_base at run-time to avoid |
| errors on some compilers. |
| |
| .. |
| |
| .. bpo: 40767 |
| .. date: 2020-05-27-21-27-01 |
| .. nonce: L5MnVV |
| .. section: Library |
| |
| :mod:`webbrowser` now properly finds the default browser in pure Wayland |
| systems by checking the WAYLAND_DISPLAY environment variable. Patch |
| contributed by Jérémy Attali. |
| |
| .. |
| |
| .. bpo: 40791 |
| .. date: 2020-05-27-18-04-52 |
| .. nonce: IzpNor |
| .. section: Library |
| |
| :func:`hashlib.compare_digest` uses OpenSSL's ``CRYPTO_memcmp()`` function |
| when OpenSSL is available. |
| |
| .. |
| |
| .. bpo: 40795 |
| .. date: 2020-05-27-17-00-18 |
| .. nonce: eZSnHA |
| .. section: Library |
| |
| :mod:`ctypes` module: If ctypes fails to convert the result of a callback or |
| if a ctypes callback function raises an exception, sys.unraisablehook is now |
| called with an exception set. Previously, the error was logged into stderr |
| by :c:func:`PyErr_Print`. |
| |
| .. |
| |
| .. bpo: 30008 |
| .. date: 2020-05-25-22-18-38 |
| .. nonce: CKC3td |
| .. section: Library |
| |
| Fix :mod:`ssl` code to be compatible with OpenSSL 1.1.x builds that use |
| ``no-deprecated`` and ``--api=1.1.0``. |
| |
| .. |
| |
| .. bpo: 30064 |
| .. date: 2020-05-25-11-52-23 |
| .. nonce: 6CICsH |
| .. section: Library |
| |
| Fix asyncio ``loop.sock_*`` race condition issue |
| |
| .. |
| |
| .. bpo: 40759 |
| .. date: 2020-05-24-23-52-35 |
| .. nonce: DdZdaw |
| .. section: Library |
| |
| Deprecate the :mod:`symbol` module. |
| |
| .. |
| |
| .. bpo: 40737 |
| .. date: 2020-05-23-00-22-11 |
| .. nonce: iph-CM |
| .. section: Library |
| |
| Fix possible reference leak for :mod:`sqlite3` initialization. |
| |
| .. |
| |
| .. bpo: 40698 |
| .. date: 2020-05-20-14-38-04 |
| .. nonce: zwl5Hc |
| .. section: Library |
| |
| :mod:`distutils` upload creates SHA2-256 and Blake2b-256 digests. MD5 |
| digests is skipped if platform blocks MD5. |
| |
| .. |
| |
| .. bpo: 40695 |
| .. date: 2020-05-20-13-03-28 |
| .. nonce: lr4aIS |
| .. section: Library |
| |
| :mod:`hashlib` no longer falls back to builtin hash implementations when |
| OpenSSL provides a hash digest and the algorithm is blocked by security |
| policy. |
| |
| .. |
| |
| .. bpo: 9216 |
| .. date: 2020-05-20-12-53-20 |
| .. nonce: ps7Yf1 |
| .. section: Library |
| |
| func:`hashlib.new` passed ``usedforsecurity`` to OpenSSL EVP constructor |
| ``_hashlib.new()``. test_hashlib and test_smtplib handle strict security |
| policy better. |
| |
| .. |
| |
| .. bpo: 40614 |
| .. date: 2020-05-18-22-41-02 |
| .. nonce: 8j3kmq |
| .. section: Library |
| |
| :func:`ast.parse` will not parse self documenting expressions in f-strings |
| when passed ``feature_version`` is less than ``(3, 8)``. |
| |
| .. |
| |
| .. bpo: 40671 |
| .. date: 2020-05-18-15-26-31 |
| .. nonce: NeZ9Cy |
| .. section: Library |
| |
| Prepare ``_hashlib`` for :pep:`489` and use :c:func:`PyModule_AddType`. |
| |
| .. |
| |
| .. bpo: 32309 |
| .. date: 2020-05-17-02-03-09 |
| .. nonce: KM9psl |
| .. section: Library |
| |
| Added a new :term:`coroutine` :func:`asyncio.to_thread`. It is mainly used |
| for running IO-bound functions in a separate thread to avoid blocking the |
| event loop, and essentially works as a high-level version of |
| :meth:`~asyncio.loop.run_in_executor` that can directly take keyword |
| arguments. |
| |
| .. |
| |
| .. bpo: 40630 |
| .. date: 2020-05-15-13-40-15 |
| .. nonce: YXEX_M |
| .. section: Library |
| |
| Added :func:`tracemalloc.reset_peak` to set the peak size of traced memory |
| blocks to the current size, to measure the peak of specific pieces of code. |
| |
| .. |
| |
| .. bpo: 13097 |
| .. date: 2020-05-06-02-01-25 |
| .. nonce: Wh5xSK |
| .. section: Library |
| |
| ``ctypes`` now raises an ``ArgumentError`` when a callback is invoked with |
| more than 1024 arguments. |
| |
| .. |
| |
| .. bpo: 23082 |
| .. date: 2020-04-20-22-08-36 |
| .. nonce: iX90Id |
| .. section: Library |
| |
| Updated the error message and docs of PurePath.relative_to() to better |
| reflect the function behaviour. |
| |
| .. |
| |
| .. bpo: 39244 |
| .. date: 2020-02-23-15-09-47 |
| .. nonce: aBK5IM |
| .. section: Library |
| |
| Fixed :class:`multiprocessing.context.get_all_start_methods` to properly |
| return the default method first on macOS. |
| |
| .. |
| |
| .. bpo: 39040 |
| .. date: 2019-12-15-18-47-20 |
| .. nonce: tKa0Qs |
| .. section: Library |
| |
| Fix parsing of invalid mime headers parameters by collapsing whitespace |
| between encoded words in a bare-quote-string. |
| |
| .. |
| |
| .. bpo: 35714 |
| .. date: 2019-10-25-23-45-49 |
| .. nonce: fw3xb7 |
| .. section: Library |
| |
| :exc:`struct.error` is now raised if there is a null character in a |
| :mod:`struct` format string. |
| |
| .. |
| |
| .. bpo: 36290 |
| .. date: 2019-03-17-19-01-53 |
| .. nonce: 7VXo_K |
| .. section: Library |
| |
| AST nodes are now raising :exc:`TypeError` on conflicting keyword arguments. |
| Patch contributed by Rémi Lapeyre. |
| |
| .. |
| |
| .. bpo: 17258 |
| .. date: 2020-05-26-07-53-31 |
| .. nonce: X_IKTQ |
| .. section: Tests |
| |
| Skip some :mod:`multiprocessing` tests when MD5 hash digest is blocked. |
| |
| .. |
| |
| .. bpo: 40514 |
| .. date: 2020-05-19-17-43-38 |
| .. nonce: gW-66U |
| .. section: Build |
| |
| Remove ``--with-experimental-isolated-subinterpreters`` configure option in |
| Python 3.9: the experiment continues in the master branch, but it's no |
| longer needed in 3.9. |
| |
| .. |
| |
| .. bpo: 40683 |
| .. date: 2020-05-19-10-54-08 |
| .. nonce: W8JHrr |
| .. section: Build |
| |
| Fixed an issue where the :mod:`zoneinfo` module and its tests were not |
| included when Python is installed with ``make``. |
| |
| .. |
| |
| .. bpo: 39631 |
| .. date: 2020-05-19-14-43-33 |
| .. nonce: Z5yXam |
| .. section: Windows |
| |
| Changes the registered MIME type for ``.py`` files on Windows to |
| ``text/x-python`` instead of ``text/plain``. |
| |
| .. |
| |
| .. bpo: 40677 |
| .. date: 2020-05-19-04-11-12 |
| .. nonce: qQbLW8 |
| .. section: Windows |
| |
| Manually define IO_REPARSE_TAG_APPEXECLINK in case some old Windows SDK |
| doesn't have it. |
| |
| .. |
| |
| .. bpo: 40741 |
| .. date: 2020-06-07-20-10-56 |
| .. nonce: 80A2BW |
| .. section: macOS |
| |
| Update macOS installer to use SQLite 3.32.2. |
| |
| .. |
| |
| .. bpo: 39885 |
| .. date: 2020-05-29-18-21-58 |
| .. nonce: zB_-bN |
| .. section: IDLE |
| |
| Make context menu Cut and Copy work again when right-clicking within a |
| selection. |
| |
| .. |
| |
| .. bpo: 40723 |
| .. date: 2020-05-24-06-19-43 |
| .. nonce: AJLd4U |
| .. section: IDLE |
| |
| Make test_idle pass when run after import. |
| |
| .. |
| |
| .. bpo: 40910 |
| .. date: 2020-06-08-15-59-06 |
| .. nonce: L56oI0 |
| .. section: C API |
| |
| Export explicitly the :c:func:`Py_GetArgcArgv` function to the C API and |
| document the function. Previously, it was exported implicitly which no |
| longer works since Python is built with ``-fvisibility=hidden``. |
| |
| .. |
| |
| .. bpo: 40724 |
| .. date: 2020-06-04-08-01-23 |
| .. nonce: qIIdSi |
| .. section: C API |
| |
| Allow defining buffer slots in type specs. |
| |
| .. |
| |
| .. bpo: 40826 |
| .. date: 2020-06-01-16-12-37 |
| .. nonce: zQzFoK |
| .. section: C API |
| |
| :c:func:`PyOS_InterruptOccurred` now fails with a fatal error if it is |
| called with the GIL released. |