.. bpo: 46852 .. date: 2022-02-25-02-01-42 .. nonce: _3zg8D .. release date: 2022-03-16 .. section: Core and Builtins Rename the private undocumented ``float.__set_format__()`` method to ``float.__setformat__()`` to fix a typo introduced in Python 3.7. The method is only used by test_float. Patch by Victor Stinner. .. .. bpo: 46794 .. date: 2022-02-22-12-07-53 .. nonce: 6WvJ9o .. section: Core and Builtins Bump up the libexpat version into 2.4.6 .. .. bpo: 46762 .. date: 2022-02-15-20-26-46 .. nonce: 1H7vab .. section: Core and Builtins Fix an assert failure in debug builds when a '<', '>', or '=' is the last character in an f-string that's missing a closing right brace. .. .. bpo: 46732 .. date: 2022-02-12-11-16-40 .. nonce: 3Z_qxd .. section: Core and Builtins Correct the docstring for the :meth:`__bool__` method. Patch by Jelle Zijlstra. .. .. bpo: 40479 .. date: 2022-02-06-23-08-30 .. nonce: zED3Zu .. section: Core and Builtins Add a missing call to ``va_end()`` in ``Modules/_hashopenssl.c``. .. .. bpo: 46615 .. date: 2022-02-04-04-33-18 .. nonce: puArY9 .. section: Core and Builtins When iterating over sets internally in ``setobject.c``, acquire strong references to the resulting items from the set. This prevents crashes in corner-cases of various set operations where the set gets mutated. .. .. bpo: 43721 .. date: 2022-02-01-10-05-27 .. nonce: -1XAIo .. section: Core and Builtins Fix docstrings of :attr:`~property.getter`, :attr:`~property.setter`, and :attr:`~property.deleter` to clarify that they create a new copy of the property. .. .. bpo: 46503 .. date: 2022-01-24-21-24-41 .. nonce: 4UrPsE .. section: Core and Builtins Fix an assert when parsing some invalid \N escape sequences in f-strings. .. .. bpo: 46417 .. date: 2022-01-22-14-39-23 .. nonce: 3U5SfN .. section: Core and Builtins Fix a race condition on setting a type ``__bases__`` attribute: the internal function ``add_subclass()`` now gets the ``PyTypeObject.tp_subclasses`` member after calling :c:func:`PyWeakref_NewRef` which can trigger a garbage collection which can indirectly modify ``PyTypeObject.tp_subclasses``. Patch by Victor Stinner. .. .. bpo: 46383 .. date: 2022-01-14-20-55-34 .. nonce: v8MTl4 .. section: Core and Builtins Fix invalid signature of ``_zoneinfo``'s ``module_free`` function to resolve a crash on wasm32-emscripten platform. .. .. bpo: 43253 .. date: 2022-03-15-07-53-45 .. nonce: rjdLFj .. section: Library Fix a crash when closing transports where the underlying socket handle is already invalid on the Proactor event loop. .. .. bpo: 47004 .. date: 2022-03-13-15-04-05 .. nonce: SyYpxd .. section: Library Apply bugfixes from importlib_metadata 4.11.3, including bugfix for EntryPoint.extras, which was returning match objects and not the extras strings. .. .. bpo: 46985 .. date: 2022-03-11-13-34-16 .. nonce: BgoMr2 .. section: Library Upgrade pip wheel bundled with ensurepip (pip 22.0.4) .. .. bpo: 46968 .. date: 2022-03-10-14-51-11 .. nonce: ym2QxL .. section: Library :mod:`faulthandler`: On Linux 5.14 and newer, dynamically determine size of signal handler stack size CPython allocates using ``getauxval(AT_MINSIGSTKSZ)``. This changes allows for Python extension's request to Linux kernel to use AMX_TILE instruction set on Sapphire Rapids Xeon processor to succeed, unblocking use of the ISA in frameworks. .. .. bpo: 46955 .. date: 2022-03-08-22-41-59 .. nonce: IOoonN .. section: Library Expose :class:`asyncio.base_events.Server` as :class:`asyncio.Server`. Patch by Stefan Zabka. .. .. bpo: 46932 .. date: 2022-03-07-20-20-34 .. nonce: xbarAs .. section: Library Update bundled libexpat to 2.4.7 .. .. bpo: 25707 .. date: 2022-03-05-09-43-53 .. nonce: gTlclP .. section: Library Fixed a file leak in :func:`xml.etree.ElementTree.iterparse` when the iterator is not exhausted. Patch by Jacob Walls. .. .. bpo: 44886 .. date: 2022-02-23-00-55-59 .. nonce: I40Mbr .. section: Library Inherit asyncio proactor datagram transport from :class:`asyncio.DatagramTransport`. .. .. bpo: 46827 .. date: 2022-02-22-15-08-30 .. nonce: hvj38S .. section: Library Support UDP sockets in :meth:`asyncio.loop.sock_connect` for selector-based event loops. Patch by Thomas Grainger. .. .. bpo: 46811 .. date: 2022-02-20-21-03-31 .. nonce: 8BxgdQ .. section: Library Make test suite support Expat >=2.4.5 .. .. bpo: 46252 .. date: 2022-02-20-12-59-46 .. nonce: KG1SqA .. section: Library Raise :exc:`TypeError` if :class:`ssl.SSLSocket` is passed to transport-based APIs. .. .. bpo: 46784 .. date: 2022-02-18-22-10-30 .. nonce: SVOQJx .. section: Library Fix libexpat symbols collisions with user dynamically loaded or statically linked libexpat in embedded Python. .. .. bpo: 39327 .. date: 2022-02-17-13-10-50 .. nonce: ytIT7Z .. section: Library :func:`shutil.rmtree` can now work with VirtualBox shared folders when running from the guest operating-system. .. .. bpo: 46756 .. date: 2022-02-15-11-57-53 .. nonce: AigSPi .. section: Library Fix a bug in :meth:`urllib.request.HTTPPasswordMgr.find_user_password` and :meth:`urllib.request.HTTPPasswordMgrWithPriorAuth.is_authenticated` which allowed to bypass authorization. For example, access to URI ``example.org/foobar`` was allowed if the user was authorized for URI ``example.org/foo``. .. .. bpo: 45863 .. date: 2022-02-09-00-53-23 .. nonce: zqQXVv .. section: Library When the :mod:`tarfile` module creates a pax format archive, it will put an integer representation of timestamps in the ustar header (if possible) for the benefit of older unarchivers, in addition to the existing full-precision timestamps in the pax extended header. .. .. bpo: 46672 .. date: 2022-02-07-13-15-16 .. nonce: 4swIjx .. section: Library Fix ``NameError`` in :func:`asyncio.gather` when initial type check fails. .. .. bpo: 45948 .. date: 2022-02-05-18-22-05 .. nonce: w4mCnE .. section: Library Fixed a discrepancy in the C implementation of the :mod:`xml.etree.ElementTree` module. Now, instantiating an :class:`xml.etree.ElementTree.XMLParser` with a ``target=None`` keyword provides a default :class:`xml.etree.ElementTree.TreeBuilder` target as the Python implementation does. .. .. bpo: 46591 .. date: 2022-01-31-15-40-38 .. nonce: prBD1M .. section: Library Make the IDLE doc URL on the About IDLE dialog clickable. .. .. bpo: 46400 .. date: 2022-01-30-15-16-12 .. nonce: vweUiO .. section: Library expat: Update libexpat from 2.4.1 to 2.4.4 .. .. bpo: 46487 .. date: 2022-01-27-12-24-38 .. nonce: UDkN2z .. section: Library Add the ``get_write_buffer_limits`` method to :class:`asyncio.transports.WriteTransport` and to the SSL transport. .. .. bpo: 46539 .. date: 2022-01-26-20-36-30 .. nonce: 23iW1d .. section: Library In :func:`typing.get_type_hints`, support evaluating stringified ``ClassVar`` and ``Final`` annotations inside ``Annotated``. Patch by Gregory Beauregard. .. .. bpo: 46491 .. date: 2022-01-24-23-55-30 .. nonce: jmIKHo .. section: Library Allow :data:`typing.Annotated` to wrap :data:`typing.Final` and :data:`typing.ClassVar`. Patch by Gregory Beauregard. .. .. bpo: 46436 .. date: 2022-01-23-19-37-00 .. nonce: Biz1p9 .. section: Library Fix command-line option ``-d``/``--directory`` in module :mod:`http.server` which is ignored when combined with command-line option ``--cgi``. Patch by Géry Ogam. .. .. bpo: 41403 .. date: 2022-01-23-18-04-45 .. nonce: SgoHqV .. section: Library Make :meth:`mock.patch` raise a :exc:`TypeError` with a relevant error message on invalid arg. Previously it allowed a cryptic :exc:`AttributeError` to escape. .. .. bpo: 46474 .. date: 2022-01-22-14-49-10 .. nonce: eKQhvx .. section: Library In ``importlib.metadata.EntryPoint.pattern``, avoid potential REDoS by limiting ambiguity in consecutive whitespace. .. .. bpo: 46469 .. date: 2022-01-22-05-05-08 .. nonce: plUab5 .. section: Library :mod:`asyncio` generic classes now return :class:`types.GenericAlias` in ``__class_getitem__`` instead of the same class. .. .. bpo: 46434 .. date: 2022-01-20-10-35-10 .. nonce: geS-aP .. section: Library :mod:`pdb` now gracefully handles ``help`` when :attr:`__doc__` is missing, for example when run with pregenerated optimized ``.pyc`` files. .. .. bpo: 46333 .. date: 2022-01-11-15-54-15 .. nonce: B1faiF .. section: Library The :meth:`__eq__` and :meth:`__hash__` methods of :class:`typing.ForwardRef` now honor the ``module`` parameter of :class:`typing.ForwardRef`. Forward references from different modules are now differentiated. .. .. bpo: 43118 .. date: 2021-12-29-14-42-09 .. nonce: BoVi_5 .. section: Library Fix a bug in :func:`inspect.signature` that was causing it to fail on some subclasses of classes with a ``__text_signature__`` referencing module globals. Patch by Weipeng Hong. .. .. bpo: 21987 .. date: 2021-12-28-11-55-10 .. nonce: avBK-p .. section: Library Fix an issue with :meth:`tarfile.TarFile.getmember` getting a directory name with a trailing slash. .. .. bpo: 20392 .. date: 2021-12-22-12-02-27 .. nonce: CLAFIp .. section: Library Fix inconsistency with uppercase file extensions in :meth:`MimeTypes.guess_type`. Patch by Kumar Aditya. .. .. bpo: 46080 .. date: 2021-12-15-06-29-00 .. nonce: AuQpLt .. section: Library Fix exception in argparse help text generation if a :class:`argparse.BooleanOptionalAction` argument's default is ``argparse.SUPPRESS`` and it has ``help`` specified. Patch by Felix Fontein. .. .. bpo: 44439 .. date: 2021-11-08-20-27-41 .. nonce: I_8qro .. section: Library Fix ``.write()`` method of a member file in ``ZipFile``, when the input data is an object that supports the buffer protocol, the file length may be wrong. .. .. bpo: 45703 .. date: 2021-11-03-13-41-49 .. nonce: 35AagL .. section: Library When a namespace package is imported before another module from the same namespace is created/installed in a different :data:`sys.path` location while the program is running, calling the :func:`importlib.invalidate_caches` function will now also guarantee the new module is noticed. .. .. bpo: 24959 .. date: 2021-09-06-15-46-53 .. nonce: UVFgiO .. section: Library Fix bug where :mod:`unittest` sometimes drops frames from tracebacks of exceptions raised in tests. .. .. bpo: 46463 .. date: 2022-01-21-21-33-48 .. nonce: fBbdTG .. section: Documentation Fixes :file:`escape4chm.py` script used when building the CHM documentation file .. .. bpo: 46913 .. date: 2022-03-03-17-36-24 .. nonce: vxETIE .. section: Tests Fix test_faulthandler.test_sigfpe() if Python is built with undefined behavior sanitizer (UBSAN): disable UBSAN on the faulthandler_sigfpe() function. Patch by Victor Stinner. .. .. bpo: 46708 .. date: 2022-02-10-14-33-47 .. nonce: avLfCb .. section: Tests Prevent default asyncio event loop policy modification warning after ``test_asyncio`` execution. .. .. bpo: 46616 .. date: 2022-02-02-18-14-38 .. nonce: URvBtE .. section: Tests Ensures ``test_importlib.test_windows`` cleans up registry keys after completion. .. .. bpo: 44359 .. date: 2022-02-02-02-24-04 .. nonce: kPPSmN .. section: Tests test_ftplib now silently ignores socket errors to prevent logging unhandled threading exceptions. Patch by Victor Stinner. .. .. bpo: 46542 .. date: 2022-01-31-17-34-13 .. nonce: RTMm1T .. section: Tests Fix a Python crash in test_lib2to3 when using Python built in debug mode: limit the recursion limit. Patch by Victor Stinner. .. .. bpo: 46576 .. date: 2022-01-29-12-37-53 .. nonce: -prRaV .. section: Tests test_peg_generator now disables compiler optimization when testing compilation of its own C extensions to significantly speed up the testing on non-debug builds of CPython. .. .. bpo: 46542 .. date: 2022-01-28-01-17-10 .. nonce: xRLTdj .. section: Tests Fix ``test_json`` tests checking for :exc:`RecursionError`: modify these tests to use ``support.infinite_recursion()``. Patch by Victor Stinner. .. .. bpo: 13886 .. date: 2022-01-17-13-10-04 .. nonce: 5mZH4b .. section: Tests Skip test_builtin PTY tests on non-ASCII characters if the readline module is loaded. The readline module changes input() behavior, but test_builtin is not intented to test the readline module. Patch by Victor Stinner. .. .. bpo: 47024 .. date: 2022-03-15-09-28-55 .. nonce: t7-dcu .. section: Build Update OpenSSL to 1.1.1n for macOS installers and all Windows builds. .. .. bpo: 38472 .. date: 2022-01-26-22-59-12 .. nonce: RxfLho .. section: Build Fix GCC detection in setup.py when cross-compiling. The C compiler is now run with LC_ALL=C. Previously, the detection failed with a German locale. .. .. bpo: 46513 .. date: 2022-01-25-12-32-37 .. nonce: mPm9B4 .. section: Build :program:`configure` no longer uses ``AC_C_CHAR_UNSIGNED`` macro and ``pyconfig.h`` no longer defines reserved symbol ``__CHAR_UNSIGNED__``. .. .. bpo: 45925 .. date: 2022-01-08-12-43-31 .. nonce: 38F3NO .. section: Build Update Windows installer to use SQLite 3.37.2. .. .. bpo: 47032 .. date: 2022-03-16-00-37-40 .. nonce: tsS9KE .. section: Build Ensure Windows install builds fail correctly with a non-zero exit code when part of the build fails. .. .. bpo: 44549 .. date: 2022-03-07-17-46-40 .. nonce: SPrGS9 .. section: Windows Update bzip2 to 1.0.8 in Windows builds to mitigate CVE-2016-3189 and CVE-2019-12900 .. .. bpo: 46948 .. date: 2022-03-07-16-34-11 .. nonce: Ufd4tG .. section: Windows Prevent CVE-2022-26488 by ensuring the Add to PATH option in the Windows installer uses the correct path when being repaired. .. .. bpo: 46638 .. date: 2022-02-04-18-02-33 .. nonce: mSJOSX .. section: Windows Ensures registry virtualization is consistently disabled. For 3.10 and earlier, it remains enabled (some registry writes are protected), while for 3.11 and later it is disabled (registry modifications affect all applications). .. .. bpo: 45925 .. date: 2022-01-26-12-04-09 .. nonce: yBSiYO .. section: macOS Update macOS installer to SQLite 3.37.2. .. .. bpo: 46630 .. date: 2022-02-03-15-47-53 .. nonce: tREOjo .. section: IDLE Make query dialogs on Windows start with a cursor in the entry box. .. .. bpo: 45296 .. date: 2022-01-26-19-33-55 .. nonce: LzZKdU .. section: IDLE Clarify close, quit, and exit in IDLE. In the File menu, 'Close' and 'Exit' are now 'Close Window' (the current one) and 'Exit' is now 'Exit IDLE' (by closing all windows). In Shell, 'quit()' and 'exit()' mean 'close Shell'. If there are no other windows, this also exits IDLE. .. .. bpo: 45447 .. date: 2021-10-14-16-55-03 .. nonce: FhiH5P .. section: IDLE Apply IDLE syntax highlighting to `.pyi` files. Patch by Alex Waygood and Terry Jan Reedy.