.. date: 2025-10-14-00-17-48
.. gh-issue: 115119
.. nonce: 470I1N
.. release date: 2025-10-14
.. section: macOS
Update macOS installer to use libmpdecimal 4.0.1.
..
.. date: 2025-10-14-00-08-16
.. gh-issue: 124111
.. nonce: 7-j-DQ
.. section: macOS
Update macOS installer to use Tcl/Tk 9.0.2.
..
.. date: 2025-10-13-23-46-12
.. gh-issue: 132339
.. nonce: kAp603
.. section: macOS
Update macOS installer version of OpenSSL to 3.5.4.
..
.. date: 2025-08-06-06-29-12
.. gh-issue: 137450
.. nonce: JZypb7
.. section: macOS
macOS installer shell path management improvements: separate the installer
``Shell profile updater`` postinstall script from the ``Update Shell
Profile.command`` to enable more robust error handling.
..
.. date: 2025-07-27-02-17-40
.. gh-issue: 137134
.. nonce: pjgITs
.. section: macOS
Update macOS installer to ship with SQLite version 3.50.4.
..
.. date: 2025-10-08-22-54-38
.. gh-issue: 139810
.. nonce: LAaemi
.. section: Windows
Installing with ``py install 3[.x]-dev`` will now select final versions as
well as prereleases.
..
.. date: 2025-10-04-12-18-45
.. gh-issue: 139573
.. nonce: EO9kVB
.. section: Windows
Updated bundled version of OpenSSL to 3.0.18.
..
.. date: 2025-09-15-15-34-29
.. gh-issue: 138896
.. nonce: lkiF_7
.. section: Windows
Fix error installing C runtime on non-updated Windows machines
..
.. date: 2025-09-03-01-07-44
.. gh-issue: 138314
.. nonce: IeWQ2i
.. section: Windows
Add :func:`winreg.DeleteTree`.
..
.. date: 2025-07-27-14-25-11
.. gh-issue: 137136
.. nonce: xNthFT
.. section: Windows
Suppress build warnings when build on Windows with
``--experimental-jit-interpreter``.
..
.. date: 2025-07-27-02-16-53
.. gh-issue: 137134
.. nonce: W0WpDF
.. section: Windows
Update Windows installer to ship with SQLite 3.50.4.
..
.. date: 2025-06-03-18-26-54
.. gh-issue: 135099
.. nonce: Q9usKm
.. section: Windows
Fix a crash that could occur on Windows when a background thread waits on a
:c:type:`PyMutex` while the main thread is shutting down the interpreter.
..
.. date: 2025-05-20-21-43-20
.. gh-issue: 130727
.. nonce: -69t4D
.. section: Windows
Fix a race in internal calls into WMI that can result in an "invalid handle"
exception under high load. Patch by Chris Eibl.
..
.. date: 2025-05-19-03-02-04
.. gh-issue: 76023
.. nonce: vHOf6M
.. section: Windows
Make :func:`os.path.realpath` ignore Windows error 1005 when in non-strict
mode.
..
.. date: 2025-05-13-13-25-27
.. gh-issue: 133779
.. nonce: -YcTBz
.. section: Windows
Reverts the change to generate different :file:`pyconfig.h` files based on
compiler settings, as it was frequently causing extension builds to break.
In particular, the ``Py_GIL_DISABLED`` preprocessor variable must now always
be defined explicitly when compiling for the experimental free-threaded
runtime. The :func:`sysconfig.get_config_var` function can be used to
determine whether the current runtime was compiled with that flag or not.
..
.. date: 2025-05-08-19-07-26
.. gh-issue: 133626
.. nonce: yFTKYK
.. section: Windows
Ensures packages are not accidentally bundled into the traditional
installer.
..
.. date: 2025-05-07-13-04-22
.. gh-issue: 133580
.. nonce: jBMujJ
.. section: Windows
Fix :func:`sys.getwindowsversion` failing without setting an exception when
called on some WinAPI partitions.
..
.. date: 2025-05-07-11-45-30
.. gh-issue: 133572
.. nonce: Xc2zxH
.. section: Windows
Avoid LsaNtStatus to WinError conversion on unsupported WinAPI partitions.
..
.. date: 2025-05-07-11-25-29
.. gh-issue: 133568
.. nonce: oYV0d8
.. section: Windows
Fix compile error when using a WinAPI partition that doesn't support the RPC
runtime library.
..
.. date: 2025-05-07-09-02-19
.. gh-issue: 133562
.. nonce: lqqNW1
.. section: Windows
Disable handling of security descriptors by :func:`os.mkdir` with mode
``0o700`` on WinAPI partitions that do not support it. This only affects
custom builds for specialized targets.
..
.. date: 2025-05-07-08-19-15
.. gh-issue: 133537
.. nonce: yzf963
.. section: Windows
Avoid using console I/O in WinAPI partitions that don’t support it
..
.. date: 2025-03-31-15-37-57
.. gh-issue: 131942
.. nonce: jip_aL
.. section: Windows
Use the Python-specific :c:macro:`Py_DEBUG` macro rather than
:c:macro:`!_DEBUG` in Windows-related C code. Patch by Xuehai Pan.
..
.. date: 2025-09-25-10-31-02
.. gh-issue: 139330
.. nonce: 5WWkY0
.. section: Tools/Demos
SBOM generation tool didn't cross-check the version and checksum values
against the ``Modules/expat/refresh.sh`` script, leading to the values
becoming out-of-date during routine updates.
..
.. date: 2025-08-28-06-22-26
.. gh-issue: 132006
.. nonce: eZQmc6
.. section: Tools/Demos
XCframeworks now include privacy manifests to satisfy Apple App Store
submission requirements.
..
.. date: 2025-08-27-11-14-53
.. gh-issue: 138171
.. nonce: Suz8ob
.. section: Tools/Demos
A script for building an iOS XCframework was added. As part of this change,
the top level ``iOS`` folder has been moved to be a subdirectory of the
``Apple`` folder.
..
.. date: 2025-08-21-14-04-50
.. gh-issue: 137873
.. nonce: qxffLt
.. section: Tools/Demos
The iOS test runner has been simplified, resolving some issues that have
been observed using the runner in GitHub Actions and Azure Pipelines test
environments.
..
.. date: 2025-08-06-11-54-55
.. gh-issue: 137484
.. nonce: 8iFAQs
.. section: Tools/Demos
Have ``Tools/wasm/wasi`` put the build Python into a directory named after
the build triple instead of "build".
..
.. date: 2025-08-01-13-27-43
.. gh-issue: 137025
.. nonce: ubuhQC
.. section: Tools/Demos
The ``wasm_build.py`` script has been removed. ``Tools/wasm/emscripten``
and ``Tools/wasm/wasi`` should be used instead, as described in the `Dev
Guide `__.
..
.. date: 2025-07-30-11-15-47
.. gh-issue: 137248
.. nonce: 8IxwY3
.. section: Tools/Demos
Add a ``--logdir`` option to ``Tools/wasm/wasi`` for specifying where to
write log files.
..
.. date: 2025-07-30-10-28-35
.. gh-issue: 137243
.. nonce: NkdUqH
.. section: Tools/Demos
Have Tools/wasm/wasi detect a WASI SDK install in /opt when it was directly
extracted from a release tarball.
..
.. date: 2025-07-05-15-10-42
.. gh-issue: 136251
.. nonce: GRM6o8
.. section: Tools/Demos
Fixes and usability improvements for ``Tools/wasm/emscripten/web_example``
..
.. date: 2025-06-26-15-58-13
.. gh-issue: 135968
.. nonce: C4v_-W
.. section: Tools/Demos
Stubs for ``strip`` are now provided as part of an iOS install.
..
.. date: 2025-06-11-12-14-06
.. gh-issue: 135379
.. nonce: 25ttXq
.. section: Tools/Demos
The cases generator no longer accepts type annotations on stack items.
Conversions to non-default types are now done explicitly in bytecodes.c and
optimizer_bytecodes.c. This will simplify code generation for top-of-stack
caching and other future features.
..
.. date: 2025-05-19-14-57-46
.. gh-issue: 134215
.. nonce: sbdDK6
.. section: Tools/Demos
:term:`REPL` import autocomplete only suggests private modules when
explicitly specified.
..
.. date: 2025-09-22-15-40-09
.. gh-issue: 139208
.. nonce: Tc13dl
.. section: Tests
Fix regrtest ``--fast-ci --verbose``: don't ignore the ``--verbose`` option
anymore. Patch by Victor Stinner.
..
.. date: 2025-09-21-16-00-30
.. gh-issue: 138313
.. nonce: lBx2en
.. section: Tests
Restore skipped test and add janky workaround to prevent select buildbots
from failing with a ResourceWarning.
..
.. date: 2025-06-26-15-15-35
.. gh-issue: 135966
.. nonce: EBpF8Y
.. section: Tests
The iOS testbed now handles the ``app_packages`` folder as a site directory.
..
.. date: 2025-06-19-15-29-38
.. gh-issue: 135494
.. nonce: FVl9a0
.. section: Tests
Fix regrtest to support excluding tests from ``--pgo`` tests. Patch by
Victor Stinner.
..
.. date: 2025-06-17-08-48-08
.. gh-issue: 132815
.. nonce: CY1Esu
.. section: Tests
Fix test__opcode: add ``JUMP_BACKWARD`` to specialization stats.
..
.. date: 2025-06-14-13-20-17
.. gh-issue: 135489
.. nonce: Uh0yVO
.. section: Tests
Show verbose output for failing tests during PGO profiling step with
--enable-optimizations.
..
.. date: 2025-06-11-16-52-49
.. gh-issue: 135401
.. nonce: ccMXmL
.. section: Tests
Add a new GitHub CI job to test the :mod:`ssl` module with `AWS-LC
`_ as the backing cryptography and TLS
library.
..
.. date: 2025-06-04-13-07-44
.. gh-issue: 135120
.. nonce: NapnZT
.. section: Tests
Add :func:`!test.support.subTests`.
..
.. date: 2025-05-23-09-19-52
.. gh-issue: 134567
.. nonce: hwEIMb
.. section: Tests
Expose log formatter to users in TestCase.assertLogs.
:func:`unittest.TestCase.assertLogs` will now optionally accept a formatter
that will be used to format the strings in output if provided.
..
.. date: 2025-05-09-14-54-48
.. gh-issue: 133744
.. nonce: LCquu0
.. section: Tests
Fix multiprocessing interrupt test. Add an event to synchronize the parent
process with the child process: wait until the child process starts
sleeping. Patch by Victor Stinner.
..
.. date: 2025-05-09-04-11-06
.. gh-issue: 133682
.. nonce: -_lwo3
.. section: Tests
Fixed test case ``test.test_annotationlib.TestStringFormat.test_displays``
which ensures proper handling of complex data structures (lists, sets,
dictionaries, and tuples) in string annotations.
..
.. date: 2025-05-08-15-06-01
.. gh-issue: 133639
.. nonce: 50-kbV
.. section: Tests
Fix ``TestPyReplAutoindent.test_auto_indent_default()`` doesn't run
``input_code``.
..
.. date: 2025-10-07-19-31-34
.. gh-issue: 139700
.. nonce: vNHU1O
.. section: Security
Check consistency of the zip64 end of central directory record. Support
records with "zip64 extensible data" if there are no bytes prepended to the
ZIP file.
..
.. date: 2025-09-29-00-01-28
.. gh-issue: 139400
.. nonce: X2T-jO
.. section: Security
:mod:`xml.parsers.expat`: Make sure that parent Expat parsers are only
garbage-collected once they are no longer referenced by subparsers created
by :meth:`~xml.parsers.expat.xmlparser.ExternalEntityParserCreate`. Patch by
Sebastian Pipping.
..
.. date: 2025-09-24-13-39-56
.. gh-issue: 139283
.. nonce: jODz_q
.. section: Security
:mod:`sqlite3`: correctly handle maximum number of rows to fetch in
:meth:`Cursor.fetchmany ` and reject negative
values for :attr:`Cursor.arraysize `. Patch by
Bénédikt Tran.
..
.. date: 2025-06-27-21-23-19
.. gh-issue: 136053
.. nonce: QZxcee
.. section: Security
:mod:`marshal`: fix a possible crash when deserializing :class:`slice`
objects.
..
.. date: 2025-06-25-14-13-39
.. gh-issue: 135661
.. nonce: idjQ0B
.. section: Security
Fix parsing start and end tags in :class:`html.parser.HTMLParser` according
to the HTML5 standard.
* Whitespaces no longer accepted between ```` and the tag name.
E.g. `` script>`` does not end the script section.
* Vertical tabulation (``\v``) and non-ASCII whitespaces no longer recognized
as whitespaces. The only whitespaces are ``\t\n\r\f`` and space.
* Null character (U+0000) no longer ends the tag name.
* Attributes and slashes after the tag name in end tags are now ignored,
instead of terminating after the first ``>`` in quoted attribute value.
E.g. ``"/>``.
* Multiple slashes and whitespaces between the last attribute and closing ``>``
are now ignored in both start and end tags. E.g. ````.
* Multiple ``=`` between attribute name and value are no longer collapsed.
E.g. ```` produces attribute "foo" with value "=bar".
..
.. date: 2025-06-18-13-34-55
.. gh-issue: 135661
.. nonce: NZlpWf
.. section: Security
Fix CDATA section parsing in :class:`html.parser.HTMLParser` according to
the HTML5 standard: ``] ]>`` and ``]] >`` no longer end the CDATA section.
Add private method ``_set_support_cdata()`` which can be used to specify how
to parse ``<[CDATA[`` --- as a CDATA section in foreign content (SVG or
MathML) or as a bogus comment in the HTML namespace.
..
.. date: 2025-06-18-13-28-08
.. gh-issue: 102555
.. nonce: nADrzJ
.. section: Security
Fix comment parsing in :class:`html.parser.HTMLParser` according to the
HTML5 standard. ``--!>`` now ends the comment. ``-- >`` no longer ends the
comment. Support abnormally ended empty comments ``<-->`` and ``<--->``.
..
.. date: 2025-06-13-15-55-22
.. gh-issue: 135462
.. nonce: KBeJpc
.. section: Security
Fix quadratic complexity in processing specially crafted input in
:class:`html.parser.HTMLParser`. End-of-file errors are now handled
according to the HTML5 specs -- comments and declarations are automatically
closed, tags are ignored.
..
.. date: 2025-06-09-20-38-25
.. gh-issue: 118350
.. nonce: KgWCcP
.. section: Security
Fix support of escapable raw text mode (elements "textarea" and "title") in
:class:`html.parser.HTMLParser`.
..
.. date: 2025-06-02-11-32-23
.. gh-issue: 135034
.. nonce: RLGjbp
.. section: Security
Fixes multiple issues that allowed ``tarfile`` extraction filters
(``filter="data"`` and ``filter="tar"``) to be bypassed using crafted
symlinks and hard links.
Addresses :cve:`2024-12718`, :cve:`2025-4138`, :cve:`2025-4330`, and
:cve:`2025-4517`.
..
.. date: 2025-05-09-20-22-54
.. gh-issue: 133767
.. nonce: kN2i3Q
.. section: Security
Fix use-after-free in the "unicode-escape" decoder with a non-"strict" error
handler.
..
.. date: 2025-05-07-22-49-27
.. gh-issue: 133623
.. nonce: fgWkBm
.. section: Security
Indicate through :data:`ssl.HAS_PSK_TLS13` whether the :mod:`ssl` module
supports "External PSKs" in TLSv1.3, as described in RFC 9258. Patch by Will
Childs-Klein.
..
.. date: 2025-01-14-11-19-07
.. gh-issue: 128840
.. nonce: M1doZW
.. section: Security
Short-circuit the processing of long IPv6 addresses early in
:mod:`ipaddress` to prevent excessive memory consumption and a minor
denial-of-service.
..
.. date: 2025-10-11-20-03-13
.. gh-issue: 139482
.. nonce: du2Stg
.. section: Library
Optimize :data:`os.environ.clear() ` by calling
:manpage:`clearenv(3)` when this function is available. Patch by Victor
Stinner.
..
.. date: 2025-10-11-17-41-26
.. gh-issue: 139958
.. nonce: AnCakj
.. section: Library
The ``application/toml`` mime type is now supported by :mod:`mimetypes`.
Patch by Gil Forcada.
..
.. date: 2025-10-11-14-37-42
.. gh-issue: 139823
.. nonce: uGF4oh
.. section: Library
:mod:`ensurepip` now fails with a nicer error message when the :mod:`zlib`
module is not available.
..
.. date: 2025-10-11-10-02-56
.. gh-issue: 139905
.. nonce: UyJIR_
.. section: Library
Add suggestion to error message for :class:`typing.Generic` subclasses when
``cls.__parameters__`` is missing due to a parent class failing to call
:meth:`super().__init_subclass__() ` in its
``__init_subclass__``.
..
.. date: 2025-10-10-11-22-50
.. gh-issue: 139894
.. nonce: ECAXqj
.. section: Library
Fix incorrect sharing of current task with the child process while forking
in :mod:`asyncio`. Patch by Kumar Aditya.
..
.. date: 2025-10-09-21-37-20
.. gh-issue: 139845
.. nonce: dzx5UP
.. section: Library
Fix to not print KeyboardInterrupt twice in default asyncio REPL.
..
.. date: 2025-10-09-13-48-28
.. gh-issue: 139783
.. nonce: __NUgo
.. section: Library
Fix :func:`inspect.getsourcelines` for the case when a decorator is followed
by a comment or an empty line.
..
.. date: 2025-10-09-03-06-19
.. gh-issue: 139809
.. nonce: lzHJNu
.. section: Library
Prevent premature colorization of subparser ``prog`` in
:meth:`argparse.ArgumentParser.add_subparsers` to respect color environment
variable changes after parser creation.
..
.. date: 2025-10-08-00-06-30
.. gh-issue: 139736
.. nonce: baPeBd
.. section: Library
Fix excessive indentation in the default :mod:`argparse`
:class:`!HelpFormatter`. Patch by Alexander Edland.
..
.. date: 2025-10-02-17-40-10
.. gh-issue: 70765
.. nonce: zVlLZn
.. section: Library
:mod:`http.server`: fix default handling of HTTP/0.9 requests in
:class:`~http.server.BaseHTTPRequestHandler`. Previously,
:meth:`!BaseHTTPRequestHandler.parse_request` incorrectly waited for headers
in the request although those are not supported in HTTP/0.9. Patch by
Bénédikt Tran.
..
.. date: 2025-10-02-15-45-08
.. gh-issue: 139322
.. nonce: rouPGj
.. section: Library
Fix :func:`os.getlogin` error handling: fix the error number. Patch by
Victor Stinner.
..
.. date: 2025-10-01-20-30-03
.. gh-issue: 135953
.. nonce: NAofJl
.. section: Library
Add a Gecko format output to the tachyon profiler via ``--gecko``.
..
.. date: 2025-09-29-14-15-20
.. gh-issue: 139184
.. nonce: dNl9O4
.. section: Library
:func:`os.forkpty` does now make the returned file descriptor
non-inheritable.
..
.. date: 2025-09-28-16-34-11
.. gh-issue: 139391
.. nonce: nRFnmx
.. section: Library
Fix an issue when, on non-Windows platforms, it was not possible to
gracefully exit a ``python -m asyncio`` process suspended by Ctrl+Z and
later resumed by :manpage:`fg` other than with :manpage:`kill`.
..
.. date: 2025-09-27-08-26-31
.. gh-issue: 139374
.. nonce: hfh-dl
.. section: Library
:mod:`timeit`: Add color to error tracebacks.
..
.. date: 2025-09-26-18-04-28
.. gh-issue: 90949
.. nonce: YHjSzX
.. section: Library
Add
:meth:`~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionActivationThreshold`
and
:meth:`~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionMaximumAmplification`
to :ref:`xmlparser ` objects to tune protections against
`billion laughs `_
attacks. Patch by Bénédikt Tran.
..
.. date: 2025-09-25-07-33-43
.. gh-issue: 139312
.. nonce: ygE8AC
.. section: Library
Upgrade bundled libexpat to 2.7.3
..
.. date: 2025-09-24-14-17-34
.. gh-issue: 139289
.. nonce: Vmk25k
.. section: Library
Do a real lazy-import on :mod:`rlcompleter` in :mod:`pdb` and restore the
existing completer after importing :mod:`rlcompleter`.
..
.. date: 2025-09-22-14-40-11
.. gh-issue: 90949
.. nonce: UM35nb
.. section: Library
Add :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerActivationThreshold`
and :meth:`~xml.parsers.expat.xmlparser.SetAllocTrackerMaximumAmplification`
to :ref:`xmlparser ` objects to tune protections against
disproportional amounts of dynamic memory usage from within an Expat parser.
Patch by Bénédikt Tran.
..
.. date: 2025-09-22-11-30-45
.. gh-issue: 67795
.. nonce: fROoZt
.. section: Library
Functions that take timestamp or timeout arguments now accept any real
numbers (such as :class:`~decimal.Decimal` and
:class:`~fractions.Fraction`), not only integers or floats, although this
does not improve precision.
..
.. date: 2025-09-22-11-19-05
.. gh-issue: 95953
.. nonce: 7oLoag
.. section: Library
A CSS class, ``diff_changed``, was added to the changed lines in the
``make_table`` output of :class:`difflib.HtmlDiff`. Patch by Katie Gardner.
..
.. date: 2025-09-21-15-58-57
.. gh-issue: 139210
.. nonce: HGbMvz
.. section: Library
Fix use-after-free when reporting unknown event in
:func:`xml.etree.ElementTree.iterparse`. Patch by Ken Jin.
..
.. date: 2025-09-20-17-50-31
.. gh-issue: 138860
.. nonce: Y9JXap
.. section: Library
Lazy import :mod:`rlcompleter` in :mod:`pdb` to avoid deadlock in
subprocess.
..
.. date: 2025-09-19-09-36-42
.. gh-issue: 112729
.. nonce: mmty0_
.. section: Library
Fix crash when calling :func:`concurrent.interpreters.create` when the
process is out of memory.
..
.. date: 2025-09-19-07-41-52
.. gh-issue: 126016
.. nonce: Uz9W6h
.. section: Library
Fix an assertion failure when sending :exc:`KeyboardInterrupt` to a Python
process running a subinterpreter in a separate thread.
..
.. date: 2025-09-18-14-21-57
.. gh-issue: 118803
.. nonce: 2JPbto
.. section: Library
:class:`collections.abc.ByteString` has been removed from
``collections.abc.__all__``, and :class:`typing.ByteString` has been removed
from ``typing.__all__``. The former has been deprecated since Python 3.12,
and the latter has been deprecated since Python 3.9. Both classes are
scheduled for removal in Python 3.17.
Additionally, the following statements now cause ``DeprecationWarning``\ s
to be emitted at runtime: ``from collections.abc import ByteString``, ``from
typing import ByteString``, ``import collections.abc;
collections.abc.ByteString`` and ``import typing; typing.ByteString``. Both
classes already caused ``DeprecationWarning``\ s to be emitted if they were
subclassed or used as the second argument to ``isinstance()`` or
``issubclass()``, but they did not previously lead to
``DeprecationWarning``\ s if they were merely imported or accessed from
their respective modules.
..
.. date: 2025-09-18-05-32-18
.. gh-issue: 135729
.. nonce: 8AmMza
.. section: Library
Fix unraisable exception during finalization when using
:mod:`concurrent.interpreters` in the REPL.
..
.. date: 2025-09-17-21-54-53
.. gh-issue: 139076
.. nonce: 2eX9lG
.. section: Library
Fix a bug in the :mod:`pydoc` module that was hiding functions in a Python
module if they were implemented in an extension module and the module did
not have ``__all__``.
..
.. date: 2025-09-17-21-52-30
.. gh-issue: 139090
.. nonce: W7vbhF
.. section: Library
Add :data:`os.RWF_DONTCACHE` constant for Linux 6.14+.
..
.. date: 2025-09-17-19-08-34
.. gh-issue: 139065
.. nonce: Hu8fM5
.. section: Library
Fix trailing space before a wrapped long word if the line length is exactly
*width* in :mod:`textwrap`.
..
.. date: 2025-09-17-12-07-21
.. gh-issue: 139001
.. nonce: O6tseN
.. section: Library
Fix race condition in :class:`pathlib.Path` on the internal ``_raw_paths``
field.
..
.. date: 2025-09-17-08-32-43
.. gh-issue: 138813
.. nonce: LHkHjX
.. section: Library
:class:`!multiprocessing.BaseProcess` defaults ``kwargs`` to ``None``
instead of a shared dictionary.
..
.. date: 2025-09-16-19-05-29
.. gh-issue: 138998
.. nonce: URl0Y_
.. section: Library
Update bundled libexpat to 2.7.2
..
.. date: 2025-09-16-16-46-58
.. gh-issue: 138993
.. nonce: -8s8_T
.. section: Library
Dedent :data:`credits` text.
..
.. date: 2025-09-16-15-56-29
.. gh-issue: 118803
.. nonce: aOPtmL
.. section: Library
Add back :class:`collections.abc.ByteString` and :class:`typing.ByteString`.
Both had been removed in prior alpha, beta and release candidates for Python
3.14, but their removal has now been postponed to Python 3.17.
..
.. date: 2025-09-15-19-29-12
.. gh-issue: 130567
.. nonce: shDEnT
.. section: Library
Fix possible crash in :func:`locale.strxfrm` due to a platform bug on macOS.
..
.. date: 2025-09-15-13-09-19
.. gh-issue: 137226
.. nonce: HH3_ik
.. section: Library
Fix :func:`typing.get_type_hints` calls on generic :class:`typing.TypedDict`
classes defined with string annotations.
..
.. date: 2025-09-15-08-57-39
.. gh-issue: 138899
.. nonce: Uh6fvY
.. section: Library
Executing ``quit`` command in :mod:`pdb` will raise :exc:`bdb.BdbQuit` when
:mod:`pdb` is started from an asyncio console using :func:`breakpoint` or
:func:`pdb.set_trace`.
..
.. date: 2025-09-12-01-01-05
.. gh-issue: 138804
.. nonce: 46ZukT
.. section: Library
Raise :exc:`TypeError` instead of :exc:`AttributeError` when an argument of
incorrect type is passed to :func:`shlex.quote`. This restores the behavior
of the function prior to 3.14.
..
.. date: 2025-09-11-11-09-28
.. gh-issue: 138779
.. nonce: TNZnLr
.. section: Library
Support device numbers larger than ``2**63-1`` for the
:attr:`~os.stat_result.st_rdev` field of the :class:`os.stat_result`
structure.
..
.. date: 2025-09-10-13-32-25
.. gh-issue: 138682
.. nonce: iExqx1
.. section: Library
Added symmetric difference support to :class:`collections.Counter` objects.
..
.. date: 2025-09-10-10-11-59
.. gh-issue: 138712
.. nonce: avrPG5
.. section: Library
Add :const:`os.NODEV`.
..
.. date: 2025-09-10-10-02-59
.. gh-issue: 128636
.. nonce: ldRKGZ
.. section: Library
Fix crash in PyREPL when os.environ is overwritten with an invalid value for
mac
..
.. date: 2025-09-09-17-57-49
.. gh-issue: 138720
.. nonce: hAtsm-
.. section: Library
Fix an issue where :class:`io.BufferedWriter` and :class:`io.BufferedRandom`
had different definitions of "closed" for :meth:`~io.IOBase.close` and
:meth:`~io.IOBase.flush` which resulted in an exception when close called
flush but flush thought the file was already closed.
..
.. date: 2025-09-09-10-48-26
.. gh-issue: 138706
.. nonce: xB--LX
.. section: Library
Update :mod:`unicodedata` database to Unicode 17.0.0.
..
.. date: 2025-09-08-17-32-02
.. gh-issue: 76007
.. nonce: peEgcr
.. section: Library
Deprecate ``__version__`` from a number of standard library modules. Patch
by Hugo van Kemenade.
..
.. date: 2025-09-06-20-09-32
.. gh-issue: 138535
.. nonce: mlntEe
.. section: Library
Speed up :func:`os.stat` for files with reasonable timestamps. Contributed
by Jeffrey Bosboom.
..
.. date: 2025-09-06-14-56-40
.. gh-issue: 116946
.. nonce: GGIeyO
.. section: Library
:mod:`curses.panel`: the type of :func:`curses.panel.new_panel` is now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-54-01
.. gh-issue: 116946
.. nonce: hzQEWI
.. section: Library
:mod:`zlib`: the types of :func:`zlib.compressobj` and
:func:`zlib.decompressobj` are now immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-53-19
.. gh-issue: 116946
.. nonce: c-npxd
.. section: Library
:mod:`os`: the :class:`os.DirEntry` type and the type of :func:`os.scandir`
are now immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-47-23
.. gh-issue: 116946
.. nonce: hj_u1t
.. section: Library
:mod:`tkinter`: the types :class:`!_tkinter.Tcl_Obj` (wrapper for Tcl
objects), :class:`!_tkinter.tktimertoken` (obtained by calling
``createtimerhandler()`` on a :attr:`Tk ` application) and
:class:`!_tkinter.tkapp` (the runtime type of Tk applications) are now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-11-26-21
.. gh-issue: 138514
.. nonce: 66ltOb
.. section: Library
Raise :exc:`ValueError` when a multi-character string is passed to the
*echo_char* parameter of :func:`getpass.getpass`. Patch by Benjamin Johnson.
..
.. date: 2025-09-05-21-10-24
.. gh-issue: 137706
.. nonce: 0EztiJ
.. section: Library
Fix the partial evaluation of annotations that use ``typing.Annotated[T,
x]`` where ``T`` is a forward reference.
..
.. date: 2025-09-05-15-35-59
.. gh-issue: 88375
.. nonce: dC491a
.. section: Library
Fix normalization of the ``robots.txt`` rules and URLs in the
:mod:`urllib.robotparser` module. No longer ignore trailing ``?``.
Distinguish raw special characters ``?``, ``=`` and ``&`` from the
percent-encoded ones.
..
.. date: 2025-09-05-07-50-18
.. gh-issue: 138515
.. nonce: E3M-pu
.. section: Library
:mod:`email` is added to Emscripten build.
..
.. date: 2025-09-05-05-53-43
.. gh-issue: 99948
.. nonce: KMSlG6
.. section: Library
:func:`ctypes.util.find_library` now works in Emscripten build.
..
.. date: 2025-09-04-15-18-11
.. gh-issue: 111788
.. nonce: tuTEM5
.. section: Library
Fix parsing errors in the :mod:`urllib.robotparser` module. Don't fail
trying to parse weird paths. Don't fail trying to decode non-UTF-8
``robots.txt`` files.
..
.. date: 2025-09-03-15-20-10
.. gh-issue: 138432
.. nonce: RMc7UX
.. section: Library
:meth:`zoneinfo.reset_tzpath` will now convert any :class:`os.PathLike`
objects it receives into strings before adding them to ``TZPATH``. It will
raise ``TypeError`` if anything other than a string is found after this
conversion. If given an :class:`os.PathLike` object that represents a
relative path, it will now raise ``ValueError`` instead of ``TypeError``,
and present a more informative error message.
..
.. date: 2025-09-03-09-03-11
.. gh-issue: 132657
.. nonce: cbAIDh
.. section: Library
Improve the scaling of :func:`copy.copy` and :func:`copy.deepcopy` in the
free-threading build.
..
.. date: 2025-09-02-10-27-21
.. gh-issue: 116946
.. nonce: VxXNGD
.. section: Library
The types of :func:`select.poll` and :func:`select.epoll` objects are now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-02-10-23-09
.. gh-issue: 116946
.. nonce: U6RpwK
.. section: Library
The :class:`!_random.Random` C type is now immutable. Patch by Bénédikt
Tran.
..
.. date: 2025-08-31-22-10-22
.. gh-issue: 57911
.. nonce: N_Ixtv
.. section: Library
When extracting tar files on Windows, slashes in symlink targets will be
replaced by backslashes to prevent corrupted links.
..
.. date: 2025-08-31-12-34-02
.. gh-issue: 138205
.. nonce: iHXb1z
.. section: Library
Removed the :meth:`~mmap.mmap.resize` method on platforms that don't support
the underlying syscall, instead of raising a :exc:`SystemError`.
..
.. date: 2025-08-31-09-06-49
.. gh-issue: 138008
.. nonce: heOvsU
.. section: Library
Fix segmentation faults in the :mod:`ctypes` module due to invalid
:attr:`~ctypes._CFuncPtr.argtypes`. Patch by Dung Nguyen.
..
.. date: 2025-08-30-17-58-04
.. gh-issue: 138252
.. nonce: CDiEby
.. section: Library
:mod:`ssl`: :class:`~ssl.SSLContext` objects can now set client and server
TLS signature algorithms. If Python has been built with OpenSSL 3.5 or
later, :class:`~ssl.SSLSocket` objects can return the signature algorithms
selected on a connection.
..
.. date: 2025-08-30-10-58-15
.. gh-issue: 138253
.. nonce: 9Ehj-N
.. section: Library
Add the *block* parameter in the :meth:`!put` and :meth:`!get` methods of
the :mod:`concurrent.interpreters` queues for compatibility with the
:class:`queue.Queue` interface.
..
.. date: 2025-08-30-10-04-28
.. gh-issue: 60462
.. nonce: yh_vDc
.. section: Library
Fix :func:`locale.strxfrm` on Solaris (and possibly other platforms).
..
.. date: 2025-08-29-12-56-55
.. gh-issue: 138239
.. nonce: uthZFI
.. section: Library
The REPL now highlights :keyword:`type` as a soft keyword in :ref:`type
statements `.
..
.. date: 2025-08-29-12-05-33
.. gh-issue: 78502
.. nonce: VpIMxg
.. section: Library
:class:`mmap.mmap` now has a *trackfd* parameter on Windows; if it is
``False``, the file handle corresponding to *fileno* will not be duplicated.
..
.. date: 2025-08-28-13-20-09
.. gh-issue: 138204
.. nonce: 8oLOud
.. section: Library
Forbid expansion of shared anonymous :mod:`memory maps ` on Linux,
which caused a bus error.
..
.. date: 2025-08-27-17-05-36
.. gh-issue: 138010
.. nonce: ZZJmPL
.. section: Library
Fix an issue where defining a class with a
:deco:`warnings.deprecated`-decorated base class may not invoke the correct
:meth:`~object.__init_subclass__` method in cases involving multiple
inheritance. Patch by Brian Schubert.
..
.. date: 2025-08-25-22-38-03
.. gh-issue: 134716
.. nonce: kyYKeX
.. section: Library
Add support of regular expressions in the :option:`-W` option and the
:envvar:`PYTHONWARNINGS` environment variable.
..
.. date: 2025-08-25-18-06-04
.. gh-issue: 138133
.. nonce: Zh9rGo
.. section: Library
Prevent infinite traceback loop when sending CTRL^C to Python through
``strace``.
..
.. date: 2025-08-25-16-22-32
.. gh-issue: 138122
.. nonce: eMNDZ1
.. section: Library
Implement :pep:`799` -- A dedicated profiling package for organizing Python
profiling tools. Patch by Pablo Galindo.
..
.. date: 2025-08-24-02-04-32
.. gh-issue: 138092
.. nonce: V4-wTO
.. section: Library
Fixed a bug in :meth:`mmap.mmap.flush` where calling with only an offset
parameter would fail.
..
.. date: 2025-08-22-12-48-14
.. gh-issue: 138044
.. nonce: lEQULC
.. section: Library
Remove compatibility shim for deprecated parameter *package* in
:func:`importlib.resources.files`. Patch by Semyon Moroz.
..
.. date: 2025-08-22-09-53-45
.. gh-issue: 86819
.. nonce: ECxvwx
.. section: Library
:mod:`socket`: Add missing constants for ISO-TP sockets.
..
.. date: 2025-08-19-00-12-57
.. gh-issue: 137884
.. nonce: 4faCA_
.. section: Library
Add :func:`threading.get_native_id` support for Illumos/Solaris. Patch by
Yüce Tekol.
..
.. date: 2025-08-18-16-02-51
.. gh-issue: 134869
.. nonce: GnAjnU
.. section: Library
Fix an issue where pressing Ctrl+C during tab completion in the REPL would
leave the autocompletion menu in a corrupted state.
..
.. date: 2025-08-18-07-10-55
.. gh-issue: 137840
.. nonce: 9b7AnG
.. section: Library
:class:`typing.TypedDict` now supports the ``closed`` and ``extra_items``
keyword arguments (as described in :pep:`728`) to control whether additional
non-required keys are allowed and to specify their value type.
..
.. date: 2025-08-17-10-22-31
.. gh-issue: 132947
.. nonce: XR4MJ8
.. section: Library
Applied changes to ``importlib.metadata`` from `importlib_metadata 8.7
`_,
including ``dist`` now disallowed for ``EntryPoints.select``; deferred
imports for faster import times; added support for metadata with newlines
(python/cpython#119650); and ``metadata()`` function now returns ``None``
when a metadata directory is present but no metadata is present.
..
.. date: 2025-08-16-18-11-41
.. gh-issue: 90548
.. nonce: q3aJUK
.. section: Library
Fix ``musl`` detection for :func:`platform.libc_ver` on Alpine Linux if
compiled with --strip-all.
..
.. date: 2025-08-16-16-04-15
.. gh-issue: 137317
.. nonce: Dl13B5
.. section: Library
:func:`inspect.signature` now correctly handles classes that use a
descriptor on a wrapped :meth:`!__init__` or :meth:`!__new__` method.
Contributed by Yongyu Yan.
..
.. date: 2025-08-16-09-02-11
.. gh-issue: 137754
.. nonce: mCev1Y
.. section: Library
Fix import of the :mod:`zoneinfo` module if the C implementation of the
:mod:`datetime` module is not available.
..
.. date: 2025-08-14-10-27-07
.. gh-issue: 125854
.. nonce: vDzFcZ
.. section: Library
Improve error messages for invalid category in :func:`warnings.warn`.
..
.. date: 2025-08-14-00-00-12
.. gh-issue: 137729
.. nonce: i9NSKP
.. section: Library
:func:`locale.setlocale` now supports language codes with ``@``-modifiers.
``@``-modifier are no longer silently removed in :func:`locale.getlocale`,
but included in the language code.
..
.. date: 2025-08-13-10-50-22
.. gh-issue: 73487
.. nonce: DUHbBq
.. section: Library
Speedup processing arguments (up to 1.5x) in the :mod:`decimal` module
methods, that now using :c:macro:`METH_FASTCALL` calling convention. Patch
by Sergey B Kirpichev.
..
.. date: 2025-08-11-14-18-32
.. gh-issue: 137634
.. nonce: M7iBG6
.. section: Library
Calendar pages generated by the :class:`calendar.HTMLCalendar` class now
support dark mode and have been migrated to the HTML5 standard for improved
accessibility.
..
.. date: 2025-08-11-05-05-08
.. gh-issue: 137630
.. nonce: 9lmqyc
.. section: Library
The :mod:`!_interpreters` module now uses Argument Clinic to parse
arguments. Patch by Adam Turner.
..
.. date: 2025-08-09-08-53-32
.. gh-issue: 137583
.. nonce: s6OZud
.. section: Library
Fix a deadlock introduced in 3.13.6 when a call to :meth:`ssl.SSLSocket.recv
` was blocked in one thread, and then another method on
the object (such as :meth:`ssl.SSLSocket.send `) was
subsequently called in another thread.
..
.. date: 2025-08-08-21-20-14
.. gh-issue: 92936
.. nonce: rOgG1S
.. section: Library
Update regex used by ``http.cookies.SimpleCookie`` to handle values
containing double quotes.
..
.. date: 2025-08-08-15-00-38
.. gh-issue: 137426
.. nonce: lW-Rk2
.. section: Library
Remove the code deprecation of ``importlib.abc.ResourceLoader``. It is
documented as deprecated, but left for backwards compatibility with other
classes in ``importlib.abc``.
..
.. date: 2025-08-07-17-18-57
.. gh-issue: 137490
.. nonce: s89ieZ
.. section: Library
Handle :data:`~errno.ECANCELED` in the same way as :data:`~errno.EINTR` in
:func:`signal.sigwaitinfo` on NetBSD.
..
.. date: 2025-08-07-15-07-44
.. gh-issue: 137512
.. nonce: j2or5h
.. section: Library
Add new constants in the :mod:`resource` module:
:data:`~resource.RLIMIT_NTHR`, :data:`~resource.RLIMIT_UMTXP`,
:data:`~resource.RLIMIT_PIPEBUF`, :data:`~resource.RLIMIT_THREADS`,
:data:`~resource.RLIM_SAVED_CUR`, and :data:`~resource.RLIM_SAVED_MAX`.
..
.. date: 2025-08-07-12-32-23
.. gh-issue: 137044
.. nonce: abNoIy
.. section: Library
:data:`resource.RLIM_INFINITY` is now always a positive integer. On all
supported platforms, it is larger than any limited resource value, which
simplifies comparison of the resource values. Previously, it could be
negative, such as -1 or -3, depending on platform.
..
.. date: 2025-08-06-23-16-42
.. gh-issue: 137477
.. nonce: bk6BDV
.. section: Library
Fix :func:`!inspect.getblock`, :func:`inspect.getsourcelines` and
:func:`inspect.getsource` for generator expressions.
..
.. date: 2025-08-06-16-54-22
.. gh-issue: 137481
.. nonce: eSTkK0
.. section: Library
Calendar uses the lengths of the locale's weekdays to decide if the width
requires abbreviation.
..
.. date: 2025-08-06-16-13-47
.. gh-issue: 137466
.. nonce: Whv0-A
.. section: Library
Remove undocumented :func:`!glob.glob0` and :func:`!glob.glob1` functions,
which have been deprecated since Python 3.13. Use :func:`glob.glob` and pass
a directory to its *root_dir* argument instead.
..
.. date: 2025-08-03-13-16-39
.. gh-issue: 137044
.. nonce: 0hPVL_
.. section: Library
Return large limit values as positive integers instead of negative integers
in :func:`resource.getrlimit`. Accept large values and reject negative
values (except :data:`~resource.RLIM_INFINITY`) for limits in
:func:`resource.setrlimit`.
..
.. date: 2025-08-03-00-36-57
.. gh-issue: 115766
.. nonce: nJCFkW
.. section: Library
Fix :attr:`!ipaddress.IPv4Interface.is_unspecified`.
..
.. date: 2025-08-01-23-52-49
.. gh-issue: 75989
.. nonce: 5aYXNJ
.. section: Library
:func:`tarfile.TarFile.extractall` and :func:`tarfile.TarFile.extract` now
overwrite symlinks when extracting hardlinks. (Contributed by Alexander
Enrique Urieles Nieto in :gh:`75989`.)
..
.. date: 2025-08-01-23-11-25
.. gh-issue: 137017
.. nonce: 0yGcNc
.. section: Library
Fix :obj:`threading.Thread.is_alive` to remain ``True`` until the underlying
OS thread is fully cleaned up. This avoids false negatives in edge cases
involving thread monitoring or premature :obj:`threading.Thread.is_alive`
calls.
..
.. date: 2025-08-01-15-07-59
.. gh-issue: 137273
.. nonce: 4V8Xmv
.. section: Library
Fix debug assertion failure in :func:`locale.setlocale` on Windows.
..
.. date: 2025-07-31-16-43-16
.. gh-issue: 137191
.. nonce: FIogE8
.. section: Library
Fix how type parameters are collected, when :class:`typing.Protocol` are
specified with explicit parameters. Now, :class:`typing.Generic` and
:class:`typing.Protocol` always dictate the parameter number and parameter
ordering of types. Previous behavior was a bug.
..
.. date: 2025-07-31-10-31-56
.. gh-issue: 137282
.. nonce: GOCwIC
.. section: Library
Fix tab completion and :func:`dir` on :mod:`concurrent.futures`.
..
.. date: 2025-07-30-18-07-33
.. gh-issue: 137257
.. nonce: XBtzf2
.. section: Library
Bump the version of pip bundled in ensurepip to version 25.2
..
.. date: 2025-07-30-17-42-36
.. gh-issue: 137239
.. nonce: qSpj32
.. section: Library
:mod:`heapq`: Update :data:`!heapq.__all__` with ``*_max`` functions.
..
.. date: 2025-07-30-11-12-22
.. gh-issue: 124503
.. nonce: d4hc7b
.. section: Library
:func:`ast.literal_eval` is 10-20% faster for small inputs.
..
.. date: 2025-07-29-21-18-31
.. gh-issue: 137226
.. nonce: B_4lpu
.. section: Library
Fix behavior of :meth:`annotationlib.ForwardRef.evaluate` when the
*type_params* parameter is passed and the name of a type param is also
present in an enclosing scope.
..
.. date: 2025-07-29-05-12-50
.. gh-issue: 137197
.. nonce: bMK3sO
.. section: Library
:class:`~ssl.SSLContext` objects can now set TLS 1.3 cipher suites via
:meth:`~ssl.SSLContext.set_ciphersuites`.
..
.. date: 2025-07-28-23-11-29
.. gh-issue: 81325
.. nonce: jMJFBe
.. section: Library
:class:`tarfile.TarFile` now accepts a :term:`path-like `
when working on a tar archive. (Contributed by Alexander Enrique Urieles
Nieto in :gh:`81325`.)
..
.. date: 2025-07-28-20-48-32
.. gh-issue: 137185
.. nonce: fgI7-B
.. section: Library
Fix a potential async-signal-safety issue in :mod:`faulthandler` when
printing C stack traces.
..
.. date: 2025-07-27-17-03-17
.. gh-issue: 133951
.. nonce: 7kwt78
.. section: Library
Remove lib64-lib symlink creation when creating new virtual environments in
:mod:`venv` module
..
.. date: 2025-07-25-09-21-56
.. gh-issue: 130522
.. nonce: Crwq68
.. section: Library
Fix unraisable :exc:`TypeError` raised during :term:`interpreter shutdown`
in the :mod:`threading` module.
..
.. date: 2025-07-24-00-38-07
.. gh-issue: 137059
.. nonce: fr64oW
.. section: Library
Fix handling of file URLs with a Windows drive letter in the URL authority
by :func:`urllib.request.url2pathname`. This fixes a regression in earlier
pre-releases of Python 3.14.
..
.. date: 2025-07-23-11-59-48
.. gh-issue: 136980
.. nonce: BIJzkB
.. section: Library
Remove unused C tracing code in bdb for event type ``c_call``, ``c_return``
and ``c_exception``
..
.. date: 2025-07-23-00-35-29
.. gh-issue: 130577
.. nonce: c7EITy
.. section: Library
:mod:`tarfile` now validates archives to ensure member offsets are
non-negative. (Contributed by Alexander Enrique Urieles Nieto in
:gh:`130577`.)
..
.. date: 2025-07-21-22-35-50
.. gh-issue: 136170
.. nonce: QUlc78
.. section: Library
Removed the unreleased ``zipfile.ZipFile.data_offset`` property added in
3.14.0a7 as it wasn't fully clear which behavior it should have in some
situations so the result was not always what a user might expect.
..
.. date: 2025-07-21-20-00-42
.. gh-issue: 121237
.. nonce: DyxNqo
.. section: Library
Support ``%:z`` directive for :meth:`datetime.datetime.strptime`,
:meth:`datetime.time.strptime` and :func:`time.strptime`. Patch by Lucas
Esposito and Semyon Moroz.
..
.. date: 2025-07-21-16-13-20
.. gh-issue: 136929
.. nonce: obKZ2S
.. section: Library
Ensure that hash functions guaranteed to be always *available* exist as
attributes of :mod:`hashlib` even if they will not work at runtime due to
missing backend implementations. For instance, ``hashlib.md5`` will no
longer raise :exc:`AttributeError` if OpenSSL is not available and Python
has been built without MD5 support. Patch by Bénédikt Tran.
..
.. date: 2025-07-21-16-10-24
.. gh-issue: 124621
.. nonce: wyoWc1
.. section: Library
pyrepl now works in Emscripten.
..
.. date: 2025-07-21-15-40-00
.. gh-issue: 136914
.. nonce: -GNG-d
.. section: Library
Fix retrieval of :attr:`doctest.DocTest.lineno` for objects decorated with
:func:`functools.cache` or :class:`functools.cached_property`.
..
.. date: 2025-07-21-11-56-47
.. gh-issue: 136912
.. nonce: zWosAL
.. section: Library
:func:`hmac.digest` now properly handles large keys and messages by falling
back to the pure Python implementation when necessary. Patch by Bénédikt
Tran.
..
.. date: 2025-07-21-01-16-32
.. gh-issue: 83424
.. nonce: Y3tEV4
.. section: Library
Allows creating a :class:`ctypes.CDLL` without name when passing a handle as
an argument.
..
.. date: 2025-07-20-16-56-55
.. gh-issue: 135228
.. nonce: n_XIao
.. section: Library
When :mod:`dataclasses` replaces a class with a slotted dataclass, the
original class can now be garbage collected again. Earlier changes in Python
3.14 caused this class to always remain in existence together with the
replacement class synthesized by :mod:`dataclasses`.
..
.. date: 2025-07-20-16-02-00
.. gh-issue: 136874
.. nonce: cLC3o1
.. section: Library
Discard URL query and fragment in :func:`urllib.request.url2pathname`.
..
.. date: 2025-07-20-10-21-49
.. gh-issue: 136787
.. nonce: _0Rbp_
.. section: Library
:mod:`hashlib`: improve exception messages when a hash algorithm is not
recognized, blocked by the current security policy or incompatible with the
desired operation (for instance, using HMAC with SHAKE). Patch by Bénédikt
Tran.
..
.. date: 2025-07-19-16-20-54
.. gh-issue: 130645
.. nonce: O-dYcN
.. section: Library
Enable color help by default in :mod:`argparse`.
..
.. date: 2025-07-19-15-40-47
.. gh-issue: 131724
.. nonce: LS59nA
.. section: Library
In :mod:`http.client`, a new *max_response_headers* keyword-only parameter
has been added to :class:`~http.client.HTTPConnection` and
:class:`~http.client.HTTPSConnection` constructors. This parameter sets the
maximum number of allowed response headers, helping to prevent
denial-of-service attacks.
..
.. date: 2025-07-19-11-53-19
.. gh-issue: 135427
.. nonce: iJM_X2
.. section: Library
With :option:`-Werror <-W>`, the DeprecationWarning emitted by
:py:func:`os.fork` and :py:func:`os.forkpty` in mutli-threaded processes is
now raised as an exception. Previously it was silently ignored. Patch by
Rani Pinchuk.
..
.. date: 2025-07-17-16-12-23
.. gh-issue: 136234
.. nonce: VmTxtj
.. section: Library
Fix :meth:`asyncio.WriteTransport.writelines` to be robust to connection
failure, by using the same behavior as
:meth:`~asyncio.WriteTransport.write`.
..
.. date: 2025-07-16-09-45-58
.. gh-issue: 53144
.. nonce: mrKwMW
.. section: Library
:mod:`!encodings.aliases`: Add ``latin_N`` aliases
..
.. date: 2025-07-15-16-37-34
.. gh-issue: 136669
.. nonce: Yexwah
.. section: Library
:mod:`!_asyncio` is now statically linked for improved performance.
..
.. date: 2025-07-13-13-31-22
.. gh-issue: 136134
.. nonce: mh6VjS
.. section: Library
:meth:`!SMTP.auth_cram_md5` now raises an :exc:`~smtplib.SMTPException`
instead of a :exc:`ValueError` if Python has been built without MD5 support.
In particular, :class:`~smtplib.SMTP` clients will not attempt to use this
method even if the remote server is assumed to support it. Patch by Bénédikt
Tran.
..
.. date: 2025-07-13-11-20-05
.. gh-issue: 136134
.. nonce: xhh0Kq
.. section: Library
:meth:`IMAP4.login_cram_md5 ` now raises an
:exc:`IMAP4.error ` if CRAM-MD5 authentication is not
supported. Patch by Bénédikt Tran.
..
.. date: 2025-07-12-18-05-37
.. gh-issue: 136591
.. nonce: ujXmSN
.. section: Library
:mod:`!_hashlib`: avoid using deprecated functions
:manpage:`ERR_func_error_string` and :manpage:`EVP_MD_CTX_md` when using
OpenSSL 3.0 and later. Patch by Bénédikt Tran.
..
.. date: 2025-07-12-14-15-47
.. gh-issue: 136571
.. nonce: muHmBv
.. section: Library
:meth:`datetime.date.fromisocalendar` can now raise OverflowError for out of
range arguments.
..
.. date: 2025-07-11-23-04-39
.. gh-issue: 136549
.. nonce: oAi8u4
.. section: Library
Fix signature of :func:`threading.excepthook`.
..
.. date: 2025-07-11-10-23-44
.. gh-issue: 136492
.. nonce: BVi5h0
.. section: Library
Expose :pep:`667`'s :data:`~types.FrameLocalsProxyType` in the :mod:`types`
module.
..
.. date: 2025-07-11-08-15-17
.. gh-issue: 83336
.. nonce: ptpmq7
.. section: Library
``utf8_sig`` is now aliased to :mod:`encodings.utf_8_sig`
..
.. date: 2025-07-11-03-39-15
.. gh-issue: 136523
.. nonce: s7caKL
.. section: Library
Fix :class:`wave.Wave_write` emitting an unraisable when open raises.
..
.. date: 2025-07-10-21-02-43
.. gh-issue: 136507
.. nonce: pnEuGS
.. section: Library
Fix mimetypes CLI to handle multiple file parameters.
..
.. date: 2025-07-10-10-18-19
.. gh-issue: 52876
.. nonce: 9Vjrd8
.. section: Library
Add missing ``keepends`` (default ``True``) parameter to
:meth:`!codecs.StreamReaderWriter.readline` and
:meth:`!codecs.StreamReaderWriter.readlines`.
..
.. date: 2025-07-10-00-47-37
.. gh-issue: 136470
.. nonce: KlUEUG
.. section: Library
Correct :class:`concurrent.futures.InterpreterPoolExecutor`'s default thread
name.
..
.. date: 2025-07-09-20-29-30
.. gh-issue: 136476
.. nonce: HyLLzh
.. section: Library
Fix a bug that was causing the ``get_async_stack_trace`` function to miss
some frames in the stack trace.
..
.. date: 2025-07-08-20-58-01
.. gh-issue: 136434
.. nonce: uuJsjS
.. section: Library
Fix docs generation of ``UnboundItem`` in :mod:`concurrent.interpreters`
when running with :option:`-OO`.
..
.. date: 2025-07-07-22-12-32
.. gh-issue: 136380
.. nonce: 1b_nXl
.. section: Library
Raises :exc:`AttributeError` when accessing
:class:`concurrent.futures.InterpreterPoolExecutor` and subinterpreters are
not available.
..
.. date: 2025-07-07-16-46-55
.. gh-issue: 72327
.. nonce: wLvRuj
.. section: Library
Suggest using the system command prompt when ``pip install`` is typed into
the REPL. Patch by Tom Viner, Richard Si, and Brian Schubert.
..
.. date: 2025-07-06-18-38-10
.. gh-issue: 135953
.. nonce: Z29DCz
.. section: Library
Implement a new high-frequency runtime profiler that leverages the existing
remote debugging functionality to collect detailed execution statistics from
running Python processes. This tool is exposed in the ``profile.sample``
module and enables non-intrusive observation of production applications by
attaching to already-running processes without requiring any code
modifications, restarts, or special startup flags. The observer can perform
extremely high-frequency sampling of stack traces and interpreter state,
providing detailed runtime execution analysis of live applications.
..
.. date: 2025-07-06-10-18-48
.. gh-issue: 136021
.. nonce: f-FJYT
.. section: Library
Make ``type_params`` parameter required in :func:`!typing._eval_type` after
a deprecation period for not providing this parameter. Also remove the
:exc:`DeprecationWarning` for the old behavior.
..
.. date: 2025-07-05-09-45-04
.. gh-issue: 136286
.. nonce: N67Amr
.. section: Library
Fix pickling failures for protocols 0 and 1 for many objects related to
subinterpreters.
..
.. date: 2025-07-05-06-59-46
.. gh-issue: 136047
.. nonce: qWvycf
.. section: Library
Fix issues with :mod:`typing` when the C implementation of :mod:`abc` is not
available.
..
.. date: 2025-07-05-06-56-16
.. gh-issue: 136316
.. nonce: 3zj_Do
.. section: Library
Improve support for evaluating nested forward references in
:func:`typing.evaluate_forward_ref`.
..
.. date: 2025-07-04-23-45-00
.. gh-issue: 136306
.. nonce: O1YLIU
.. section: Library
:mod:`ssl` can now get and set groups used for key agreement.
..
.. date: 2025-07-04-12-53-02
.. gh-issue: 136156
.. nonce: OYlXoz
.. section: Library
:func:`tempfile.TemporaryFile` no longer uses :data:`os.O_EXCL` with
:data:`os.O_TMPFILE`, so it's possible to use ``linkat()`` on the file
descriptor. Patch by Victor Stinner.
..
.. date: 2025-07-02-18-41-45
.. gh-issue: 133982
.. nonce: 7qqAn6
.. section: Library
Update Python implementation of :class:`io.BytesIO` to be thread safe.
..
.. date: 2025-07-02-10-48-21
.. gh-issue: 136193
.. nonce: xfvras
.. section: Library
Improve :exc:`TypeError` error message, when richcomparing two
:class:`types.SimpleNamespace` objects.
..
.. date: 2025-07-01-14-44-03
.. gh-issue: 136097
.. nonce: bI1n14
.. section: Library
Fix potential infinite recursion and KeyError in ``sysconfig
--generate-posix-vars``.
..
.. date: 2025-06-30-11-12-24
.. gh-issue: 85702
.. nonce: 0Lrbwu
.. section: Library
If ``zoneinfo._common.load_tzdata`` is given a package without a resource a
:exc:`zoneinfo.ZoneInfoNotFoundError` is raised rather than a
:exc:`PermissionError`. Patch by Victor Stinner.
..
.. date: 2025-06-29-15-22-13
.. gh-issue: 90733
.. nonce: NiquaA
.. section: Library
Improve error messages when reporting invalid parameters in
:func:`hashlib.scrypt`. Patch by Bénédikt Tran.
..
.. date: 2025-06-28-11-32-57
.. gh-issue: 134759
.. nonce: AjjKcG
.. section: Library
Fix :exc:`UnboundLocalError` in :func:`email.message.Message.get_payload`
when the payload to decode is a :class:`bytes` object. Patch by Kliment
Lamonov.
..
.. date: 2025-06-27-13-34-28
.. gh-issue: 136028
.. nonce: RY727g
.. section: Library
Fix parsing month names containing "İ" (U+0130, LATIN CAPITAL LETTER I WITH
DOT ABOVE) in :func:`time.strptime`. This affects locales az_AZ, ber_DZ,
ber_MA and crh_UA.
..
.. date: 2025-06-27-09-26-04
.. gh-issue: 87135
.. nonce: 33z0UW
.. section: Library
Acquiring a :class:`threading.Lock` or :class:`threading.RLock` at
interpreter shutdown will raise :exc:`PythonFinalizationError` if Python can
determine that it would otherwise deadlock.
..
.. date: 2025-06-26-17-28-49
.. gh-issue: 135995
.. nonce: pPrDCt
.. section: Library
In the palmos encoding, make byte ``0x9b`` decode to ``›`` (U+203A - SINGLE
RIGHT-POINTING ANGLE QUOTATION MARK).
..
.. date: 2025-06-26-17-19-36
.. gh-issue: 105456
.. nonce: eR9oHB
.. section: Library
Removed :mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!sre_parse`
modules.
..
.. date: 2025-06-26-11-52-40
.. gh-issue: 53203
.. nonce: TMigBr
.. section: Library
Fix :func:`time.strptime` for ``%c`` and ``%x`` formats on locales byn_ER,
wal_ET and lzh_TW, and for ``%X`` format on locales ar_SA, bg_BG and lzh_TW.
..
.. date: 2025-06-24-14-43-24
.. gh-issue: 135878
.. nonce: Db4roX
.. section: Library
Fixes a crash of :class:`types.SimpleNamespace` on :term:`free threading`
builds, when several threads were calling its :meth:`~object.__repr__`
method at the same time.
..
.. date: 2025-06-24-13-30-47
.. gh-issue: 135853
.. nonce: 7ejTvK
.. section: Library
Add :func:`math.fmax` and :func:`math.fmin` to get the larger and smaller of
two floating-point values. Patch by Bénédikt Tran.
..
.. date: 2025-06-24-10-52-35
.. gh-issue: 135836
.. nonce: s37351
.. section: Library
Fix :exc:`IndexError` in :meth:`asyncio.loop.create_connection` that could
occur when non-\ :exc:`OSError` exception is raised during connection and
socket's ``close()`` raises :exc:`!OSError`.
..
.. date: 2025-06-24-10-23-37
.. gh-issue: 135853
.. nonce: 6xDNOG
.. section: Library
:mod:`math`: expose C99 :func:`~math.signbit` function to determine whether
the sign bit of a floating-point value is set. Patch by Bénédikt Tran.
..
.. date: 2025-06-23-13-02-08
.. gh-issue: 134531
.. nonce: yUmj07
.. section: Library
:mod:`hmac`: use the :manpage:`EVP_MAC(3ssl)` interface for HMAC when Python
is built with OpenSSL 3.0 and later instead of the deprecated
:manpage:`HMAC_CTX(3ssl) ` interface. Patch by Bénédikt Tran.
..
.. date: 2025-06-23-11-04-25
.. gh-issue: 135836
.. nonce: -C-c4v
.. section: Library
Fix :exc:`IndexError` in :meth:`asyncio.loop.create_connection` that could
occur when the Happy Eyeballs algorithm resulted in an empty exceptions list
during connection attempts.
..
.. date: 2025-06-23-10-19-11
.. gh-issue: 135855
.. nonce: -J0AGF
.. section: Library
Raise :exc:`TypeError` instead of :exc:`SystemError` when
:func:`!_interpreters.set___main___attrs` is passed a non-dict object. Patch
by Brian Schubert.
..
.. date: 2025-06-22-22-03-06
.. gh-issue: 135823
.. nonce: iDBg97
.. section: Library
:mod:`netrc`: improve the error message when the security check for the
ownership of the default configuration file ``~/.netrc`` fails. Patch by
Bénédikt Tran.
..
.. date: 2025-06-22-16-23-44
.. gh-issue: 135815
.. nonce: 0DandH
.. section: Library
:mod:`netrc`: skip security checks if :func:`os.getuid` is missing. Patch by
Bénédikt Tran.
..
.. date: 2025-06-22-02-16-17
.. gh-issue: 135640
.. nonce: FXyFL6
.. section: Library
Address bug where it was possible to call
:func:`xml.etree.ElementTree.ElementTree.write` on an ElementTree object
with an invalid root element. This behavior blanked the file passed to
``write`` if it already existed.
..
.. date: 2025-06-20-17-06-59
.. gh-issue: 90117
.. nonce: GYWVrn
.. section: Library
Speed up :mod:`pprint` for :class:`list` and :class:`tuple`.
..
.. date: 2025-06-20-16-28-47
.. gh-issue: 135759
.. nonce: jne0Zi
.. section: Library
:mod:`hashlib`: reject negative digest lengths in OpenSSL-based SHAKE
objects by raising a :exc:`ValueError`. Previously, negative lengths were
implicitly rejected by raising a :exc:`MemoryError` or a :exc:`SystemError`.
Patch by Bénédikt Tran.
..
.. date: 2025-06-18-19-25-32
.. gh-issue: 123471
.. nonce: lx1Xbt
.. section: Library
Make concurrent iterations over :class:`itertools.chain` safe under
:term:`free threading`.
..
.. date: 2025-06-18-13-58-13
.. gh-issue: 135645
.. nonce: 109nff
.. section: Library
Added ``supports_isolated_interpreters`` field to
:data:`sys.implementation`.
..
.. date: 2025-06-18-11-43-17
.. gh-issue: 135646
.. nonce: r7ekEn
.. section: Library
Raise consistent :exc:`NameError` exceptions in
:func:`annotationlib.ForwardRef.evaluate`
..
.. date: 2025-06-17-23-13-56
.. gh-issue: 135557
.. nonce: Bfcy4v
.. section: Library
Fix races on :mod:`heapq` updates and :class:`list` reads on the :term:`free
threaded ` build.
..
.. date: 2025-06-17-22-44-19
.. gh-issue: 119180
.. nonce: Ogv8Nj
.. section: Library
Only fetch globals and locals if necessary in
:func:`annotationlib.get_annotations`
..
.. date: 2025-06-16-15-03-03
.. gh-issue: 135561
.. nonce: mJCN8D
.. section: Library
Fix a crash on DEBUG builds when an HACL* HMAC routine fails. Patch by
Bénédikt Tran.
..
.. date: 2025-06-16-15-00-13
.. gh-issue: 135386
.. nonce: lNrxLc
.. section: Library
Fix opening a :mod:`dbm.sqlite3` database for reading from read-only file or
directory.
..
.. date: 2025-06-16-12-37-02
.. gh-issue: 135444
.. nonce: An2eeA
.. section: Library
Fix :meth:`asyncio.DatagramTransport.sendto` to account for datagram header
size when data cannot be sent.
..
.. date: 2025-06-15-03-03-22
.. gh-issue: 65697
.. nonce: COdwZd
.. section: Library
:class:`configparser`'s error message when attempting to write an invalid
key is now more helpful.
..
.. date: 2025-06-14-14-19-13
.. gh-issue: 135497
.. nonce: 1pzwdA
.. section: Library
Fix :func:`os.getlogin` failing for longer usernames on BSD-based platforms.
..
.. date: 2025-06-14-12-06-55
.. gh-issue: 135487
.. nonce: KdVFff
.. section: Library
Fix :meth:`!reprlib.Repr.repr_int` when given integers with more than
:func:`sys.get_int_max_str_digits` digits. Patch by Bénédikt Tran.
..
.. date: 2025-06-12-18-15-31
.. gh-issue: 135429
.. nonce: mch75_
.. section: Library
Fix the argument mismatch in ``_lsprof`` for ``PY_THROW`` event.
..
.. date: 2025-06-12-10-45-02
.. gh-issue: 135368
.. nonce: OjWVHL
.. section: Library
Fix :class:`unittest.mock.Mock` generation on :func:`dataclasses.dataclass`
objects. Now all special attributes are set as it was before :gh:`124429`.
..
.. date: 2025-06-11-15-08-02
.. gh-issue: 135336
.. nonce: 6Gq6MI
.. section: Library
:mod:`json` now encodes strings up to 2.2x faster if they consist solely of
characters that don’t require escaping.
..
.. date: 2025-06-10-21-42-04
.. gh-issue: 135335
.. nonce: WnUqb_
.. section: Library
:mod:`multiprocessing`: Flush ``stdout`` and ``stderr`` after preloading
modules in the ``forkserver``.
..
.. date: 2025-06-10-21-00-48
.. gh-issue: 126631
.. nonce: eITVJd
.. section: Library
Fix :mod:`multiprocessing` ``forkserver`` bug which prevented ``__main__``
from being preloaded.
..
.. date: 2025-06-10-16-11-00
.. gh-issue: 133967
.. nonce: P0c24q
.. section: Library
Do not normalize :mod:`locale` name 'C.UTF-8' to 'en_US.UTF-8'.
..
.. date: 2025-06-10-10-22-18
.. gh-issue: 130870
.. nonce: JipqbO
.. section: Library
Preserve :class:`types.GenericAlias` subclasses in
:func:`typing.get_type_hints`
..
.. date: 2025-06-10-00-42-30
.. gh-issue: 135321
.. nonce: UHh9jT
.. section: Library
Raise a correct exception for values greater than 0x7fffffff for the
``BINSTRING`` opcode in the C implementation of :mod:`pickle`.
..
.. date: 2025-06-09-10-16-55
.. gh-issue: 121914
.. nonce: G6Avkq
.. section: Library
Changed the names of the symbol tables for lambda expressions and generator
expressions to "" and "" respectively to avoid conflicts
with user-defined names.
..
.. date: 2025-06-08-14-50-34
.. gh-issue: 135276
.. nonce: ZLUhV1
.. section: Library
Synchronized zipfile.Path with zipp 3.23, including improved performance of
:meth:`zipfile.Path.open` for non-reading modes, rely on
:func:`functools.cached_property` to cache values on the instance. Rely on
``save_method_args`` to save the initialization method arguments. Fixed
``.name``, ``.stem`` and other basename-based properties on Windows when
working with a zipfile on disk.
..
.. date: 2025-06-08-11-11-07
.. gh-issue: 135234
.. nonce: wJCdh0
.. section: Library
:mod:`hashlib`: improve exception messages when an OpenSSL function failed.
When memory allocation fails on OpenSSL's side, a :exc:`MemoryError` is
raised instead of a :exc:`ValueError`. Patch by Bénédikt Tran.
..
.. date: 2025-06-08-10-22-22
.. gh-issue: 135244
.. nonce: Y2SOTJ
.. section: Library
:mod:`uuid`: when the MAC address cannot be determined, the 48-bit node ID
is now generated with a cryptographically-secure pseudo-random number
generator (CSPRNG) as per :rfc:`RFC 9562, §6.10.3 <9562#section-6.10-3>`.
This affects :func:`~uuid.uuid1` and :func:`~uuid.uuid6`.
..
.. date: 2025-06-08-01-10-34
.. gh-issue: 135241
.. nonce: 5j18IW
.. section: Library
The :code:`INT` opcode of the C accelerator :mod:`!_pickle` module was
updated to look only for "00" and "01" to push booleans onto the stack,
aligning with the Python :mod:`pickle` module.
..
.. date: 2025-06-06-17-34-18
.. gh-issue: 133934
.. nonce: yT1r68
.. section: Library
Improve :mod:`sqlite3` CLI's ``.help`` message.
..
.. date: 2025-06-03-12-59-17
.. gh-issue: 135069
.. nonce: xop30V
.. section: Library
Fix the "Invalid error handling" exception in
:class:`!encodings.idna.IncrementalDecoder` to correctly replace the
'errors' parameter.
..
.. date: 2025-06-02-14-36-28
.. gh-issue: 130662
.. nonce: Gpr2GB
.. section: Library
+Accept leading zeros in precision and width fields for
+:class:`~decimal.Decimal` formatting, for example ``format(Decimal(1.25),
'.016f')``.
..
.. date: 2025-06-02-14-28-30
.. gh-issue: 130662
.. nonce: EIgIR8
.. section: Library
Accept leading zeros in precision and width fields for
:class:`~fractions.Fraction` formatting, for example ``format(Fraction(1,
3), '.016f')``.
..
.. date: 2025-06-01-14-18-48
.. gh-issue: 135004
.. nonce: cq3-fp
.. section: Library
Rewrite and cleanup the internal :mod:`!_blake2` module. Some exception
messages were changed but their types were left untouched. Patch by Bénédikt
Tran.
..
.. date: 2025-06-01-11-14-00
.. gh-issue: 134953
.. nonce: ashdfs
.. section: Library
Expand ``_colorize`` theme with ``keyword_constant`` and implement in
:term:`repl`.
..
.. date: 2025-05-31-15-49-46
.. gh-issue: 134978
.. nonce: mXXuvW
.. section: Library
:mod:`hashlib`: Supporting the ``string`` keyword parameter in hash function
constructors such as :func:`~hashlib.new` or the direct hash-named
constructors such as :func:`~hashlib.md5` and :func:`~hashlib.sha256` is now
deprecated and slated for removal in Python 3.19. Prefer passing the initial
data as a positional argument for maximum backwards compatibility. Patch by
Bénédikt Tran.
..
.. date: 2025-05-31-12-08-12
.. gh-issue: 134970
.. nonce: lgSaxq
.. section: Library
Fix the "unknown action" exception in
:meth:`argparse.ArgumentParser.add_argument_group` to correctly replace the
action class.
..
.. date: 2025-05-30-18-13-48
.. gh-issue: 134718
.. nonce: 5FEspx
.. section: Library
By default, omit optional ``Load()`` values in :func:`ast.dump`.
..
.. date: 2025-05-30-13-07-29
.. gh-issue: 134718
.. nonce: 9Qvhxn
.. section: Library
:func:`ast.dump` now only omits ``None`` and ``[]`` values if they are
default values.
..
.. date: 2025-05-30-09-46-21
.. gh-issue: 134939
.. nonce: Pu3nnm
.. section: Library
Add the :mod:`concurrent.interpreters` module. See :pep:`734`.
..
.. date: 2025-05-29-17-39-13
.. gh-issue: 108885
.. nonce: MegCRA
.. section: Library
Run each example as a subtest in unit tests synthesized by
:func:`doctest.DocFileSuite` and :func:`doctest.DocTestSuite`. Add the
:meth:`doctest.DocTestRunner.report_skip` method.
..
.. date: 2025-05-29-06-53-40
.. gh-issue: 134885
.. nonce: -_L22o
.. section: Library
Fix possible crash in the :mod:`compression.zstd` module related to setting
parameter types. Patch by Jelle Zijlstra.
..
.. date: 2025-05-28-20-49-29
.. gh-issue: 134857
.. nonce: dVYXVO
.. section: Library
Improve error report for :mod:`doctest`\ s run with :mod:`unittest`. Remove
:mod:`!doctest` module frames from tracebacks and redundant newline
character from a failure message.
..
.. date: 2025-05-28-15-53-27
.. gh-issue: 128840
.. nonce: Nur2pB
.. section: Library
Fix parsing long IPv6 addresses with embedded IPv4 address.
..
.. date: 2025-05-27-11-24-38
.. gh-issue: 133579
.. nonce: WGPUC1
.. section: Library
:mod:`curses`: Consistently report failures of curses C API calls in
module-level methods by raising a :exc:`curses.error`. This affects
:func:`~curses.assume_default_colors`, :func:`~curses.baudrate`,
:func:`~curses.cbreak`, :func:`~curses.echo`, :func:`~curses.longname`,
:func:`~curses.initscr`, :func:`~curses.nl`, :func:`~curses.raw`,
:func:`~curses.termattrs`, :func:`~curses.termname` and
:func:`~curses.unctrl`. Patch by Bénédikt Tran.
..
.. date: 2025-05-27-11-18-13
.. gh-issue: 133579
.. nonce: ohtgdC
.. section: Library
:meth:`curses.window.refresh` and :meth:`curses.window.noutrefresh` now
raise a :exc:`TypeError` instead of :exc:`curses.error` when called with an
incorrect number of arguments for :ref:`pads `. Patch by
Bénédikt Tran.
..
.. date: 2025-05-27-11-13-51
.. gh-issue: 133579
.. nonce: KY9M6S
.. section: Library
:ref:`curses.window `: Consistently report failures
of curses C API calls in Window methods by raising a :exc:`curses.error`.
This affects :meth:`~curses.window.addch`, :meth:`~curses.window.addnstr`,
:meth:`~curses.window.addstr`, :meth:`~curses.window.border`,
:meth:`~curses.window.box`, :meth:`~curses.window.chgat`,
:meth:`~curses.window.getbkgd`, :meth:`~curses.window.inch`,
:meth:`~curses.window.insstr` and :meth:`~curses.window.insnstr`. Patch by
Bénédikt Tran.
..
.. date: 2025-05-26-22-18-32
.. gh-issue: 134771
.. nonce: RKXpLT
.. section: Library
The ``time_clockid_converter()`` function now selects correct type for
``clockid_t`` on Cygwin which fixes a build error.
..
.. date: 2025-05-26-17-06-40
.. gh-issue: 134637
.. nonce: 9-3zRL
.. section: Library
Fix performance regression in calling a :mod:`ctypes` function pointer in
:term:`free threading`.
..
.. date: 2025-05-26-14-04-39
.. gh-issue: 134696
.. nonce: P04xUa
.. section: Library
Built-in HACL* and OpenSSL implementations of hash function constructors now
correctly accept the same *documented* named arguments. For instance,
:func:`~hashlib.md5` could be previously invoked as ``md5(data=data)`` or
``md5(string=string)`` depending on the underlying implementation but these
calls were not compatible. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-12-31-08
.. gh-issue: 132710
.. nonce: ApU3TZ
.. section: Library
If possible, ensure that :func:`uuid.getnode` returns the same result even
across different processes. Previously, the result was constant only within
the same process. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-11-01-54
.. gh-issue: 134531
.. nonce: my1Fzt
.. section: Library
:mod:`!_hashlib`: Rename internal C functions for :class:`!_hashlib.HASH`
and :class:`!_hashlib.HASHXOF` objects. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-10-52-27
.. gh-issue: 134698
.. nonce: aJ1mZ1
.. section: Library
Fix a crash when calling methods of :class:`ssl.SSLContext` or
:class:`ssl.SSLSocket` across multiple threads.
..
.. date: 2025-05-25-23-23-05
.. gh-issue: 134151
.. nonce: 13Wwsb
.. section: Library
:mod:`email`: Fix :exc:`TypeError` in :func:`email.utils.decode_params` when
sorting :rfc:`2231` continuations that contain an unnumbered section.
..
.. date: 2025-05-25-13-46-37
.. gh-issue: 134635
.. nonce: ZlPrlX
.. section: Library
:mod:`zlib`: Allow to combine Adler-32 and CRC-32 checksums via
:func:`~zlib.adler32_combine` and :func:`~zlib.crc32_combine`. Patch by
Callum Attryde and Bénédikt Tran.
..
.. date: 2025-05-25-11-02-05
.. gh-issue: 134657
.. nonce: 3YFhR9
.. section: Library
:mod:`asyncio`: Remove some private names from ``asyncio.__all__``.
..
.. date: 2025-05-24-13-10-35
.. gh-issue: 134210
.. nonce: 0IuMY2
.. section: Library
:func:`curses.window.getch` now correctly handles signals. Patch by Bénédikt
Tran.
..
.. date: 2025-05-24-03-10-36
.. gh-issue: 80334
.. nonce: z21cMa
.. section: Library
:func:`multiprocessing.freeze_support` now checks for work on any "spawn"
start method platform rather than only on Windows.
..
.. date: 2025-05-23-23-43-39
.. gh-issue: 134582
.. nonce: 9POq3l
.. section: Library
Fix tokenize.untokenize() round-trip errors related to t-strings braces
escaping
..
.. date: 2025-05-23-20-01-52
.. gh-issue: 134580
.. nonce: xnaJ70
.. section: Library
Improved the styling of HTML diff pages generated by the
:class:`difflib.HtmlDiff` class, and migrated the output to the HTML5
standard.
..
.. date: 2025-05-23-10-15-36
.. gh-issue: 134565
.. nonce: zmb66C
.. section: Library
:func:`unittest.doModuleCleanups` no longer swallows all but first exception
raised in the cleanup code, but raises a :exc:`ExceptionGroup` if multiple
errors occurred.
..
.. date: 2025-05-22-18-14-13
.. gh-issue: 134546
.. nonce: fjLVzK
.. section: Library
Ensure :mod:`pdb` remote debugging script is readable by remote Python
process.
..
.. date: 2025-05-22-14-12-53
.. gh-issue: 134451
.. nonce: M1rD-j
.. section: Library
Converted ``asyncio.tools.CycleFoundException`` from dataclass to a regular
exception type.
..
.. date: 2025-05-22-13-10-32
.. gh-issue: 114177
.. nonce: 3TYUJ3
.. section: Library
Fix :mod:`asyncio` to not close subprocess pipes which would otherwise error
out when the event loop is already closed.
..
.. date: 2025-05-20-21-45-58
.. gh-issue: 90871
.. nonce: Gkvtp6
.. section: Library
Fixed an off by one error concerning the backlog parameter in
:meth:`~asyncio.loop.create_unix_server`. Contributed by Christian Harries.
..
.. date: 2025-05-20-19-16-30
.. gh-issue: 134323
.. nonce: ZQZGvw
.. section: Library
Fix the :meth:`threading.RLock.locked` method.
..
.. date: 2025-05-20-15-13-43
.. gh-issue: 86802
.. nonce: trF7TM
.. section: Library
Fixed asyncio memory leak in cancelled shield tasks. For shielded tasks
where the shield was cancelled, log potential exceptions through the
exception handler. Contributed by Christian Harries.
..
.. date: 2025-05-20-11-51-17
.. gh-issue: 71189
.. nonce: 0LpTB1
.. section: Library
Add support of the all-but-last mode in :func:`os.path.realpath`.
..
.. date: 2025-05-20-11-35-08
.. gh-issue: 72902
.. nonce: jzEI-E
.. section: Library
Improve speed (x1.1-1.8) of the :class:`~fractions.Fraction` constructor for
typical inputs (:class:`float`'s, :class:`~decimal.Decimal`'s or strings).
..
.. date: 2025-05-19-20-59-06
.. gh-issue: 134209
.. nonce: anhTcF
.. section: Library
:mod:`curses`: The :meth:`curses.window.instr` and
:meth:`curses.window.getstr` methods now allocate their internal buffer on
the heap instead of the stack; in addition, the max buffer size is increased
from 1023 to 2047.
..
.. date: 2025-05-19-18-12-42
.. gh-issue: 88994
.. nonce: 7avvVu
.. section: Library
Change :func:`datetime.datetime.now` to half-even rounding for consistency
with :func:`datetime.datetime.fromtimestamp`. Patch by John Keith Hohm.
..
.. date: 2025-05-19-17-27-21
.. gh-issue: 80184
.. nonce: LOkbaw
.. section: Library
The default queue size is now ``socket.SOMAXCONN`` for
:class:`socketserver.TCPServer`.
..
.. date: 2025-05-19-15-30-00
.. gh-issue: 132983
.. nonce: asdsfs
.. section: Library
Add :mod:`!compression.zstd` version information to ``test.pythoninfo``.
..
.. date: 2025-05-19-15-05-24
.. gh-issue: 134235
.. nonce: pz9PwV
.. section: Library
Updated tab completion on REPL to include builtin modules. Contributed by
Tom Wang, Hunter Young
..
.. date: 2025-05-19-10-32-11
.. gh-issue: 134152
.. nonce: INJC2j
.. section: Library
Fixed :exc:`UnboundLocalError` that could occur during :mod:`email` header
parsing if an expected trailing delimiter is missing in some contexts.
..
.. date: 2025-05-18-23-46-21
.. gh-issue: 134152
.. nonce: 30HwbX
.. section: Library
:mod:`email`: Fix parsing of email message ID with invalid domain.
..
.. date: 2025-05-18-13-23-29
.. gh-issue: 134168
.. nonce: hgx3Xg
.. section: Library
:mod:`http.server`: Fix IPv6 address binding and :option:`--directory
` handling when using HTTPS.
..
.. date: 2025-05-18-12-48-39
.. gh-issue: 62184
.. nonce: y11l10
.. section: Library
Remove import of C implementation of :class:`io.FileIO` from Python
implementation which has its own implementation
..
.. date: 2025-05-18-12-23-07
.. gh-issue: 134087
.. nonce: HilZWl
.. section: Library
Remove support for arbitrary positional or keyword arguments in the C
implementation of :class:`threading.RLock` objects. This was deprecated
since Python 3.14. Patch by Bénédikt Tran.
..
.. date: 2025-05-18-07-25-15
.. gh-issue: 134173
.. nonce: 53oOoF
.. section: Library
Speed up :mod:`asyncio` performance of transferring state from thread pool
:class:`concurrent.futures.Future` by up to 4.4x. Patch by J. Nick Koston.
..
.. date: 2025-05-17-20-23-57
.. gh-issue: 133982
.. nonce: smS7au
.. section: Library
Emit :exc:`RuntimeWarning` in the Python implementation of :mod:`io` when
the :term:`file-like object ` is not closed explicitly in the
presence of multiple I/O layers.
..
.. date: 2025-05-17-18-08-35
.. gh-issue: 133890
.. nonce: onn9_X
.. section: Library
The :mod:`tarfile` module now handles :exc:`UnicodeEncodeError` in the same
way as :exc:`OSError` when cannot extract a member.
..
.. date: 2025-05-17-13-46-20
.. gh-issue: 134097
.. nonce: fgkjE1
.. section: Library
Fix interaction of the new :term:`REPL` and :option:`-X showrefcount <-X>`
command line option.
..
.. date: 2025-05-17-12-40-12
.. gh-issue: 133889
.. nonce: Eh-zO4
.. section: Library
The generated directory listing page in
:class:`http.server.SimpleHTTPRequestHandler` now only shows the decoded
path component of the requested URL, and not the query and fragment.
..
.. date: 2025-05-16-20-10-25
.. gh-issue: 134098
.. nonce: YyTkKr
.. section: Library
Fix handling paths that end with a percent-encoded slash (``%2f`` or
``%2F``) in :class:`http.server.SimpleHTTPRequestHandler`.
..
.. date: 2025-05-16-12-40-37
.. gh-issue: 132124
.. nonce: T_5Odx
.. section: Library
On POSIX-compliant systems, :func:`!multiprocessing.util.get_temp_dir` now
ignores :envvar:`TMPDIR` (and similar environment variables) if the path
length of ``AF_UNIX`` socket files exceeds the platform-specific maximum
length when using the :ref:`forkserver
` start method. Patch by Bénédikt
Tran.
..
.. date: 2025-05-15-14-27-01
.. gh-issue: 134062
.. nonce: fRbJet
.. section: Library
:mod:`ipaddress`: fix collisions in :meth:`~object.__hash__` for
:class:`~ipaddress.IPv4Network` and :class:`~ipaddress.IPv6Network` objects.
..
.. date: 2025-05-15-00-27-09
.. gh-issue: 134004
.. nonce: e8k4-R
.. section: Library
:mod:`shelve` as well as underlying :mod:`!dbm.dumb` and :mod:`!dbm.sqlite`
now have :meth:`!reorganize` methods to recover unused free space previously
occupied by deleted entries.
..
.. date: 2025-05-13-18-54-56
.. gh-issue: 133970
.. nonce: 6G-Oi6
.. section: Library
Make :class:`!string.templatelib.Template` and
:class:`!string.templatelib.Interpolation` generic.
..
.. date: 2025-05-13-18-21-59
.. gh-issue: 71253
.. nonce: -3Sf_K
.. section: Library
Raise :exc:`ValueError` in :func:`open` if *opener* returns a negative
file-descriptor in the Python implementation of :mod:`io` to match the C
implementation.
..
.. date: 2025-05-12-20-38-57
.. gh-issue: 133960
.. nonce: Aee79f
.. section: Library
Simplify and improve :func:`typing.evaluate_forward_ref`. It now no longer
raises errors on certain invalid types. In several situations, it is now
able to evaluate forward references that were previously unsupported.
..
.. date: 2025-05-12-06-52-10
.. gh-issue: 133925
.. nonce: elInBY
.. section: Library
Make the private class ``typing._UnionGenericAlias`` hashable.
..
.. date: 2025-05-11-12-56-52
.. gh-issue: 133604
.. nonce: kFxhc8
.. section: Library
Remove :func:`!platform.java_ver` which was deprecated since Python 3.13.
..
.. date: 2025-05-11-11-39-05
.. gh-issue: 133875
.. nonce: pUar3l
.. section: Library
Removed deprecated :meth:`!pathlib.PurePath.is_reserved`. Use
:func:`os.path.isreserved` to detect reserved paths on Windows.
..
.. date: 2025-05-11-10-28-11
.. gh-issue: 133873
.. nonce: H03nov
.. section: Library
Remove the deprecated ``getmark()``, ``setmark()`` and ``getmarkers()``
methods of the :class:`~wave.Wave_read` and :class:`~wave.Wave_write`
classes, which were deprecated since Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-11-10-01-48
.. gh-issue: 133866
.. nonce: g3dHP_
.. section: Library
Remove the undocumented function :func:`!ctypes.SetPointerType`, which has
been deprecated since Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-11-08-48-55
.. gh-issue: 133823
.. nonce: F8udQy
.. section: Library
Remove support for ``TD = TypedDict("TD")`` and ``TD = TypedDict("TD",
None)`` calls for constructing :class:`typing.TypedDict` objects with zero
field. Patch by Bénédikt Tran.
..
.. date: 2025-05-10-17-42-03
.. gh-issue: 125996
.. nonce: vaQp0-
.. section: Library
Fix thread safety of :class:`collections.OrderedDict`. Patch by Kumar
Aditya.
..
.. date: 2025-05-10-12-07-54
.. gh-issue: 133817
.. nonce: 4GMtKV
.. section: Library
Remove support for creating :class:`~typing.NamedTuple` classes via the
undocumented keyword argument syntax. Patch by Bénédikt Tran.
..
.. date: 2025-05-10-12-06-55
.. gh-issue: 133653
.. nonce: Gb2aG4
.. section: Library
Fix :class:`argparse.ArgumentParser` with the *formatter_class* argument.
Fix TypeError when *formatter_class* is a custom subclass of
:class:`!HelpFormatter`. Fix TypeError when *formatter_class* is not a
subclass of :class:`!HelpFormatter` and non-standard *prefix_char* is used.
Fix support of colorizing when *formatter_class* is not a subclass of
:class:`!HelpFormatter`.
..
.. date: 2025-05-10-11-04-47
.. gh-issue: 133810
.. nonce: 03WhnK
.. section: Library
Remove :class:`!http.server.CGIHTTPRequestHandler` and ``--cgi`` flag from
the :program:`python -m http.server` command-line interface. They were
deprecated in Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-09-20-59-24
.. gh-issue: 132641
.. nonce: 3qTw44
.. section: Library
Fixed a race in :func:`functools.lru_cache` under free-threading.
..
.. date: 2025-05-09-19-05-24
.. gh-issue: 133783
.. nonce: 1voCnR
.. section: Library
Fix bug with applying :func:`copy.replace` to :mod:`ast` objects. Attributes
that default to ``None`` were incorrectly treated as required for manually
created AST nodes.
..
.. date: 2025-05-09-18-29-25
.. gh-issue: 133684
.. nonce: Y1DFSt
.. section: Library
Fix bug where :func:`annotationlib.get_annotations` would return the wrong
result for certain classes that are part of a class hierarchy where ``from
__future__ import annotations`` is used.
..
.. date: 2025-05-09-15-50-00
.. gh-issue: 77057
.. nonce: fV8SU-
.. section: Library
Fix handling of invalid markup declarations in
:class:`html.parser.HTMLParser`.
..
.. date: 2025-05-09-09-10-34
.. gh-issue: 130328
.. nonce: s9h4By
.. section: Library
Speedup pasting in ``PyREPL`` on Windows in a legacy console. Patch by Chris
Eibl.
..
.. date: 2025-05-09-08-49-03
.. gh-issue: 133701
.. nonce: KI8tGz
.. section: Library
Fix bug where :class:`typing.TypedDict` classes defined under ``from
__future__ import annotations`` and inheriting from another ``TypedDict``
had an incorrect ``__annotations__`` attribute.
..
.. date: 2025-05-08-20-45-35
.. gh-issue: 133656
.. nonce: cxZODA
.. section: Library
Remove deprecated :meth:`!zipimport.zipimporter.load_module`. Use
:meth:`zipimport.zipimporter.exec_module` instead.
..
.. date: 2025-05-08-20-03-20
.. gh-issue: 133722
.. nonce: 1-B82a
.. section: Library
Added a *color* option to :func:`difflib.unified_diff` that colors output
similar to :program:`git diff`.
..
.. date: 2025-05-08-13-43-19
.. gh-issue: 133489
.. nonce: 9eGS1Z
.. section: Library
:func:`random.getrandbits` can now generate more that 2\ :sup:`31` bits.
:func:`random.randbytes` can now generate more that 256 MiB.
..
.. date: 2025-05-07-22-15-15
.. gh-issue: 133595
.. nonce: c3U88r
.. section: Library
Clean up :class:`sqlite3.Connection` APIs. All parameters of
:func:`sqlite3.connect` except *database* are now keyword-only. The first
three parameters of methods :meth:`~sqlite3.Connection.create_function` and
:meth:`~sqlite3.Connection.create_aggregate` are now positional-only. The
first parameter of methods :meth:`~sqlite3.Connection.set_authorizer`,
:meth:`~sqlite3.Connection.set_progress_handler` and
:meth:`~sqlite3.Connection.set_trace_callback` is now positional-only.
..
.. date: 2025-05-07-19-16-41
.. gh-issue: 133581
.. nonce: kERUCJ
.. section: Library
Improve unparsing of t-strings in :func:`ast.unparse` and ``from __future__
import annotations``. Empty t-strings now round-trip correctly and
formatting in interpolations is preserved. Patch by Jelle Zijlstra.
..
.. date: 2025-05-07-14-36-30
.. gh-issue: 133577
.. nonce: BggPk9
.. section: Library
Add parameter ``formatter`` to :func:`logging.basicConfig`.
..
.. date: 2025-05-07-13-31-06
.. gh-issue: 92897
.. nonce: ubeqGE
.. section: Library
Removed the ``check_home`` parameter from :func:`sysconfig.is_python_build`,
deprecated since Python 3.12.
..
.. date: 2025-05-06-22-54-37
.. gh-issue: 133551
.. nonce: rfy1tJ
.. section: Library
Support t-strings (:pep:`750`) in :mod:`annotationlib`. Patch by Jelle
Zijlstra.
..
.. date: 2025-05-06-14-44-55
.. gh-issue: 133517
.. nonce: Ca6NgW
.. section: Library
Remove :func:`os.listdrives`, :func:`os.listvolumes` and
:func:`os.listmounts` in non Windows desktop builds since the underlying
functionality is missing.
..
.. date: 2025-05-05-22-11-24
.. gh-issue: 133439
.. nonce: LpmyFz
.. section: Library
Fix dot commands with trailing spaces are mistaken for multi-line SQL
statements in the sqlite3 command-line interface.
..
.. date: 2025-05-05-18-50-00
.. gh-issue: 133447
.. nonce: ajshdb
.. section: Library
Add basic color to :mod:`sqlite3` CLI interface.
..
.. date: 2025-05-05-10-41-41
.. gh-issue: 133253
.. nonce: J5-xDD
.. section: Library
Fix thread-safety issues in :mod:`linecache`.
..
.. date: 2025-05-05-03-14-08
.. gh-issue: 133390
.. nonce: AuTggn
.. section: Library
Support keyword completion in the :mod:`sqlite3` command-line interface and
add :data:`sqlite3.SQLITE_KEYWORDS` constant.
..
.. date: 2025-05-04-17-04-55
.. gh-issue: 132493
.. nonce: huirKi
.. section: Library
Avoid accessing ``__annotations__`` unnecessarily in
:func:`inspect.signature`.
..
.. date: 2025-05-01-16-03-11
.. gh-issue: 133017
.. nonce: k7RLQp
.. section: Library
Improve the error message of :func:`multiprocessing.sharedctypes.Array`,
:func:`multiprocessing.sharedctypes.RawArray`,
:func:`multiprocessing.sharedctypes.Value` and
:func:`multiprocessing.sharedctypes.RawValue` when an invalid typecode is
passed. Patch by Tomas Roun
..
.. date: 2025-05-01-10-56-44
.. gh-issue: 132813
.. nonce: rKurvp
.. section: Library
Improve error messages for incorrect types and values of
:class:`csv.Dialect` attributes.
..
.. date: 2025-04-30-19-32-18
.. gh-issue: 132969
.. nonce: EagQ3G
.. section: Library
Prevent the :class:`~concurrent.futures.ProcessPoolExecutor` executor
thread, which remains running when :meth:`shutdown(wait=False)
`, from attempting to adjust the
pool's worker processes after the object state has already been reset during
shutdown. A combination of conditions, including a worker process having
terminated abormally, resulted in an exception and a potential hang when the
still-running executor thread attempted to replace dead workers within the
pool.
..
.. date: 2025-04-29-11-48-46
.. gh-issue: 132876
.. nonce: lyTQGZ
.. section: Library
``ldexp()`` on Windows doesn't round subnormal results before Windows 11,
but should. Python's :func:`math.ldexp` wrapper now does round them, so
results may change slightly, in rare cases of very small results, on Windows
versions before 11.
..
.. date: 2025-04-26-15-50-12
.. gh-issue: 133009
.. nonce: etBuz5
.. section: Library
:mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element.__deepcopy__
` when the element is concurrently mutated. Patch by
Bénédikt Tran.
..
.. date: 2025-04-25-16-06-53
.. gh-issue: 132908
.. nonce: wV5rja
.. section: Library
Add :func:`math.isnormal` and :func:`math.issubnormal` functions. Patch by
Sergey B Kirpichev.
..
.. date: 2025-04-25-11-53-37
.. gh-issue: 95380
.. nonce: 7dvPe-
.. section: Library
:func:`fcntl.fcntl` and :func:`fcntl.ioctl`: Remove the 1024 bytes limit on
the size of not mutated bytes-like argument.
..
.. date: 2025-04-25-11-48-00
.. gh-issue: 122781
.. nonce: ajsdns
.. section: Library
Fix ``%z`` directive in :func:`datetime.datetime.strptime` to allow for no
provided offset as was documented.
..
.. date: 2025-04-22-21-00-23
.. gh-issue: 123471
.. nonce: asOLA2
.. section: Library
Make concurrent iterations over :class:`itertools.combinations` and
:class:`itertools.product` safe under free-threading.
..
.. date: 2025-04-21-01-05-14
.. gh-issue: 127081
.. nonce: Egrpq7
.. section: Library
Fix libc thread safety issues with :mod:`dbm` by performing stateful
operations in critical sections.
..
.. date: 2025-04-21-01-03-15
.. gh-issue: 127081
.. nonce: WXRliX
.. section: Library
Fix libc thread safety issues with :mod:`os` by replacing ``getlogin`` with
``getlogin_r`` re-entrant version.
..
.. date: 2025-04-21-00-58-04
.. gh-issue: 127081
.. nonce: 3DCl92
.. section: Library
Fix libc thread safety issues with :mod:`pwd` by locking access to
``getpwall``.
..
.. date: 2025-04-16-21-02-57
.. gh-issue: 132551
.. nonce: Psa7pL
.. section: Library
Make :class:`io.BytesIO` safe in :term:`free-threaded `
build.
..
.. date: 2025-04-08-07-25-10
.. gh-issue: 107583
.. nonce: JGfbhq
.. section: Library
Fix :class:`!Flag` inversion when flag set has missing values
(:class:`!IntFlag` still flips all bits); fix negative assigned values
during flag creation (both :class:`!Flag` and :class:`!IntFlag` ignore
missing values).
..
.. date: 2025-04-07-10-20-16
.. gh-issue: 87790
.. nonce: X2SjJe
.. section: Library
Support underscore and comma as thousands separators in the fractional part
for :class:`~fractions.Fraction`'s formatting. Patch by Sergey B Kirpichev.
..
.. date: 2025-04-07-09-53-54
.. gh-issue: 87790
.. nonce: 6nj3zQ
.. section: Library
Support underscore and comma as thousands separators in the fractional part
for :class:`~decimal.Decimal`'s formatting. Patch by Sergey B Kirpichev.
..
.. date: 2025-04-07-06-41-54
.. gh-issue: 131884
.. nonce: ym9BJN
.. section: Library
Fix formatting issues in :func:`json.dump` when both *indent* and *skipkeys*
are used.
..
.. date: 2025-03-27-08-13-32
.. gh-issue: 131788
.. nonce: 0RWiFc
.. section: Library
Make ``ResourceTracker.send`` from :mod:`multiprocessing` re-entrant safe
..
.. date: 2025-03-19-12-41-42
.. gh-issue: 91349
.. nonce: 8eTOCP
.. section: Library
Adjust default ``compressionlevel=`` to 6 (down from 9) in :mod:`gzip` and
:mod:`tarfile`. It is the default level used by most compression tools and a
better tradeoff between speed and performance.
..
.. date: 2025-03-17-21-21-06
.. gh-issue: 131146
.. nonce: A5Obgv
.. section: Library
Fix :class:`calendar.TextCalendar`, :class:`calendar.HTMLCalendar`, and the
:mod:`calendar` CLI to display month names in the nominative case by adding
:data:`calendar.standalone_month_name` and
:data:`calendar.standalone_month_abbr`, which provide month names and
abbreviations in the grammatical form used when a month name stands by
itself, if the locale supports it.
..
.. date: 2025-03-13-20-48-58
.. gh-issue: 123471
.. nonce: cM4w4f
.. section: Library
Make concurrent iterations over :class:`itertools.cycle` safe under
free-threading.
..
.. date: 2025-03-11-05-24-14
.. gh-issue: 130664
.. nonce: g0yNMm
.. section: Library
Handle corner-case for :class:`~fractions.Fraction`'s formatting: treat
zero-padding (preceding the width field by a zero (``'0'``) character) as an
equivalent to a fill character of ``'0'`` with an alignment type of ``'='``,
just as in case of :class:`float`'s.
..
.. date: 2025-03-09-03-13-41
.. gh-issue: 130999
.. nonce: tBRBVB
.. section: Library
Avoid exiting the new REPL and offer suggestions even if there are
non-string candidates when errors occur.
..
.. date: 2025-03-08-17-07-00
.. gh-issue: 88473
.. nonce: qg23g8
.. section: Library
Implement a fast path for :class:`datetime.date` objects in
:func:`datetime.date.today` which results in a 5x performance gain while
proper subclasses retain their previous performance.
..
.. date: 2024-11-25-10-22-08
.. gh-issue: 126883
.. nonce: MAEF7g
.. section: Library
Add check that timezone fields are in range for
:meth:`datetime.datetime.fromisoformat` and
:meth:`datetime.time.fromisoformat`. Patch by Semyon Moroz.
..
.. date: 2024-10-28-06-54-22
.. gh-issue: 125028
.. nonce: GEY8Ws
.. section: Library
:data:`functools.Placeholder` cannot be passed to :func:`functools.partial`
as a keyword argument.
..
.. date: 2024-10-22-16-21-55
.. gh-issue: 125843
.. nonce: 2ttzYo
.. section: Library
If possible, indicate which :mod:`curses` C function or macro is responsible
for raising a :exc:`curses.error` exception. Patch by Bénédikt Tran.
..
.. date: 2024-10-17-01-12-22
.. gh-issue: 119109
.. nonce: u4hcvb
.. section: Library
:func:`functools.partial` calls are now faster when keyword arguments are
used.
..
.. date: 2024-09-13-09-48-25
.. gh-issue: 124033
.. nonce: WNudS0
.. section: Library
``SimplePath`` is now presented in ``importlib.metadata.__all__``.
..
.. date: 2024-09-13-09-46-47
.. gh-issue: 91216
.. nonce: LuOsF4
.. section: Library
``importlib.metadata`` now raises a ``KeyError`` instead of returning
``None`` when a key is missing from the metadata.
..
.. date: 2024-09-13-09-43-15
.. gh-issue: 120492
.. nonce: Mm6CJ6
.. section: Library
``importlib.metadata`` now prioritizes valid dists to invalid dists when
retrieving by name.
..
.. date: 2024-07-16-00-01-04
.. gh-issue: 99631
.. nonce: GWD4fD
.. section: Library
The :mod:`shelve` module now accepts custom serialization and
deserialization functions.
..
.. date: 2024-07-06-14-32-30
.. gh-issue: 119186
.. nonce: E5B1HQ
.. section: Library
Slightly speed up :func:`os.walk` by calling :func:`os.path.join` less
often.
..
.. date: 2024-06-06-17-49-07
.. gh-issue: 120170
.. nonce: DUxhmT
.. section: Library
Fix an issue in the :mod:`!_pickle` extension module in which importing
:mod:`multiprocessing` could change how pickle identifies which module an
object belongs to, potentially breaking the unpickling of those objects.
..
.. date: 2024-05-13-09-50-31
.. gh-issue: 118981
.. nonce: zgOQPv
.. section: Library
Fix potential hang in ``multiprocessing.popen_spawn_posix`` that can happen
when the child proc dies early by closing the child fds right away.
..
.. date: 2023-07-05-14-34-10
.. gh-issue: 105497
.. nonce: HU5u89
.. section: Library
Fix flag mask inversion when unnamed flags exist.
..
.. date: 2023-03-13-22-51-40
.. gh-issue: 99813
.. nonce: 40TV02
.. section: Library
:mod:`ssl` now uses ``SSL_sendfile`` internally when it is possible (see
:data:`~ssl.OP_ENABLE_KTLS`). The function sends a file more efficiently
because it performs TLS encryption in the kernel to avoid additional context
switches. Patch by Illia Volochii.
..
.. date: 2023-02-13-21-56-38
.. gh-issue: 62824
.. nonce: CBZzX3
.. section: Library
Fix aliases for ``iso8859_8`` encoding. Patch by Dave Goncalves.
..
.. date: 2023-02-13-21-41-34
.. gh-issue: 86155
.. nonce: ppIGSC
.. section: Library
:meth:`html.parser.HTMLParser.close` no longer loses data when the
``