.. date: 2025-08-06-06-29-12
.. gh-issue: 137450
.. nonce: JZypb7
.. release date: 2025-08-06
.. 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-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-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-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-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-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. ``</script/foo=">"/>``.

* Multiple slashes and whitespaces between the last attribute and closing ``>``
  are now ignored in both start and end tags. E.g. ``<a foo=bar/ //>``.

* Multiple ``=`` between attribute name and value are no longer collapsed.
  E.g. ``<a foo==bar>`` produces attribute "foo" with value "=bar".

..

.. 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-08-05-09-32-00
.. 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-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-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-28-23-11-29
.. gh-issue: 81325
.. nonce: jMJFBe
.. section: Library

:class:`tarfile.TarFile` now accepts a :term:`path-like <path-like object>`
when working on a tar archive. (Contributed by Alexander Enrique Urieles
Nieto in :gh:`81325`.)

..

.. 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-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-11-23-04-39
.. gh-issue: 136549
.. nonce: oAi8u4
.. section: Library

Fix signature of :func:`threading.excepthook`.

..

.. 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-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-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-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-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-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-25-18-16-45
.. gh-issue: 91555
.. nonce: 3cj4M9
.. section: Library

An earlier change, which was introduced in 3.13.4, has been reverted. It
disabled logging for a logger during handling of log messages for that
logger. Since the reversion, the behaviour should be as it was before
3.13.4.

..

.. 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-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-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-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-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-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-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-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`.

..

.. 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-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-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 *forkserver* start method. Patch by Bénédikt Tran.

..

.. 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-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)
<concurrent.futures.Executor.shutdown>`, 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-06-14-34-29
.. gh-issue: 130664
.. nonce: JF2r-U
.. section: Library

Support the ``'_'`` digit separator in formatting of the integral part of
:class:`~decimal.Decimal`'s.  Patch by Sergey B Kirpichev.

..

.. date: 2025-03-16-17-40-00
.. gh-issue: 85702
.. nonce: qudq12
.. section: Library

If ``zoneinfo._common.load_tzdata`` is given a package without a resource a
``ZoneInfoNotFoundError`` is raised rather than a :exc:`IsADirectoryError`.

..

.. 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-06-10-17-02-06
.. gh-issue: 135171
.. nonce: quHvts
.. section: Documentation

Document that the :term:`iterator` for the leftmost :keyword:`!for` clause
in the generator expression is created immediately.

..

.. date: 2025-08-05-17-22-24
.. gh-issue: 58124
.. nonce: q1__53
.. section: Core and Builtins

Fix name of the Python encoding in Unicode errors of the code page codec:
use "cp65000" and "cp65001" instead of "CP_UTF7" and "CP_UTF8" which are not
valid Python code names. Patch by Victor Stinner.

..

.. date: 2025-08-02-23-04-57
.. gh-issue: 137314
.. nonce: wjEdzD
.. section: Core and Builtins

Fixed a regression where raw f-strings incorrectly interpreted escape
sequences in format specifications. Raw f-strings now properly preserve
literal backslashes in format specs, matching the behavior from Python 3.11.
For example, ``rf"{obj:\xFF}"`` now correctly produces ``'\\xFF'`` instead
of ``'ÿ'``. Patch by Pablo Galindo.

..

.. date: 2025-07-11-13-45-48
.. gh-issue: 136541
.. nonce: uZ_-Ju
.. section: Core and Builtins

Fix some issues with the perf trampolines on x86-64 and aarch64.  The
trampolines were not being generated correctly for some cases, which could
lead to the perf integration not working correctly. Patch by Pablo Galindo.

..

.. date: 2025-07-06-14-53-19
.. gh-issue: 109700
.. nonce: KVNQQi
.. section: Core and Builtins

Fix memory error handling in :c:func:`PyDict_SetDefault`.

..

.. date: 2025-06-26-15-25-51
.. gh-issue: 78465
.. nonce: MbDN8X
.. section: Core and Builtins

Fix error message for ``cls.__new__(cls, ...)`` where ``cls`` is not
instantiable builtin or extension type (with ``tp_new`` set to ``NULL``).

..

.. date: 2025-06-23-18-08-32
.. gh-issue: 135871
.. nonce: 50C528
.. section: Core and Builtins

Non-blocking mutex lock attempts now return immediately when the lock is
busy instead of briefly spinning in the :term:`free threading` build.

..

.. date: 2025-06-17-22-34-58
.. gh-issue: 135607
.. nonce: ucsLVu
.. section: Core and Builtins

Fix potential :mod:`weakref` races in an object's destructor on the
:term:`free threaded <free threading>` build.

..

.. date: 2025-06-14-01-01-14
.. gh-issue: 135496
.. nonce: ER0Me3
.. section: Core and Builtins

Fix typo in the f-string conversion type error ("exclamanation" ->
"exclamation").

..

.. date: 2025-06-09-23-57-37
.. gh-issue: 130077
.. nonce: MHknDB
.. section: Core and Builtins

Properly raise custom syntax errors when incorrect syntax containing names
that are prefixes of soft keywords is encountered.  Patch by Pablo Galindo.

..

.. date: 2025-06-06-02-24-42
.. gh-issue: 135148
.. nonce: r-t2sC
.. section: Core and Builtins

Fixed a bug where f-string debug expressions (using =) would incorrectly
strip out parts of strings containing escaped quotes and # characters. Patch
by Pablo Galindo.

..

.. date: 2025-06-03-21-06-22
.. gh-issue: 133136
.. nonce: Usnvri
.. section: Core and Builtins

Limit excess memory usage in the :term:`free threading` build when a large
dictionary or list is resized and accessed by multiple threads.

..

.. date: 2025-05-27-20-29-00
.. gh-issue: 132617
.. nonce: EmUfQQ
.. section: Core and Builtins

Fix :meth:`dict.update` modification check that could incorrectly raise a
"dict mutated during update" error when a different dictionary was modified
that happens to share the same underlying keys object.

..

.. date: 2025-05-17-20-56-05
.. gh-issue: 91153
.. nonce: afgtG2
.. section: Core and Builtins

Fix a crash when a :class:`bytearray` is concurrently mutated during item
assignment.

..

.. date: 2025-04-16-12-01-13
.. gh-issue: 127971
.. nonce: pMDOQ0
.. section: Core and Builtins

Fix off-by-one read beyond the end of a string in string search.

..

.. date: 2024-11-18-12-17-45
.. gh-issue: 125723
.. nonce: tW_hFG
.. section: Core and Builtins

Fix crash with ``gi_frame.f_locals`` when generator frames outlive their
generator. Patch by Mikhail Efimov.

..

.. date: 2025-06-14-10-32-11
.. gh-issue: 135497
.. nonce: ajlV4F
.. section: Build

Fix the detection of ``MAXLOGNAME`` in the ``configure.ac`` script.
