.. bpo: 42268 .. date: 2021-11-26-22-31-22 .. nonce: 3wl-09 .. release date: 2021-12-06 .. section: Core and Builtins Fail the configure step if the selected compiler doesn't support memory sanitizer. Patch by Pablo Galindo .. .. bpo: 45727 .. date: 2021-11-24-18-24-49 .. nonce: _xVbbo .. section: Core and Builtins Refine the custom syntax error that suggests that a comma may be missing to trigger only when the expressions are detected between parentheses or brackets. Patch by Pablo Galindo .. .. bpo: 45614 .. date: 2021-11-23-12-06-41 .. nonce: fIekgI .. section: Core and Builtins Fix :mod:`traceback` display for exceptions with invalid module name. .. .. bpo: 45848 .. date: 2021-11-19-22-57-42 .. nonce: HgVBJ5 .. section: Core and Builtins Allow the parser to obtain error lines directly from encoded files. Patch by Pablo Galindo .. .. bpo: 45826 .. date: 2021-11-17-08-05-27 .. nonce: OERoTm .. section: Core and Builtins Fixed a crash when calling ``.with_traceback(None)`` on ``NameError``. This occurs internally in ``unittest.TestCase.assertRaises()``. .. .. bpo: 45822 .. date: 2021-11-16-19-41-04 .. nonce: OT6ueS .. section: Core and Builtins Fixed a bug in the parser that was causing it to not respect :pep:`263` coding cookies when no flags are provided. Patch by Pablo Galindo .. .. bpo: 45820 .. date: 2021-11-16-19-00-27 .. nonce: 2X6Psr .. section: Core and Builtins Fix a segfault when the parser fails without reading any input. Patch by Pablo Galindo .. .. bpo: 42540 .. date: 2021-11-15-12-08-27 .. nonce: V2w107 .. section: Core and Builtins Fix crash when :func:`os.fork` is called with an active non-default memory allocator. .. .. bpo: 45738 .. date: 2021-11-14-00-14-45 .. nonce: e0cgKd .. section: Core and Builtins Fix computation of error location for invalid continuation characters in the parser. Patch by Pablo Galindo. .. .. bpo: 45773 .. date: 2021-11-09-13-01-35 .. nonce: POU8A4 .. section: Core and Builtins Fix a compiler hang when attempting to optimize certain jump patterns. .. .. bpo: 45716 .. date: 2021-11-04-20-19-07 .. nonce: 5C0pA1 .. section: Core and Builtins Improve the :exc:`SyntaxError` message when using ``True``, ``None`` or ``False`` as keywords in a function call. Patch by Pablo Galindo. .. .. bpo: 45688 .. date: 2021-11-02-09-27-46 .. nonce: v5Der1 .. section: Core and Builtins :data:`sys.stdlib_module_names` now contains the macOS-specific module :mod:`_scproxy`. .. .. bpo: 30570 .. date: 2021-10-19-01-04-08 .. nonce: _G30Ms .. section: Core and Builtins Fixed a crash in ``issubclass()`` from infinite recursion when searching pathological ``__bases__`` tuples. .. .. bpo: 45521 .. date: 2021-10-18-22-40-33 .. nonce: GdMiuW .. section: Core and Builtins Fix a bug in the obmalloc radix tree code. On 64-bit machines, the bug causes the tree to hold 46-bits of virtual addresses, rather than the intended 48-bits. .. .. bpo: 45494 .. date: 2021-10-16-17-27-48 .. nonce: vMt1g4 .. section: Core and Builtins Fix parser crash when reporting errors involving invalid continuation characters. Patch by Pablo Galindo. .. .. bpo: 45408 .. date: 2021-10-07-21-26-44 .. nonce: qUqzcd .. section: Core and Builtins Fix a crash in the parser when reporting tokenizer errors that occur at the same time unclosed parentheses are detected. Patch by Pablo Galindo. .. .. bpo: 45385 .. date: 2021-10-06-21-20-11 .. nonce: CTUT8s .. section: Core and Builtins Fix reference leak from descr_check. Patch by Dong-hee Na. .. .. bpo: 45167 .. date: 2021-09-14-09-23-59 .. nonce: CPSSoV .. section: Core and Builtins Fix deepcopying of :class:`types.GenericAlias` objects. .. .. bpo: 44219 .. date: 2021-09-09-10-32-33 .. nonce: WiYyjz .. section: Core and Builtins Release the GIL while performing ``isatty`` system calls on arbitrary file descriptors. In particular, this affects :func:`os.isatty`, :func:`os.device_encoding` and :class:`io.TextIOWrapper`. By extension, :func:`io.open` in text mode is also affected. This change solves a deadlock in :func:`os.isatty`. Patch by Vincent Michel in :issue:`44219`. .. .. bpo: 44959 .. date: 2021-09-08-08-29-41 .. nonce: OSwwPf .. section: Core and Builtins Added fallback to extension modules with '.sl' suffix on HP-UX .. .. bpo: 44050 .. date: 2021-09-08-00-30-09 .. nonce: mFI15u .. section: Core and Builtins Extensions that indicate they use global state (by setting ``m_size`` to -1) can again be used in multiple interpreters. This reverts to behavior of Python 3.8. .. .. bpo: 45121 .. date: 2021-09-07-17-10-16 .. nonce: iG-Hsf .. section: Core and Builtins Fix issue where ``Protocol.__init__`` raises ``RecursionError`` when it's called directly or via ``super()``. Patch provided by Yurii Karabas. .. .. bpo: 45083 .. date: 2021-09-01-23-55-49 .. nonce: cLi9G3 .. section: Core and Builtins When the interpreter renders an exception, its name now has a complete qualname. Previously only the class name was concatenated to the module name, which sometimes resulted in an incorrect full name being displayed. (This issue impacted only the C code exception rendering, the :mod:`traceback` module was using qualname already). .. .. bpo: 45056 .. date: 2021-09-01-16-55-43 .. nonce: 7AK2d9 .. section: Core and Builtins Compiler now removes trailing unused constants from co_consts. .. .. bpo: 27946 .. date: 2021-12-04-20-08-42 .. nonce: -Vuarf .. section: Library Fix possible crash when getting an attribute of class:`xml.etree.ElementTree.Element` simultaneously with replacing the ``attrib`` dict. .. .. bpo: 37658 .. date: 2021-11-28-15-30-34 .. nonce: 8Hno7d .. section: Library Fix issue when on certain conditions ``asyncio.wait_for()`` may allow a coroutine to complete successfully, but fail to return the result, potentially causing memory leaks or other issues. .. .. bpo: 44649 .. date: 2021-11-21-20-50-42 .. nonce: E8M936 .. section: Library Handle dataclass(slots=True) with a field that has default a default value, but for which init=False. .. .. bpo: 45803 .. date: 2021-11-20-17-04-25 .. nonce: wSgFOy .. section: Library Added missing kw_only parameter to dataclasses.make_dataclass(). .. .. bpo: 45831 .. date: 2021-11-17-19-25-37 .. nonce: 9-TojK .. section: Library :mod:`faulthandler` can now write ASCII-only strings (like filenames and function names) with a single write() syscall when dumping a traceback. It reduces the risk of getting an unreadable dump when two threads or two processes dump a traceback to the same file (like stderr) at the same time. Patch by Victor Stinner. .. .. bpo: 41735 .. date: 2021-11-16-18-13-49 .. nonce: D72UY1 .. section: Library Fix thread lock in ``zlib.Decompress.flush()`` method before ``PyObject_GetBuffer``. .. .. bpo: 45235 .. date: 2021-11-11-13-03-17 .. nonce: 8ZbkHa .. section: Library Reverted an argparse bugfix that caused regression in the handling of default arguments for subparsers. This prevented leaf level arguments from taking precedence over root level arguments. .. .. bpo: 45765 .. date: 2021-11-09-09-04-19 .. nonce: JVobxK .. section: Library In importlib.metadata, fix distribution discovery for an empty path. .. .. bpo: 45757 .. date: 2021-11-08-23-22-14 .. nonce: MHZHt3 .. section: Library Fix bug where :mod:`dis` produced an incorrect oparg when :opcode:`EXTENDED_ARG` is followed by an opcode that does not use its argument. .. .. bpo: 45644 .. date: 2021-11-06-17-47-46 .. nonce: ZMqHD_ .. section: Library In-place JSON file formatting using ``python3 -m json.tool infile infile`` now works correctly, previously it left the file empty. Patch by Chris Wesseling. .. .. bpo: 45679 .. date: 2021-10-30-21-11-37 .. nonce: Dq8Cpu .. section: Library Fix caching of multi-value :data:`typing.Literal`. ``Literal[True, 2]`` is no longer equal to ``Literal[1, 2]``. .. .. bpo: 45664 .. date: 2021-10-28-23-40-54 .. nonce: 7dqtxQ .. section: Library Fix :func:`types.resolve_bases` and :func:`types.new_class` for :class:`types.GenericAlias` instance as a base. .. .. bpo: 45663 .. date: 2021-10-28-23-11-59 .. nonce: J90N5R .. section: Library Fix :func:`dataclasses.is_dataclass` for dataclasses which are subclasses of :class:`types.GenericAlias`. .. .. bpo: 45662 .. date: 2021-10-28-22-58-14 .. nonce: sJd7Ir .. section: Library Fix the repr of :data:`dataclasses.InitVar` with a type alias to the built-in class, e.g. ``InitVar[list[int]]``. .. .. bpo: 45438 .. date: 2021-10-27-10-05-39 .. nonce: Xz5lGU .. section: Library Fix typing.Signature string representation for generic builtin types. .. .. bpo: 45574 .. date: 2021-10-22-23-06-33 .. nonce: svqA84 .. section: Library Fix warning about ``print_escape`` being unused. .. .. bpo: 45581 .. date: 2021-10-22-21-57-02 .. nonce: rlH6ay .. section: Library :meth:`sqlite3.connect` now correctly raises :exc:`MemoryError` if the underlying SQLite API signals memory error. Patch by Erlend E. Aasland. .. .. bpo: 45557 .. date: 2021-10-21-16-18-51 .. nonce: 4MQt4r .. section: Library pprint.pprint() now handles underscore_numbers correctly. Previously it was always setting it to False. .. .. bpo: 45515 .. date: 2021-10-18-14-52-48 .. nonce: aXdvm_ .. section: Library Add references to :mod:`zoneinfo` in the :mod:`datetime` documentation, mostly replacing outdated references to ``dateutil.tz``. Change by Paul Ganssle. .. .. bpo: 45475 .. date: 2021-10-18-10-46-47 .. nonce: sb9KDF .. section: Library Reverted optimization of iterating :class:`gzip.GzipFile`, :class:`bz2.BZ2File`, and :class:`lzma.LZMAFile` (see bpo-43787) because it caused regression when user iterate them without having reference of them. Patch by Inada Naoki. .. .. bpo: 45428 .. date: 2021-10-14-18-04-17 .. nonce: mM2War .. section: Library Fix a regression in py_compile when reading filenames from standard input. .. .. bpo: 45467 .. date: 2021-10-14-13-31-19 .. nonce: Q7Ma6A .. section: Library Fix incremental decoder and stream reader in the "raw-unicode-escape" codec. Previously they failed if the escape sequence was split. .. .. bpo: 45461 .. date: 2021-10-14-00-19-02 .. nonce: 4LB_tJ .. section: Library Fix incremental decoder and stream reader in the "unicode-escape" codec. Previously they failed if the escape sequence was split. .. .. bpo: 45239 .. date: 2021-10-13-17-52-48 .. nonce: 7li1_0 .. section: Library Fixed :func:`email.utils.parsedate_tz` crashing with :exc:`UnboundLocalError` on certain invalid input instead of returning ``None``. Patch by Ben Hoyt. .. .. bpo: 45249 .. date: 2021-10-10-16-14-33 .. nonce: xqLliz .. section: Library Fix the behaviour of :func:`traceback.print_exc` when displaying the caret when the ``end_offset`` in the exception is set to 0. Patch by Pablo Galindo .. .. bpo: 45416 .. date: 2021-10-10-09-42-34 .. nonce: n35O0_ .. section: Library Fix use of :class:`asyncio.Condition` with explicit :class:`asyncio.Lock` objects, which was a regression due to removal of explicit loop arguments. Patch by Joongi Kim. .. .. bpo: 45419 .. date: 2021-10-09-20-53-13 .. nonce: CauCgt .. section: Library Correct interfaces on DegenerateFiles.Path. .. .. bpo: 44904 .. date: 2021-10-09-18-42-27 .. nonce: RlW5h8 .. section: Library Fix bug in the :mod:`doctest` module that caused it to fail if a docstring included an example with a ``classmethod`` ``property``. Patch by Alex Waygood. .. .. bpo: 45406 .. date: 2021-10-08-19-24-48 .. nonce: Qh_Mz4 .. section: Library Make :func:`inspect.getmodule` catch ``FileNotFoundError`` raised by :'func:`inspect.getabsfile`, and return ``None`` to indicate that the module could not be determined. .. .. bpo: 45262 .. date: 2021-10-07-14-04-10 .. nonce: HqF71Z .. section: Library Prevent use-after-free in asyncio. Make sure the cached running loop holder gets cleared on dealloc to prevent use-after-free in get_running_loop .. .. bpo: 45386 .. date: 2021-10-07-00-05-05 .. nonce: q9ORpA .. section: Library Make :mod:`xmlrpc.client` more robust to C runtimes where the underlying C ``strftime`` function results in a ``ValueError`` when testing for year formatting options. .. .. bpo: 45371 .. date: 2021-10-05-11-03-48 .. nonce: NOwcDJ .. section: Library Fix clang rpath issue in :mod:`distutils`. The UnixCCompiler now uses correct clang option to add a runtime library directory (rpath) to a shared library. .. .. bpo: 20028 .. date: 2021-10-03-21-14-37 .. nonce: zBA4RK .. section: Library Improve error message of :class:`csv.Dialect` when initializing. Patch by Vajrasky Kok and Dong-hee Na. .. .. bpo: 45343 .. date: 2021-10-01-23-07-02 .. nonce: ixmctD .. section: Library Update bundled pip to 21.2.4 and setuptools to 58.1.0 .. .. bpo: 45329 .. date: 2021-10-01-13-09-53 .. nonce: 9iMYaO .. section: Library Fix freed memory access in :class:`pyexpat.xmlparser` when building it with an installed expat library <= 2.2.0. .. .. bpo: 41710 .. date: 2021-09-30-23-00-18 .. nonce: svuloZ .. section: Library On Unix, if the ``sem_clockwait()`` function is available in the C library (glibc 2.30 and newer), the :meth:`threading.Lock.acquire` method now uses the monotonic clock (:data:`time.CLOCK_MONOTONIC`) for the timeout, rather than using the system clock (:data:`time.CLOCK_REALTIME`), to not be affected by system clock changes. Patch by Victor Stinner. .. .. bpo: 45328 .. date: 2021-09-30-08-22-44 .. nonce: 8Z-Q0B .. section: Library Fixed :class:`http.client.HTTPConnection` to work properly in OSs that don't support the ``TCP_NODELAY`` socket option. .. .. bpo: 1596321 .. date: 2021-09-24-17-20-23 .. nonce: 3nhPUk .. section: Library Fix the :func:`threading._shutdown` function when the :mod:`threading` module was imported first from a thread different than the main thread: no longer log an error at Python exit. .. .. bpo: 45274 .. date: 2021-09-23-22-17-26 .. nonce: gPpa4E .. section: Library Fix a race condition in the :meth:`Thread.join() ` method of the :mod:`threading` module. If the function is interrupted by a signal and the signal handler raises an exception, make sure that the thread remains in a consistent state to prevent a deadlock. Patch by Victor Stinner. .. .. bpo: 45238 .. date: 2021-09-18-16-56-33 .. nonce: Hng_9V .. section: Library Fix :meth:`unittest.IsolatedAsyncioTestCase.debug`: it runs now asynchronous methods and callbacks. .. .. bpo: 36674 .. date: 2021-09-18-13-14-57 .. nonce: a2k5Zb .. section: Library :meth:`unittest.TestCase.debug` raises now a :class:`unittest.SkipTest` if the class or the test method are decorated with the skipping decorator. .. .. bpo: 45235 .. date: 2021-09-17-16-55-37 .. nonce: sXnmPA .. section: Library Fix an issue where argparse would not preserve values in a provided namespace when using a subparser with defaults. .. .. bpo: 45183 .. date: 2021-09-17-15-58-53 .. nonce: Vv_vch .. section: Library Have zipimport.zipimporter.find_spec() not raise an exception when the underlying zip file has been deleted and the internal cache has been reset via invalidate_cache(). .. .. bpo: 45234 .. date: 2021-09-17-11-20-55 .. nonce: qUcTVt .. section: Library Fixed a regression in :func:`~shutil.copyfile`, :func:`~shutil.copy`, :func:`~shutil.copy2` raising :exc:`FileNotFoundError` when source is a directory, which should raise :exc:`IsADirectoryError` .. .. bpo: 45228 .. date: 2021-09-17-09-59-33 .. nonce: WV1dcT .. section: Library Fix stack buffer overflow in parsing J1939 network address. .. .. bpo: 45192 .. date: 2021-09-14-15-52-47 .. nonce: DjA-BI .. section: Library Fix the ``tempfile._infer_return_type`` function so that the ``dir`` argument of the :mod:`tempfile` functions accepts an object implementing the ``os.PathLike`` protocol. Patch by Kyungmin Lee. .. .. bpo: 42135 .. date: 2021-09-13-19-32-58 .. nonce: 1ZAHqR .. section: Library Fix typo: ``importlib.find_loader`` is really slated for removal in Python 3.12 not 3.10, like the others in GH-25169. Patch by Hugo van Kemenade. .. .. bpo: 45160 .. date: 2021-09-11-14-47-05 .. nonce: VzMXbW .. section: Library When tracing a tkinter variable used by a ttk OptionMenu, callbacks are no longer made twice. .. .. bpo: 35474 .. date: 2021-09-11-10-45-12 .. nonce: tEY3SD .. section: Library Calling :func:`mimetypes.guess_all_extensions` with ``strict=False`` no longer affects the result of the following call with ``strict=True``. Also, mutating the returned list no longer affects the global state. .. .. bpo: 45166 .. date: 2021-09-10-21-35-53 .. nonce: UHipXF .. section: Library :func:`typing.get_type_hints` now works with :data:`~typing.Final` wrapped in :class:`~typing.ForwardRef`. .. .. bpo: 20499 .. date: 2021-09-08-01-19-31 .. nonce: tSxx8Y .. section: Library Improve the speed and accuracy of statistics.pvariance(). .. .. bpo: 24444 .. date: 2021-08-30-00-19-23 .. nonce: Ki4bgz .. section: Library Fixed an error raised in :mod:`argparse` help display when help for an option is set to 1+ blank spaces or when *choices* arg is an empty container. .. .. bpo: 45021 .. date: 2021-08-28-13-00-12 .. nonce: rReeaj .. section: Library Fix a potential deadlock at shutdown of forked children when using :mod:`concurrent.futures` module .. .. bpo: 39039 .. date: 2021-08-18-10-36-14 .. nonce: A63LYh .. section: Library tarfile.open raises :exc:`~tarfile.ReadError` when a zlib error occurs during file extraction. .. .. bpo: 44594 .. date: 2021-07-12-10-32-48 .. nonce: eEa5zi .. section: Library Fix an edge case of :class:`ExitStack` and :class:`AsyncExitStack` exception chaining. They will now match ``with`` block behavior when ``__context__`` is explicitly set to ``None`` when the exception is in flight. .. .. bpo: 44295 .. date: 2021-06-02-16-39-42 .. nonce: erg01m .. section: Library Ensure deprecation warning from :func:`assertDictContainsSubset` points at calling code - by Anthony Sottile. .. .. bpo: 43498 .. date: 2021-04-20-14-14-16 .. nonce: L_Hq-8 .. section: Library Avoid a possible *"RuntimeError: dictionary changed size during iteration"* when adjusting the process count of :class:`ProcessPoolExecutor`. .. .. bpo: 45640 .. date: 2021-11-18-16-44-12 .. nonce: lSpc2A .. section: Documentation Properly marked-up grammar tokens in the documentation are now clickable and take you to the definition of a given piece of grammar. Patch by Arthur Milchior. .. .. bpo: 45788 .. date: 2021-11-18-00-07-40 .. nonce: qibUoB .. section: Documentation Link doc for sys.prefix to sysconfig doc on installation paths. .. .. bpo: 45772 .. date: 2021-11-09-13-10-55 .. nonce: EdrM3t .. section: Documentation ``socket.socket`` documentation is corrected to a class from a function. .. .. bpo: 45392 .. date: 2021-11-06-10-54-17 .. nonce: JZnVOz .. section: Documentation Update the docstring of the :class:`type` built-in to remove a redundant line and to mention keyword arguments for the constructor. .. .. bpo: 45726 .. date: 2021-11-05-12-15-24 .. nonce: GwRr7e .. section: Documentation Improve documentation for :func:`functools.singledispatch` and :class:`functools.singledispatchmethod`. .. .. bpo: 45680 .. date: 2021-11-03-14-51-03 .. nonce: 9_NTFU .. section: Documentation Amend the docs on ``GenericAlias`` objects to clarify that non-container classes can also implement ``__class_getitem__``. Patch contributed by Alex Waygood. .. .. bpo: 45655 .. date: 2021-10-28-19-22-55 .. nonce: aPYGaS .. section: Documentation Add a new "relevant PEPs" section to the top of the documentation for the ``typing`` module. Patch by Alex Waygood. .. .. bpo: 45604 .. date: 2021-10-26-10-00-45 .. nonce: Dm-YhV .. section: Documentation Add ``level`` argument to ``multiprocessing.log_to_stderr`` function docs. .. .. bpo: 45250 .. date: 2021-10-22-12-09-18 .. nonce: Iit5-Y .. section: Documentation Update the documentation to note that CPython does not consistently require iterators to define ``__iter__``. .. .. bpo: 45464 .. date: 2021-10-20-16-26-53 .. nonce: mOISBs .. section: Documentation Mention in the documentation of :ref:`Built-in Exceptions ` that inheriting from multiple exception types in a single subclass is not recommended due to possible memory layout incompatibility. .. .. bpo: 45449 .. date: 2021-10-19-01-41-40 .. nonce: fjHZJc .. section: Documentation Add note about :pep:`585` in :mod:`collections.abc`. .. .. bpo: 45516 .. date: 2021-10-18-20-12-18 .. nonce: EJh4K8 .. section: Documentation Add protocol description to the :class:`importlib.abc.Traversable` documentation. .. .. bpo: 20692 .. date: 2021-10-13-00-42-54 .. nonce: K5rGtP .. section: Documentation Add Programming FAQ entry explaining that int literal attribute access requires either a space after or parentheses around the literal. .. .. bpo: 45216 .. date: 2021-09-18-13-45-19 .. nonce: o56nyt .. section: Documentation Remove extra documentation listing methods in ``difflib``. It was rendering twice in pydoc and was outdated in some places. .. .. bpo: 45024 .. date: 2021-09-08-17-20-19 .. nonce: dkNPNi .. section: Documentation :mod:`collections.abc` documentation has been expanded to explicitly cover how instance and subclass checks work, with additional doctest examples and an exhaustive list of ABCs which test membership purely by presence of the right :term:`special method`\s. Patch by Raymond Hettinger. .. .. bpo: 25381 .. date: 2021-06-21-17-51-51 .. nonce: 7Kn-_H .. section: Documentation In the extending chapter of the extending doc, update a paragraph about the global variables containing exception information. .. .. bpo: 43905 .. date: 2021-05-24-05-00-12 .. nonce: tBIndE .. section: Documentation Expanded :func:`~dataclasses.astuple` and :func:`~dataclasses.asdict` docs, warning about deepcopy being applied and providing a workaround. .. .. bpo: 19460 .. date: 2021-11-28-15-25-02 .. nonce: lr0aWs .. section: Tests Add new Test for :class:`email.mime.nonmultipart.MIMENonMultipart`. .. .. bpo: 45835 .. date: 2021-11-17-14-28-08 .. nonce: Mgyhjx .. section: Tests Fix race condition in test_queue tests with multiple "feeder" threads. .. .. bpo: 45678 .. date: 2021-11-04-20-03-32 .. nonce: 1xNMjN .. section: Tests Add tests for scenarios in which :class:`functools.singledispatchmethod` is stacked on top of a method that has already been wrapped by two other decorators. Patch by Alex Waygood. .. .. bpo: 45578 .. date: 2021-10-30-19-00-25 .. nonce: bvu6X2 .. section: Tests Add tests for :func:`dis.distb` .. .. bpo: 45678 .. date: 2021-10-30-13-12-20 .. nonce: bKrYeS .. section: Tests Add tests to ensure that ``functools.singledispatchmethod`` correctly wraps the attributes of the target function. .. .. bpo: 45577 .. date: 2021-10-22-19-44-13 .. nonce: dSaNvK .. section: Tests Add subtests for all ``pickle`` protocols in ``test_zoneinfo``. .. .. bpo: 45566 .. date: 2021-10-22-12-05-21 .. nonce: 2gQ3ZB .. section: Tests Fix ``test_frozen_pickle`` in ``test_dataclasses`` to check all ``pickle`` versions. .. .. bpo: 43592 .. date: 2021-10-21-17-22-26 .. nonce: kHRsra .. section: Tests :mod:`test.libregrtest` now raises the soft resource limit for the maximum number of file descriptors when the default is too low for our test suite as was often the case on macOS. .. .. bpo: 39679 .. date: 2021-10-18-16-18-41 .. nonce: F18qcE .. section: Tests Add more test cases for `@functools.singledispatchmethod` when combined with `@classmethod` or `@staticmethod`. .. .. bpo: 45400 .. date: 2021-10-07-13-11-45 .. nonce: h3iT7V .. section: Tests Fix test_name_error_suggestions_do_not_trigger_for_too_many_locals() of test_exceptions if a directory name contains "a1" (like "Python-3.11.0a1"): use a stricter regular expression. Patch by Victor Stinner. .. .. bpo: 40173 .. date: 2021-09-30-16-54-39 .. nonce: J_slCw .. section: Tests Fix :func:`test.support.import_helper.import_fresh_module`. .. .. bpo: 45280 .. date: 2021-09-25-11-05-31 .. nonce: 3MA6lC .. section: Tests Add a test case for empty :class:`typing.NamedTuple`. .. .. bpo: 45269 .. date: 2021-09-24-10-41-49 .. nonce: 8jKEr8 .. section: Tests Cover case when invalid ``markers`` type is supplied to ``c_make_encoder``. .. .. bpo: 45128 .. date: 2021-09-16-17-22-35 .. nonce: Jz6fl2 .. section: Tests Fix ``test_multiprocessing_fork`` failure due to ``test_logging`` and ``sys.modules`` manipulation. .. .. bpo: 45209 .. date: 2021-09-15-23-32-39 .. nonce: 55ntL5 .. section: Tests Fix ``UserWarning: resource_tracker`` warning in ``_test_multiprocessing._TestSharedMemory.test_shared_memory_cleaned_after_process_termination`` .. .. bpo: 45195 .. date: 2021-09-14-13-16-18 .. nonce: EyQR1G .. section: Tests Fix test_readline.test_nonascii(): sometimes, the newline character is not written at the end, so don't expect it in the output. Patch by Victor Stinner. .. .. bpo: 45156 .. date: 2021-09-13-00-28-17 .. nonce: 8oomV3 .. section: Tests Fixes infinite loop on :func:`unittest.mock.seal` of mocks created by :func:`~unittest.create_autospec`. .. .. bpo: 45125 .. date: 2021-09-11-22-08-18 .. nonce: FVSzs2 .. section: Tests Improves pickling tests and docs of ``SharedMemory`` and ``SharableList`` objects. .. .. bpo: 44860 .. date: 2021-09-08-13-01-37 .. nonce: qXd0kx .. section: Tests Update ``test_sysconfig.test_user_similar()`` for the posix_user scheme: ``platlib`` doesn't use :data:`sys.platlibdir`. Patch by Victor Stinner. .. .. bpo: 25130 .. date: 2021-08-27-22-37-19 .. nonce: ig4oJe .. section: Tests Add calls of :func:`gc.collect` in tests to support PyPy. .. .. bpo: 44035 .. date: 2021-12-06-09-31-27 .. nonce: BiO4XC .. section: Build CI now verifies that autoconf files have been regenerated with a current and unpatched autoconf package. .. .. bpo: 33393 .. date: 2021-11-25-20-26-06 .. nonce: 24YNtM .. section: Build Update ``config.guess`` to 2021-06-03 and ``config.sub`` to 2021-08-14. ``Makefile`` now has an ``update-config`` target to make updating more convenient. .. .. bpo: 45866 .. date: 2021-11-25-13-53-36 .. nonce: ZH1W8N .. section: Build ``make regen-all`` now produces the same output when run from a directory other than the source tree: when building Python out of the source tree. pegen now strips directory of the "generated by pygen from " header Patch by Victor Stinner. .. .. bpo: 41498 .. date: 2021-11-25-09-15-04 .. nonce: qAk5eo .. section: Build Python now compiles on platforms without ``sigset_t``. Several functions in :mod:`signal` are not available when ``sigset_t`` is missing. Based on patch by Roman Yurchak for pyodide. .. .. bpo: 45881 .. date: 2021-11-24-17-14-06 .. nonce: GTXXLk .. section: Build ``setup.py`` now uses ``CC`` from environment first to discover multiarch and cross compile paths. .. .. bpo: 43158 .. date: 2021-11-01-12-51-46 .. nonce: fghS6w .. section: Build ``setup.py`` now uses values from configure script to build the ``_uuid`` extension module. Configure now detects util-linux's ``libuuid``, too. .. .. bpo: 45571 .. date: 2021-10-22-15-28-29 .. nonce: yY8NsJ .. section: Build ``Modules/Setup`` now use ``PY_CFLAGS_NODIST`` instead of ``PY_CFLAGS`` to compile shared modules. .. .. bpo: 45561 .. date: 2021-10-21-14-38-30 .. nonce: PVqhZE .. section: Build Run smelly.py tool from $(srcdir). .. .. bpo: 45532 .. date: 2021-10-20-16-07-39 .. nonce: kyhvis .. section: Build Update :data:`sys.version` to use ``main`` as fallback information. Patch by Jeong YunWon. .. .. bpo: 45536 .. date: 2021-10-20-12-42-39 .. nonce: oQNYHB .. section: Build The ``configure`` script now checks whether OpenSSL headers and libraries provide required APIs. Most common APIs are verified. The check detects outdated or missing OpenSSL. Failures do not stop configure. .. .. bpo: 45221 .. date: 2021-10-18-10-25-56 .. nonce: rnulhf .. section: Build Fixed regression in handling of ``LDFLAGS`` and ``CPPFLAGS`` options where :meth:`argparse.parse_known_args` could interpret an option as one of the built-in command line argument, for example ``-h`` for help. .. .. bpo: 45405 .. date: 2021-10-11-16-27-38 .. nonce: iSfdW5 .. section: Build Prevent ``internal configure error`` when running ``configure`` with recent versions of non-Apple clang. Patch by David Bohman. .. .. bpo: 45220 .. date: 2021-09-16-18-00-43 .. nonce: TgbkvW .. section: Build Avoid building with the Windows 11 SDK previews automatically. This may be overridden by setting the ``DefaultWindowsSDKVersion`` environment variable before building. .. .. bpo: 45067 .. date: 2021-09-09-16-45-26 .. nonce: mFmY92 .. section: Build The ncurses function extended_color_content was introduced in 2017 (https://invisible-island.net/ncurses/NEWS.html#index-t20170401). The ncurses-devel package in CentOS 7 had a older version ncurses resulted in compilation error. For compiling ncurses with extended color support, we verify the version of the ncurses library >= 20170401. .. .. bpo: 45901 .. date: 2021-11-26-18-17-41 .. nonce: c5IBqM .. section: Windows When installed through the Microsoft Store and set as the default app for :file:`*.py` files, command line arguments will now be passed to Python when invoking a script without explicitly launching Python (that is, ``script.py args`` rather than ``python script.py args``). .. .. bpo: 45616 .. date: 2021-11-23-11-44-42 .. nonce: K52PLZ .. section: Windows Fix Python Launcher's ability to distinguish between versions 3.1 and 3.10 when either one is explicitly requested. Previously, 3.1 would be used if 3.10 was requested but not installed, and 3.10 would be used if 3.1 was requested but 3.10 was installed. .. .. bpo: 45732 .. date: 2021-11-08-21-53-11 .. nonce: idl5kx .. section: Windows Updates bundled Tcl/Tk to 8.6.12. .. .. bpo: 45720 .. date: 2021-11-05-01-05-46 .. nonce: 47Nc5I .. section: Windows Internal reference to :file:`shlwapi.dll` was dropped to help improve startup time. This DLL will no longer be loaded at the start of every Python process. .. .. bpo: 43652 .. date: 2021-11-04-00-41-50 .. nonce: RnqV7I .. section: Windows Update Tcl/Tk to 8.6.11, actually this time. The previous update incorrectly included 8.6.10. .. .. bpo: 45337 .. date: 2021-09-30-23-17-27 .. nonce: qg7U_h .. section: Windows venv now warns when the created environment may need to be accessed at a different path, due to redirections, links or junctions. It also now correctly installs or upgrades components when the alternate path is required. .. .. bpo: 45732 .. date: 2021-12-05-23-52-03 .. nonce: -BWrnh .. section: macOS Update python.org macOS installer to use Tcl/Tk 8.6.12. .. .. bpo: 44828 .. date: 2021-10-25-02-02-21 .. nonce: XBdXlJ .. section: macOS Avoid tkinter file dialog failure on macOS 12 Monterey when using the Tk 8.6.11 provided by python.org macOS installers. Patch by Marc Culler of the Tk project. .. .. bpo: 34602 .. date: 2021-08-27-16-55-10 .. nonce: ZjHsYJ .. section: macOS When building CPython on macOS with ``./configure --with-undefined-behavior-sanitizer --with-pydebug``, the stack size is now quadrupled to allow for the entire test suite to pass. .. .. bpo: 45495 .. date: 2021-10-16-17-20-32 .. nonce: ST8RFt .. section: IDLE Add context keywords 'case' and 'match' to completions list. .. .. bpo: 45296 .. date: 2021-09-27-01-21-59 .. nonce: 9H8rdY .. section: IDLE On Windows, change exit/quit message to suggest Ctrl-D, which works, instead of , which does not work in IDLE. .. .. bpo: 45193 .. date: 2021-09-15-03-20-06 .. nonce: G61_GV .. section: IDLE Make completion boxes appear on Ubuntu again. .. .. bpo: 44786 .. date: 2021-09-14-11-44-26 .. nonce: DU0LC0 .. section: Tools/Demos Fix a warning in regular expression in the c-analyzer script. .. .. bpo: 39026 .. date: 2021-11-09-15-42-11 .. nonce: sUnYWn .. section: C API Fix Python.h to build C extensions with Xcode: remove a relative include from ``Include/cpython/pystate.h``. .. .. bpo: 45307 .. date: 2021-09-28-12-00-55 .. nonce: 3ETFfX .. section: C API Restore the private C API function :func:`_PyImport_FindExtensionObject`. It will be removed in Python 3.11. .. .. bpo: 44687 .. date: 2021-09-19-17-18-25 .. nonce: 3fqDRC .. section: C API :meth:`BufferedReader.peek` no longer raises :exc:`ValueError` when the entire file has already been buffered. .. .. bpo: 44751 .. date: 2021-07-27-17-29-12 .. nonce: 4qmbDG .. section: C API Remove ``crypt.h`` include from the public ``Python.h`` header.