.. date: 2024-02-13-15-14-39 .. gh-issue: 115399 .. nonce: xT-scP .. release date: 2024-02-15 .. section: Security Update bundled libexpat to 2.6.0 .. .. date: 2024-02-12-00-33-01 .. gh-issue: 115243 .. nonce: e1oGX8 .. section: Security Fix possible crashes in :meth:`collections.deque.index` when the deque is concurrently modified. .. .. date: 2024-02-14-23-50-55 .. gh-issue: 112087 .. nonce: H_4W_v .. section: Core and Builtins For an empty reverse iterator for list will be reduced to :func:`reversed`. Patch by Donghee Na .. .. date: 2024-02-12-17-18-26 .. gh-issue: 114570 .. nonce: BzwMlJ .. section: Core and Builtins Add :exc:`PythonFinalizationError` exception. This exception derived from :exc:`RuntimeError` is raised when an operation is blocked during the :term:`Python finalization `. Patch by Victor Stinner. .. .. date: 2024-02-07-18-04-36 .. gh-issue: 114695 .. nonce: o9wP5P .. section: Core and Builtins Add :func:`sys._clear_internal_caches`, which clears all internal performance-related caches (and deprecate the less-general :func:`sys._clear_type_cache` function). .. .. date: 2024-02-07-07-50-12 .. gh-issue: 114828 .. nonce: nSXwMi .. section: Core and Builtins Fix compilation crashes in uncommon code examples using :func:`super` inside a comprehension in a class body. .. .. date: 2024-02-07-00-18-42 .. gh-issue: 112069 .. nonce: jRDRR5 .. section: Core and Builtins Adapt :class:`set` and :class:`frozenset` methods to Argument Clinic. .. .. date: 2024-02-05-12-40-26 .. gh-issue: 115011 .. nonce: L1AKF5 .. section: Core and Builtins Setters for members with an unsigned integer type now support the same range of valid values for objects that has a :meth:`~object.__index__` method as for :class:`int`. .. .. date: 2024-02-03-04-07-18 .. gh-issue: 114887 .. nonce: uLSFmN .. section: Core and Builtins Changed socket type validation in :meth:`~asyncio.loop.create_datagram_endpoint` to accept all non-stream sockets. This fixes a regression in compatibility with raw sockets. .. .. date: 2024-02-03-01-48-38 .. gh-issue: 114944 .. nonce: 4J5ELD .. section: Core and Builtins Fixes a race between ``PyParkingLot_Park`` and ``_PyParkingLot_UnparkAll``. .. .. date: 2024-02-02-05-27-48 .. gh-issue: 113462 .. nonce: VMml8q .. section: Core and Builtins Limit the number of versions that a single class can use. Prevents a few wayward classes using up all the version numbers. .. .. date: 2024-02-01-23-43-49 .. gh-issue: 76763 .. nonce: o_2J6i .. section: Core and Builtins The :func:`chr` builtin function now always raises :exc:`ValueError` for values outside the valid range. Previously it raised :exc:`OverflowError` for very large or small values. .. .. date: 2024-02-01-18-16-52 .. gh-issue: 114806 .. nonce: wrH2J6 .. section: Core and Builtins No longer specialize calls to classes, if those classes have metaclasses. Fixes bug where the ``__call__`` method of the metaclass was not being called. .. .. date: 2024-01-31-09-10-10 .. gh-issue: 107944 .. nonce: XWm1B- .. section: Core and Builtins Improve error message for function calls with bad keyword arguments via getargs .. .. date: 2024-01-25-18-50-49 .. gh-issue: 112529 .. nonce: IbbApA .. section: Core and Builtins The free-threaded build no longer allocates space for the ``PyGC_Head`` structure in objects that support cyclic garbage collection. A number of other fields and data structures are used as replacements, including ``ob_gc_bits``, ``ob_tid``, and mimalloc internal data structures. .. .. date: 2024-01-22-15-10-01 .. gh-issue: 114456 .. nonce: fBFEJF .. section: Core and Builtins Lower the recursion limit under a debug build of WASI. .. .. date: 2024-01-22-09-49-02 .. gh-issue: 114083 .. nonce: hf1-ku .. section: Core and Builtins Compiler applies folding of LOAD_CONST with following instruction in a separate pass before other optimisations. This enables jump threading in certain circumstances. .. .. date: 2024-01-21-17-29-32 .. gh-issue: 114388 .. nonce: UVGO4K .. section: Core and Builtins Fix a :exc:`RuntimeWarning` emitted when assign an integer-like value that is not an instance of :class:`int` to an attribute that corresponds to a C struct member of :ref:`type ` T_UINT and T_ULONG. Fix a double :exc:`RuntimeWarning` emitted when assign a negative integer value to an attribute that corresponds to a C struct member of type T_UINT. .. .. date: 2024-01-19-13-18-13 .. gh-issue: 114265 .. nonce: 7HAi-- .. section: Core and Builtins Compiler propagates line numbers before optimization, leading to more optimization opportunities and removing the need for the ``guarantee_lineno_for_exits`` hack. .. .. date: 2024-01-18-20-20-37 .. gh-issue: 112529 .. nonce: oVNvDG .. section: Core and Builtins The free-threaded build now has its own thread-safe GC implementation that uses mimalloc to find GC tracked objects. It is non-generational, unlike the existing GC implementation. .. .. date: 2024-01-17-23-39-20 .. gh-issue: 114050 .. nonce: Lnv1oq .. section: Core and Builtins Fix segmentation fault caused by an incorrect format string in ``TypeError`` exception when more than two arguments are passed to ``int``. .. .. date: 2024-01-17-05-09-32 .. gh-issue: 112354 .. nonce: Run9ko .. section: Core and Builtins The ``END_FOR`` instruction now pops only one value. This is to better support side exits in loops. .. .. date: 2024-01-17-00-52-57 .. gh-issue: 113884 .. nonce: CvEjUE .. section: Core and Builtins Make :class:`queue.SimpleQueue` thread safe when the GIL is disabled. .. .. date: 2024-01-16-14-41-54 .. gh-issue: 114058 .. nonce: Cb2b8h .. section: Core and Builtins Implement the foundations of the Tier 2 redundancy eliminator. .. .. date: 2024-01-12-16-40-07 .. gh-issue: 113939 .. nonce: Yi3L-e .. section: Core and Builtins frame.clear(): Clear frame.f_locals as well, and not only the fast locals. This is relevant once frame.f_locals was accessed, which would contain also references to all the locals. .. .. date: 2024-01-11-22-58-45 .. gh-issue: 112050 .. nonce: hDuvDW .. section: Core and Builtins Convert :class:`collections.deque` to use Argument Clinic. .. .. date: 2024-01-08-21-57-41 .. gh-issue: 112050 .. nonce: qwgjx1 .. section: Core and Builtins Make methods on :class:`collections.deque` thread-safe when the GIL is disabled. .. .. date: 2023-12-24-03-25-28 .. gh-issue: 113464 .. nonce: dvjQmA .. section: Core and Builtins Add an option (``--enable-experimental-jit`` for ``configure``-based builds or ``--experimental-jit`` for ``PCbuild``-based ones) to build an *experimental* just-in-time compiler, based on `copy-and-patch `_ .. .. date: 2023-12-22-13-21-39 .. gh-issue: 113055 .. nonce: 47xBMF .. section: Core and Builtins Make interp->obmalloc a pointer. For interpreters that share state with the main interpreter, this points to the same static memory structure. For interpreters with their own obmalloc state, it is heap allocated. Add free_obmalloc_arenas() which will free the obmalloc arenas and radix tree structures for interpreters with their own obmalloc state. .. .. date: 2023-06-06-19-09-00 .. gh-issue: 55664 .. nonce: vYYl0V .. section: Core and Builtins Add warning when creating :class:`type` using a namespace dictionary with non-string keys. Patched by Daniel Urban and Furkan Onder. .. .. date: 2023-05-16-06-52-34 .. gh-issue: 104530 .. nonce: mJnA0W .. section: Core and Builtins Use native Win32 condition variables. .. .. date: 2024-02-13-18-27-03 .. gh-issue: 115392 .. nonce: gle5tp .. section: Library Fix a bug in :mod:`doctest` where incorrect line numbers would be reported for decorated functions. .. .. date: 2024-02-11-20-23-36 .. gh-issue: 114563 .. nonce: RzxNYT .. section: Library Fix several :func:`format()` bugs when using the C implementation of :class:`~decimal.Decimal`: * memory leak in some rare cases when using the ``z`` format option (coerce negative 0) * incorrect output when applying the ``z`` format option to type ``F`` (fixed-point with capital ``NAN`` / ``INF``) * incorrect output when applying the ``#`` format option (alternate form) .. .. date: 2024-02-10-15-24-20 .. gh-issue: 102840 .. nonce: 4mnDq1 .. section: Library Fix confused traceback when floordiv, mod, or divmod operations happens between instances of :class:`fractions.Fraction` and :class:`complex`. .. .. date: 2024-02-09-07-20-16 .. gh-issue: 115165 .. nonce: yfJLXA .. section: Library Most exceptions are now ignored when attempting to set the ``__orig_class__`` attribute on objects returned when calling :mod:`typing` generic aliases (including generic aliases created using :data:`typing.Annotated`). Previously only :exc:`AttributeError` was ignored. Patch by Dave Shawley. .. .. date: 2024-02-08-17-04-58 .. gh-issue: 112903 .. nonce: SN_vUs .. section: Library Fix "issubclass() arg 1 must be a class" errors in certain cases of multiple inheritance with generic aliases (regression in early 3.13 alpha releases). .. .. date: 2024-02-08-14-21-28 .. gh-issue: 115133 .. nonce: ycl4ko .. section: Library Fix tests for :class:`~xml.etree.ElementTree.XMLPullParser` with Expat 2.6.0. .. .. date: 2024-02-08-13-26-14 .. gh-issue: 115059 .. nonce: DqP9dr .. section: Library :meth:`io.BufferedRandom.read1` now flushes the underlying write buffer. .. .. date: 2024-02-07-12-37-52 .. gh-issue: 79382 .. nonce: Yz_5WB .. section: Library Trailing ``**`` no longer allows to match files and non-existing paths in recursive :func:`~glob.glob`. .. .. date: 2024-02-06-15-16-28 .. gh-issue: 67837 .. nonce: _JKa73 .. section: Library Avoid race conditions in the creation of directories during concurrent extraction in :mod:`tarfile` and :mod:`zipfile`. .. .. date: 2024-02-06-03-55-46 .. gh-issue: 115060 .. nonce: EkWRpP .. section: Library Speed up :meth:`pathlib.Path.glob` by removing redundant regex matching. .. .. date: 2024-02-05-16-48-06 .. gh-issue: 97928 .. nonce: JZCies .. section: Library Partially revert the behavior of :meth:`tkinter.Text.count`. By default it preserves the behavior of older Python versions, except that setting ``wantobjects`` to 0 no longer has effect. Add a new parameter *return_ints*: specifying ``return_ints=True`` makes ``Text.count()`` always returning the single count as an integer instead of a 1-tuple or ``None``. .. .. date: 2024-02-04-13-17-33 .. gh-issue: 114628 .. nonce: WJpqqS .. section: Library When csv.Error is raised when handling TypeError, do not print the TypeError traceback. .. .. date: 2024-02-04-02-28-37 .. gh-issue: 85984 .. nonce: NHZVTQ .. section: Library Added ``_POSIX_VDISABLE`` from C's ```` to :mod:`termios`. .. .. date: 2024-02-03-17-54-17 .. gh-issue: 114965 .. nonce: gHksCK .. section: Library Update bundled pip to 24.0 .. .. date: 2024-02-03-16-59-25 .. gh-issue: 114959 .. nonce: dCfAG2 .. section: Library :mod:`tarfile` no longer ignores errors when trying to extract a directory on top of a file. .. .. date: 2024-02-02-15-50-13 .. gh-issue: 114894 .. nonce: DF-dSd .. section: Library Add :meth:`array.array.clear`. .. .. date: 2024-02-01-10-19-11 .. gh-issue: 114071 .. nonce: vkm2G_ .. section: Library Support tuple subclasses using auto() for enum member value. .. .. date: 2024-01-31-20-07-11 .. gh-issue: 109475 .. nonce: lmTb9S .. section: Library Fix support of explicit option value "--" in :mod:`argparse` (e.g. ``--option=--``). .. .. date: 2024-01-30-22-10-50 .. gh-issue: 49766 .. nonce: yulJL_ .. section: Library Fix :class:`~datetime.date`-:class:`~datetime.datetime` comparison. Now the special comparison methods like ``__eq__`` and ``__lt__`` return :data:`NotImplemented` if one of comparands is :class:`!date` and other is :class:`!datetime` instead of ignoring the time part and the time zone or forcefully return "not equal" or raise :exc:`TypeError`. It makes comparison of :class:`!date` and :class:`!datetime` subclasses more symmetric and allows to change the default behavior by overriding the special comparison methods in subclasses. .. .. date: 2024-01-30-15-34-08 .. gh-issue: 110190 .. nonce: Z5PQQX .. section: Library Fix ctypes structs with array on Windows ARM64 platform by setting ``MAX_STRUCT_SIZE`` to 32 in stgdict. Patch by Diego Russo .. .. date: 2024-01-28-19-40-40 .. gh-issue: 114678 .. nonce: kYKcJw .. section: Library Ensure that deprecation warning for 'N' specifier in :class:`~decimal.Decimal` format is not raised for cases where 'N' appears in other places in the format specifier. Based on patch by Stefan Krah. .. .. date: 2024-01-28-18-38-18 .. gh-issue: 70303 .. nonce: _Lt_pj .. section: Library Return both files and directories from :meth:`pathlib.Path.glob` if a pattern ends with "``**``". Previously only directories were returned. .. .. date: 2024-01-28-00-48-12 .. gh-issue: 109653 .. nonce: vF4exe .. section: Library Improve import time of :mod:`importlib.metadata` and :mod:`email.utils`. .. .. date: 2024-01-27-20-11-24 .. gh-issue: 113280 .. nonce: CZPQMf .. section: Library Fix a leak of open socket in rare cases when error occurred in :class:`ssl.SSLSocket` creation. .. .. date: 2024-01-26-16-46-21 .. gh-issue: 77749 .. nonce: NY_7TS .. section: Library :meth:`email.policy.EmailPolicy.fold` now always encodes non-ASCII characters in headers if :attr:`~email.policy.EmailPolicy.utf8` is false. .. .. date: 2024-01-25-19-22-17 .. gh-issue: 83383 .. nonce: 3GwO9v .. section: Library Synchronization of the :mod:`dbm.dumb` database is now no-op if there was no modification since opening or last synchronization. The directory file for a newly created empty :mod:`dbm.dumb` database is now created immediately after opening instead of deferring this until synchronizing or closing. .. .. date: 2024-01-24-20-51-49 .. gh-issue: 91602 .. nonce: 8fOH8l .. section: Library Add *filter* keyword-only parameter to :meth:`sqlite3.Connection.iterdump` for filtering database objects to dump. Patch by Mariusz Felisiak. .. .. date: 2024-01-24-20-11-46 .. gh-issue: 112451 .. nonce: 7YrG4p .. section: Library Prohibit subclassing pure-Python :class:`datetime.timezone`. This is consistent with C-extension implementation. Patch by Mariusz Felisiak. .. .. date: 2024-01-24-17-25-18 .. gh-issue: 69893 .. nonce: PQq5fR .. section: Library Add the :meth:`!close` method for the iterator returned by :func:`xml.etree.ElementTree.iterparse`. .. .. date: 2024-01-23-23-13-47 .. gh-issue: 109653 .. nonce: KLBHmT .. section: Library Reduce the import time of :mod:`threading` module by ~50%. Patch by Daniel Hollas. .. .. date: 2024-01-23-21-20-40 .. gh-issue: 114492 .. nonce: vKxl5o .. section: Library Make the result of :func:`termios.tcgetattr` reproducible on Alpine Linux. Previously it could leave a random garbage in some fields. .. .. date: 2024-01-23-14-11-49 .. gh-issue: 114315 .. nonce: KeVdzl .. section: Library Make :class:`threading.Lock` a real class, not a factory function. Add ``__new__`` to ``_thread.lock`` type. .. .. date: 2024-01-23-13-03-22 .. gh-issue: 100414 .. nonce: 5kTdU5 .. section: Library Add :mod:`dbm.sqlite3` as a backend to :mod:`dbm`, and make it the new default :mod:`!dbm` backend. Patch by Raymond Hettinger and Erlend E. Aasland. .. .. date: 2024-01-23-11-04-21 .. gh-issue: 113267 .. nonce: xe_Pxe .. section: Library Revert changes in :gh:`106584` which made calls of ``TestResult`` methods ``startTest()`` and ``stopTest()`` unbalanced. .. .. date: 2024-01-22-12-10-34 .. gh-issue: 75128 .. nonce: 4FGlRS .. section: Library Ignore an :exc:`OSError` in :meth:`asyncio.BaseEventLoop.create_server` when IPv6 is available but the interface cannot actually support it. .. .. date: 2024-01-22-11-43-38 .. gh-issue: 114423 .. nonce: 6mMoPH .. section: Library ``_DummyThread`` entries in ``threading._active`` are now automatically removed when the related thread dies. .. .. date: 2024-01-21-16-32-55 .. gh-issue: 114257 .. nonce: bCFld5 .. section: Library Dismiss the :exc:`FileNotFound` error in :func:`ctypes.util.find_library` and just return ``None`` on Linux. .. .. date: 2024-01-19-18-41-02 .. gh-issue: 114321 .. nonce: yj_Xw3 .. section: Library Expose more platform specific constants in the :mod:`fcntl` module on Linux, macOS, FreeBSD and NetBSD. .. .. date: 2024-01-19-15-48-06 .. gh-issue: 114328 .. nonce: hixxW3 .. section: Library The :func:`tty.setcbreak` and new :func:`tty.cfmakecbreak` no longer clears the terminal input ICRLF flag. This fixes a regression introduced in 3.12 that no longer matched how OSes define cbreak mode in their ``stty(1)`` manual pages. .. .. date: 2024-01-19-12-05-22 .. gh-issue: 114281 .. nonce: H5JQe4 .. section: Library Remove type hints from ``Lib/asyncio/staggered.py``. The annotations in the `typeshed `__ project should be used instead. .. .. date: 2024-01-18-22-29-28 .. gh-issue: 101438 .. nonce: 1-uUi_ .. section: Library Avoid reference cycle in ElementTree.iterparse. The iterator returned by ``ElementTree.iterparse`` may hold on to a file descriptor. The reference cycle prevented prompt clean-up of the file descriptor if the returned iterator was not exhausted. .. .. date: 2024-01-18-10-07-52 .. gh-issue: 114198 .. nonce: lK4Iif .. section: Library The signature for the ``__replace__`` method on :mod:`dataclasses` now has the first argument named ``self``, rather than ``obj``. .. .. date: 2024-01-17-18-53-51 .. gh-issue: 104522 .. nonce: 3NyDf4 .. section: Library :exc:`OSError` raised when run a subprocess now only has *filename* attribute set to *cwd* if the error was caused by a failed attempt to change the current directory. .. .. date: 2024-01-16-15-59-06 .. gh-issue: 114149 .. nonce: LJ8IPm .. section: Library Enum: correctly handle tuple subclasses in custom ``__new__``. .. .. date: 2024-01-15-20-21-33 .. gh-issue: 83648 .. nonce: HzD_fY .. section: Library Support deprecation of options, positional arguments and subcommands in :mod:`argparse`. .. .. date: 2024-01-15-19-54-41 .. gh-issue: 114087 .. nonce: Xic5vY .. section: Library Speed up ``dataclasses.asdict`` up to 1.35x. .. .. date: 2024-01-15-18-42-44 .. gh-issue: 109534 .. nonce: wYaLMZ .. section: Library Fix a reference leak in :class:`asyncio.selector_events.BaseSelectorEventLoop` when SSL handshakes fail. Patch contributed by Jamie Phan. .. .. date: 2024-01-12-17-32-36 .. gh-issue: 79634 .. nonce: uTSTRI .. section: Library Accept :term:`path-like objects ` as patterns in :meth:`pathlib.Path.glob` and :meth:`~pathlib.Path.rglob`. .. .. date: 2024-01-12-09-35-07 .. gh-issue: 112202 .. nonce: t_0V1m .. section: Library Ensure that a :func:`asyncio.Condition.notify` call does not get lost if the awakened ``Task`` is simultaneously cancelled or encounters any other error. .. .. date: 2024-01-11-20-47-49 .. gh-issue: 113951 .. nonce: AzlqFK .. section: Library Fix the behavior of ``tag_unbind()`` methods of :class:`tkinter.Text` and :class:`tkinter.Canvas` classes with three arguments. Previously, ``widget.tag_unbind(tag, sequence, funcid)`` destroyed the current binding for *sequence*, leaving *sequence* unbound, and deleted the *funcid* command. Now it removes only *funcid* from the binding for *sequence*, keeping other commands, and deletes the *funcid* command. It leaves *sequence* unbound only if *funcid* was the last bound command. .. .. date: 2024-01-11-15-10-53 .. gh-issue: 97959 .. nonce: UOj6d4 .. section: Library Fix rendering class methods, bound methods, method and function aliases in :mod:`pydoc`. Class methods no longer have "method of builtins.type instance" note. Corresponding notes are now added for class and unbound methods. Method and function aliases now have references to the module or the class where the origin was defined if it differs from the current. Bound methods are now listed in the static methods section. Methods of builtin classes are now supported as well as methods of Python classes. .. .. date: 2024-01-07-21-04-24 .. gh-issue: 113796 .. nonce: 6iNsCR .. section: Library Add more validation checks in the :class:`csv.Dialect` constructor. :exc:`ValueError` is now raised if the same character is used in different roles. .. .. date: 2024-01-05-16-27-34 .. gh-issue: 113732 .. nonce: fgDRXA .. section: Library Fix support of :data:`~csv.QUOTE_NOTNULL` and :data:`~csv.QUOTE_STRINGS` in :func:`csv.reader`. .. .. date: 2024-01-04-20-58-17 .. gh-issue: 113225 .. nonce: -nyJM4 .. section: Library Speed up :meth:`pathlib.Path.walk` by using :attr:`os.DirEntry.path` where possible. .. .. date: 2023-12-18-20-10-50 .. gh-issue: 89039 .. nonce: gqFdtU .. section: Library When replace() method is called on a subclass of datetime, date or time, properly call derived constructor. Previously, only the base class's constructor was called. Also, make sure to pass non-zero fold values when creating subclasses in various methods. Previously, fold was silently ignored. .. .. date: 2023-12-09-23-31-17 .. gh-issue: 112919 .. nonce: S5k9QN .. section: Library Speed-up :func:`datetime.datetime.replace`, :func:`datetime.date.replace` and :func:`datetime.time.replace`. .. .. date: 2023-11-27-19-54-43 .. gh-issue: 59013 .. nonce: chpQ0e .. section: Library Set breakpoint on the first executable line of the function, instead of the line of function definition when the user do ``break func`` using :mod:`pdb` .. .. date: 2023-11-24-19-08-50 .. gh-issue: 112343 .. nonce: RarGFC .. section: Library Improve handling of pdb convenience variables to avoid replacing string contents. .. .. date: 2023-11-18-16-30-21 .. gh-issue: 112240 .. nonce: YXS0tj .. section: Library Add option to calendar module CLI to specify the weekday to start each week. Patch by Steven Ward. .. .. date: 2023-11-04-22-32-27 .. gh-issue: 111741 .. nonce: f1ufr8 .. section: Library Recognise ``image/webp`` as a standard format in the :mod:`mimetypes` module. .. .. date: 2023-10-27-19-24-58 .. gh-issue: 43457 .. nonce: 84lx9H .. section: Library Fix the :mod:`tkinter` widget method :meth:`!wm_attributes`. It now accepts the attribute name without the minus prefix to get window attributes and allows to specify attributes and values to set as keyword arguments. Add new optional keyword argument *return_python_dict*: calling ``w.wm_attributes(return_python_dict=True)`` returns the attributes as a dict instead of a tuple. Calling ``w.wm_attributes()`` now returns a tuple instead of string if *wantobjects* was set to 0. .. .. date: 2023-10-24-19-19-54 .. gh-issue: 82626 .. nonce: _hfLRf .. section: Library Many functions now emit a warning if a boolean value is passed as a file descriptor argument. .. .. date: 2023-10-19-02-08-12 .. gh-issue: 111051 .. nonce: 8h1Dpk .. section: Library Added check for file modification during debugging with :mod:`pdb` .. .. date: 2023-10-04-11-09-30 .. gh-issue: 110345 .. nonce: fZU1ud .. section: Library Show the Tcl/Tk patchlevel (rather than version) in :meth:`tkinter._test`. .. .. date: 2023-09-22-22-17-45 .. gh-issue: 38807 .. nonce: m9McRN .. section: Library Fix race condition in :mod:`trace`. Instead of checking if a directory exists and creating it, directly call :func:`os.makedirs` with the kwarg ``exist_ok=True``. .. .. date: 2023-07-23-12-28-26 .. gh-issue: 75705 .. nonce: aB2-Ww .. section: Library Set unixfrom envelope in :class:`mailbox.mbox` and :class:`mailbox.MMDF`. .. .. date: 2023-06-29-14-26-56 .. gh-issue: 106233 .. nonce: Aqw2HI .. section: Library Fix stacklevel in ``InvalidTZPathWarning`` during :mod:`zoneinfo` module import. .. .. date: 2023-05-30-18-30-11 .. gh-issue: 105102 .. nonce: SnpK04 .. section: Library Allow :class:`ctypes.Union` to be nested in :class:`ctypes.Structure` when the system endianness is the opposite of the classes. .. .. date: 2023-05-08-09-30-00 .. gh-issue: 104282 .. nonce: h4c6Eb .. section: Library Fix null pointer dereference in :func:`lzma._decode_filter_properties` due to improper handling of BCJ filters with properties of zero length. Patch by Radislav Chugunov. .. .. date: 2023-05-06-04-57-10 .. gh-issue: 96471 .. nonce: C9wAU7 .. section: Library Add :py:class:`queue.Queue` termination with :py:meth:`~queue.Queue.shutdown`. .. .. date: 2023-04-08-11-41-07 .. gh-issue: 101599 .. nonce: PaWNFh .. section: Library Changed argparse flag options formatting to remove redundancy. .. .. date: 2023-03-15-03-21-18 .. gh-issue: 85984 .. nonce: Xaq6ZN .. section: Library Add POSIX pseudo-terminal functions :func:`os.posix_openpt`, :func:`os.grantpt`, :func:`os.unlockpt`, and :func:`os.ptsname`. .. .. date: 2023-03-08-00-02-30 .. gh-issue: 102512 .. nonce: LiugDr .. section: Library When :func:`os.fork` is called from a foreign thread (aka ``_DummyThread``), the type of the thread in a child process is changed to ``_MainThread``. Also changed its name and daemonic status, it can be now joined. .. .. date: 2022-07-31-01-24-40 .. gh-issue: 88569 .. nonce: eU0--b .. section: Library Add :func:`os.path.isreserved`, which identifies reserved pathnames such as "NUL", "AUX" and "CON". This function is only available on Windows. Deprecate :meth:`pathlib.PurePath.is_reserved`. .. .. bpo: 38364 .. date: 2019-10-05-22-56-50 .. nonce: sYTCWF .. section: Library The ``inspect`` functions ``isgeneratorfunction``, ``iscoroutinefunction``, ``isasyncgenfunction`` now support ``functools.partialmethod`` wrapped functions the same way they support ``functools.partial``. .. .. date: 2024-02-12-12-26-17 .. gh-issue: 115233 .. nonce: aug6r9 .. section: Documentation Fix an example for :class:`~logging.LoggerAdapter` in the Logging Cookbook. .. .. date: 2024-01-17-11-40-03 .. gh-issue: 114123 .. nonce: LuueXf .. section: Documentation Move the :mod:`csv` module docstring to the :mod:`!csv` module instead of reexporting it from the internal :mod:`!_csv` module, and remove ``__doc__`` from ``csv.__all__``. Move :attr:`!csv.__version__` to the :mod:`!csv` module instead of reexporting it from the internal :mod:`!_csv` module, and remove ``__version__`` from ``csv.__all__``. .. .. date: 2024-02-02-13-18-55 .. gh-issue: 114099 .. nonce: C_ycWg .. section: Tests Added test exclusions required to run the test suite on iOS. .. .. date: 2023-06-02-05-04-15 .. gh-issue: 105089 .. nonce: KaZFtU .. section: Tests Fix ``test.test_zipfile.test_core.TestWithDirectory.test_create_directory_with_write`` test in AIX by doing a bitwise AND of 0xFFFF on mode , so that it will be in sync with ``zinfo.external_attr`` .. .. date: 2024-02-08-19-36-20 .. gh-issue: 115167 .. nonce: LB9nDK .. section: Build Avoid vendoring ``vcruntime140_threads.dll`` when building with Visual Studio 2022 version 17.8. .. .. date: 2024-02-08-17-38-56 .. gh-issue: 113632 .. nonce: y9KIGb .. section: Build Promote WASI to a tier 2 platform and drop Emscripten from tier 3 in configure.ac. .. .. date: 2024-02-07-08-23-48 .. gh-issue: 114099 .. nonce: XcEXEZ .. section: Build configure and Makefile were refactored to accomodate framework builds on Apple platforms other than macOS. .. .. date: 2024-02-01-20-08-11 .. gh-issue: 114875 .. nonce: x_2iZ9 .. section: Build Add :c:func:`!getgrent` as a prerequisite for building the :mod:`grp` module. .. .. date: 2024-02-08-21-37-22 .. gh-issue: 115049 .. nonce: X1ObpJ .. section: Windows Fixes ``py.exe`` launcher failing when run as users without user profiles. .. .. date: 2024-02-06-09-05-13 .. gh-issue: 115009 .. nonce: ShMjZs .. section: Windows Update Windows installer to use SQLite 3.45.1. .. .. date: 2024-02-05-16-53-12 .. gh-issue: 109991 .. nonce: YqjnDz .. section: Windows Update Windows build to use OpenSSL 3.0.13. .. .. date: 2024-02-01-14-35-05 .. gh-issue: 111239 .. nonce: SO7SUF .. section: Windows Update Windows builds to use zlib v1.3.1. .. .. date: 2024-01-23-00-05-05 .. gh-issue: 100107 .. nonce: lkbP_Q .. section: Windows The ``py.exe`` launcher will no longer attempt to run the Microsoft Store redirector when launching a script containing a ``/usr/bin/env`` shebang .. .. date: 2023-12-19-22-32-28 .. gh-issue: 112984 .. nonce: F7kFMl .. section: Windows Adds free-threaded binaries to Windows installer as an optional component. .. .. date: 2023-08-11-18-21-38 .. gh-issue: 89240 .. nonce: dtSOLG .. section: Windows Allows :mod:`multiprocessing` to create pools of greater than 62 processes. .. .. date: 2024-02-06-09-01-10 .. gh-issue: 115009 .. nonce: ysau7e .. section: macOS Update macOS installer to use SQLite 3.45.1. .. .. date: 2024-02-05-18-30-27 .. gh-issue: 109991 .. nonce: tun6Yu .. section: macOS Update macOS installer to use OpenSSL 3.0.13. .. .. date: 2024-01-23-11-35-26 .. gh-issue: 114490 .. nonce: FrQOQ0 .. section: macOS Add Mach-O linkage support for :func:`platform.architecture()`. .. .. date: 2022-11-18-10-05-35 .. gh-issue: 87804 .. nonce: rhlDmD .. section: macOS On macOS the result of ``os.statvfs`` and ``os.fstatvfs`` now correctly report the size of very large disks, in previous versions the reported number of blocks was wrong for disks with at least 2**32 blocks. .. .. date: 2024-01-17-23-18-15 .. gh-issue: 96905 .. nonce: UYaxoU .. section: IDLE In idlelib code, stop redefining built-ins 'dict' and 'object'. .. .. date: 2023-04-25-03-01-23 .. gh-issue: 103820 .. nonce: LCSpza .. section: IDLE Revise IDLE bindings so that events from mouse button 4/5 on non-X11 windowing systems (i.e. Win32 and Aqua) are not mistaken for scrolling. .. .. date: 2024-02-14-15-58-13 .. gh-issue: 113516 .. nonce: TyIHWx .. section: Tools/Demos Don't set ``LDSHARED`` when building for WASI. .. .. date: 2024-02-05-19-00-32 .. gh-issue: 109991 .. nonce: yJSEkw .. section: Tools/Demos Update GitHub CI workflows to use OpenSSL 3.0.13 and multissltests to use 1.1.1w, 3.0.13, 3.1.5, and 3.2.1. .. .. date: 2024-02-05-02-45-51 .. gh-issue: 115015 .. nonce: rgtiDB .. section: Tools/Demos Fix a bug in Argument Clinic that generated incorrect code for methods with no parameters that use the :ref:`METH_METHOD | METH_FASTCALL | METH_KEYWORDS ` calling convention. Only the positional parameter count was checked; any keyword argument passed would be silently accepted. .. .. date: 2024-02-05-17-11-15 .. gh-issue: 111140 .. nonce: WMEjid .. section: C API Adds :c:func:`PyLong_AsNativeBytes`, :c:func:`PyLong_FromNativeBytes` and :c:func:`PyLong_FromUnsignedNativeBytes` functions. .. .. date: 2024-01-31-15-43-35 .. gh-issue: 114685 .. nonce: n7aRmX .. section: C API :c:func:`PyBuffer_FillInfo` now raises a :exc:`SystemError` if called with :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE` as flags. These flags should only be used with the ``PyMemoryView_*`` C API. .. .. date: 2024-01-29-12-13-24 .. gh-issue: 114685 .. nonce: B07RME .. section: C API :c:func:`PyObject_GetBuffer` now raises a :exc:`SystemError` if called with :c:macro:`PyBUF_READ` or :c:macro:`PyBUF_WRITE` as flags. These flags should only be used with the ``PyMemoryView_*`` C API. .. .. date: 2024-01-26-21-54-42 .. gh-issue: 114626 .. nonce: SKhbh_ .. section: C API Add ``PyCFunctionFast`` and ``PyCFunctionFastWithKeywords`` typedefs (identical to the existing ``_PyCFunctionFast`` and ``_PyCFunctionFastWithKeywords`` typedefs, just without a leading ``_`` prefix). .. .. date: 2024-01-23-21-45-02 .. gh-issue: 114329 .. nonce: YRaBoe .. section: C API Add :c:func:`PyList_GetItemRef`, which is similar to :c:func:`PyList_GetItem` but returns a :term:`strong reference` instead of a :term:`borrowed reference`. .. .. date: 2023-11-16-02-07-48 .. gh-issue: 110850 .. nonce: DQGNfF .. section: C API Add PyTime C API: * :c:type:`PyTime_t` type. * :c:var:`PyTime_MIN` and :c:var:`PyTime_MAX` constants. * :c:func:`PyTime_AsSecondsDouble`, :c:func:`PyTime_Monotonic`, :c:func:`PyTime_PerfCounter`, and :c:func:`PyTime_Time` functions. Patch by Victor Stinner. .. .. date: 2023-11-15-13-47-48 .. gh-issue: 112066 .. nonce: 22WsqR .. section: C API Add :c:func:`PyDict_SetDefaultRef`: insert a key and value into a dictionary if the key is not already present. This is similar to :meth:`dict.setdefault`, but returns an integer value indicating if the key was already present. It is also similar to :c:func:`PyDict_SetDefault`, but returns a strong reference instead of a borrowed reference.