https://github.com/python/cpython/commit/8a8eb0b90d40f0e03f8252e9f73cad156e1caca8
commit: 8a8eb0b90d40f0e03f8252e9f73cad156e1caca8
branch: 3.15
author: Hugo van Kemenade <[email protected]>
committer: hugovk <[email protected]>
date: 2026-10-02T21:51:48+03:00
summary:

Python 3.15.0rc3

files:
A Misc/NEWS.d/3.15.0rc3.rst
D Misc/NEWS.d/next/Build/2026-08-02-12-00-01.gh-issue-152023.pT7dKb.rst
D Misc/NEWS.d/next/Build/2026-09-19-16-54-58.gh-issue-157549.uk6QNH.rst
D Misc/NEWS.d/next/Build/2026-09-29-09-40-25.gh-issue-158010.H4Top_.rst
D Misc/NEWS.d/next/C_API/2026-09-14-18-07-43.gh-issue-140550.fLVOGn.rst
D Misc/NEWS.d/next/C_API/2026-09-29-15-40-41.gh-issue-156939.Y5X3Wm.rst
D Misc/NEWS.d/next/C_API/2026-09-29-21-37-08.gh-issue-156939.P_UD2P.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-06-30-14-50-00.gh-issue-152708.aBcDeF.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-07-27-17-20-49.gh-issue-154719.eI88Gs.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-07-29-08-43-14.gh-issue-151464.o_mtmz.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-08-11-06-04-26.gh-issue-155526.W7ZHXu.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-08-20-22-13-20.gh-issue-156126.pXm4Qr.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-08-23-12-00-00.gh-issue-156114.Kq7fXz.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-08-31-10-45-11.gh-issue-156689.Jq3xNv.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-01-07-15-20.gh-issue-155525.A7kP2m.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-03-15-20-00.gh-issue-156894.Rt9Bx4.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-04-22-00-00.gh-issue-156910.aBcD3f.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-05-17-32-11.gh-issue-156995.Tk3bYt.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-10-08-21-07.gh-issue-157247.Zv4bz2.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-12-22-29-51.gh-issue-157377.O6WYlM.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-10-43-24.gh-issue-156762.Kbf2mo.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-12-46-10.gh-issue-157378.Rg7Tq2.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-16-15-02-11.gh-issue-155695.Kf3xQa.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-18-15-20-00.gh-issue-157757.Kq3Lm7.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-19-12-00-00.gh-issue-157778.fstring-brace.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-22-12-00-00.gh-issue-157838.brcMrg.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-24-17-30-48.gh-issue-157914.5fVJob.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-26-15-39-32.gh-issue-158254.qT7vRk.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-09-28-18-58-27.gh-issue-158364.jBqmTs.rst
D 
Misc/NEWS.d/next/Core_and_Builtins/2026-10-01-20-00-00.gh-issue-158140.small.rst
D Misc/NEWS.d/next/Documentation/2026-09-24-10-10-15.gh-issue-57491.UA-2uN.rst
D Misc/NEWS.d/next/IDLE/2026-07-01-21-00-00.gh-issue-55646.kBind9.rst
D Misc/NEWS.d/next/IDLE/2026-09-15-20-14-08.gh-issue-75234.O8ZNFV.rst
D Misc/NEWS.d/next/IDLE/2026-09-15-22-10-17.gh-issue-93966.ch4fTB.rst
D Misc/NEWS.d/next/IDLE/2026-09-15-23-27-38.gh-issue-69004.Z7Ym9G.rst
D Misc/NEWS.d/next/IDLE/2026-09-16-18-00-00.gh-issue-59568.tilde1.rst
D Misc/NEWS.d/next/IDLE/2026-09-17-01-00-00.gh-issue-89544.rstbuf.rst
D Misc/NEWS.d/next/IDLE/2026-09-17-22-00-00.gh-issue-75512.asyncout.rst
D Misc/NEWS.d/next/IDLE/2026-09-24-12-00-00.gh-issue-158067.opnPy1.rst
D Misc/NEWS.d/next/Library/2026-06-09-19-43-24.gh-issue-151179.hl_6Z0.rst
D Misc/NEWS.d/next/Library/2026-07-08-23-20-00.gh-issue-152907.oyPV9Y.rst
D Misc/NEWS.d/next/Library/2026-07-19-14-00-00.gh-issue-154090.q2kH1b.rst
D Misc/NEWS.d/next/Library/2026-07-21-12-23-48.gh-issue-154335.SRf8Gr.rst
D Misc/NEWS.d/next/Library/2026-07-22-13-39-58.gh-issue-154470.zGcz6K.rst
D Misc/NEWS.d/next/Library/2026-08-03-22-46-07.gh-issue-155143.9-byZp.rst
D Misc/NEWS.d/next/Library/2026-08-09-14-27-23.gh-issue-155418.kCXUIG.rst
D Misc/NEWS.d/next/Library/2026-08-09-16-14-38.gh-issue-155433.KL7tHV.rst
D Misc/NEWS.d/next/Library/2026-08-17-12-07-38.gh-issue-155596.Rt4mZq.rst
D Misc/NEWS.d/next/Library/2026-08-30-13-25-53.gh-issue-156512.tVTOIV.rst
D Misc/NEWS.d/next/Library/2026-08-31-00-00-00.gh-issue-127057.N9yg62.rst
D Misc/NEWS.d/next/Library/2026-09-04-14-15-31.gh-issue-156924.3Ux7IJ.rst
D Misc/NEWS.d/next/Library/2026-09-05-15-27-11.gh-issue-156970.DxlgbB.rst
D Misc/NEWS.d/next/Library/2026-09-05-18-23-30.gh-issue-156988.nEUQE6.rst
D Misc/NEWS.d/next/Library/2026-09-07-00-21-31.gh-issue-156933.OalCjC.rst
D Misc/NEWS.d/next/Library/2026-09-07-12-24-11.gh-issue-157058.2SoQU7.rst
D Misc/NEWS.d/next/Library/2026-09-08-09-30-00.gh-issue-157159.tabNny.rst
D Misc/NEWS.d/next/Library/2026-09-08-13-06-29.gh-issue-156002.vmOC8T.rst
D Misc/NEWS.d/next/Library/2026-09-09-13-46-38.gh-issue-157213.rYg7pO.rst
D Misc/NEWS.d/next/Library/2026-09-11-14-14-51.gh-issue-157301.QxcE2r.rst
D Misc/NEWS.d/next/Library/2026-09-13-07-14-35.gh-issue-128509.9F2GCE.rst
D Misc/NEWS.d/next/Library/2026-09-13-15-58-28.gh-issue-157335.efaMah.rst
D Misc/NEWS.d/next/Library/2026-09-17-03-20-24.gh-issue-157639.VP3kc4.rst
D Misc/NEWS.d/next/Library/2026-09-18-12-00-00.gh-issue-157660.tlbc.rst
D Misc/NEWS.d/next/Library/2026-09-19-14-10-18.gh-issue-157788.v70Lxd.rst
D Misc/NEWS.d/next/Security/2026-08-10-12-00-00.gh-issue-156293.sNIcbk.rst
D Misc/NEWS.d/next/Security/2026-08-14-11-55-00.gh-issue-157579.Kq3Vt2.rst
D Misc/NEWS.d/next/Security/2026-08-31-16-47-33.gh-issue-157953.KxCF5N.rst
D Misc/NEWS.d/next/Security/2026-09-10-13-38-11.gh-issue-157265.-vYuMp.rst
D Misc/NEWS.d/next/Security/2026-09-16-14-05-19.gh-issue-156793.Qa1T5Z.rst
D Misc/NEWS.d/next/Security/2026-09-23-11-34-30.gh-issue-156793.zC_AjF.rst
D Misc/NEWS.d/next/Security/2026-09-29-16-32-46.gh-issue-158446.dToaPr.rst
D Misc/NEWS.d/next/Tests/2026-09-24-10-40-28.gh-issue-158051.B1ZBTA.rst
D Misc/NEWS.d/next/Windows/2026-08-02-12-00-00.gh-issue-152023.wXn4Qs.rst
D Misc/NEWS.d/next/Windows/2026-09-10-02-00-00.gh-issue-157212.x18TEB.rst
D Misc/NEWS.d/next/Windows/2026-09-12-18-59-21.gh-issue-157368.2DirHP.rst
D Misc/NEWS.d/next/Windows/2026-09-29-09-56-14.gh-issue-158010.MPQX4w.rst
D Misc/NEWS.d/next/macOS/2026-08-27-04-10-12.gh-issue-152023.RNIecw.rst
D Misc/NEWS.d/next/macOS/2026-09-29-09-29-17.gh-issue-158010.2zJnoj.rst
M Doc/library/asyncio-eventloop.rst
M Doc/library/asyncio-stream.rst
M Doc/library/ssl.rst
M Include/patchlevel.h
M Lib/pydoc_data/module_docs.py
M Lib/pydoc_data/topics.py
M README.rst

diff --git a/Doc/library/asyncio-eventloop.rst 
b/Doc/library/asyncio-eventloop.rst
index f4bc696d9cd5799..74a4b344714235c 100644
--- a/Doc/library/asyncio-eventloop.rst
+++ b/Doc/library/asyncio-eventloop.rst
@@ -592,7 +592,7 @@ Opening network connections
    .. versionchanged:: 3.12
       *all_errors* was added.
 
-   .. versionchanged:: next
+   .. versionchanged:: 3.15
       Raises a ``ValueError`` if ``ssl.check_hostname`` is ``True``
       and ``server_hostname`` is not supplied.
 
diff --git a/Doc/library/asyncio-stream.rst b/Doc/library/asyncio-stream.rst
index 8472bb6e02e1b1a..d9c8bccd5261a95 100644
--- a/Doc/library/asyncio-stream.rst
+++ b/Doc/library/asyncio-stream.rst
@@ -418,7 +418,7 @@ StreamWriter
       .. versionchanged:: 3.12
          Added the *ssl_shutdown_timeout* parameter.
 
-      .. versionchanged:: next
+      .. versionchanged:: 3.15
          Raises a ``ValueError`` if ``sslcontext.check_hostname`` is ``True``
          and ``server_hostname`` is not supplied.
 
diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst
index 1060d71113a29a6..44d55f6954fa2df 100644
--- a/Doc/library/ssl.rst
+++ b/Doc/library/ssl.rst
@@ -1877,7 +1877,7 @@ to speed up repeated connections from the same clients.
 
    .. versionadded:: 3.7
 
-   .. versionchanged:: next
+   .. versionchanged:: 3.15
       After the callback assigns a new :attr:`SSLSocket.context`, later
       ClientHello messages on the connection are dispatched to the new
       context's *sni_callback*.
@@ -2016,7 +2016,7 @@ to speed up repeated connections from the same clients.
       The method returns an instance of :attr:`SSLContext.sslobject_class`
       instead of hard-coded :class:`SSLObject`.
 
-   .. versionchanged:: next
+   .. versionchanged:: 3.15
       The *server_side*, *server_hostname* and *session* parameters are now
       validated as :meth:`SSLContext.wrap_socket` validates them. Previously
       a context with :attr:`~SSLContext.check_hostname` enabled and no
diff --git a/Include/patchlevel.h b/Include/patchlevel.h
index 7f0c93b84443f09..87ca9bda397c298 100644
--- a/Include/patchlevel.h
+++ b/Include/patchlevel.h
@@ -24,10 +24,10 @@
 #define PY_MINOR_VERSION        15
 #define PY_MICRO_VERSION        0
 #define PY_RELEASE_LEVEL        PY_RELEASE_LEVEL_GAMMA
-#define PY_RELEASE_SERIAL       2
+#define PY_RELEASE_SERIAL       3
 
 /* Version as a string */
-#define PY_VERSION              "3.15.0rc2+dev"
+#define PY_VERSION              "3.15.0rc3"
 /*--end constants--*/
 
 
diff --git a/Lib/pydoc_data/module_docs.py b/Lib/pydoc_data/module_docs.py
index bdca7c8fa1e6e34..5a243634d3c3464 100644
--- a/Lib/pydoc_data/module_docs.py
+++ b/Lib/pydoc_data/module_docs.py
@@ -1,4 +1,4 @@
-# Autogenerated by Sphinx on Tue Sep  1 12:14:28 2026
+# Autogenerated by Sphinx on Fri Oct  2 21:51:43 2026
 # as part of the release process.
 
 module_docs = {
diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py
index b417d2ccf2c7700..16e0bd441f7bf94 100644
--- a/Lib/pydoc_data/topics.py
+++ b/Lib/pydoc_data/topics.py
@@ -1,4 +1,4 @@
-# Autogenerated by Sphinx on Tue Sep  1 12:14:28 2026
+# Autogenerated by Sphinx on Fri Oct  2 21:51:43 2026
 # as part of the release process.
 
 topics = {
@@ -1399,7 +1399,7 @@ class and instance attributes applies as for regular 
assignments.
    "return" statement, the return value is "None".
 
 a built-in function or method:
-   The result is up to the interpreter; see Built-in Functions for the
+   The result is up to the interpreter; see Built-in functions for the
    descriptions of built-in functions and methods.
 
 a class object:
@@ -1968,7 +1968,7 @@ class with multiple inheritance will raise an error if 
one of the
 iterable. The first item provided by the iterator is then assigned to
 the target list using the standard rules for assignments (see
 Assignment statements), and the suite is executed. This repeats for
-each item provided by the iterator. When the iterator is exhausted,
+each item provided by the iterator. When the iterator is *exhausted*,
 the suite in the "else" clause, if present, is executed, and the loop
 terminates.
 
@@ -4917,7 +4917,7 @@ def middle():
       def inner(x):
           1 / x
 
-       out()
+      out()
 
    calling "pdb.pm()" will allow to move between exceptions:
 
@@ -5738,7 +5738,7 @@ class of the instance or a *non-virtual base class* 
thereof. The
 iterable. The first item provided by the iterator is then assigned to
 the target list using the standard rules for assignments (see
 Assignment statements), and the suite is executed. This repeats for
-each item provided by the iterator. When the iterator is exhausted,
+each item provided by the iterator. When the iterator is *exhausted*,
 the suite in the "else" clause, if present, is executed, and the loop
 terminates.
 
@@ -13359,12 +13359,12 @@ def foo():
 Generator functions
 -------------------
 
-A function or method which uses the "yield" statement (see section The
-yield statement) is called a *generator function*.  Such a function,
+A function or method which contains a "yield" expression (see section
+Yield expressions) is called a *generator function*.  Such a function,
 when called, always returns an *iterator* object which can be used to
 execute the body of the function:  calling the iterator’s
 "iterator.__next__()" method will cause the function to execute until
-it provides a value using the "yield" statement.  When the function
+it provides a value using the "yield" expression.  When the function
 executes a "return" statement or falls off the end, a "StopIteration"
 exception is raised and the iterator will have reached the end of the
 set of values to be returned.
@@ -13383,11 +13383,11 @@ def foo():
 Asynchronous generator functions
 --------------------------------
 
-A function or method which is defined using "async def" and which uses
-the "yield" statement is called a *asynchronous generator function*.
-Such a function, when called, returns an *asynchronous iterator*
-object which can be used in an "async for" statement to execute the
-body of the function.
+A function or method which is defined using "async def" and which
+contains a "yield" expression is called a *asynchronous generator
+function*.  Such a function, when called, returns an *asynchronous
+iterator* object which can be used in an "async for" statement to
+execute the body of the function.
 
 Calling the asynchronous iterator’s "aiterator.__anext__" method will
 return an *awaitable* which when awaited will execute until it
@@ -13950,6 +13950,15 @@ class instance has a namespace implemented as a 
dictionary which is
 
+----------------------------------------------------+----------------------------------------------------+
 | codeobject.co_firstlineno                          | The line number of the 
first line of the function  |
 
+----------------------------------------------------+----------------------------------------------------+
+| codeobject.co_linetable                            | A "bytes" object 
containing encoded source         |
+|                                                    | location information. 
The exact format is an       |
+|                                                    | implementation detail 
and may change between       |
+|                                                    | Python versions. Use 
"co_lines()" and              |
+|                                                    | "co_positions()" for 
supported access to line and  |
+|                                                    | position information. 
To create a modified copy of |
+|                                                    | a code object, use 
"replace()".  Added in version  |
+|                                                    | 3.10.                   
                           |
++----------------------------------------------------+----------------------------------------------------+
 | codeobject.co_stacksize                            | The required stack size 
of the code object         |
 
+----------------------------------------------------+----------------------------------------------------+
 | codeobject.co_flags                                | An "integer" encoding a 
number of flags for the    |
diff --git a/Misc/NEWS.d/3.15.0rc3.rst b/Misc/NEWS.d/3.15.0rc3.rst
new file mode 100644
index 000000000000000..d631f498bce18a9
--- /dev/null
+++ b/Misc/NEWS.d/3.15.0rc3.rst
@@ -0,0 +1,833 @@
+.. date: 2026-09-29-16-32-46
+.. gh-issue: 158446
+.. nonce: dToaPr
+.. release date: 2026-10-02
+.. section: Security
+
+Fix a crash or incorrect output that could occur when formatting a
+:class:`float` or :class:`complex` with a precision close to the platform's
+``INT_MAX``.  :c:func:`PyOS_double_to_string` now raises :exc:`ValueError`
+for any precision of that magnitude, regardless of presentation type or
+value, as the format string parsers already did for precisions above
+``INT_MAX``.
+
+..
+
+.. date: 2026-09-23-11-34-30
+.. gh-issue: 156793
+.. nonce: zC_AjF
+.. section: Security
+
+:mod:`asyncio`: :meth:`loop.start_tls() <asyncio.loop.start_tls>` and
+:meth:`loop.create_connection() <asyncio.loop.create_connection>` now
+validate the *server_hostname* argument if an :class:`ssl.SSLContext` is
+passed with *check_hostname* set to ``True``.
+
+..
+
+.. date: 2026-09-16-14-05-19
+.. gh-issue: 156793
+.. nonce: Qa1T5Z
+.. section: Security
+
+:meth:`ssl.SSLContext.wrap_bio` now validates its *server_side*,
+*server_hostname* and *session* arguments similar to
+:meth:`ssl.SSLContext.wrap_socket`.
+
+In particular, a context with :attr:`~ssl.SSLContext.check_hostname` enabled
+and no *server_hostname* passed to :meth:`!wrap_bio` now raises
+:exc:`ValueError` instead of completing a handshake that verified the
+certificate chain without verifying the peer's identity, with no indication
+that the check had been skipped.
+
+..
+
+.. date: 2026-09-10-13-38-11
+.. gh-issue: 157265
+.. nonce: -vYuMp
+.. section: Security
+
+In :mod:`tarfile`, when extracting a link falls back to extracting a member
+of the archive, skip the member when the filter function returns None when
+called with the extracted member's name replaced with the link's.
+
+..
+
+.. date: 2026-08-31-16-47-33
+.. gh-issue: 157953
+.. nonce: KxCF5N
+.. section: Security
+
+Update bundled `libexpat <https://libexpat.github.io/>`_ to version 2.8.5.
+
+..
+
+.. date: 2026-08-14-11-55-00
+.. gh-issue: 157579
+.. nonce: Kq3Vt2
+.. section: Security
+
+Fix a race condition in the cleanup of :class:`tempfile.TemporaryDirectory`.
+When working around file system permission errors, files are now removed
+relative to open directory file descriptors instead of resolving their path
+again, so that replacing a directory of the tree with a symbolic link can no
+longer make the cleanup delete files outside of the temporary directory.
+This addresses :cve:`2026-12345`.
+
+..
+
+.. date: 2026-08-10-12-00-00
+.. gh-issue: 156293
+.. nonce: sNIcbk
+.. section: Security
+
+Fix a crash in :mod:`ssl` when an :attr:`~ssl.SSLContext.sni_callback`
+switches a connection to another :class:`~ssl.SSLContext` and the context
+that carries the callback is no longer referenced by the application.
+Servers that keep their ``sni_callback`` context alive (the usual case when
+it wraps the listening socket or is stored on the server object) were not
+affected. This addresses :cve:`2026-19445`.
+
+..
+
+.. date: 2026-10-01-20-00-00
+.. gh-issue: 158140
+.. nonce: small
+.. section: Core and Builtins
+
+Resolve lazily imported sibling submodules independently, so accessing one
+does not import another merely because its declaration came last.
+
+..
+
+.. date: 2026-09-28-18-58-27
+.. gh-issue: 158364
+.. nonce: jBqmTs
+.. section: Core and Builtins
+
+Fix crash when :func:`sys._current_frames` or
+:func:`sys._current_exceptions` is called while another interpreter is
+running.
+
+..
+
+.. date: 2026-09-26-15-39-32
+.. gh-issue: 158254
+.. nonce: qT7vRk
+.. section: Core and Builtins
+
+Reverse iterators over a :class:`dict` and its views now raise
+:exc:`RuntimeError` if the dictionary's keys change during iteration, like
+forward iterators, instead of yielding entries for the new keys.
+
+..
+
+.. date: 2026-09-24-17-30-48
+.. gh-issue: 157914
+.. nonce: 5fVJob
+.. section: Core and Builtins
+
+Revert :gh:`146064`. The linked PyMutex change was causing a significant
+performance regression in some cases.
+
+..
+
+.. date: 2026-09-22-12-00-00
+.. gh-issue: 157838
+.. nonce: brcMrg
+.. section: Core and Builtins
+
+Merge biased reference counts on behalf of threads that are detached instead
+of waiting for them to attach again, in the free-threaded build.
+
+..
+
+.. date: 2026-09-19-12-00-00
+.. gh-issue: 157778
+.. nonce: fstring-brace
+.. section: Core and Builtins
+
+Include the line number of the opening brace in the :exc:`SyntaxError` for
+an unclosed f-string or t-string replacement field when a matching quote on
+a later line is interpreted as the start of an unterminated string.
+
+..
+
+.. date: 2026-09-18-15-20-00
+.. gh-issue: 157757
+.. nonce: Kq3Lm7
+.. section: Core and Builtins
+
+Fix a lazy ``import a.b as c`` reading ``b`` off ``a`` instead of importing
+the module ``a.b``.  It now binds the submodule, and raises
+:exc:`ModuleNotFoundError` when no module backs the name.
+
+..
+
+.. date: 2026-09-16-15-02-11
+.. gh-issue: 155695
+.. nonce: Kf3xQa
+.. section: Core and Builtins
+
+Resolved names are now removed from :data:`sys.lazy_modules` more
+consistently: a lazy import of an already loaded module is no longer
+recorded, and reifying ``lazy from pkg import attr`` now discards the
+``pkg.attr`` entry.
+
+..
+
+.. date: 2026-09-13-12-46-10
+.. gh-issue: 157378
+.. nonce: Rg7Tq2
+.. section: Core and Builtins
+
+Fix ``SyntaxError.offset`` and ``SyntaxError.end_offset`` for the "Non-UTF-8
+code starting with ..." error when a non-ASCII character precedes the
+invalid byte on the same line. Patch by Shamil Abdulaev.
+
+..
+
+.. date: 2026-09-13-10-43-24
+.. gh-issue: 156762
+.. nonce: Kbf2mo
+.. section: Core and Builtins
+
+Fix undefined behaviour in :class:`operator.methodcaller`: its
+:c:member:`~PyTypeObject.tp_clear` slot function returned ``void`` instead
+of ``int``, so the garbage collector called it through an incompatible
+function type. Patched by Shamil Abdulaev.
+
+..
+
+.. date: 2026-09-12-22-29-51
+.. gh-issue: 157377
+.. nonce: O6WYlM
+.. section: Core and Builtins
+
+Fix :func:`gc.get_count` on the free-threaded build resetting the
+thread-local allocation counter that schedules automatic garbage collection.
+A thread that called it while allocating could prevent cyclic garbage from
+ever being collected.
+
+..
+
+.. date: 2026-09-10-08-21-07
+.. gh-issue: 157247
+.. nonce: Zv4bz2
+.. section: Core and Builtins
+
+Fix :func:`sys.activate_stack_trampoline` allowing activation from a
+subinterpreter while the JIT is enabled in the main interpreter.
+
+..
+
+.. date: 2026-09-05-17-32-11
+.. gh-issue: 156995
+.. nonce: Tk3bYt
+.. section: Core and Builtins
+
+Fix :class:`bytearray` sharing its buffer with the single-byte
+:class:`bytes` object of the same value, so that writing to the bytearray
+modified that :class:`bytes` object. This happened with
+:meth:`bytearray.take_bytes` when exactly one byte remained, and on the
+free-threaded build when a bytearray was shrunk to one byte from another
+thread.
+
+..
+
+.. date: 2026-09-04-22-00-00
+.. gh-issue: 156910
+.. nonce: aBcD3f
+.. section: Core and Builtins
+
+Fix a deadlock in the :term:`free threaded <free threading>` build when
+setting ``__abstractmethods__`` on a type while another thread holds the
+type lock.
+
+..
+
+.. date: 2026-09-03-15-20-00
+.. gh-issue: 156894
+.. nonce: Rt9Bx4
+.. section: Core and Builtins
+
+Fix the position of syntax errors which cover a range if the line contains
+non-ASCII characters before the error.
+
+..
+
+.. date: 2026-09-01-07-15-20
+.. gh-issue: 155525
+.. nonce: A7kP2m
+.. section: Core and Builtins
+
+Fix quadratic-time tokenization of modules containing many f-strings or
+t-strings.
+
+..
+
+.. date: 2026-08-31-10-45-11
+.. gh-issue: 156689
+.. nonce: Jq3xNv
+.. section: Core and Builtins
+
+Fix an out-of-bounds read in :func:`compile` and :func:`ast.parse` when an
+AST object is passed with ``mode='func_type'``.
+
+..
+
+.. date: 2026-08-23-12-00-00
+.. gh-issue: 156114
+.. nonce: Kq7fXz
+.. section: Core and Builtins
+
+Fix a crash in the perf trampoline when a code object has a name or filename
+that cannot be encoded to UTF-8. Patched by Shamil Abdulaev.
+
+..
+
+.. date: 2026-08-20-22-13-20
+.. gh-issue: 156126
+.. nonce: pXm4Qr
+.. section: Core and Builtins
+
+Fix a crash when importing a module whose name contains characters that
+cannot be encoded to UTF-8 (such as lone surrogates) while :option:`-X
+importtime <-X>` is enabled.
+
+..
+
+.. date: 2026-08-11-06-04-26
+.. gh-issue: 155526
+.. nonce: W7ZHXu
+.. section: Core and Builtins
+
+Fix spurious :exc:`OverflowError` for ``abs(nanj)`` in case :c:data:`errno`
+was previously set to :c:macro:`!ERANGE` by some library call. Patch by
+Sergey B Kirpichev.
+
+..
+
+.. date: 2026-07-29-08-43-14
+.. gh-issue: 151464
+.. nonce: o_mtmz
+.. section: Core and Builtins
+
+Exclude invalid token ``<>`` from :mod:`tokenize` output. :exc:`SyntaxError`
+for ``<>`` now suggests ``!=``.
+
+..
+
+.. date: 2026-07-27-17-20-49
+.. gh-issue: 154719
+.. nonce: eI88Gs
+.. section: Core and Builtins
+
+Trailing whitespace in a t-string interpolation expression is now preserved
+in :attr:`string.templatelib.Interpolation.expression`, up to the closing
+``}`` or the conversion (``!``), format (``:``), or debug (``=``) delimiter.
+Explicit line continuations following a debug ``=`` remain part of the debug
+text and are excluded from
+:attr:`~string.templatelib.Interpolation.expression`.
+
+..
+
+.. date: 2026-06-30-14-50-00
+.. gh-issue: 152708
+.. nonce: aBcDeF
+.. section: Core and Builtins
+
+Fix AST generation asymmetry where unary positive ``+`` was implicitly
+dropped in pattern match expressions, restoring parsing parity with unary
+negative ``-``.
+
+..
+
+.. date: 2026-09-19-14-10-18
+.. gh-issue: 157788
+.. nonce: v70Lxd
+.. section: Library
+
+Fix ``python -m asyncio ps`` failing on a process that has a task with a
+name longer than 255 characters.
+
+..
+
+.. date: 2026-09-18-12-00-00
+.. gh-issue: 157660
+.. nonce: tlbc
+.. section: Library
+
+Fix :mod:`profiling.sampling` reporting errors or incorrect line numbers in
+free-threaded builds when a thread-local bytecode array grows or gains
+entries after being cached.
+
+..
+
+.. date: 2026-09-17-03-20-24
+.. gh-issue: 157639
+.. nonce: VP3kc4
+.. section: Library
+
+Fix a crash in :mod:`!cProfile` when an external timer re-enters the
+profiler. Profiling events raised while the external timer runs are now
+ignored.
+
+..
+
+.. date: 2026-09-13-15-58-28
+.. gh-issue: 157335
+.. nonce: efaMah
+.. section: Library
+
+Fix out-of-bounds write in ``mmap.mmap.__setitem__`` that could occur when
+converting the index or the assigned value (via :meth:`~object.__index__`
+for a single item, or via the buffer protocol for a slice) resized or closed
+the mmap object during the assignment.
+
+..
+
+.. date: 2026-09-13-07-14-35
+.. gh-issue: 128509
+.. nonce: 9F2GCE
+.. section: Library
+
+:func:`marshal.load` and :func:`marshal.loads` can now get 1-byte string
+singletons. Patch by Victor Stinner.
+
+..
+
+.. date: 2026-09-11-14-14-51
+.. gh-issue: 157301
+.. nonce: QxcE2r
+.. section: Library
+
+Fix :class:`asyncio.Task` hanging the event loop when an eager start fails
+to enter the task's context.
+
+..
+
+.. date: 2026-09-09-13-46-38
+.. gh-issue: 157213
+.. nonce: rYg7pO
+.. section: Library
+
+Fix :func:`asyncio.gather` leaving stale await-graph edges on children that
+outlive it.
+
+..
+
+.. date: 2026-09-08-13-06-29
+.. gh-issue: 156002
+.. nonce: vmOC8T
+.. section: Library
+
+:mod:`zipfile` again reads members through a third-party decompressor
+installed by monkey-patching the private ``_get_decompressor()`` to return
+an object that only implements old BZ2Decompressor API from Python 3.3. Note
+that decompressors without ``needs_input`` and two-argument ``decompress()``
+are vulnerable to :cve:`2026-15310`.
+
+..
+
+.. date: 2026-09-08-09-30-00
+.. gh-issue: 157159
+.. nonce: tabNny
+.. section: Library
+
+The usage message printed by ``python -m tabnanny`` when no arguments are
+given now suggests ``python -m`` instead of the source file.
+
+..
+
+.. date: 2026-09-07-12-24-11
+.. gh-issue: 157058
+.. nonce: 2SoQU7
+.. section: Library
+
+:func:`asyncio.wait_for` with a non-positive timeout now records the waiter
+in the call graph.
+
+..
+
+.. date: 2026-09-07-00-21-31
+.. gh-issue: 156933
+.. nonce: OalCjC
+.. section: Library
+
+Fix incorrect integer return values from :mod:`ctypes` callbacks on some
+platforms, such as s390x.
+
+..
+
+.. date: 2026-09-05-18-23-30
+.. gh-issue: 156988
+.. nonce: nEUQE6
+.. section: Library
+
+:func:`asyncio.print_call_graph` no longer truncates the call stack at a
+synchronous generator.
+
+..
+
+.. date: 2026-09-05-15-27-11
+.. gh-issue: 156970
+.. nonce: DxlgbB
+.. section: Library
+
+Set the docstring of :attr:`unittest.mock.Mock.return_value`.
+
+..
+
+.. date: 2026-09-04-14-15-31
+.. gh-issue: 156924
+.. nonce: 3Ux7IJ
+.. section: Library
+
+:meth:`annotationlib.ForwardRef.evaluate` now resolves :ref:`lazy import
+<lazy-imports>` proxies found in the namespace. With
+:attr:`~annotationlib.Format.FORWARDREF`, a lazy import that fails to
+resolve now results in a :class:`~annotationlib.ForwardRef` instead of the
+:class:`lazy import proxy <types.LazyImportType>`, and with
+:attr:`~annotationlib.Format.VALUE` the underlying exception is propagated.
+
+..
+
+.. date: 2026-08-31-00-00-00
+.. gh-issue: 127057
+.. nonce: N9yg62
+.. section: Library
+
+Fix :class:`asyncio.ProactorEventLoop` UDP transports so that a
+:exc:`ConnectionResetError` raised by ``WSARecvFrom`` no longer stops the
+read loop.
+
+..
+
+.. date: 2026-08-30-13-25-53
+.. gh-issue: 156512
+.. nonce: tVTOIV
+.. section: Library
+
+Fix :mod:`asyncio` losing a connection twice when ``resume_writing()``
+closes the transport.
+
+..
+
+.. date: 2026-08-17-12-07-38
+.. gh-issue: 155596
+.. nonce: Rt4mZq
+.. section: Library
+
+Fix :func:`pprint.pprint` and :func:`pprint.pformat` with ``expand=True``
+not honouring *width* for nested values.  The width of the ``'key':`` prefix
+was not counted when deciding whether a value fitted on the current line, so
+values under long keys could overflow *width* instead of being expanded.
+
+..
+
+.. date: 2026-08-09-16-14-38
+.. gh-issue: 155433
+.. nonce: KL7tHV
+.. section: Library
+
+Fix :class:`asyncio.TaskGroup` losing outside cancellation after
+``cancel()``.
+
+..
+
+.. date: 2026-08-09-14-27-23
+.. gh-issue: 155418
+.. nonce: kCXUIG
+.. section: Library
+
+Fix :class:`asyncio.TaskGroup` hang when a task created by
+:func:`asyncio.eager_task_factory` cancels the group before suspending.
+
+..
+
+.. date: 2026-08-03-22-46-07
+.. gh-issue: 155143
+.. nonce: 9-byZp
+.. section: Library
+
+Fix :func:`asyncio.shield` leaking the calling task via the await-graph and
+callbacks when called on a future that never resolves.
+
+..
+
+.. date: 2026-07-22-13-39-58
+.. gh-issue: 154470
+.. nonce: zGcz6K
+.. section: Library
+
+Fixed a spurious ``^J`` printed at the end of every source line by the
+``list`` command of :mod:`pdb` when the output is colorized (for example
+when attaching to a running process). The source line is now stripped before
+it is colorized, like the ``where`` command already did.
+
+..
+
+.. date: 2026-07-21-12-23-48
+.. gh-issue: 154335
+.. nonce: SRf8Gr
+.. section: Library
+
+The :mod:`profiling.sampling` profiler now respects ``NO_COLOR``,
+``FORCE_COLOR``, and ``PYTHON_COLORS`` and avoids colored output when not
+writing to a terminal.
+
+..
+
+.. date: 2026-07-19-14-00-00
+.. gh-issue: 154090
+.. nonce: q2kH1b
+.. section: Library
+
+Record the profiling mode in Tachyon binary profiles and reject differential
+comparisons whose known modes do not match.
+
+..
+
+.. date: 2026-07-08-23-20-00
+.. gh-issue: 152907
+.. nonce: oyPV9Y
+.. section: Library
+
+Restore cooked-mode terminal output flags around :c:data:`PyOS_InputHook`
+callbacks in the new :term:`REPL` (:mod:`!_pyrepl`), so that output written
+by an input hook (for example a GUI toolkit event loop) is no longer emitted
+with ``OPOST`` disabled and keeps its carriage returns.
+
+..
+
+.. date: 2026-06-09-19-43-24
+.. gh-issue: 151179
+.. nonce: hl_6Z0
+.. section: Library
+
+Fix a pidfd leak in ``_PidfdChildWatcher`` on Linux: the watcher no longer
+leaks the process file descriptor when ``waitpid()`` fails with an error
+other than :exc:`ChildProcessError`.
+
+..
+
+.. date: 2026-09-24-10-10-15
+.. gh-issue: 57491
+.. nonce: UA-2uN
+.. section: Documentation
+
+Reduce the depth of the table of contents in the EPUB documentation from
+three levels to two, making it much shorter and easier to navigate in e-book
+readers.
+
+..
+
+.. date: 2026-09-24-10-40-28
+.. gh-issue: 158051
+.. nonce: B1ZBTA
+.. section: Tests
+
+The iOS testbed has been updated for compatibilty with Xcode 27.
+
+..
+
+.. date: 2026-09-29-09-40-25
+.. gh-issue: 158010
+.. nonce: H4Top_
+.. section: Build
+
+Update Android and iOS build scripts to use OpenSSL 3.5.9.
+
+..
+
+.. date: 2026-09-19-16-54-58
+.. gh-issue: 157549
+.. nonce: uk6QNH
+.. section: Build
+
+Use ``sysconf(_SC_PAGESIZE)`` instead of ``getpagesize()`` in
+``remote_debug.h`` so ``_remote_debugging`` builds on Darwin with
+``-Werror=implicit-function-declaration``.
+
+..
+
+.. date: 2026-08-02-12-00-01
+.. gh-issue: 152023
+.. nonce: pT7dKb
+.. section: Build
+
+Update Android builds to SQLite 3.53.4. Additionally, enable the
+``median()`` and ``percentile()`` functions.
+
+..
+
+.. date: 2026-09-29-09-56-14
+.. gh-issue: 158010
+.. nonce: MPQX4w
+.. section: Windows
+
+Updated Windows builds to use OpenSSL 3.5.9.
+
+..
+
+.. date: 2026-09-12-18-59-21
+.. gh-issue: 157368
+.. nonce: 2DirHP
+.. section: Windows
+
+Fix truncated :data:`sys.version` in the case of clang-cl versions 22 or
+newer on Windows. Also fixes the Windows on Arm case, where the Microsoft
+compiler was reported instead of clang. Patch by Chris Eibl.
+
+..
+
+.. date: 2026-09-10-02-00-00
+.. gh-issue: 157212
+.. nonce: x18TEB
+.. section: Windows
+
+Fix ``_Py_ThreadId()`` compilation on Windows ARM64 with MinGW toolchains,
+where ``__getReg()`` is unavailable. The TEB address is now read directly
+from ``x18``. Patch by Christian Aurich.
+
+..
+
+.. date: 2026-08-02-12-00-00
+.. gh-issue: 152023
+.. nonce: wXn4Qs
+.. section: Windows
+
+Update Windows builds to SQLite 3.53.4. Additionally, enable the
+``median()`` and ``percentile()`` functions.
+
+..
+
+.. date: 2026-09-29-09-29-17
+.. gh-issue: 158010
+.. nonce: 2zJnoj
+.. section: macOS
+
+Update macOS installer to use OpenSSL 3.5.9.
+
+..
+
+.. date: 2026-08-27-04-10-12
+.. gh-issue: 152023
+.. nonce: RNIecw
+.. section: macOS
+
+Update macOS installer builds to SQLite 3.53.4.
+
+..
+
+.. date: 2026-09-24-12-00-00
+.. gh-issue: 158067
+.. nonce: opnPy1
+.. section: IDLE
+
+Fix the IDLE File Open dialog listing text files before Python files when
+opened from the Shell or an Output window.
+
+..
+
+.. date: 2026-09-17-22-00-00
+.. gh-issue: 75512
+.. nonce: asyncout
+.. section: IDLE
+
+Output from a thread printed in the IDLE Shell while a statement is being
+entered no longer takes over the prompt of the statement.
+
+..
+
+.. date: 2026-09-17-01-00-00
+.. gh-issue: 89544
+.. nonce: rstbuf
+.. section: IDLE
+
+Fix IDLE hanging after Restart Shell while receiving a large output from the
+user process.
+
+..
+
+.. date: 2026-09-16-18-00-00
+.. gh-issue: 59568
+.. nonce: tilde1
+.. section: IDLE
+
+Fix "Save As" and "Open" dialogs in IDLE for a file whose name starts with
+``~`` on Windows and X11 with Tcl/Tk older than 9.
+
+..
+
+.. date: 2026-09-15-23-27-38
+.. gh-issue: 69004
+.. nonce: Z7Ym9G
+.. section: IDLE
+
+The Debugger item of the IDLE Debug menu is now disabled while user code
+runs, like Stack Viewer.
+
+..
+
+.. date: 2026-09-15-22-10-17
+.. gh-issue: 93966
+.. nonce: ch4fTB
+.. section: IDLE
+
+The highlighting of a syntax error in the IDLE Shell is now removed when the
+next statement is entered, not only when the next syntax error occurs.
+
+..
+
+.. date: 2026-09-15-20-14-08
+.. gh-issue: 75234
+.. nonce: O8ZNFV
+.. section: IDLE
+
+Fix editing help sources and key bindings in the IDLE Settings dialog after
+selecting them with the keyboard.
+
+..
+
+.. date: 2026-07-01-21-00-00
+.. gh-issue: 55646
+.. nonce: kBind9
+.. section: IDLE
+
+Fix IDLE crash at startup when the user configuration contains an invalid
+key binding, such as ``<Alt-Key-up>`` instead of ``<Alt-Key-Up>``.  The
+invalid binding is now ignored with a warning.
+
+..
+
+.. date: 2026-09-29-21-37-08
+.. gh-issue: 156939
+.. nonce: P_UD2P
+.. section: C API
+
+Fix :c:func:`PyBytesWriter_FinishWithSize` to return an empty bytearray when
+:c:func:`!_PyBytesWriter_CreateByteArray` is used, instead of returning an
+empty bytes string. Patch by Victor Stinner.
+
+..
+
+.. date: 2026-09-29-15-40-41
+.. gh-issue: 156939
+.. nonce: Y5X3Wm
+.. section: C API
+
+Fix :c:func:`PyBytesWriter_Format` error handling: restore the writer to its
+previous state on error. Patch by Victor Stinner.
+
+..
+
+.. date: 2026-09-14-18-07-43
+.. gh-issue: 140550
+.. nonce: fLVOGn
+.. section: C API
+
+Fix the :c:macro:`PyABIInfo_VAR` macro: remove redundant ``;``. Before,
+``PyABIInfo_VAR(abi_info);`` code added two ``;;`` which is illegal in
+C++03. Patch by Victor Stinner.
diff --git 
a/Misc/NEWS.d/next/Build/2026-08-02-12-00-01.gh-issue-152023.pT7dKb.rst 
b/Misc/NEWS.d/next/Build/2026-08-02-12-00-01.gh-issue-152023.pT7dKb.rst
deleted file mode 100644
index 4d81c66d163a7c2..000000000000000
--- a/Misc/NEWS.d/next/Build/2026-08-02-12-00-01.gh-issue-152023.pT7dKb.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Update Android builds to SQLite 3.53.4. Additionally, enable the ``median()``
-and ``percentile()`` functions.
diff --git 
a/Misc/NEWS.d/next/Build/2026-09-19-16-54-58.gh-issue-157549.uk6QNH.rst 
b/Misc/NEWS.d/next/Build/2026-09-19-16-54-58.gh-issue-157549.uk6QNH.rst
deleted file mode 100644
index eab0335aa671148..000000000000000
--- a/Misc/NEWS.d/next/Build/2026-09-19-16-54-58.gh-issue-157549.uk6QNH.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Use ``sysconf(_SC_PAGESIZE)`` instead of ``getpagesize()`` in
-``remote_debug.h`` so ``_remote_debugging`` builds on Darwin with
-``-Werror=implicit-function-declaration``.
diff --git 
a/Misc/NEWS.d/next/Build/2026-09-29-09-40-25.gh-issue-158010.H4Top_.rst 
b/Misc/NEWS.d/next/Build/2026-09-29-09-40-25.gh-issue-158010.H4Top_.rst
deleted file mode 100644
index 76e81855af90b0c..000000000000000
--- a/Misc/NEWS.d/next/Build/2026-09-29-09-40-25.gh-issue-158010.H4Top_.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update Android and iOS build scripts to use OpenSSL 3.5.9.
diff --git 
a/Misc/NEWS.d/next/C_API/2026-09-14-18-07-43.gh-issue-140550.fLVOGn.rst 
b/Misc/NEWS.d/next/C_API/2026-09-14-18-07-43.gh-issue-140550.fLVOGn.rst
deleted file mode 100644
index 146ea1968a0816e..000000000000000
--- a/Misc/NEWS.d/next/C_API/2026-09-14-18-07-43.gh-issue-140550.fLVOGn.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix the :c:macro:`PyABIInfo_VAR` macro: remove redundant ``;``. Before,
-``PyABIInfo_VAR(abi_info);`` code added two ``;;`` which is illegal in C++03.
-Patch by Victor Stinner.
diff --git 
a/Misc/NEWS.d/next/C_API/2026-09-29-15-40-41.gh-issue-156939.Y5X3Wm.rst 
b/Misc/NEWS.d/next/C_API/2026-09-29-15-40-41.gh-issue-156939.Y5X3Wm.rst
deleted file mode 100644
index 367360ca9a7d81e..000000000000000
--- a/Misc/NEWS.d/next/C_API/2026-09-29-15-40-41.gh-issue-156939.Y5X3Wm.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :c:func:`PyBytesWriter_Format` error handling: restore the writer to its
-previous state on error. Patch by Victor Stinner.
diff --git 
a/Misc/NEWS.d/next/C_API/2026-09-29-21-37-08.gh-issue-156939.P_UD2P.rst 
b/Misc/NEWS.d/next/C_API/2026-09-29-21-37-08.gh-issue-156939.P_UD2P.rst
deleted file mode 100644
index b2bbaa210122fc8..000000000000000
--- a/Misc/NEWS.d/next/C_API/2026-09-29-21-37-08.gh-issue-156939.P_UD2P.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix :c:func:`PyBytesWriter_FinishWithSize` to return an empty bytearray when
-:c:func:`!_PyBytesWriter_CreateByteArray` is used, instead of returning an
-empty bytes string. Patch by Victor Stinner.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-06-30-14-50-00.gh-issue-152708.aBcDeF.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-06-30-14-50-00.gh-issue-152708.aBcDeF.rst
deleted file mode 100644
index edcf99f56ff9071..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-06-30-14-50-00.gh-issue-152708.aBcDeF.rst
+++ /dev/null
@@ -1 +0,0 @@
-Fix AST generation asymmetry where unary positive ``+`` was implicitly dropped 
in pattern match expressions, restoring parsing parity with unary negative 
``-``.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-07-27-17-20-49.gh-issue-154719.eI88Gs.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-07-27-17-20-49.gh-issue-154719.eI88Gs.rst
deleted file mode 100644
index d482a5214bd751f..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-07-27-17-20-49.gh-issue-154719.eI88Gs.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-Trailing whitespace in a t-string interpolation expression is now preserved
-in :attr:`string.templatelib.Interpolation.expression`, up to the closing ``}``
-or the conversion (``!``), format (``:``), or debug (``=``) delimiter.
-Explicit line continuations following a debug ``=`` remain part of the debug
-text and are excluded from 
:attr:`~string.templatelib.Interpolation.expression`.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-07-29-08-43-14.gh-issue-151464.o_mtmz.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-07-29-08-43-14.gh-issue-151464.o_mtmz.rst
deleted file mode 100644
index ba7dbe132540373..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-07-29-08-43-14.gh-issue-151464.o_mtmz.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Exclude invalid token ``<>`` from :mod:`tokenize` output.  :exc:`SyntaxError`
-for ``<>`` now suggests ``!=``.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-11-06-04-26.gh-issue-155526.W7ZHXu.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-08-11-06-04-26.gh-issue-155526.W7ZHXu.rst
deleted file mode 100644
index ae0c08973a8195b..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-11-06-04-26.gh-issue-155526.W7ZHXu.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix spurious :exc:`OverflowError` for ``abs(nanj)`` in case :c:data:`errno` was
-previously set to :c:macro:`!ERANGE` by some library call.
-Patch by Sergey B Kirpichev.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-20-22-13-20.gh-issue-156126.pXm4Qr.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-08-20-22-13-20.gh-issue-156126.pXm4Qr.rst
deleted file mode 100644
index d8cfefb86b06dd2..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-20-22-13-20.gh-issue-156126.pXm4Qr.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a crash when importing a module whose name contains characters that
-cannot be encoded to UTF-8 (such as lone surrogates) while :option:`-X
-importtime <-X>` is enabled.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-23-12-00-00.gh-issue-156114.Kq7fXz.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-08-23-12-00-00.gh-issue-156114.Kq7fXz.rst
deleted file mode 100644
index 096216f7e6c7b3c..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-23-12-00-00.gh-issue-156114.Kq7fXz.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix a crash in the perf trampoline when a code object has a name or filename
-that cannot be encoded to UTF-8. Patched by Shamil Abdulaev.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-31-10-45-11.gh-issue-156689.Jq3xNv.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-08-31-10-45-11.gh-issue-156689.Jq3xNv.rst
deleted file mode 100644
index 868997320b2f7cb..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-08-31-10-45-11.gh-issue-156689.Jq3xNv.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix an out-of-bounds read in :func:`compile` and :func:`ast.parse` when an AST
-object is passed with ``mode='func_type'``.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-01-07-15-20.gh-issue-155525.A7kP2m.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-01-07-15-20.gh-issue-155525.A7kP2m.rst
deleted file mode 100644
index 9da3c38ce4691b1..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-01-07-15-20.gh-issue-155525.A7kP2m.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix quadratic-time tokenization of modules containing many f-strings or
-t-strings.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-03-15-20-00.gh-issue-156894.Rt9Bx4.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-03-15-20-00.gh-issue-156894.Rt9Bx4.rst
deleted file mode 100644
index 9b279ab27947867..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-03-15-20-00.gh-issue-156894.Rt9Bx4.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix the position of syntax errors which cover a range if the line contains
-non-ASCII characters before the error.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-04-22-00-00.gh-issue-156910.aBcD3f.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-04-22-00-00.gh-issue-156910.aBcD3f.rst
deleted file mode 100644
index f717bbe5f16aa96..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-04-22-00-00.gh-issue-156910.aBcD3f.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a deadlock in the :term:`free threaded <free threading>` build when
-setting ``__abstractmethods__`` on a type while another thread holds the
-type lock.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-05-17-32-11.gh-issue-156995.Tk3bYt.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-05-17-32-11.gh-issue-156995.Tk3bYt.rst
deleted file mode 100644
index 8d5970e7f4a3742..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-05-17-32-11.gh-issue-156995.Tk3bYt.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-Fix :class:`bytearray` sharing its buffer with the single-byte :class:`bytes`
-object of the same value, so that writing to the bytearray modified that
-:class:`bytes` object. This happened with :meth:`bytearray.take_bytes` when
-exactly one byte remained, and on the free-threaded build when a bytearray was
-shrunk to one byte from another thread.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-10-08-21-07.gh-issue-157247.Zv4bz2.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-10-08-21-07.gh-issue-157247.Zv4bz2.rst
deleted file mode 100644
index 005132576a134bd..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-10-08-21-07.gh-issue-157247.Zv4bz2.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :func:`sys.activate_stack_trampoline` allowing activation from a
-subinterpreter while the JIT is enabled in the main interpreter.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-12-22-29-51.gh-issue-157377.O6WYlM.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-12-22-29-51.gh-issue-157377.O6WYlM.rst
deleted file mode 100644
index 0e8c5584a316a5c..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-12-22-29-51.gh-issue-157377.O6WYlM.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Fix :func:`gc.get_count` on the free-threaded build resetting the thread-local
-allocation counter that schedules automatic garbage collection. A thread that
-called it while allocating could prevent cyclic garbage from ever being
-collected.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-10-43-24.gh-issue-156762.Kbf2mo.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-10-43-24.gh-issue-156762.Kbf2mo.rst
deleted file mode 100644
index f6f9bb038f4909d..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-10-43-24.gh-issue-156762.Kbf2mo.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Fix undefined behaviour in :class:`operator.methodcaller`: its
-:c:member:`~PyTypeObject.tp_clear` slot function returned ``void`` instead of
-``int``, so the garbage collector called it through an incompatible function
-type. Patched by Shamil Abdulaev.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-12-46-10.gh-issue-157378.Rg7Tq2.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-12-46-10.gh-issue-157378.Rg7Tq2.rst
deleted file mode 100644
index 569642492992d3a..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-13-12-46-10.gh-issue-157378.Rg7Tq2.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix ``SyntaxError.offset`` and ``SyntaxError.end_offset`` for the
-"Non-UTF-8 code starting with ..." error when a non-ASCII character precedes
-the invalid byte on the same line. Patch by Shamil Abdulaev.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-16-15-02-11.gh-issue-155695.Kf3xQa.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-16-15-02-11.gh-issue-155695.Kf3xQa.rst
deleted file mode 100644
index f0e8c7c849be220..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-16-15-02-11.gh-issue-155695.Kf3xQa.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Resolved names are now removed from :data:`sys.lazy_modules` more
-consistently: a lazy import of an already loaded module is no longer recorded,
-and reifying ``lazy from pkg import attr`` now discards the ``pkg.attr`` entry.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-18-15-20-00.gh-issue-157757.Kq3Lm7.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-18-15-20-00.gh-issue-157757.Kq3Lm7.rst
deleted file mode 100644
index bb5377a53cab566..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-18-15-20-00.gh-issue-157757.Kq3Lm7.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a lazy ``import a.b as c`` reading ``b`` off ``a`` instead of importing
-the module ``a.b``.  It now binds the submodule, and raises
-:exc:`ModuleNotFoundError` when no module backs the name.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-19-12-00-00.gh-issue-157778.fstring-brace.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-19-12-00-00.gh-issue-157778.fstring-brace.rst
deleted file mode 100644
index cb1bc8942d1b1b4..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-19-12-00-00.gh-issue-157778.fstring-brace.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Include the line number of the opening brace in the :exc:`SyntaxError` for
-an unclosed f-string or t-string replacement field when a matching quote
-on a later line is interpreted as the start of an unterminated string.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-22-12-00-00.gh-issue-157838.brcMrg.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-22-12-00-00.gh-issue-157838.brcMrg.rst
deleted file mode 100644
index 931bcf99f321464..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-22-12-00-00.gh-issue-157838.brcMrg.rst
+++ /dev/null
@@ -1 +0,0 @@
-Merge biased reference counts on behalf of threads that are detached instead 
of waiting for them to attach again, in the free-threaded build.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-24-17-30-48.gh-issue-157914.5fVJob.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-24-17-30-48.gh-issue-157914.5fVJob.rst
deleted file mode 100644
index b381a568cf14acf..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-24-17-30-48.gh-issue-157914.5fVJob.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Revert :gh:`146064`. The linked PyMutex change was
-causing a significant performance regression in some cases.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-26-15-39-32.gh-issue-158254.qT7vRk.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-26-15-39-32.gh-issue-158254.qT7vRk.rst
deleted file mode 100644
index 21908eea4a8236b..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-26-15-39-32.gh-issue-158254.qT7vRk.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Reverse iterators over a :class:`dict` and its views now raise
-:exc:`RuntimeError` if the dictionary's keys change during iteration, like
-forward iterators, instead of yielding entries for the new keys.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-28-18-58-27.gh-issue-158364.jBqmTs.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-09-28-18-58-27.gh-issue-158364.jBqmTs.rst
deleted file mode 100644
index 14ab4ef12becae6..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-09-28-18-58-27.gh-issue-158364.jBqmTs.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix crash when :func:`sys._current_frames` or
-:func:`sys._current_exceptions` is called while another interpreter is
-running.
diff --git 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-10-01-20-00-00.gh-issue-158140.small.rst
 
b/Misc/NEWS.d/next/Core_and_Builtins/2026-10-01-20-00-00.gh-issue-158140.small.rst
deleted file mode 100644
index b9a0fc5e7a80c78..000000000000000
--- 
a/Misc/NEWS.d/next/Core_and_Builtins/2026-10-01-20-00-00.gh-issue-158140.small.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Resolve lazily imported sibling submodules independently, so accessing one
-does not import another merely because its declaration came last.
diff --git 
a/Misc/NEWS.d/next/Documentation/2026-09-24-10-10-15.gh-issue-57491.UA-2uN.rst 
b/Misc/NEWS.d/next/Documentation/2026-09-24-10-10-15.gh-issue-57491.UA-2uN.rst
deleted file mode 100644
index c7c8057776bec4a..000000000000000
--- 
a/Misc/NEWS.d/next/Documentation/2026-09-24-10-10-15.gh-issue-57491.UA-2uN.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Reduce the depth of the table of contents in the EPUB documentation from
-three levels to two, making it much shorter and easier to navigate in e-book
-readers.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-07-01-21-00-00.gh-issue-55646.kBind9.rst 
b/Misc/NEWS.d/next/IDLE/2026-07-01-21-00-00.gh-issue-55646.kBind9.rst
deleted file mode 100644
index 31e97b3c64bcfee..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-07-01-21-00-00.gh-issue-55646.kBind9.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix IDLE crash at startup when the user configuration contains an invalid key
-binding, such as ``<Alt-Key-up>`` instead of ``<Alt-Key-Up>``.  The invalid
-binding is now ignored with a warning.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-15-20-14-08.gh-issue-75234.O8ZNFV.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-15-20-14-08.gh-issue-75234.O8ZNFV.rst
deleted file mode 100644
index 70d64aa09a6dee4..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-15-20-14-08.gh-issue-75234.O8ZNFV.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix editing help sources and key bindings in the IDLE Settings dialog after
-selecting them with the keyboard.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-15-22-10-17.gh-issue-93966.ch4fTB.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-15-22-10-17.gh-issue-93966.ch4fTB.rst
deleted file mode 100644
index 3260b42211b780b..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-15-22-10-17.gh-issue-93966.ch4fTB.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-The highlighting of a syntax error in the IDLE Shell is now removed when the
-next statement is entered, not only when the next syntax error occurs.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-15-23-27-38.gh-issue-69004.Z7Ym9G.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-15-23-27-38.gh-issue-69004.Z7Ym9G.rst
deleted file mode 100644
index 05d42efd451458e..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-15-23-27-38.gh-issue-69004.Z7Ym9G.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-The Debugger item of the IDLE Debug menu is now disabled while user code
-runs, like Stack Viewer.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-16-18-00-00.gh-issue-59568.tilde1.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-16-18-00-00.gh-issue-59568.tilde1.rst
deleted file mode 100644
index 3eabd4e176ad8a6..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-16-18-00-00.gh-issue-59568.tilde1.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix "Save As" and "Open" dialogs in IDLE for a file whose name starts with
-``~`` on Windows and X11 with Tcl/Tk older than 9.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-17-01-00-00.gh-issue-89544.rstbuf.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-17-01-00-00.gh-issue-89544.rstbuf.rst
deleted file mode 100644
index 4a4c885eff96818..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-17-01-00-00.gh-issue-89544.rstbuf.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix IDLE hanging after Restart Shell while receiving a large output from the
-user process.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-17-22-00-00.gh-issue-75512.asyncout.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-17-22-00-00.gh-issue-75512.asyncout.rst
deleted file mode 100644
index 166cb6971f9b0e2..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-17-22-00-00.gh-issue-75512.asyncout.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Output from a thread printed in the IDLE Shell while a statement is being
-entered no longer takes over the prompt of the statement.
diff --git 
a/Misc/NEWS.d/next/IDLE/2026-09-24-12-00-00.gh-issue-158067.opnPy1.rst 
b/Misc/NEWS.d/next/IDLE/2026-09-24-12-00-00.gh-issue-158067.opnPy1.rst
deleted file mode 100644
index 2e34cf6a67b8274..000000000000000
--- a/Misc/NEWS.d/next/IDLE/2026-09-24-12-00-00.gh-issue-158067.opnPy1.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix the IDLE File Open dialog listing text files before Python files when
-opened from the Shell or an Output window.
diff --git 
a/Misc/NEWS.d/next/Library/2026-06-09-19-43-24.gh-issue-151179.hl_6Z0.rst 
b/Misc/NEWS.d/next/Library/2026-06-09-19-43-24.gh-issue-151179.hl_6Z0.rst
deleted file mode 100644
index 904edf3a8c70908..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-06-09-19-43-24.gh-issue-151179.hl_6Z0.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a pidfd leak in ``_PidfdChildWatcher`` on Linux: the watcher no
-longer leaks the process file descriptor when ``waitpid()`` fails with an
-error other than :exc:`ChildProcessError`.
diff --git 
a/Misc/NEWS.d/next/Library/2026-07-08-23-20-00.gh-issue-152907.oyPV9Y.rst 
b/Misc/NEWS.d/next/Library/2026-07-08-23-20-00.gh-issue-152907.oyPV9Y.rst
deleted file mode 100644
index 33247f0f3a3b968..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-07-08-23-20-00.gh-issue-152907.oyPV9Y.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Restore cooked-mode terminal output flags around :c:data:`PyOS_InputHook`
-callbacks in the new :term:`REPL` (:mod:`!_pyrepl`), so that output written
-by an input hook (for example a GUI toolkit event loop) is no longer emitted
-with ``OPOST`` disabled and keeps its carriage returns.
diff --git 
a/Misc/NEWS.d/next/Library/2026-07-19-14-00-00.gh-issue-154090.q2kH1b.rst 
b/Misc/NEWS.d/next/Library/2026-07-19-14-00-00.gh-issue-154090.q2kH1b.rst
deleted file mode 100644
index f2d2b370241db0b..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-07-19-14-00-00.gh-issue-154090.q2kH1b.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Record the profiling mode in Tachyon binary profiles and reject differential
-comparisons whose known modes do not match.
diff --git 
a/Misc/NEWS.d/next/Library/2026-07-21-12-23-48.gh-issue-154335.SRf8Gr.rst 
b/Misc/NEWS.d/next/Library/2026-07-21-12-23-48.gh-issue-154335.SRf8Gr.rst
deleted file mode 100644
index ffd923294551f2f..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-07-21-12-23-48.gh-issue-154335.SRf8Gr.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-The :mod:`profiling.sampling` profiler now respects ``NO_COLOR``,
-``FORCE_COLOR``, and ``PYTHON_COLORS`` and avoids colored output when
-not writing to a terminal.
diff --git 
a/Misc/NEWS.d/next/Library/2026-07-22-13-39-58.gh-issue-154470.zGcz6K.rst 
b/Misc/NEWS.d/next/Library/2026-07-22-13-39-58.gh-issue-154470.zGcz6K.rst
deleted file mode 100644
index e3d8e3c27cf6389..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-07-22-13-39-58.gh-issue-154470.zGcz6K.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Fixed a spurious ``^J`` printed at the end of every source line by the
-``list`` command of :mod:`pdb` when the output is colorized (for example
-when attaching to a running process). The source line is now stripped before
-it is colorized, like the ``where`` command already did.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-03-22-46-07.gh-issue-155143.9-byZp.rst 
b/Misc/NEWS.d/next/Library/2026-08-03-22-46-07.gh-issue-155143.9-byZp.rst
deleted file mode 100644
index ae39b30e40a643e..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-03-22-46-07.gh-issue-155143.9-byZp.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :func:`asyncio.shield` leaking the calling task via the await-graph and
-callbacks when called on a future that never resolves.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-09-14-27-23.gh-issue-155418.kCXUIG.rst 
b/Misc/NEWS.d/next/Library/2026-08-09-14-27-23.gh-issue-155418.kCXUIG.rst
deleted file mode 100644
index 7fe30ddb1ce8b79..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-09-14-27-23.gh-issue-155418.kCXUIG.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :class:`asyncio.TaskGroup` hang when a task created by
-:func:`asyncio.eager_task_factory` cancels the group before suspending.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-09-16-14-38.gh-issue-155433.KL7tHV.rst 
b/Misc/NEWS.d/next/Library/2026-08-09-16-14-38.gh-issue-155433.KL7tHV.rst
deleted file mode 100644
index dc8961e976abbc2..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-09-16-14-38.gh-issue-155433.KL7tHV.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :class:`asyncio.TaskGroup` losing outside cancellation after
-``cancel()``.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-17-12-07-38.gh-issue-155596.Rt4mZq.rst 
b/Misc/NEWS.d/next/Library/2026-08-17-12-07-38.gh-issue-155596.Rt4mZq.rst
deleted file mode 100644
index cbd8bc838685139..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-17-12-07-38.gh-issue-155596.Rt4mZq.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-Fix :func:`pprint.pprint` and :func:`pprint.pformat` with ``expand=True``
-not honouring *width* for nested values.  The width of the ``'key':``
-prefix was not counted when deciding whether a value fitted on the current
-line, so values under long keys could overflow *width* instead of being
-expanded.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-30-13-25-53.gh-issue-156512.tVTOIV.rst 
b/Misc/NEWS.d/next/Library/2026-08-30-13-25-53.gh-issue-156512.tVTOIV.rst
deleted file mode 100644
index 16d6b7bdeae9859..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-30-13-25-53.gh-issue-156512.tVTOIV.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :mod:`asyncio` losing a connection twice when ``resume_writing()``
-closes the transport.
diff --git 
a/Misc/NEWS.d/next/Library/2026-08-31-00-00-00.gh-issue-127057.N9yg62.rst 
b/Misc/NEWS.d/next/Library/2026-08-31-00-00-00.gh-issue-127057.N9yg62.rst
deleted file mode 100644
index f47da0453249cad..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-08-31-00-00-00.gh-issue-127057.N9yg62.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix :class:`asyncio.ProactorEventLoop` UDP transports so that a
-:exc:`ConnectionResetError` raised by ``WSARecvFrom`` no longer stops the
-read loop.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-04-14-15-31.gh-issue-156924.3Ux7IJ.rst 
b/Misc/NEWS.d/next/Library/2026-09-04-14-15-31.gh-issue-156924.3Ux7IJ.rst
deleted file mode 100644
index 61d0ed69857f3fd..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-04-14-15-31.gh-issue-156924.3Ux7IJ.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-:meth:`annotationlib.ForwardRef.evaluate` now resolves :ref:`lazy import
-<lazy-imports>` proxies found in the namespace. With
-:attr:`~annotationlib.Format.FORWARDREF`, a lazy import that fails to resolve
-now results in a :class:`~annotationlib.ForwardRef` instead of the
-:class:`lazy import proxy <types.LazyImportType>`, and with 
:attr:`~annotationlib.Format.VALUE` the underlying exception is
-propagated.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-05-15-27-11.gh-issue-156970.DxlgbB.rst 
b/Misc/NEWS.d/next/Library/2026-09-05-15-27-11.gh-issue-156970.DxlgbB.rst
deleted file mode 100644
index dd60841efe821c2..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-05-15-27-11.gh-issue-156970.DxlgbB.rst
+++ /dev/null
@@ -1 +0,0 @@
-Set the docstring of :attr:`unittest.mock.Mock.return_value`.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-05-18-23-30.gh-issue-156988.nEUQE6.rst 
b/Misc/NEWS.d/next/Library/2026-09-05-18-23-30.gh-issue-156988.nEUQE6.rst
deleted file mode 100644
index 6cb2f1f4cf14ae0..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-05-18-23-30.gh-issue-156988.nEUQE6.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-:func:`asyncio.print_call_graph` no longer truncates the call stack at a
-synchronous generator.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-07-00-21-31.gh-issue-156933.OalCjC.rst 
b/Misc/NEWS.d/next/Library/2026-09-07-00-21-31.gh-issue-156933.OalCjC.rst
deleted file mode 100644
index afe1dffa96b403d..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-07-00-21-31.gh-issue-156933.OalCjC.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix incorrect integer return values from :mod:`ctypes` callbacks on some
-platforms, such as s390x.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-07-12-24-11.gh-issue-157058.2SoQU7.rst 
b/Misc/NEWS.d/next/Library/2026-09-07-12-24-11.gh-issue-157058.2SoQU7.rst
deleted file mode 100644
index 9122ae0919dcb11..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-07-12-24-11.gh-issue-157058.2SoQU7.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-:func:`asyncio.wait_for` with a non-positive timeout now records the waiter
-in the call graph.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-08-09-30-00.gh-issue-157159.tabNny.rst 
b/Misc/NEWS.d/next/Library/2026-09-08-09-30-00.gh-issue-157159.tabNny.rst
deleted file mode 100644
index 982c4afb43dac11..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-08-09-30-00.gh-issue-157159.tabNny.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-The usage message printed by ``python -m tabnanny`` when no arguments are
-given now suggests ``python -m`` instead of the source file.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-08-13-06-29.gh-issue-156002.vmOC8T.rst 
b/Misc/NEWS.d/next/Library/2026-09-08-13-06-29.gh-issue-156002.vmOC8T.rst
deleted file mode 100644
index a21386803cca0f4..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-08-13-06-29.gh-issue-156002.vmOC8T.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-:mod:`zipfile` again reads members through a third-party decompressor
-installed by monkey-patching the private ``_get_decompressor()`` to return an
-object that only implements old BZ2Decompressor API from Python 3.3.
-Note that decompressors without ``needs_input`` and two-argument
-``decompress()`` are vulnerable to :cve:`2026-15310`.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-09-13-46-38.gh-issue-157213.rYg7pO.rst 
b/Misc/NEWS.d/next/Library/2026-09-09-13-46-38.gh-issue-157213.rYg7pO.rst
deleted file mode 100644
index 801a76c3f3e7ad6..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-09-13-46-38.gh-issue-157213.rYg7pO.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :func:`asyncio.gather` leaving stale await-graph edges on children that
-outlive it.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-11-14-14-51.gh-issue-157301.QxcE2r.rst 
b/Misc/NEWS.d/next/Library/2026-09-11-14-14-51.gh-issue-157301.QxcE2r.rst
deleted file mode 100644
index 9a1d2e435be9066..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-11-14-14-51.gh-issue-157301.QxcE2r.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :class:`asyncio.Task` hanging the event loop when an eager start fails
-to enter the task's context.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-13-07-14-35.gh-issue-128509.9F2GCE.rst 
b/Misc/NEWS.d/next/Library/2026-09-13-07-14-35.gh-issue-128509.9F2GCE.rst
deleted file mode 100644
index 7699242c8c647ea..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-13-07-14-35.gh-issue-128509.9F2GCE.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-:func:`marshal.load` and :func:`marshal.loads` can now get 1-byte string
-singletons. Patch by Victor Stinner.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-13-15-58-28.gh-issue-157335.efaMah.rst 
b/Misc/NEWS.d/next/Library/2026-09-13-15-58-28.gh-issue-157335.efaMah.rst
deleted file mode 100644
index fb0bcad30605640..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-13-15-58-28.gh-issue-157335.efaMah.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-Fix out-of-bounds write in ``mmap.mmap.__setitem__`` that could occur
-when converting the index or the assigned value (via :meth:`~object.__index__`
-for a single item, or via the buffer protocol for a slice) resized or closed 
the mmap
-object during the assignment.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-17-03-20-24.gh-issue-157639.VP3kc4.rst 
b/Misc/NEWS.d/next/Library/2026-09-17-03-20-24.gh-issue-157639.VP3kc4.rst
deleted file mode 100644
index de1fd1286d7a574..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-17-03-20-24.gh-issue-157639.VP3kc4.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a crash in :mod:`!cProfile` when an external timer re-enters the
-profiler. Profiling events raised while the external timer runs are now
-ignored.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-18-12-00-00.gh-issue-157660.tlbc.rst 
b/Misc/NEWS.d/next/Library/2026-09-18-12-00-00.gh-issue-157660.tlbc.rst
deleted file mode 100644
index d43d5f2e5ede06e..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-18-12-00-00.gh-issue-157660.tlbc.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :mod:`profiling.sampling` reporting errors or incorrect line numbers in 
free-threaded
-builds when a thread-local bytecode array grows or gains entries after being 
cached.
diff --git 
a/Misc/NEWS.d/next/Library/2026-09-19-14-10-18.gh-issue-157788.v70Lxd.rst 
b/Misc/NEWS.d/next/Library/2026-09-19-14-10-18.gh-issue-157788.v70Lxd.rst
deleted file mode 100644
index 641ca0a82a0915e..000000000000000
--- a/Misc/NEWS.d/next/Library/2026-09-19-14-10-18.gh-issue-157788.v70Lxd.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix ``python -m asyncio ps`` failing on a process that has a task with a
-name longer than 255 characters.
diff --git 
a/Misc/NEWS.d/next/Security/2026-08-10-12-00-00.gh-issue-156293.sNIcbk.rst 
b/Misc/NEWS.d/next/Security/2026-08-10-12-00-00.gh-issue-156293.sNIcbk.rst
deleted file mode 100644
index 0cc620b3fdca205..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-08-10-12-00-00.gh-issue-156293.sNIcbk.rst
+++ /dev/null
@@ -1,7 +0,0 @@
-Fix a crash in :mod:`ssl` when an :attr:`~ssl.SSLContext.sni_callback`
-switches a connection to another :class:`~ssl.SSLContext` and the context
-that carries the callback is no longer referenced by the application.
-Servers that keep their ``sni_callback`` context alive (the usual case when
-it wraps the listening socket or is stored on the server object) were not
-affected.
-This addresses :cve:`2026-19445`.
diff --git 
a/Misc/NEWS.d/next/Security/2026-08-14-11-55-00.gh-issue-157579.Kq3Vt2.rst 
b/Misc/NEWS.d/next/Security/2026-08-14-11-55-00.gh-issue-157579.Kq3Vt2.rst
deleted file mode 100644
index 46e87575dba9839..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-08-14-11-55-00.gh-issue-157579.Kq3Vt2.rst
+++ /dev/null
@@ -1,6 +0,0 @@
-Fix a race condition in the cleanup of :class:`tempfile.TemporaryDirectory`.
-When working around file system permission errors, files are now removed
-relative to open directory file descriptors instead of resolving their path
-again, so that replacing a directory of the tree with a symbolic link can no
-longer make the cleanup delete files outside of the temporary directory.
-This addresses :cve:`2026-12345`.
diff --git 
a/Misc/NEWS.d/next/Security/2026-08-31-16-47-33.gh-issue-157953.KxCF5N.rst 
b/Misc/NEWS.d/next/Security/2026-08-31-16-47-33.gh-issue-157953.KxCF5N.rst
deleted file mode 100644
index 5b3ea77cb368632..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-08-31-16-47-33.gh-issue-157953.KxCF5N.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update bundled `libexpat <https://libexpat.github.io/>`_ to version 2.8.5.
diff --git 
a/Misc/NEWS.d/next/Security/2026-09-10-13-38-11.gh-issue-157265.-vYuMp.rst 
b/Misc/NEWS.d/next/Security/2026-09-10-13-38-11.gh-issue-157265.-vYuMp.rst
deleted file mode 100644
index ba27e47f734bfb1..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-09-10-13-38-11.gh-issue-157265.-vYuMp.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-In :mod:`tarfile`, when extracting a link falls back to extracting a member
-of the archive, skip the member when the filter function returns None when
-called with the extracted member's name replaced with the link's.
diff --git 
a/Misc/NEWS.d/next/Security/2026-09-16-14-05-19.gh-issue-156793.Qa1T5Z.rst 
b/Misc/NEWS.d/next/Security/2026-09-16-14-05-19.gh-issue-156793.Qa1T5Z.rst
deleted file mode 100644
index 2a521dbc9dc4e68..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-09-16-14-05-19.gh-issue-156793.Qa1T5Z.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-:meth:`ssl.SSLContext.wrap_bio` now validates its *server_side*,
-*server_hostname* and *session* arguments similar to
-:meth:`ssl.SSLContext.wrap_socket`.
-
-In particular, a context with :attr:`~ssl.SSLContext.check_hostname` enabled
-and no *server_hostname* passed to :meth:`!wrap_bio` now raises 
:exc:`ValueError`
-instead of completing a handshake that verified the certificate chain
-without verifying the peer's identity, with no indication that the
-check had been skipped.
diff --git 
a/Misc/NEWS.d/next/Security/2026-09-23-11-34-30.gh-issue-156793.zC_AjF.rst 
b/Misc/NEWS.d/next/Security/2026-09-23-11-34-30.gh-issue-156793.zC_AjF.rst
deleted file mode 100644
index 42a31b3c28f5ce1..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-09-23-11-34-30.gh-issue-156793.zC_AjF.rst
+++ /dev/null
@@ -1,4 +0,0 @@
-:mod:`asyncio`: :meth:`loop.start_tls() <asyncio.loop.start_tls>` and
-:meth:`loop.create_connection() <asyncio.loop.create_connection>` now
-validate the *server_hostname* argument if an :class:`ssl.SSLContext` is
-passed with *check_hostname* set to ``True``.
diff --git 
a/Misc/NEWS.d/next/Security/2026-09-29-16-32-46.gh-issue-158446.dToaPr.rst 
b/Misc/NEWS.d/next/Security/2026-09-29-16-32-46.gh-issue-158446.dToaPr.rst
deleted file mode 100644
index f17a3f68b93e855..000000000000000
--- a/Misc/NEWS.d/next/Security/2026-09-29-16-32-46.gh-issue-158446.dToaPr.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-Fix a crash or incorrect output that could occur when formatting a
-:class:`float` or :class:`complex` with a precision close to the platform's
-``INT_MAX``.  :c:func:`PyOS_double_to_string` now raises :exc:`ValueError` for
-any precision of that magnitude, regardless of presentation type or value, as
-the format string parsers already did for precisions above ``INT_MAX``.
diff --git 
a/Misc/NEWS.d/next/Tests/2026-09-24-10-40-28.gh-issue-158051.B1ZBTA.rst 
b/Misc/NEWS.d/next/Tests/2026-09-24-10-40-28.gh-issue-158051.B1ZBTA.rst
deleted file mode 100644
index 202fb12086210c7..000000000000000
--- a/Misc/NEWS.d/next/Tests/2026-09-24-10-40-28.gh-issue-158051.B1ZBTA.rst
+++ /dev/null
@@ -1 +0,0 @@
-The iOS testbed has been updated for compatibilty with Xcode 27.
diff --git 
a/Misc/NEWS.d/next/Windows/2026-08-02-12-00-00.gh-issue-152023.wXn4Qs.rst 
b/Misc/NEWS.d/next/Windows/2026-08-02-12-00-00.gh-issue-152023.wXn4Qs.rst
deleted file mode 100644
index 9e12f2d22173f56..000000000000000
--- a/Misc/NEWS.d/next/Windows/2026-08-02-12-00-00.gh-issue-152023.wXn4Qs.rst
+++ /dev/null
@@ -1,2 +0,0 @@
-Update Windows builds to SQLite 3.53.4. Additionally, enable the ``median()``
-and ``percentile()`` functions.
diff --git 
a/Misc/NEWS.d/next/Windows/2026-09-10-02-00-00.gh-issue-157212.x18TEB.rst 
b/Misc/NEWS.d/next/Windows/2026-09-10-02-00-00.gh-issue-157212.x18TEB.rst
deleted file mode 100644
index 8d0970516242f93..000000000000000
--- a/Misc/NEWS.d/next/Windows/2026-09-10-02-00-00.gh-issue-157212.x18TEB.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix ``_Py_ThreadId()`` compilation on Windows ARM64 with MinGW toolchains,
-where ``__getReg()`` is unavailable. The TEB address is now read directly
-from ``x18``. Patch by Christian Aurich.
diff --git 
a/Misc/NEWS.d/next/Windows/2026-09-12-18-59-21.gh-issue-157368.2DirHP.rst 
b/Misc/NEWS.d/next/Windows/2026-09-12-18-59-21.gh-issue-157368.2DirHP.rst
deleted file mode 100644
index 72e11bfe2b15384..000000000000000
--- a/Misc/NEWS.d/next/Windows/2026-09-12-18-59-21.gh-issue-157368.2DirHP.rst
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix truncated :data:`sys.version` in the case of clang-cl versions 22 or newer
-on Windows. Also fixes the Windows on Arm case, where the Microsoft
-compiler was reported instead of clang. Patch by Chris Eibl.
diff --git 
a/Misc/NEWS.d/next/Windows/2026-09-29-09-56-14.gh-issue-158010.MPQX4w.rst 
b/Misc/NEWS.d/next/Windows/2026-09-29-09-56-14.gh-issue-158010.MPQX4w.rst
deleted file mode 100644
index 827173387f8e8af..000000000000000
--- a/Misc/NEWS.d/next/Windows/2026-09-29-09-56-14.gh-issue-158010.MPQX4w.rst
+++ /dev/null
@@ -1 +0,0 @@
-Updated Windows builds to use OpenSSL 3.5.9.
diff --git 
a/Misc/NEWS.d/next/macOS/2026-08-27-04-10-12.gh-issue-152023.RNIecw.rst 
b/Misc/NEWS.d/next/macOS/2026-08-27-04-10-12.gh-issue-152023.RNIecw.rst
deleted file mode 100644
index 32267c623f6e104..000000000000000
--- a/Misc/NEWS.d/next/macOS/2026-08-27-04-10-12.gh-issue-152023.RNIecw.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update macOS installer builds to SQLite 3.53.4.
diff --git 
a/Misc/NEWS.d/next/macOS/2026-09-29-09-29-17.gh-issue-158010.2zJnoj.rst 
b/Misc/NEWS.d/next/macOS/2026-09-29-09-29-17.gh-issue-158010.2zJnoj.rst
deleted file mode 100644
index cf9c417eec7fe6d..000000000000000
--- a/Misc/NEWS.d/next/macOS/2026-09-29-09-29-17.gh-issue-158010.2zJnoj.rst
+++ /dev/null
@@ -1 +0,0 @@
-Update macOS installer to use OpenSSL 3.5.9.
diff --git a/README.rst b/README.rst
index 2606cfff5360c0d..5520f4fad01beae 100644
--- a/README.rst
+++ b/README.rst
@@ -1,5 +1,5 @@
-This is Python version 3.15.0 release candidate 2+dev
-=====================================================
+This is Python version 3.15.0 release candidate 3
+=================================================
 
 .. image:: 
https://github.com/python/cpython/actions/workflows/build.yml/badge.svg?branch=main&event=push
    :alt: CPython build status on GitHub Actions

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to