Misc/NEWS.d/3.15.0a1.rst
.. date: 2025-10-14-00-17-48 .. gh-issue: 115119 .. nonce: 470I1N .. release date: 2025-10-14 .. section: macOS
Update macOS installer to use libmpdecimal 4.0.1.
..
.. date: 2025-10-14-00-08-16 .. gh-issue: 124111 .. nonce: 7-j-DQ .. section: macOS
Update macOS installer to use Tcl/Tk 9.0.2.
..
.. date: 2025-10-13-23-46-12 .. gh-issue: 132339 .. nonce: kAp603 .. section: macOS
Update macOS installer version of OpenSSL to 3.5.4.
..
.. date: 2025-08-06-06-29-12 .. gh-issue: 137450 .. nonce: JZypb7 .. section: macOS
macOS installer shell path management improvements: separate the installer
Shell profile updater postinstall script from the Update Shell Profile.command to enable more robust error handling.
..
.. date: 2025-07-27-02-17-40 .. gh-issue: 137134 .. nonce: pjgITs .. section: macOS
Update macOS installer to ship with SQLite version 3.50.4.
..
.. date: 2025-10-08-22-54-38 .. gh-issue: 139810 .. nonce: LAaemi .. section: Windows
Installing with py install 3[.x]-dev will now select final versions as
well as prereleases.
..
.. date: 2025-10-04-12-18-45 .. gh-issue: 139573 .. nonce: EO9kVB .. section: Windows
Updated bundled version of OpenSSL to 3.0.18.
..
.. date: 2025-09-15-15-34-29 .. gh-issue: 138896 .. nonce: lkiF_7 .. section: Windows
Fix error installing C runtime on non-updated Windows machines
..
.. date: 2025-09-03-01-07-44 .. gh-issue: 138314 .. nonce: IeWQ2i .. section: Windows
Add :func:winreg.DeleteTree.
..
.. date: 2025-07-27-14-25-11 .. gh-issue: 137136 .. nonce: xNthFT .. section: Windows
Suppress build warnings when build on Windows with
--experimental-jit-interpreter.
..
.. date: 2025-07-27-02-16-53 .. gh-issue: 137134 .. nonce: W0WpDF .. section: Windows
Update Windows installer to ship with SQLite 3.50.4.
..
.. date: 2025-06-03-18-26-54 .. gh-issue: 135099 .. nonce: Q9usKm .. section: Windows
Fix a crash that could occur on Windows when a background thread waits on a
:c:type:PyMutex while the main thread is shutting down the interpreter.
..
.. date: 2025-05-20-21-43-20 .. gh-issue: 130727 .. nonce: -69t4D .. section: Windows
Fix a race in internal calls into WMI that can result in an "invalid handle" exception under high load. Patch by Chris Eibl.
..
.. date: 2025-05-19-03-02-04 .. gh-issue: 76023 .. nonce: vHOf6M .. section: Windows
Make :func:os.path.realpath ignore Windows error 1005 when in non-strict
mode.
..
.. date: 2025-05-13-13-25-27 .. gh-issue: 133779 .. nonce: -YcTBz .. section: Windows
Reverts the change to generate different :file:pyconfig.h files based on
compiler settings, as it was frequently causing extension builds to break.
In particular, the Py_GIL_DISABLED preprocessor variable must now always
be defined explicitly when compiling for the experimental free-threaded
runtime. The :func:sysconfig.get_config_var function can be used to
determine whether the current runtime was compiled with that flag or not.
..
.. date: 2025-05-08-19-07-26 .. gh-issue: 133626 .. nonce: yFTKYK .. section: Windows
Ensures packages are not accidentally bundled into the traditional installer.
..
.. date: 2025-05-07-13-04-22 .. gh-issue: 133580 .. nonce: jBMujJ .. section: Windows
Fix :func:sys.getwindowsversion failing without setting an exception when
called on some WinAPI partitions.
..
.. date: 2025-05-07-11-45-30 .. gh-issue: 133572 .. nonce: Xc2zxH .. section: Windows
Avoid LsaNtStatus to WinError conversion on unsupported WinAPI partitions.
..
.. date: 2025-05-07-11-25-29 .. gh-issue: 133568 .. nonce: oYV0d8 .. section: Windows
Fix compile error when using a WinAPI partition that doesn't support the RPC runtime library.
..
.. date: 2025-05-07-09-02-19 .. gh-issue: 133562 .. nonce: lqqNW1 .. section: Windows
Disable handling of security descriptors by :func:os.mkdir with mode
0o700 on WinAPI partitions that do not support it. This only affects
custom builds for specialized targets.
..
.. date: 2025-05-07-08-19-15 .. gh-issue: 133537 .. nonce: yzf963 .. section: Windows
Avoid using console I/O in WinAPI partitions that don’t support it
..
.. date: 2025-03-31-15-37-57 .. gh-issue: 131942 .. nonce: jip_aL .. section: Windows
Use the Python-specific :c:macro:Py_DEBUG macro rather than
:c:macro:!_DEBUG in Windows-related C code. Patch by Xuehai Pan.
..
.. date: 2025-09-25-10-31-02 .. gh-issue: 139330 .. nonce: 5WWkY0 .. section: Tools/Demos
SBOM generation tool didn't cross-check the version and checksum values
against the Modules/expat/refresh.sh script, leading to the values
becoming out-of-date during routine updates.
..
.. date: 2025-08-28-06-22-26 .. gh-issue: 132006 .. nonce: eZQmc6 .. section: Tools/Demos
XCframeworks now include privacy manifests to satisfy Apple App Store submission requirements.
..
.. date: 2025-08-27-11-14-53 .. gh-issue: 138171 .. nonce: Suz8ob .. section: Tools/Demos
A script for building an iOS XCframework was added. As part of this change,
the top level iOS folder has been moved to be a subdirectory of the
Apple folder.
..
.. date: 2025-08-21-14-04-50 .. gh-issue: 137873 .. nonce: qxffLt .. section: Tools/Demos
The iOS test runner has been simplified, resolving some issues that have been observed using the runner in GitHub Actions and Azure Pipelines test environments.
..
.. date: 2025-08-06-11-54-55 .. gh-issue: 137484 .. nonce: 8iFAQs .. section: Tools/Demos
Have Tools/wasm/wasi put the build Python into a directory named after
the build triple instead of "build".
..
.. date: 2025-08-01-13-27-43 .. gh-issue: 137025 .. nonce: ubuhQC .. section: Tools/Demos
The wasm_build.py script has been removed. Tools/wasm/emscripten
and Tools/wasm/wasi should be used instead, as described in the Dev Guide <https://devguide.python.org/contrib/workflows/compile/>__.
..
.. date: 2025-07-30-11-15-47 .. gh-issue: 137248 .. nonce: 8IxwY3 .. section: Tools/Demos
Add a --logdir option to Tools/wasm/wasi for specifying where to
write log files.
..
.. date: 2025-07-30-10-28-35 .. gh-issue: 137243 .. nonce: NkdUqH .. section: Tools/Demos
Have Tools/wasm/wasi detect a WASI SDK install in /opt when it was directly extracted from a release tarball.
..
.. date: 2025-07-05-15-10-42 .. gh-issue: 136251 .. nonce: GRM6o8 .. section: Tools/Demos
Fixes and usability improvements for Tools/wasm/emscripten/web_example
..
.. date: 2025-06-26-15-58-13 .. gh-issue: 135968 .. nonce: C4v_-W .. section: Tools/Demos
Stubs for strip are now provided as part of an iOS install.
..
.. date: 2025-06-11-12-14-06 .. gh-issue: 135379 .. nonce: 25ttXq .. section: Tools/Demos
The cases generator no longer accepts type annotations on stack items. Conversions to non-default types are now done explicitly in bytecodes.c and optimizer_bytecodes.c. This will simplify code generation for top-of-stack caching and other future features.
..
.. date: 2025-05-19-14-57-46 .. gh-issue: 134215 .. nonce: sbdDK6 .. section: Tools/Demos
:term:REPL import autocomplete only suggests private modules when
explicitly specified.
..
.. date: 2025-09-22-15-40-09 .. gh-issue: 139208 .. nonce: Tc13dl .. section: Tests
Fix regrtest --fast-ci --verbose: don't ignore the --verbose option
anymore. Patch by Victor Stinner.
..
.. date: 2025-09-21-16-00-30 .. gh-issue: 138313 .. nonce: lBx2en .. section: Tests
Restore skipped test and add janky workaround to prevent select buildbots from failing with a ResourceWarning.
..
.. date: 2025-06-26-15-15-35 .. gh-issue: 135966 .. nonce: EBpF8Y .. section: Tests
The iOS testbed now handles the app_packages folder as a site directory.
..
.. date: 2025-06-19-15-29-38 .. gh-issue: 135494 .. nonce: FVl9a0 .. section: Tests
Fix regrtest to support excluding tests from --pgo tests. Patch by
Victor Stinner.
..
.. date: 2025-06-17-08-48-08 .. gh-issue: 132815 .. nonce: CY1Esu .. section: Tests
Fix test__opcode: add JUMP_BACKWARD to specialization stats.
..
.. date: 2025-06-14-13-20-17 .. gh-issue: 135489 .. nonce: Uh0yVO .. section: Tests
Show verbose output for failing tests during PGO profiling step with --enable-optimizations.
..
.. date: 2025-06-11-16-52-49 .. gh-issue: 135401 .. nonce: ccMXmL .. section: Tests
Add a new GitHub CI job to test the :mod:ssl module with AWS-LC <https://github.com/aws/aws-lc>_ as the backing cryptography and TLS
library.
..
.. date: 2025-06-04-13-07-44 .. gh-issue: 135120 .. nonce: NapnZT .. section: Tests
Add :func:!test.support.subTests.
..
.. date: 2025-05-23-09-19-52 .. gh-issue: 134567 .. nonce: hwEIMb .. section: Tests
Expose log formatter to users in TestCase.assertLogs.
:func:unittest.TestCase.assertLogs will now optionally accept a formatter
that will be used to format the strings in output if provided.
..
.. date: 2025-05-09-14-54-48 .. gh-issue: 133744 .. nonce: LCquu0 .. section: Tests
Fix multiprocessing interrupt test. Add an event to synchronize the parent process with the child process: wait until the child process starts sleeping. Patch by Victor Stinner.
..
.. date: 2025-05-09-04-11-06 .. gh-issue: 133682 .. nonce: -_lwo3 .. section: Tests
Fixed test case test.test_annotationlib.TestStringFormat.test_displays
which ensures proper handling of complex data structures (lists, sets,
dictionaries, and tuples) in string annotations.
..
.. date: 2025-05-08-15-06-01 .. gh-issue: 133639 .. nonce: 50-kbV .. section: Tests
Fix TestPyReplAutoindent.test_auto_indent_default() doesn't run
input_code.
..
.. date: 2025-10-07-19-31-34 .. gh-issue: 139700 .. nonce: vNHU1O .. section: Security
Check consistency of the zip64 end of central directory record. Support records with "zip64 extensible data" if there are no bytes prepended to the ZIP file.
..
.. date: 2025-09-29-00-01-28 .. gh-issue: 139400 .. nonce: X2T-jO .. section: Security
:mod:xml.parsers.expat: Make sure that parent Expat parsers are only
garbage-collected once they are no longer referenced by subparsers created
by :meth:~xml.parsers.expat.xmlparser.ExternalEntityParserCreate. Patch by
Sebastian Pipping.
..
.. date: 2025-09-24-13-39-56 .. gh-issue: 139283 .. nonce: jODz_q .. section: Security
:mod:sqlite3: correctly handle maximum number of rows to fetch in
:meth:Cursor.fetchmany <sqlite3.Cursor.fetchmany> and reject negative
values for :attr:Cursor.arraysize <sqlite3.Cursor.arraysize>. Patch by
Bénédikt Tran.
..
.. date: 2025-06-27-21-23-19 .. gh-issue: 136053 .. nonce: QZxcee .. section: Security
:mod:marshal: fix a possible crash when deserializing :class:slice
objects.
..
.. date: 2025-06-25-14-13-39 .. gh-issue: 135661 .. nonce: idjQ0B .. section: Security
Fix parsing start and end tags in :class:html.parser.HTMLParser according
to the HTML5 standard.
Whitespaces no longer accepted between </ and the tag name.
E.g. </ script> does not end the script section.
Vertical tabulation (\v) and non-ASCII whitespaces no longer recognized
as whitespaces. The only whitespaces are \t\n\r\f and space.
Null character (U+0000) no longer ends the tag name.
Attributes and slashes after the tag name in end tags are now ignored,
instead of terminating after the first > in quoted attribute value.
E.g. </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-34-55 .. gh-issue: 135661 .. nonce: NZlpWf .. section: Security
Fix CDATA section parsing in :class:html.parser.HTMLParser according to
the HTML5 standard: ] ]> and ]] > no longer end the CDATA section.
Add private method _set_support_cdata() which can be used to specify how
to parse <[CDATA[ --- as a CDATA section in foreign content (SVG or
MathML) or as a bogus comment in the HTML namespace.
..
.. date: 2025-06-18-13-28-08 .. gh-issue: 102555 .. nonce: nADrzJ .. section: Security
Fix comment parsing in :class:html.parser.HTMLParser according to the
HTML5 standard. --!> now ends the comment. -- > no longer ends the
comment. Support abnormally ended empty comments <--> and <--->.
..
.. date: 2025-06-13-15-55-22 .. gh-issue: 135462 .. nonce: KBeJpc .. section: Security
Fix quadratic complexity in processing specially crafted input in
:class:html.parser.HTMLParser. End-of-file errors are now handled
according to the HTML5 specs -- comments and declarations are automatically
closed, tags are ignored.
..
.. date: 2025-06-09-20-38-25 .. gh-issue: 118350 .. nonce: KgWCcP .. section: Security
Fix support of escapable raw text mode (elements "textarea" and "title") in
:class:html.parser.HTMLParser.
..
.. date: 2025-06-02-11-32-23 .. gh-issue: 135034 .. nonce: RLGjbp .. section: Security
Fixes multiple issues that allowed tarfile extraction filters
(filter="data" and filter="tar") to be bypassed using crafted
symlinks and hard links.
Addresses :cve:2024-12718, :cve:2025-4138, :cve:2025-4330, and
:cve:2025-4517.
..
.. date: 2025-05-09-20-22-54 .. gh-issue: 133767 .. nonce: kN2i3Q .. section: Security
Fix use-after-free in the "unicode-escape" decoder with a non-"strict" error handler.
..
.. date: 2025-05-07-22-49-27 .. gh-issue: 133623 .. nonce: fgWkBm .. section: Security
Indicate through :data:ssl.HAS_PSK_TLS13 whether the :mod:ssl module
supports "External PSKs" in TLSv1.3, as described in RFC 9258. Patch by Will
Childs-Klein.
..
.. date: 2025-01-14-11-19-07 .. gh-issue: 128840 .. nonce: M1doZW .. section: Security
Short-circuit the processing of long IPv6 addresses early in
:mod:ipaddress to prevent excessive memory consumption and a minor
denial-of-service.
..
.. date: 2025-10-11-20-03-13 .. gh-issue: 139482 .. nonce: du2Stg .. section: Library
Optimize :data:os.environ.clear() <os.environ> by calling
:manpage:clearenv(3) when this function is available. Patch by Victor
Stinner.
..
.. date: 2025-10-11-17-41-26 .. gh-issue: 139958 .. nonce: AnCakj .. section: Library
The application/toml mime type is now supported by :mod:mimetypes.
Patch by Gil Forcada.
..
.. date: 2025-10-11-14-37-42 .. gh-issue: 139823 .. nonce: uGF4oh .. section: Library
:mod:ensurepip now fails with a nicer error message when the :mod:zlib
module is not available.
..
.. date: 2025-10-11-10-02-56 .. gh-issue: 139905 .. nonce: UyJIR_ .. section: Library
Add suggestion to error message for :class:typing.Generic subclasses when
cls.__parameters__ is missing due to a parent class failing to call
:meth:super().__init_subclass__() <object.__init_subclass__> in its
__init_subclass__.
..
.. date: 2025-10-10-11-22-50 .. gh-issue: 139894 .. nonce: ECAXqj .. section: Library
Fix incorrect sharing of current task with the child process while forking
in :mod:asyncio. Patch by Kumar Aditya.
..
.. date: 2025-10-09-21-37-20 .. gh-issue: 139845 .. nonce: dzx5UP .. section: Library
Fix to not print KeyboardInterrupt twice in default asyncio REPL.
..
.. date: 2025-10-09-13-48-28 .. gh-issue: 139783 .. nonce: __NUgo .. section: Library
Fix :func:inspect.getsourcelines for the case when a decorator is followed
by a comment or an empty line.
..
.. date: 2025-10-09-03-06-19 .. gh-issue: 139809 .. nonce: lzHJNu .. section: Library
Prevent premature colorization of subparser prog in
:meth:argparse.ArgumentParser.add_subparsers to respect color environment
variable changes after parser creation.
..
.. date: 2025-10-08-00-06-30 .. gh-issue: 139736 .. nonce: baPeBd .. section: Library
Fix excessive indentation in the default :mod:argparse
:class:!HelpFormatter. Patch by Alexander Edland.
..
.. date: 2025-10-02-17-40-10 .. gh-issue: 70765 .. nonce: zVlLZn .. section: Library
:mod:http.server: fix default handling of HTTP/0.9 requests in
:class:~http.server.BaseHTTPRequestHandler. Previously,
:meth:!BaseHTTPRequestHandler.parse_request incorrectly waited for headers
in the request although those are not supported in HTTP/0.9. Patch by
Bénédikt Tran.
..
.. date: 2025-10-02-15-45-08 .. gh-issue: 139322 .. nonce: rouPGj .. section: Library
Fix :func:os.getlogin error handling: fix the error number. Patch by
Victor Stinner.
..
.. date: 2025-10-01-20-30-03 .. gh-issue: 135953 .. nonce: NAofJl .. section: Library
Add a Gecko format output to the tachyon profiler via --gecko.
..
.. date: 2025-09-29-14-15-20 .. gh-issue: 139184 .. nonce: dNl9O4 .. section: Library
:func:os.forkpty does now make the returned file descriptor
non-inheritable.
..
.. date: 2025-09-28-16-34-11 .. gh-issue: 139391 .. nonce: nRFnmx .. section: Library
Fix an issue when, on non-Windows platforms, it was not possible to
gracefully exit a python -m asyncio process suspended by Ctrl+Z and
later resumed by :manpage:fg other than with :manpage:kill.
..
.. date: 2025-09-27-08-26-31 .. gh-issue: 139374 .. nonce: hfh-dl .. section: Library
:mod:timeit: Add color to error tracebacks.
..
.. date: 2025-09-26-18-04-28 .. gh-issue: 90949 .. nonce: YHjSzX .. section: Library
Add
:meth:~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionActivationThreshold
and
:meth:~xml.parsers.expat.xmlparser.SetBillionLaughsAttackProtectionMaximumAmplification
to :ref:xmlparser <xmlparser-objects> objects to tune protections against
billion laughs <https://en.wikipedia.org/wiki/Billion_laughs_attack>_
attacks. Patch by Bénédikt Tran.
..
.. date: 2025-09-25-07-33-43 .. gh-issue: 139312 .. nonce: ygE8AC .. section: Library
Upgrade bundled libexpat to 2.7.3
..
.. date: 2025-09-24-14-17-34 .. gh-issue: 139289 .. nonce: Vmk25k .. section: Library
Do a real lazy-import on :mod:rlcompleter in :mod:pdb and restore the
existing completer after importing :mod:rlcompleter.
..
.. date: 2025-09-22-14-40-11 .. gh-issue: 90949 .. nonce: UM35nb .. section: Library
Add :meth:~xml.parsers.expat.xmlparser.SetAllocTrackerActivationThreshold
and :meth:~xml.parsers.expat.xmlparser.SetAllocTrackerMaximumAmplification
to :ref:xmlparser <xmlparser-objects> objects to tune protections against
disproportional amounts of dynamic memory usage from within an Expat parser.
Patch by Bénédikt Tran.
..
.. date: 2025-09-22-11-30-45 .. gh-issue: 67795 .. nonce: fROoZt .. section: Library
Functions that take timestamp or timeout arguments now accept any real
numbers (such as :class:~decimal.Decimal and
:class:~fractions.Fraction), not only integers or floats, although this
does not improve precision.
..
.. date: 2025-09-22-11-19-05 .. gh-issue: 95953 .. nonce: 7oLoag .. section: Library
A CSS class, diff_changed, was added to the changed lines in the
make_table output of :class:difflib.HtmlDiff. Patch by Katie Gardner.
..
.. date: 2025-09-21-15-58-57 .. gh-issue: 139210 .. nonce: HGbMvz .. section: Library
Fix use-after-free when reporting unknown event in
:func:xml.etree.ElementTree.iterparse. Patch by Ken Jin.
..
.. date: 2025-09-20-17-50-31 .. gh-issue: 138860 .. nonce: Y9JXap .. section: Library
Lazy import :mod:rlcompleter in :mod:pdb to avoid deadlock in
subprocess.
..
.. date: 2025-09-19-09-36-42 .. gh-issue: 112729 .. nonce: mmty0_ .. section: Library
Fix crash when calling :func:concurrent.interpreters.create when the
process is out of memory.
..
.. date: 2025-09-19-07-41-52 .. gh-issue: 126016 .. nonce: Uz9W6h .. section: Library
Fix an assertion failure when sending :exc:KeyboardInterrupt to a Python
process running a subinterpreter in a separate thread.
..
.. date: 2025-09-18-14-21-57 .. gh-issue: 118803 .. nonce: 2JPbto .. section: Library
:class:collections.abc.ByteString has been removed from
collections.abc.__all__, and :class:typing.ByteString has been removed
from typing.__all__. The former has been deprecated since Python 3.12,
and the latter has been deprecated since Python 3.9. Both classes are
scheduled for removal in Python 3.17.
Additionally, the following statements now cause DeprecationWarning\ s
to be emitted at runtime: from collections.abc import ByteString, from typing import ByteString, import collections.abc; collections.abc.ByteString and import typing; typing.ByteString. Both
classes already caused DeprecationWarning\ s to be emitted if they were
subclassed or used as the second argument to isinstance() or
issubclass(), but they did not previously lead to
DeprecationWarning\ s if they were merely imported or accessed from
their respective modules.
..
.. date: 2025-09-18-05-32-18 .. gh-issue: 135729 .. nonce: 8AmMza .. section: Library
Fix unraisable exception during finalization when using
:mod:concurrent.interpreters in the REPL.
..
.. date: 2025-09-17-21-54-53 .. gh-issue: 139076 .. nonce: 2eX9lG .. section: Library
Fix a bug in the :mod:pydoc module that was hiding functions in a Python
module if they were implemented in an extension module and the module did
not have __all__.
..
.. date: 2025-09-17-21-52-30 .. gh-issue: 139090 .. nonce: W7vbhF .. section: Library
Add :data:os.RWF_DONTCACHE constant for Linux 6.14+.
..
.. date: 2025-09-17-19-08-34 .. gh-issue: 139065 .. nonce: Hu8fM5 .. section: Library
Fix trailing space before a wrapped long word if the line length is exactly
width in :mod:textwrap.
..
.. date: 2025-09-17-12-07-21 .. gh-issue: 139001 .. nonce: O6tseN .. section: Library
Fix race condition in :class:pathlib.Path on the internal _raw_paths
field.
..
.. date: 2025-09-17-08-32-43 .. gh-issue: 138813 .. nonce: LHkHjX .. section: Library
:class:!multiprocessing.BaseProcess defaults kwargs to None
instead of a shared dictionary.
..
.. date: 2025-09-16-19-05-29 .. gh-issue: 138998 .. nonce: URl0Y_ .. section: Library
Update bundled libexpat to 2.7.2
..
.. date: 2025-09-16-16-46-58 .. gh-issue: 138993 .. nonce: -8s8_T .. section: Library
Dedent :data:credits text.
..
.. date: 2025-09-16-15-56-29 .. gh-issue: 118803 .. nonce: aOPtmL .. section: Library
Add back :class:collections.abc.ByteString and :class:typing.ByteString.
Both had been removed in prior alpha, beta and release candidates for Python
3.14, but their removal has now been postponed to Python 3.17.
..
.. date: 2025-09-15-19-29-12 .. gh-issue: 130567 .. nonce: shDEnT .. section: Library
Fix possible crash in :func:locale.strxfrm due to a platform bug on macOS.
..
.. date: 2025-09-15-13-09-19 .. gh-issue: 137226 .. nonce: HH3_ik .. section: Library
Fix :func:typing.get_type_hints calls on generic :class:typing.TypedDict
classes defined with string annotations.
..
.. date: 2025-09-15-08-57-39 .. gh-issue: 138899 .. nonce: Uh6fvY .. section: Library
Executing quit command in :mod:pdb will raise :exc:bdb.BdbQuit when
:mod:pdb is started from an asyncio console using :func:breakpoint or
:func:pdb.set_trace.
..
.. date: 2025-09-12-01-01-05 .. gh-issue: 138804 .. nonce: 46ZukT .. section: Library
Raise :exc:TypeError instead of :exc:AttributeError when an argument of
incorrect type is passed to :func:shlex.quote. This restores the behavior
of the function prior to 3.14.
..
.. date: 2025-09-11-11-09-28 .. gh-issue: 138779 .. nonce: TNZnLr .. section: Library
Support device numbers larger than 2**63-1 for the
:attr:~os.stat_result.st_rdev field of the :class:os.stat_result
structure.
..
.. date: 2025-09-10-13-32-25 .. gh-issue: 138682 .. nonce: iExqx1 .. section: Library
Added symmetric difference support to :class:collections.Counter objects.
..
.. date: 2025-09-10-10-11-59 .. gh-issue: 138712 .. nonce: avrPG5 .. section: Library
Add :const:os.NODEV.
..
.. date: 2025-09-10-10-02-59 .. gh-issue: 128636 .. nonce: ldRKGZ .. section: Library
Fix crash in PyREPL when os.environ is overwritten with an invalid value for mac
..
.. date: 2025-09-09-17-57-49 .. gh-issue: 138720 .. nonce: hAtsm- .. section: Library
Fix an issue where :class:io.BufferedWriter and :class:io.BufferedRandom
had different definitions of "closed" for :meth:~io.IOBase.close and
:meth:~io.IOBase.flush which resulted in an exception when close called
flush but flush thought the file was already closed.
..
.. date: 2025-09-09-10-48-26 .. gh-issue: 138706 .. nonce: xB--LX .. section: Library
Update :mod:unicodedata database to Unicode 17.0.0.
..
.. date: 2025-09-08-17-32-02 .. gh-issue: 76007 .. nonce: peEgcr .. section: Library
Deprecate __version__ from a number of standard library modules. Patch
by Hugo van Kemenade.
..
.. date: 2025-09-06-20-09-32 .. gh-issue: 138535 .. nonce: mlntEe .. section: Library
Speed up :func:os.stat for files with reasonable timestamps. Contributed
by Jeffrey Bosboom.
..
.. date: 2025-09-06-14-56-40 .. gh-issue: 116946 .. nonce: GGIeyO .. section: Library
:mod:curses.panel: the type of :func:curses.panel.new_panel is now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-54-01 .. gh-issue: 116946 .. nonce: hzQEWI .. section: Library
:mod:zlib: the types of :func:zlib.compressobj and
:func:zlib.decompressobj are now immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-53-19 .. gh-issue: 116946 .. nonce: c-npxd .. section: Library
:mod:os: the :class:os.DirEntry type and the type of :func:os.scandir
are now immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-14-47-23 .. gh-issue: 116946 .. nonce: hj_u1t .. section: Library
:mod:tkinter: the types :class:!_tkinter.Tcl_Obj (wrapper for Tcl
objects), :class:!_tkinter.tktimertoken (obtained by calling
createtimerhandler() on a :attr:Tk <tkinter.Tk.tk> application) and
:class:!_tkinter.tkapp (the runtime type of Tk applications) are now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-06-11-26-21 .. gh-issue: 138514 .. nonce: 66ltOb .. section: Library
Raise :exc:ValueError when a multi-character string is passed to the
echo_char parameter of :func:getpass.getpass. Patch by Benjamin Johnson.
..
.. date: 2025-09-05-21-10-24 .. gh-issue: 137706 .. nonce: 0EztiJ .. section: Library
Fix the partial evaluation of annotations that use typing.Annotated[T, x] where T is a forward reference.
..
.. date: 2025-09-05-15-35-59 .. gh-issue: 88375 .. nonce: dC491a .. section: Library
Fix normalization of the robots.txt rules and URLs in the
:mod:urllib.robotparser module. No longer ignore trailing ?.
Distinguish raw special characters ?, = and & from the
percent-encoded ones.
..
.. date: 2025-09-05-07-50-18 .. gh-issue: 138515 .. nonce: E3M-pu .. section: Library
:mod:email is added to Emscripten build.
..
.. date: 2025-09-05-05-53-43 .. gh-issue: 99948 .. nonce: KMSlG6 .. section: Library
:func:ctypes.util.find_library now works in Emscripten build.
..
.. date: 2025-09-04-15-18-11 .. gh-issue: 111788 .. nonce: tuTEM5 .. section: Library
Fix parsing errors in the :mod:urllib.robotparser module. Don't fail
trying to parse weird paths. Don't fail trying to decode non-UTF-8
robots.txt files.
..
.. date: 2025-09-03-15-20-10 .. gh-issue: 138432 .. nonce: RMc7UX .. section: Library
:meth:zoneinfo.reset_tzpath will now convert any :class:os.PathLike
objects it receives into strings before adding them to TZPATH. It will
raise TypeError if anything other than a string is found after this
conversion. If given an :class:os.PathLike object that represents a
relative path, it will now raise ValueError instead of TypeError,
and present a more informative error message.
..
.. date: 2025-09-03-09-03-11 .. gh-issue: 132657 .. nonce: cbAIDh .. section: Library
Improve the scaling of :func:copy.copy and :func:copy.deepcopy in the
free-threading build.
..
.. date: 2025-09-02-10-27-21 .. gh-issue: 116946 .. nonce: VxXNGD .. section: Library
The types of :func:select.poll and :func:select.epoll objects are now
immutable. Patch by Bénédikt Tran.
..
.. date: 2025-09-02-10-23-09 .. gh-issue: 116946 .. nonce: U6RpwK .. section: Library
The :class:!_random.Random C type is now immutable. Patch by Bénédikt
Tran.
..
.. date: 2025-08-31-22-10-22 .. gh-issue: 57911 .. nonce: N_Ixtv .. section: Library
When extracting tar files on Windows, slashes in symlink targets will be replaced by backslashes to prevent corrupted links.
..
.. date: 2025-08-31-12-34-02 .. gh-issue: 138205 .. nonce: iHXb1z .. section: Library
Removed the :meth:~mmap.mmap.resize method on platforms that don't support
the underlying syscall, instead of raising a :exc:SystemError.
..
.. date: 2025-08-31-09-06-49 .. gh-issue: 138008 .. nonce: heOvsU .. section: Library
Fix segmentation faults in the :mod:ctypes module due to invalid
:attr:~ctypes._CFuncPtr.argtypes. Patch by Dung Nguyen.
..
.. date: 2025-08-30-17-58-04 .. gh-issue: 138252 .. nonce: CDiEby .. section: Library
:mod:ssl: :class:~ssl.SSLContext objects can now set client and server
TLS signature algorithms. If Python has been built with OpenSSL 3.5 or
later, :class:~ssl.SSLSocket objects can return the signature algorithms
selected on a connection.
..
.. date: 2025-08-30-10-58-15 .. gh-issue: 138253 .. nonce: 9Ehj-N .. section: Library
Add the block parameter in the :meth:!put and :meth:!get methods of
the :mod:concurrent.interpreters queues for compatibility with the
:class:queue.Queue interface.
..
.. date: 2025-08-30-10-04-28 .. gh-issue: 60462 .. nonce: yh_vDc .. section: Library
Fix :func:locale.strxfrm on Solaris (and possibly other platforms).
..
.. date: 2025-08-29-12-56-55 .. gh-issue: 138239 .. nonce: uthZFI .. section: Library
The REPL now highlights :keyword:type as a soft keyword in :ref:type statements <type>.
..
.. date: 2025-08-29-12-05-33 .. gh-issue: 78502 .. nonce: VpIMxg .. section: Library
:class:mmap.mmap now has a trackfd parameter on Windows; if it is
False, the file handle corresponding to fileno will not be duplicated.
..
.. date: 2025-08-28-13-20-09 .. gh-issue: 138204 .. nonce: 8oLOud .. section: Library
Forbid expansion of shared anonymous :mod:memory maps <mmap> on Linux,
which caused a bus error.
..
.. date: 2025-08-27-17-05-36 .. gh-issue: 138010 .. nonce: ZZJmPL .. section: Library
Fix an issue where defining a class with a
:deco:warnings.deprecated-decorated base class may not invoke the correct
:meth:~object.__init_subclass__ method in cases involving multiple
inheritance. Patch by Brian Schubert.
..
.. date: 2025-08-25-22-38-03 .. gh-issue: 134716 .. nonce: kyYKeX .. section: Library
Add support of regular expressions in the :option:-W option and the
:envvar:PYTHONWARNINGS environment variable.
..
.. date: 2025-08-25-18-06-04 .. gh-issue: 138133 .. nonce: Zh9rGo .. section: Library
Prevent infinite traceback loop when sending CTRL^C to Python through
strace.
..
.. date: 2025-08-25-16-22-32 .. gh-issue: 138122 .. nonce: eMNDZ1 .. section: Library
Implement :pep:799 -- A dedicated profiling package for organizing Python
profiling tools. Patch by Pablo Galindo.
..
.. date: 2025-08-24-02-04-32 .. gh-issue: 138092 .. nonce: V4-wTO .. section: Library
Fixed a bug in :meth:mmap.mmap.flush where calling with only an offset
parameter would fail.
..
.. date: 2025-08-22-12-48-14 .. gh-issue: 138044 .. nonce: lEQULC .. section: Library
Remove compatibility shim for deprecated parameter package in
:func:importlib.resources.files. Patch by Semyon Moroz.
..
.. date: 2025-08-22-09-53-45 .. gh-issue: 86819 .. nonce: ECxvwx .. section: Library
:mod:socket: Add missing constants for ISO-TP sockets.
..
.. date: 2025-08-19-00-12-57 .. gh-issue: 137884 .. nonce: 4faCA_ .. section: Library
Add :func:threading.get_native_id support for Illumos/Solaris. Patch by
Yüce Tekol.
..
.. date: 2025-08-18-16-02-51 .. gh-issue: 134869 .. nonce: GnAjnU .. section: Library
Fix an issue where pressing Ctrl+C during tab completion in the REPL would leave the autocompletion menu in a corrupted state.
..
.. date: 2025-08-18-07-10-55 .. gh-issue: 137840 .. nonce: 9b7AnG .. section: Library
:class:typing.TypedDict now supports the closed and extra_items
keyword arguments (as described in :pep:728) to control whether additional
non-required keys are allowed and to specify their value type.
..
.. date: 2025-08-17-10-22-31 .. gh-issue: 132947 .. nonce: XR4MJ8 .. section: Library
Applied changes to importlib.metadata from importlib_metadata 8.7 <https://importlib-metadata.readthedocs.io/en/latest/history.html#v8-7-0>_,
including dist now disallowed for EntryPoints.select; deferred
imports for faster import times; added support for metadata with newlines
(python/cpython#119650); and metadata() function now returns None
when a metadata directory is present but no metadata is present.
..
.. date: 2025-08-16-18-11-41 .. gh-issue: 90548 .. nonce: q3aJUK .. section: Library
Fix musl detection for :func:platform.libc_ver on Alpine Linux if
compiled with --strip-all.
..
.. date: 2025-08-16-16-04-15 .. gh-issue: 137317 .. nonce: Dl13B5 .. section: Library
:func:inspect.signature now correctly handles classes that use a
descriptor on a wrapped :meth:!__init__ or :meth:!__new__ method.
Contributed by Yongyu Yan.
..
.. date: 2025-08-16-09-02-11 .. gh-issue: 137754 .. nonce: mCev1Y .. section: Library
Fix import of the :mod:zoneinfo module if the C implementation of the
:mod:datetime module is not available.
..
.. date: 2025-08-14-10-27-07 .. gh-issue: 125854 .. nonce: vDzFcZ .. section: Library
Improve error messages for invalid category in :func:warnings.warn.
..
.. date: 2025-08-14-00-00-12 .. gh-issue: 137729 .. nonce: i9NSKP .. section: Library
:func:locale.setlocale now supports language codes with @-modifiers.
@-modifier are no longer silently removed in :func:locale.getlocale,
but included in the language code.
..
.. date: 2025-08-13-10-50-22 .. gh-issue: 73487 .. nonce: DUHbBq .. section: Library
Speedup processing arguments (up to 1.5x) in the :mod:decimal module
methods, that now using :c:macro:METH_FASTCALL calling convention. Patch
by Sergey B Kirpichev.
..
.. date: 2025-08-11-14-18-32 .. gh-issue: 137634 .. nonce: M7iBG6 .. section: Library
Calendar pages generated by the :class:calendar.HTMLCalendar class now
support dark mode and have been migrated to the HTML5 standard for improved
accessibility.
..
.. date: 2025-08-11-05-05-08 .. gh-issue: 137630 .. nonce: 9lmqyc .. section: Library
The :mod:!_interpreters module now uses Argument Clinic to parse
arguments. Patch by Adam Turner.
..
.. date: 2025-08-09-08-53-32 .. gh-issue: 137583 .. nonce: s6OZud .. section: Library
Fix a deadlock introduced in 3.13.6 when a call to :meth:ssl.SSLSocket.recv <socket.socket.recv> was blocked in one thread, and then another method on
the object (such as :meth:ssl.SSLSocket.send <socket.socket.send>) was
subsequently called in another thread.
..
.. date: 2025-08-08-21-20-14 .. gh-issue: 92936 .. nonce: rOgG1S .. section: Library
Update regex used by http.cookies.SimpleCookie to handle values
containing double quotes.
..
.. date: 2025-08-08-15-00-38 .. gh-issue: 137426 .. nonce: lW-Rk2 .. section: Library
Remove the code deprecation of importlib.abc.ResourceLoader. It is
documented as deprecated, but left for backwards compatibility with other
classes in importlib.abc.
..
.. date: 2025-08-07-17-18-57 .. gh-issue: 137490 .. nonce: s89ieZ .. section: Library
Handle :data:~errno.ECANCELED in the same way as :data:~errno.EINTR in
:func:signal.sigwaitinfo on NetBSD.
..
.. date: 2025-08-07-15-07-44 .. gh-issue: 137512 .. nonce: j2or5h .. section: Library
Add new constants in the :mod:resource module:
:data:~resource.RLIMIT_NTHR, :data:~resource.RLIMIT_UMTXP,
:data:~resource.RLIMIT_PIPEBUF, :data:~resource.RLIMIT_THREADS,
:data:~resource.RLIM_SAVED_CUR, and :data:~resource.RLIM_SAVED_MAX.
..
.. date: 2025-08-07-12-32-23 .. gh-issue: 137044 .. nonce: abNoIy .. section: Library
:data:resource.RLIM_INFINITY is now always a positive integer. On all
supported platforms, it is larger than any limited resource value, which
simplifies comparison of the resource values. Previously, it could be
negative, such as -1 or -3, depending on platform.
..
.. date: 2025-08-06-23-16-42 .. gh-issue: 137477 .. nonce: bk6BDV .. section: Library
Fix :func:!inspect.getblock, :func:inspect.getsourcelines and
:func:inspect.getsource for generator expressions.
..
.. date: 2025-08-06-16-54-22 .. gh-issue: 137481 .. nonce: eSTkK0 .. section: Library
Calendar uses the lengths of the locale's weekdays to decide if the width requires abbreviation.
..
.. date: 2025-08-06-16-13-47 .. gh-issue: 137466 .. nonce: Whv0-A .. section: Library
Remove undocumented :func:!glob.glob0 and :func:!glob.glob1 functions,
which have been deprecated since Python 3.13. Use :func:glob.glob and pass
a directory to its root_dir argument instead.
..
.. date: 2025-08-03-13-16-39 .. gh-issue: 137044 .. nonce: 0hPVL_ .. section: Library
Return large limit values as positive integers instead of negative integers
in :func:resource.getrlimit. Accept large values and reject negative
values (except :data:~resource.RLIM_INFINITY) for limits in
:func:resource.setrlimit.
..
.. date: 2025-08-03-00-36-57 .. gh-issue: 115766 .. nonce: nJCFkW .. section: Library
Fix :attr:!ipaddress.IPv4Interface.is_unspecified.
..
.. date: 2025-08-01-23-52-49 .. gh-issue: 75989 .. nonce: 5aYXNJ .. section: Library
:func:tarfile.TarFile.extractall and :func:tarfile.TarFile.extract now
overwrite symlinks when extracting hardlinks. (Contributed by Alexander
Enrique Urieles Nieto in :gh:75989.)
..
.. date: 2025-08-01-23-11-25 .. gh-issue: 137017 .. nonce: 0yGcNc .. section: Library
Fix :obj:threading.Thread.is_alive to remain True until the underlying
OS thread is fully cleaned up. This avoids false negatives in edge cases
involving thread monitoring or premature :obj:threading.Thread.is_alive
calls.
..
.. date: 2025-08-01-15-07-59 .. gh-issue: 137273 .. nonce: 4V8Xmv .. section: Library
Fix debug assertion failure in :func:locale.setlocale on Windows.
..
.. date: 2025-07-31-16-43-16 .. gh-issue: 137191 .. nonce: FIogE8 .. section: Library
Fix how type parameters are collected, when :class:typing.Protocol are
specified with explicit parameters. Now, :class:typing.Generic and
:class:typing.Protocol always dictate the parameter number and parameter
ordering of types. Previous behavior was a bug.
..
.. date: 2025-07-31-10-31-56 .. gh-issue: 137282 .. nonce: GOCwIC .. section: Library
Fix tab completion and :func:dir on :mod:concurrent.futures.
..
.. date: 2025-07-30-18-07-33 .. gh-issue: 137257 .. nonce: XBtzf2 .. section: Library
Bump the version of pip bundled in ensurepip to version 25.2
..
.. date: 2025-07-30-17-42-36 .. gh-issue: 137239 .. nonce: qSpj32 .. section: Library
:mod:heapq: Update :data:!heapq.__all__ with *_max functions.
..
.. date: 2025-07-30-11-12-22 .. gh-issue: 124503 .. nonce: d4hc7b .. section: Library
:func:ast.literal_eval is 10-20% faster for small inputs.
..
.. date: 2025-07-29-21-18-31 .. gh-issue: 137226 .. nonce: B_4lpu .. section: Library
Fix behavior of :meth:annotationlib.ForwardRef.evaluate when the
type_params parameter is passed and the name of a type param is also
present in an enclosing scope.
..
.. date: 2025-07-29-05-12-50 .. gh-issue: 137197 .. nonce: bMK3sO .. section: Library
:class:~ssl.SSLContext objects can now set TLS 1.3 cipher suites via
:meth:~ssl.SSLContext.set_ciphersuites.
..
.. date: 2025-07-28-23-11-29 .. gh-issue: 81325 .. nonce: jMJFBe .. section: Library
:class:tarfile.TarFile now accepts a :term:path-like <path-like object>
when working on a tar archive. (Contributed by Alexander Enrique Urieles
Nieto in :gh:81325.)
..
.. date: 2025-07-28-20-48-32 .. gh-issue: 137185 .. nonce: fgI7-B .. section: Library
Fix a potential async-signal-safety issue in :mod:faulthandler when
printing C stack traces.
..
.. date: 2025-07-27-17-03-17 .. gh-issue: 133951 .. nonce: 7kwt78 .. section: Library
Remove lib64-lib symlink creation when creating new virtual environments in
:mod:venv module
..
.. date: 2025-07-25-09-21-56 .. gh-issue: 130522 .. nonce: Crwq68 .. section: Library
Fix unraisable :exc:TypeError raised during :term:interpreter shutdown
in the :mod:threading module.
..
.. date: 2025-07-24-00-38-07 .. gh-issue: 137059 .. nonce: fr64oW .. section: Library
Fix handling of file URLs with a Windows drive letter in the URL authority
by :func:urllib.request.url2pathname. This fixes a regression in earlier
pre-releases of Python 3.14.
..
.. date: 2025-07-23-11-59-48 .. gh-issue: 136980 .. nonce: BIJzkB .. section: Library
Remove unused C tracing code in bdb for event type c_call, c_return
and c_exception
..
.. date: 2025-07-23-00-35-29 .. gh-issue: 130577 .. nonce: c7EITy .. section: Library
:mod:tarfile now validates archives to ensure member offsets are
non-negative. (Contributed by Alexander Enrique Urieles Nieto in
:gh:130577.)
..
.. date: 2025-07-21-22-35-50 .. gh-issue: 136170 .. nonce: QUlc78 .. section: Library
Removed the unreleased zipfile.ZipFile.data_offset property added in
3.14.0a7 as it wasn't fully clear which behavior it should have in some
situations so the result was not always what a user might expect.
..
.. date: 2025-07-21-20-00-42 .. gh-issue: 121237 .. nonce: DyxNqo .. section: Library
Support %:z directive for :meth:datetime.datetime.strptime,
:meth:datetime.time.strptime and :func:time.strptime. Patch by Lucas
Esposito and Semyon Moroz.
..
.. date: 2025-07-21-16-13-20 .. gh-issue: 136929 .. nonce: obKZ2S .. section: Library
Ensure that hash functions guaranteed to be always available exist as
attributes of :mod:hashlib even if they will not work at runtime due to
missing backend implementations. For instance, hashlib.md5 will no
longer raise :exc:AttributeError if OpenSSL is not available and Python
has been built without MD5 support. Patch by Bénédikt Tran.
..
.. date: 2025-07-21-16-10-24 .. gh-issue: 124621 .. nonce: wyoWc1 .. section: Library
pyrepl now works in Emscripten.
..
.. date: 2025-07-21-15-40-00 .. gh-issue: 136914 .. nonce: -GNG-d .. section: Library
Fix retrieval of :attr:doctest.DocTest.lineno for objects decorated with
:func:functools.cache or :class:functools.cached_property.
..
.. date: 2025-07-21-11-56-47 .. gh-issue: 136912 .. nonce: zWosAL .. section: Library
:func:hmac.digest now properly handles large keys and messages by falling
back to the pure Python implementation when necessary. Patch by Bénédikt
Tran.
..
.. date: 2025-07-21-01-16-32 .. gh-issue: 83424 .. nonce: Y3tEV4 .. section: Library
Allows creating a :class:ctypes.CDLL without name when passing a handle as
an argument.
..
.. date: 2025-07-20-16-56-55 .. gh-issue: 135228 .. nonce: n_XIao .. section: Library
When :mod:dataclasses replaces a class with a slotted dataclass, the
original class can now be garbage collected again. Earlier changes in Python
3.14 caused this class to always remain in existence together with the
replacement class synthesized by :mod:dataclasses.
..
.. date: 2025-07-20-16-02-00 .. gh-issue: 136874 .. nonce: cLC3o1 .. section: Library
Discard URL query and fragment in :func:urllib.request.url2pathname.
..
.. date: 2025-07-20-10-21-49 .. gh-issue: 136787 .. nonce: 0Rbp .. section: Library
:mod:hashlib: improve exception messages when a hash algorithm is not
recognized, blocked by the current security policy or incompatible with the
desired operation (for instance, using HMAC with SHAKE). Patch by Bénédikt
Tran.
..
.. date: 2025-07-19-16-20-54 .. gh-issue: 130645 .. nonce: O-dYcN .. section: Library
Enable color help by default in :mod:argparse.
..
.. date: 2025-07-19-15-40-47 .. gh-issue: 131724 .. nonce: LS59nA .. section: Library
In :mod:http.client, a new max_response_headers keyword-only parameter
has been added to :class:~http.client.HTTPConnection and
:class:~http.client.HTTPSConnection constructors. This parameter sets the
maximum number of allowed response headers, helping to prevent
denial-of-service attacks.
..
.. date: 2025-07-19-11-53-19 .. gh-issue: 135427 .. nonce: iJM_X2 .. section: Library
With :option:-Werror <-W>, the DeprecationWarning emitted by
:py:func:os.fork and :py:func:os.forkpty in mutli-threaded processes is
now raised as an exception. Previously it was silently ignored. Patch by
Rani Pinchuk.
..
.. date: 2025-07-17-16-12-23 .. gh-issue: 136234 .. nonce: VmTxtj .. section: Library
Fix :meth:asyncio.WriteTransport.writelines to be robust to connection
failure, by using the same behavior as
:meth:~asyncio.WriteTransport.write.
..
.. date: 2025-07-16-09-45-58 .. gh-issue: 53144 .. nonce: mrKwMW .. section: Library
:mod:!encodings.aliases: Add latin_N aliases
..
.. date: 2025-07-15-16-37-34 .. gh-issue: 136669 .. nonce: Yexwah .. section: Library
:mod:!_asyncio is now statically linked for improved performance.
..
.. date: 2025-07-13-13-31-22 .. gh-issue: 136134 .. nonce: mh6VjS .. section: Library
:meth:!SMTP.auth_cram_md5 now raises an :exc:~smtplib.SMTPException
instead of a :exc:ValueError if Python has been built without MD5 support.
In particular, :class:~smtplib.SMTP clients will not attempt to use this
method even if the remote server is assumed to support it. Patch by Bénédikt
Tran.
..
.. date: 2025-07-13-11-20-05 .. gh-issue: 136134 .. nonce: xhh0Kq .. section: Library
:meth:IMAP4.login_cram_md5 <imaplib.IMAP4.login_cram_md5> now raises an
:exc:IMAP4.error <imaplib.IMAP4.error> if CRAM-MD5 authentication is not
supported. Patch by Bénédikt Tran.
..
.. date: 2025-07-12-18-05-37 .. gh-issue: 136591 .. nonce: ujXmSN .. section: Library
:mod:!_hashlib: avoid using deprecated functions
:manpage:ERR_func_error_string and :manpage:EVP_MD_CTX_md when using
OpenSSL 3.0 and later. Patch by Bénédikt Tran.
..
.. date: 2025-07-12-14-15-47 .. gh-issue: 136571 .. nonce: muHmBv .. section: Library
:meth:datetime.date.fromisocalendar can now raise OverflowError for out of
range arguments.
..
.. date: 2025-07-11-23-04-39 .. gh-issue: 136549 .. nonce: oAi8u4 .. section: Library
Fix signature of :func:threading.excepthook.
..
.. date: 2025-07-11-10-23-44 .. gh-issue: 136492 .. nonce: BVi5h0 .. section: Library
Expose :pep:667's :data:~types.FrameLocalsProxyType in the :mod:types
module.
..
.. date: 2025-07-11-08-15-17 .. gh-issue: 83336 .. nonce: ptpmq7 .. section: Library
utf8_sig is now aliased to :mod:encodings.utf_8_sig
..
.. date: 2025-07-11-03-39-15 .. gh-issue: 136523 .. nonce: s7caKL .. section: Library
Fix :class:wave.Wave_write emitting an unraisable when open raises.
..
.. date: 2025-07-10-21-02-43 .. gh-issue: 136507 .. nonce: pnEuGS .. section: Library
Fix mimetypes CLI to handle multiple file parameters.
..
.. date: 2025-07-10-10-18-19 .. gh-issue: 52876 .. nonce: 9Vjrd8 .. section: Library
Add missing keepends (default True) parameter to
:meth:!codecs.StreamReaderWriter.readline and
:meth:!codecs.StreamReaderWriter.readlines.
..
.. date: 2025-07-10-00-47-37 .. gh-issue: 136470 .. nonce: KlUEUG .. section: Library
Correct :class:concurrent.futures.InterpreterPoolExecutor's default thread
name.
..
.. date: 2025-07-09-20-29-30 .. gh-issue: 136476 .. nonce: HyLLzh .. section: Library
Fix a bug that was causing the get_async_stack_trace function to miss
some frames in the stack trace.
..
.. date: 2025-07-08-20-58-01 .. gh-issue: 136434 .. nonce: uuJsjS .. section: Library
Fix docs generation of UnboundItem in :mod:concurrent.interpreters
when running with :option:-OO.
..
.. date: 2025-07-07-22-12-32 .. gh-issue: 136380 .. nonce: 1b_nXl .. section: Library
Raises :exc:AttributeError when accessing
:class:concurrent.futures.InterpreterPoolExecutor and subinterpreters are
not available.
..
.. date: 2025-07-07-16-46-55 .. gh-issue: 72327 .. nonce: wLvRuj .. section: Library
Suggest using the system command prompt when pip install is typed into
the REPL. Patch by Tom Viner, Richard Si, and Brian Schubert.
..
.. date: 2025-07-06-18-38-10 .. gh-issue: 135953 .. nonce: Z29DCz .. section: Library
Implement a new high-frequency runtime profiler that leverages the existing
remote debugging functionality to collect detailed execution statistics from
running Python processes. This tool is exposed in the profile.sample
module and enables non-intrusive observation of production applications by
attaching to already-running processes without requiring any code
modifications, restarts, or special startup flags. The observer can perform
extremely high-frequency sampling of stack traces and interpreter state,
providing detailed runtime execution analysis of live applications.
..
.. date: 2025-07-06-10-18-48 .. gh-issue: 136021 .. nonce: f-FJYT .. section: Library
Make type_params parameter required in :func:!typing._eval_type after
a deprecation period for not providing this parameter. Also remove the
:exc:DeprecationWarning for the old behavior.
..
.. date: 2025-07-05-09-45-04 .. gh-issue: 136286 .. nonce: N67Amr .. section: Library
Fix pickling failures for protocols 0 and 1 for many objects related to subinterpreters.
..
.. date: 2025-07-05-06-59-46 .. gh-issue: 136047 .. nonce: qWvycf .. section: Library
Fix issues with :mod:typing when the C implementation of :mod:abc is not
available.
..
.. date: 2025-07-05-06-56-16 .. gh-issue: 136316 .. nonce: 3zj_Do .. section: Library
Improve support for evaluating nested forward references in
:func:typing.evaluate_forward_ref.
..
.. date: 2025-07-04-23-45-00 .. gh-issue: 136306 .. nonce: O1YLIU .. section: Library
:mod:ssl can now get and set groups used for key agreement.
..
.. date: 2025-07-04-12-53-02 .. gh-issue: 136156 .. nonce: OYlXoz .. section: Library
:func:tempfile.TemporaryFile no longer uses :data:os.O_EXCL with
:data:os.O_TMPFILE, so it's possible to use linkat() on the file
descriptor. Patch by Victor Stinner.
..
.. date: 2025-07-02-18-41-45 .. gh-issue: 133982 .. nonce: 7qqAn6 .. section: Library
Update Python implementation of :class:io.BytesIO to be thread safe.
..
.. date: 2025-07-02-10-48-21 .. gh-issue: 136193 .. nonce: xfvras .. section: Library
Improve :exc:TypeError error message, when richcomparing two
:class:types.SimpleNamespace objects.
..
.. date: 2025-07-01-14-44-03 .. gh-issue: 136097 .. nonce: bI1n14 .. section: Library
Fix potential infinite recursion and KeyError in sysconfig --generate-posix-vars.
..
.. date: 2025-06-30-11-12-24 .. gh-issue: 85702 .. nonce: 0Lrbwu .. section: Library
If zoneinfo._common.load_tzdata is given a package without a resource a
:exc:zoneinfo.ZoneInfoNotFoundError is raised rather than a
:exc:PermissionError. Patch by Victor Stinner.
..
.. date: 2025-06-29-15-22-13 .. gh-issue: 90733 .. nonce: NiquaA .. section: Library
Improve error messages when reporting invalid parameters in
:func:hashlib.scrypt. Patch by Bénédikt Tran.
..
.. date: 2025-06-28-11-32-57 .. gh-issue: 134759 .. nonce: AjjKcG .. section: Library
Fix :exc:UnboundLocalError in :func:email.message.Message.get_payload
when the payload to decode is a :class:bytes object. Patch by Kliment
Lamonov.
..
.. date: 2025-06-27-13-34-28 .. gh-issue: 136028 .. nonce: RY727g .. section: Library
Fix parsing month names containing "İ" (U+0130, LATIN CAPITAL LETTER I WITH
DOT ABOVE) in :func:time.strptime. This affects locales az_AZ, ber_DZ,
ber_MA and crh_UA.
..
.. date: 2025-06-27-09-26-04 .. gh-issue: 87135 .. nonce: 33z0UW .. section: Library
Acquiring a :class:threading.Lock or :class:threading.RLock at
interpreter shutdown will raise :exc:PythonFinalizationError if Python can
determine that it would otherwise deadlock.
..
.. date: 2025-06-26-17-28-49 .. gh-issue: 135995 .. nonce: pPrDCt .. section: Library
In the palmos encoding, make byte 0x9b decode to › (U+203A - SINGLE
RIGHT-POINTING ANGLE QUOTATION MARK).
..
.. date: 2025-06-26-17-19-36 .. gh-issue: 105456 .. nonce: eR9oHB .. section: Library
Removed :mod:!sre_compile, :mod:!sre_constants and :mod:!sre_parse
modules.
..
.. date: 2025-06-26-11-52-40 .. gh-issue: 53203 .. nonce: TMigBr .. section: Library
Fix :func:time.strptime for %c and %x formats on locales byn_ER,
wal_ET and lzh_TW, and for %X format on locales ar_SA, bg_BG and lzh_TW.
..
.. date: 2025-06-24-14-43-24 .. gh-issue: 135878 .. nonce: Db4roX .. section: Library
Fixes a crash of :class:types.SimpleNamespace on :term:free threading
builds, when several threads were calling its :meth:~object.__repr__
method at the same time.
..
.. date: 2025-06-24-13-30-47 .. gh-issue: 135853 .. nonce: 7ejTvK .. section: Library
Add :func:math.fmax and :func:math.fmin to get the larger and smaller of
two floating-point values. Patch by Bénédikt Tran.
..
.. date: 2025-06-24-10-52-35 .. gh-issue: 135836 .. nonce: s37351 .. section: Library
Fix :exc:IndexError in :meth:asyncio.loop.create_connection that could
occur when non-\ :exc:OSError exception is raised during connection and
socket's close() raises :exc:!OSError.
..
.. date: 2025-06-24-10-23-37 .. gh-issue: 135853 .. nonce: 6xDNOG .. section: Library
:mod:math: expose C99 :func:~math.signbit function to determine whether
the sign bit of a floating-point value is set. Patch by Bénédikt Tran.
..
.. date: 2025-06-23-13-02-08 .. gh-issue: 134531 .. nonce: yUmj07 .. section: Library
:mod:hmac: use the :manpage:EVP_MAC(3ssl) interface for HMAC when Python
is built with OpenSSL 3.0 and later instead of the deprecated
:manpage:HMAC_CTX(3ssl) <hmac(3)> interface. Patch by Bénédikt Tran.
..
.. date: 2025-06-23-11-04-25 .. gh-issue: 135836 .. nonce: -C-c4v .. section: Library
Fix :exc:IndexError in :meth:asyncio.loop.create_connection that could
occur when the Happy Eyeballs algorithm resulted in an empty exceptions list
during connection attempts.
..
.. date: 2025-06-23-10-19-11 .. gh-issue: 135855 .. nonce: -J0AGF .. section: Library
Raise :exc:TypeError instead of :exc:SystemError when
:func:!_interpreters.set___main___attrs is passed a non-dict object. Patch
by Brian Schubert.
..
.. date: 2025-06-22-22-03-06 .. gh-issue: 135823 .. nonce: iDBg97 .. section: Library
:mod:netrc: improve the error message when the security check for the
ownership of the default configuration file ~/.netrc fails. Patch by
Bénédikt Tran.
..
.. date: 2025-06-22-16-23-44 .. gh-issue: 135815 .. nonce: 0DandH .. section: Library
:mod:netrc: skip security checks if :func:os.getuid is missing. Patch by
Bénédikt Tran.
..
.. date: 2025-06-22-02-16-17 .. gh-issue: 135640 .. nonce: FXyFL6 .. section: Library
Address bug where it was possible to call
:func:xml.etree.ElementTree.ElementTree.write on an ElementTree object
with an invalid root element. This behavior blanked the file passed to
write if it already existed.
..
.. date: 2025-06-20-17-06-59 .. gh-issue: 90117 .. nonce: GYWVrn .. section: Library
Speed up :mod:pprint for :class:list and :class:tuple.
..
.. date: 2025-06-20-16-28-47 .. gh-issue: 135759 .. nonce: jne0Zi .. section: Library
:mod:hashlib: reject negative digest lengths in OpenSSL-based SHAKE
objects by raising a :exc:ValueError. Previously, negative lengths were
implicitly rejected by raising a :exc:MemoryError or a :exc:SystemError.
Patch by Bénédikt Tran.
..
.. date: 2025-06-18-19-25-32 .. gh-issue: 123471 .. nonce: lx1Xbt .. section: Library
Make concurrent iterations over :class:itertools.chain safe under
:term:free threading.
..
.. date: 2025-06-18-13-58-13 .. gh-issue: 135645 .. nonce: 109nff .. section: Library
Added supports_isolated_interpreters field to
:data:sys.implementation.
..
.. date: 2025-06-18-11-43-17 .. gh-issue: 135646 .. nonce: r7ekEn .. section: Library
Raise consistent :exc:NameError exceptions in
:func:annotationlib.ForwardRef.evaluate
..
.. date: 2025-06-17-23-13-56 .. gh-issue: 135557 .. nonce: Bfcy4v .. section: Library
Fix races on :mod:heapq updates and :class:list reads on the :term:free threaded <free threading> build.
..
.. date: 2025-06-17-22-44-19 .. gh-issue: 119180 .. nonce: Ogv8Nj .. section: Library
Only fetch globals and locals if necessary in
:func:annotationlib.get_annotations
..
.. date: 2025-06-16-15-03-03 .. gh-issue: 135561 .. nonce: mJCN8D .. section: Library
Fix a crash on DEBUG builds when an HACL* HMAC routine fails. Patch by Bénédikt Tran.
..
.. date: 2025-06-16-15-00-13 .. gh-issue: 135386 .. nonce: lNrxLc .. section: Library
Fix opening a :mod:dbm.sqlite3 database for reading from read-only file or
directory.
..
.. date: 2025-06-16-12-37-02 .. gh-issue: 135444 .. nonce: An2eeA .. section: Library
Fix :meth:asyncio.DatagramTransport.sendto to account for datagram header
size when data cannot be sent.
..
.. date: 2025-06-15-03-03-22 .. gh-issue: 65697 .. nonce: COdwZd .. section: Library
:class:configparser's error message when attempting to write an invalid
key is now more helpful.
..
.. date: 2025-06-14-14-19-13 .. gh-issue: 135497 .. nonce: 1pzwdA .. section: Library
Fix :func:os.getlogin failing for longer usernames on BSD-based platforms.
..
.. date: 2025-06-14-12-06-55 .. gh-issue: 135487 .. nonce: KdVFff .. section: Library
Fix :meth:!reprlib.Repr.repr_int when given integers with more than
:func:sys.get_int_max_str_digits digits. Patch by Bénédikt Tran.
..
.. date: 2025-06-12-18-15-31 .. gh-issue: 135429 .. nonce: mch75_ .. section: Library
Fix the argument mismatch in _lsprof for PY_THROW event.
..
.. date: 2025-06-12-10-45-02 .. gh-issue: 135368 .. nonce: OjWVHL .. section: Library
Fix :class:unittest.mock.Mock generation on :func:dataclasses.dataclass
objects. Now all special attributes are set as it was before :gh:124429.
..
.. date: 2025-06-11-15-08-02 .. gh-issue: 135336 .. nonce: 6Gq6MI .. section: Library
:mod:json now encodes strings up to 2.2x faster if they consist solely of
characters that don’t require escaping.
..
.. date: 2025-06-10-21-42-04 .. gh-issue: 135335 .. nonce: WnUqb_ .. section: Library
:mod:multiprocessing: Flush stdout and stderr after preloading
modules in the forkserver.
..
.. date: 2025-06-10-21-00-48 .. gh-issue: 126631 .. nonce: eITVJd .. section: Library
Fix :mod:multiprocessing forkserver bug which prevented __main__
from being preloaded.
..
.. date: 2025-06-10-16-11-00 .. gh-issue: 133967 .. nonce: P0c24q .. section: Library
Do not normalize :mod:locale name 'C.UTF-8' to 'en_US.UTF-8'.
..
.. date: 2025-06-10-10-22-18 .. gh-issue: 130870 .. nonce: JipqbO .. section: Library
Preserve :class:types.GenericAlias subclasses in
:func:typing.get_type_hints
..
.. date: 2025-06-10-00-42-30 .. gh-issue: 135321 .. nonce: UHh9jT .. section: Library
Raise a correct exception for values greater than 0x7fffffff for the
BINSTRING opcode in the C implementation of :mod:pickle.
..
.. date: 2025-06-09-10-16-55 .. gh-issue: 121914 .. nonce: G6Avkq .. section: Library
Changed the names of the symbol tables for lambda expressions and generator expressions to "<lambda>" and "<genexpr>" respectively to avoid conflicts with user-defined names.
..
.. date: 2025-06-08-14-50-34 .. gh-issue: 135276 .. nonce: ZLUhV1 .. section: Library
Synchronized zipfile.Path with zipp 3.23, including improved performance of
:meth:zipfile.Path.open for non-reading modes, rely on
:func:functools.cached_property to cache values on the instance. Rely on
save_method_args to save the initialization method arguments. Fixed
.name, .stem and other basename-based properties on Windows when
working with a zipfile on disk.
..
.. date: 2025-06-08-11-11-07 .. gh-issue: 135234 .. nonce: wJCdh0 .. section: Library
:mod:hashlib: improve exception messages when an OpenSSL function failed.
When memory allocation fails on OpenSSL's side, a :exc:MemoryError is
raised instead of a :exc:ValueError. Patch by Bénédikt Tran.
..
.. date: 2025-06-08-10-22-22 .. gh-issue: 135244 .. nonce: Y2SOTJ .. section: Library
:mod:uuid: when the MAC address cannot be determined, the 48-bit node ID
is now generated with a cryptographically-secure pseudo-random number
generator (CSPRNG) as per :rfc:RFC 9562, §6.10.3 <9562#section-6.10-3>.
This affects :func:~uuid.uuid1 and :func:~uuid.uuid6.
..
.. date: 2025-06-08-01-10-34 .. gh-issue: 135241 .. nonce: 5j18IW .. section: Library
The :code:INT opcode of the C accelerator :mod:!_pickle module was
updated to look only for "00" and "01" to push booleans onto the stack,
aligning with the Python :mod:pickle module.
..
.. date: 2025-06-06-17-34-18 .. gh-issue: 133934 .. nonce: yT1r68 .. section: Library
Improve :mod:sqlite3 CLI's .help message.
..
.. date: 2025-06-03-12-59-17 .. gh-issue: 135069 .. nonce: xop30V .. section: Library
Fix the "Invalid error handling" exception in
:class:!encodings.idna.IncrementalDecoder to correctly replace the
'errors' parameter.
..
.. date: 2025-06-02-14-36-28 .. gh-issue: 130662 .. nonce: Gpr2GB .. section: Library
+Accept leading zeros in precision and width fields for
+:class:~decimal.Decimal formatting, for example format(Decimal(1.25), '.016f').
..
.. date: 2025-06-02-14-28-30 .. gh-issue: 130662 .. nonce: EIgIR8 .. section: Library
Accept leading zeros in precision and width fields for
:class:~fractions.Fraction formatting, for example format(Fraction(1, 3), '.016f').
..
.. date: 2025-06-01-14-18-48 .. gh-issue: 135004 .. nonce: cq3-fp .. section: Library
Rewrite and cleanup the internal :mod:!_blake2 module. Some exception
messages were changed but their types were left untouched. Patch by Bénédikt
Tran.
..
.. date: 2025-06-01-11-14-00 .. gh-issue: 134953 .. nonce: ashdfs .. section: Library
Expand _colorize theme with keyword_constant and implement in
:term:repl.
..
.. date: 2025-05-31-15-49-46 .. gh-issue: 134978 .. nonce: mXXuvW .. section: Library
:mod:hashlib: Supporting the string keyword parameter in hash function
constructors such as :func:~hashlib.new or the direct hash-named
constructors such as :func:~hashlib.md5 and :func:~hashlib.sha256 is now
deprecated and slated for removal in Python 3.19. Prefer passing the initial
data as a positional argument for maximum backwards compatibility. Patch by
Bénédikt Tran.
..
.. date: 2025-05-31-12-08-12 .. gh-issue: 134970 .. nonce: lgSaxq .. section: Library
Fix the "unknown action" exception in
:meth:argparse.ArgumentParser.add_argument_group to correctly replace the
action class.
..
.. date: 2025-05-30-18-13-48 .. gh-issue: 134718 .. nonce: 5FEspx .. section: Library
By default, omit optional Load() values in :func:ast.dump.
..
.. date: 2025-05-30-13-07-29 .. gh-issue: 134718 .. nonce: 9Qvhxn .. section: Library
:func:ast.dump now only omits None and [] values if they are
default values.
..
.. date: 2025-05-30-09-46-21 .. gh-issue: 134939 .. nonce: Pu3nnm .. section: Library
Add the :mod:concurrent.interpreters module. See :pep:734.
..
.. date: 2025-05-29-17-39-13 .. gh-issue: 108885 .. nonce: MegCRA .. section: Library
Run each example as a subtest in unit tests synthesized by
:func:doctest.DocFileSuite and :func:doctest.DocTestSuite. Add the
:meth:doctest.DocTestRunner.report_skip method.
..
.. date: 2025-05-29-06-53-40 .. gh-issue: 134885 .. nonce: -_L22o .. section: Library
Fix possible crash in the :mod:compression.zstd module related to setting
parameter types. Patch by Jelle Zijlstra.
..
.. date: 2025-05-28-20-49-29 .. gh-issue: 134857 .. nonce: dVYXVO .. section: Library
Improve error report for :mod:doctest\ s run with :mod:unittest. Remove
:mod:!doctest module frames from tracebacks and redundant newline
character from a failure message.
..
.. date: 2025-05-28-15-53-27 .. gh-issue: 128840 .. nonce: Nur2pB .. section: Library
Fix parsing long IPv6 addresses with embedded IPv4 address.
..
.. date: 2025-05-27-11-24-38 .. gh-issue: 133579 .. nonce: WGPUC1 .. section: Library
:mod:curses: Consistently report failures of curses C API calls in
module-level methods by raising a :exc:curses.error. This affects
:func:~curses.assume_default_colors, :func:~curses.baudrate,
:func:~curses.cbreak, :func:~curses.echo, :func:~curses.longname,
:func:~curses.initscr, :func:~curses.nl, :func:~curses.raw,
:func:~curses.termattrs, :func:~curses.termname and
:func:~curses.unctrl. Patch by Bénédikt Tran.
..
.. date: 2025-05-27-11-18-13 .. gh-issue: 133579 .. nonce: ohtgdC .. section: Library
:meth:curses.window.refresh and :meth:curses.window.noutrefresh now
raise a :exc:TypeError instead of :exc:curses.error when called with an
incorrect number of arguments for :ref:pads <windows-and-pads>. Patch by
Bénédikt Tran.
..
.. date: 2025-05-27-11-13-51 .. gh-issue: 133579 .. nonce: KY9M6S .. section: Library
:ref:curses.window <curses-window-objects>: Consistently report failures
of curses C API calls in Window methods by raising a :exc:curses.error.
This affects :meth:~curses.window.addch, :meth:~curses.window.addnstr,
:meth:~curses.window.addstr, :meth:~curses.window.border,
:meth:~curses.window.box, :meth:~curses.window.chgat,
:meth:~curses.window.getbkgd, :meth:~curses.window.inch,
:meth:~curses.window.insstr and :meth:~curses.window.insnstr. Patch by
Bénédikt Tran.
..
.. date: 2025-05-26-22-18-32 .. gh-issue: 134771 .. nonce: RKXpLT .. section: Library
The time_clockid_converter() function now selects correct type for
clockid_t on Cygwin which fixes a build error.
..
.. date: 2025-05-26-17-06-40 .. gh-issue: 134637 .. nonce: 9-3zRL .. section: Library
Fix performance regression in calling a :mod:ctypes function pointer in
:term:free threading.
..
.. date: 2025-05-26-14-04-39 .. gh-issue: 134696 .. nonce: P04xUa .. section: Library
Built-in HACL* and OpenSSL implementations of hash function constructors now
correctly accept the same documented named arguments. For instance,
:func:~hashlib.md5 could be previously invoked as md5(data=data) or
md5(string=string) depending on the underlying implementation but these
calls were not compatible. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-12-31-08 .. gh-issue: 132710 .. nonce: ApU3TZ .. section: Library
If possible, ensure that :func:uuid.getnode returns the same result even
across different processes. Previously, the result was constant only within
the same process. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-11-01-54 .. gh-issue: 134531 .. nonce: my1Fzt .. section: Library
:mod:!_hashlib: Rename internal C functions for :class:!_hashlib.HASH
and :class:!_hashlib.HASHXOF objects. Patch by Bénédikt Tran.
..
.. date: 2025-05-26-10-52-27 .. gh-issue: 134698 .. nonce: aJ1mZ1 .. section: Library
Fix a crash when calling methods of :class:ssl.SSLContext or
:class:ssl.SSLSocket across multiple threads.
..
.. date: 2025-05-25-23-23-05 .. gh-issue: 134151 .. nonce: 13Wwsb .. section: Library
:mod:email: Fix :exc:TypeError in :func:email.utils.decode_params when
sorting :rfc:2231 continuations that contain an unnumbered section.
..
.. date: 2025-05-25-13-46-37 .. gh-issue: 134635 .. nonce: ZlPrlX .. section: Library
:mod:zlib: Allow to combine Adler-32 and CRC-32 checksums via
:func:~zlib.adler32_combine and :func:~zlib.crc32_combine. Patch by
Callum Attryde and Bénédikt Tran.
..
.. date: 2025-05-25-11-02-05 .. gh-issue: 134657 .. nonce: 3YFhR9 .. section: Library
:mod:asyncio: Remove some private names from asyncio.__all__.
..
.. date: 2025-05-24-13-10-35 .. gh-issue: 134210 .. nonce: 0IuMY2 .. section: Library
:func:curses.window.getch now correctly handles signals. Patch by Bénédikt
Tran.
..
.. date: 2025-05-24-03-10-36 .. gh-issue: 80334 .. nonce: z21cMa .. section: Library
:func:multiprocessing.freeze_support now checks for work on any "spawn"
start method platform rather than only on Windows.
..
.. date: 2025-05-23-23-43-39 .. gh-issue: 134582 .. nonce: 9POq3l .. section: Library
Fix tokenize.untokenize() round-trip errors related to t-strings braces escaping
..
.. date: 2025-05-23-20-01-52 .. gh-issue: 134580 .. nonce: xnaJ70 .. section: Library
Improved the styling of HTML diff pages generated by the
:class:difflib.HtmlDiff class, and migrated the output to the HTML5
standard.
..
.. date: 2025-05-23-10-15-36 .. gh-issue: 134565 .. nonce: zmb66C .. section: Library
:func:unittest.doModuleCleanups no longer swallows all but first exception
raised in the cleanup code, but raises a :exc:ExceptionGroup if multiple
errors occurred.
..
.. date: 2025-05-22-18-14-13 .. gh-issue: 134546 .. nonce: fjLVzK .. section: Library
Ensure :mod:pdb remote debugging script is readable by remote Python
process.
..
.. date: 2025-05-22-14-12-53 .. gh-issue: 134451 .. nonce: M1rD-j .. section: Library
Converted asyncio.tools.CycleFoundException from dataclass to a regular
exception type.
..
.. date: 2025-05-22-13-10-32 .. gh-issue: 114177 .. nonce: 3TYUJ3 .. section: Library
Fix :mod:asyncio to not close subprocess pipes which would otherwise error
out when the event loop is already closed.
..
.. date: 2025-05-20-21-45-58 .. gh-issue: 90871 .. nonce: Gkvtp6 .. section: Library
Fixed an off by one error concerning the backlog parameter in
:meth:~asyncio.loop.create_unix_server. Contributed by Christian Harries.
..
.. date: 2025-05-20-19-16-30 .. gh-issue: 134323 .. nonce: ZQZGvw .. section: Library
Fix the :meth:threading.RLock.locked method.
..
.. date: 2025-05-20-15-13-43 .. gh-issue: 86802 .. nonce: trF7TM .. section: Library
Fixed asyncio memory leak in cancelled shield tasks. For shielded tasks where the shield was cancelled, log potential exceptions through the exception handler. Contributed by Christian Harries.
..
.. date: 2025-05-20-11-51-17 .. gh-issue: 71189 .. nonce: 0LpTB1 .. section: Library
Add support of the all-but-last mode in :func:os.path.realpath.
..
.. date: 2025-05-20-11-35-08 .. gh-issue: 72902 .. nonce: jzEI-E .. section: Library
Improve speed (x1.1-1.8) of the :class:~fractions.Fraction constructor for
typical inputs (:class:float's, :class:~decimal.Decimal's or strings).
..
.. date: 2025-05-19-20-59-06 .. gh-issue: 134209 .. nonce: anhTcF .. section: Library
:mod:curses: The :meth:curses.window.instr and
:meth:curses.window.getstr methods now allocate their internal buffer on
the heap instead of the stack; in addition, the max buffer size is increased
from 1023 to 2047.
..
.. date: 2025-05-19-18-12-42 .. gh-issue: 88994 .. nonce: 7avvVu .. section: Library
Change :func:datetime.datetime.now to half-even rounding for consistency
with :func:datetime.datetime.fromtimestamp. Patch by John Keith Hohm.
..
.. date: 2025-05-19-17-27-21 .. gh-issue: 80184 .. nonce: LOkbaw .. section: Library
The default queue size is now socket.SOMAXCONN for
:class:socketserver.TCPServer.
..
.. date: 2025-05-19-15-30-00 .. gh-issue: 132983 .. nonce: asdsfs .. section: Library
Add :mod:!compression.zstd version information to test.pythoninfo.
..
.. date: 2025-05-19-15-05-24 .. gh-issue: 134235 .. nonce: pz9PwV .. section: Library
Updated tab completion on REPL to include builtin modules. Contributed by Tom Wang, Hunter Young
..
.. date: 2025-05-19-10-32-11 .. gh-issue: 134152 .. nonce: INJC2j .. section: Library
Fixed :exc:UnboundLocalError that could occur during :mod:email header
parsing if an expected trailing delimiter is missing in some contexts.
..
.. date: 2025-05-18-23-46-21 .. gh-issue: 134152 .. nonce: 30HwbX .. section: Library
:mod:email: Fix parsing of email message ID with invalid domain.
..
.. date: 2025-05-18-13-23-29 .. gh-issue: 134168 .. nonce: hgx3Xg .. section: Library
:mod:http.server: Fix IPv6 address binding and :option:--directory <http.server --directory> handling when using HTTPS.
..
.. date: 2025-05-18-12-48-39 .. gh-issue: 62184 .. nonce: y11l10 .. section: Library
Remove import of C implementation of :class:io.FileIO from Python
implementation which has its own implementation
..
.. date: 2025-05-18-12-23-07 .. gh-issue: 134087 .. nonce: HilZWl .. section: Library
Remove support for arbitrary positional or keyword arguments in the C
implementation of :class:threading.RLock objects. This was deprecated
since Python 3.14. Patch by Bénédikt Tran.
..
.. date: 2025-05-18-07-25-15 .. gh-issue: 134173 .. nonce: 53oOoF .. section: Library
Speed up :mod:asyncio performance of transferring state from thread pool
:class:concurrent.futures.Future by up to 4.4x. Patch by J. Nick Koston.
..
.. date: 2025-05-17-20-23-57 .. gh-issue: 133982 .. nonce: smS7au .. section: Library
Emit :exc:RuntimeWarning in the Python implementation of :mod:io when
the :term:file-like object <file object> is not closed explicitly in the
presence of multiple I/O layers.
..
.. date: 2025-05-17-18-08-35 .. gh-issue: 133890 .. nonce: onn9_X .. section: Library
The :mod:tarfile module now handles :exc:UnicodeEncodeError in the same
way as :exc:OSError when cannot extract a member.
..
.. date: 2025-05-17-13-46-20 .. gh-issue: 134097 .. nonce: fgkjE1 .. section: Library
Fix interaction of the new :term:REPL and :option:-X showrefcount <-X>
command line option.
..
.. date: 2025-05-17-12-40-12 .. gh-issue: 133889 .. nonce: Eh-zO4 .. section: Library
The generated directory listing page in
:class:http.server.SimpleHTTPRequestHandler now only shows the decoded
path component of the requested URL, and not the query and fragment.
..
.. date: 2025-05-16-20-10-25 .. gh-issue: 134098 .. nonce: YyTkKr .. section: Library
Fix handling paths that end with a percent-encoded slash (%2f or
%2F) in :class:http.server.SimpleHTTPRequestHandler.
..
.. date: 2025-05-16-12-40-37 .. gh-issue: 132124 .. nonce: T_5Odx .. section: Library
On POSIX-compliant systems, :func:!multiprocessing.util.get_temp_dir now
ignores :envvar:TMPDIR (and similar environment variables) if the path
length of AF_UNIX socket files exceeds the platform-specific maximum
length when using the :ref:forkserver <multiprocessing-start-method-forkserver> start method. Patch by Bénédikt
Tran.
..
.. date: 2025-05-15-14-27-01 .. gh-issue: 134062 .. nonce: fRbJet .. section: Library
:mod:ipaddress: fix collisions in :meth:~object.__hash__ for
:class:~ipaddress.IPv4Network and :class:~ipaddress.IPv6Network objects.
..
.. date: 2025-05-15-00-27-09 .. gh-issue: 134004 .. nonce: e8k4-R .. section: Library
:mod:shelve as well as underlying :mod:!dbm.dumb and :mod:!dbm.sqlite
now have :meth:!reorganize methods to recover unused free space previously
occupied by deleted entries.
..
.. date: 2025-05-13-18-54-56 .. gh-issue: 133970 .. nonce: 6G-Oi6 .. section: Library
Make :class:!string.templatelib.Template and
:class:!string.templatelib.Interpolation generic.
..
.. date: 2025-05-13-18-21-59 .. gh-issue: 71253 .. nonce: -3Sf_K .. section: Library
Raise :exc:ValueError in :func:open if opener returns a negative
file-descriptor in the Python implementation of :mod:io to match the C
implementation.
..
.. date: 2025-05-12-20-38-57 .. gh-issue: 133960 .. nonce: Aee79f .. section: Library
Simplify and improve :func:typing.evaluate_forward_ref. It now no longer
raises errors on certain invalid types. In several situations, it is now
able to evaluate forward references that were previously unsupported.
..
.. date: 2025-05-12-06-52-10 .. gh-issue: 133925 .. nonce: elInBY .. section: Library
Make the private class typing._UnionGenericAlias hashable.
..
.. date: 2025-05-11-12-56-52 .. gh-issue: 133604 .. nonce: kFxhc8 .. section: Library
Remove :func:!platform.java_ver which was deprecated since Python 3.13.
..
.. date: 2025-05-11-11-39-05 .. gh-issue: 133875 .. nonce: pUar3l .. section: Library
Removed deprecated :meth:!pathlib.PurePath.is_reserved. Use
:func:os.path.isreserved to detect reserved paths on Windows.
..
.. date: 2025-05-11-10-28-11 .. gh-issue: 133873 .. nonce: H03nov .. section: Library
Remove the deprecated getmark(), setmark() and getmarkers()
methods of the :class:~wave.Wave_read and :class:~wave.Wave_write
classes, which were deprecated since Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-11-10-01-48 .. gh-issue: 133866 .. nonce: g3dHP_ .. section: Library
Remove the undocumented function :func:!ctypes.SetPointerType, which has
been deprecated since Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-11-08-48-55 .. gh-issue: 133823 .. nonce: F8udQy .. section: Library
Remove support for TD = TypedDict("TD") and TD = TypedDict("TD", None) calls for constructing :class:typing.TypedDict objects with zero
field. Patch by Bénédikt Tran.
..
.. date: 2025-05-10-17-42-03 .. gh-issue: 125996 .. nonce: vaQp0- .. section: Library
Fix thread safety of :class:collections.OrderedDict. Patch by Kumar
Aditya.
..
.. date: 2025-05-10-12-07-54 .. gh-issue: 133817 .. nonce: 4GMtKV .. section: Library
Remove support for creating :class:~typing.NamedTuple classes via the
undocumented keyword argument syntax. Patch by Bénédikt Tran.
..
.. date: 2025-05-10-12-06-55 .. gh-issue: 133653 .. nonce: Gb2aG4 .. section: Library
Fix :class:argparse.ArgumentParser with the formatter_class argument.
Fix TypeError when formatter_class is a custom subclass of
:class:!HelpFormatter. Fix TypeError when formatter_class is not a
subclass of :class:!HelpFormatter and non-standard prefix_char is used.
Fix support of colorizing when formatter_class is not a subclass of
:class:!HelpFormatter.
..
.. date: 2025-05-10-11-04-47 .. gh-issue: 133810 .. nonce: 03WhnK .. section: Library
Remove :class:!http.server.CGIHTTPRequestHandler and --cgi flag from
the :program:python -m http.server command-line interface. They were
deprecated in Python 3.13. Patch by Bénédikt Tran.
..
.. date: 2025-05-09-20-59-24 .. gh-issue: 132641 .. nonce: 3qTw44 .. section: Library
Fixed a race in :func:functools.lru_cache under free-threading.
..
.. date: 2025-05-09-19-05-24 .. gh-issue: 133783 .. nonce: 1voCnR .. section: Library
Fix bug with applying :func:copy.replace to :mod:ast objects. Attributes
that default to None were incorrectly treated as required for manually
created AST nodes.
..
.. date: 2025-05-09-18-29-25 .. gh-issue: 133684 .. nonce: Y1DFSt .. section: Library
Fix bug where :func:annotationlib.get_annotations would return the wrong
result for certain classes that are part of a class hierarchy where from __future__ import annotations is used.
..
.. date: 2025-05-09-15-50-00 .. gh-issue: 77057 .. nonce: fV8SU- .. section: Library
Fix handling of invalid markup declarations in
:class:html.parser.HTMLParser.
..
.. date: 2025-05-09-09-10-34 .. gh-issue: 130328 .. nonce: s9h4By .. section: Library
Speedup pasting in PyREPL on Windows in a legacy console. Patch by Chris
Eibl.
..
.. date: 2025-05-09-08-49-03 .. gh-issue: 133701 .. nonce: KI8tGz .. section: Library
Fix bug where :class:typing.TypedDict classes defined under from __future__ import annotations and inheriting from another TypedDict
had an incorrect __annotations__ attribute.
..
.. date: 2025-05-08-20-45-35 .. gh-issue: 133656 .. nonce: cxZODA .. section: Library
Remove deprecated :meth:!zipimport.zipimporter.load_module. Use
:meth:zipimport.zipimporter.exec_module instead.
..
.. date: 2025-05-08-20-03-20 .. gh-issue: 133722 .. nonce: 1-B82a .. section: Library
Added a color option to :func:difflib.unified_diff that colors output
similar to :program:git diff.
..
.. date: 2025-05-08-13-43-19 .. gh-issue: 133489 .. nonce: 9eGS1Z .. section: Library
:func:random.getrandbits can now generate more that 2\ :sup:31 bits.
:func:random.randbytes can now generate more that 256 MiB.
..
.. date: 2025-05-07-22-15-15 .. gh-issue: 133595 .. nonce: c3U88r .. section: Library
Clean up :class:sqlite3.Connection APIs. All parameters of
:func:sqlite3.connect except database are now keyword-only. The first
three parameters of methods :meth:~sqlite3.Connection.create_function and
:meth:~sqlite3.Connection.create_aggregate are now positional-only. The
first parameter of methods :meth:~sqlite3.Connection.set_authorizer,
:meth:~sqlite3.Connection.set_progress_handler and
:meth:~sqlite3.Connection.set_trace_callback is now positional-only.
..
.. date: 2025-05-07-19-16-41 .. gh-issue: 133581 .. nonce: kERUCJ .. section: Library
Improve unparsing of t-strings in :func:ast.unparse and from __future__ import annotations. Empty t-strings now round-trip correctly and
formatting in interpolations is preserved. Patch by Jelle Zijlstra.
..
.. date: 2025-05-07-14-36-30 .. gh-issue: 133577 .. nonce: BggPk9 .. section: Library
Add parameter formatter to :func:logging.basicConfig.
..
.. date: 2025-05-07-13-31-06 .. gh-issue: 92897 .. nonce: ubeqGE .. section: Library
Removed the check_home parameter from :func:sysconfig.is_python_build,
deprecated since Python 3.12.
..
.. date: 2025-05-06-22-54-37 .. gh-issue: 133551 .. nonce: rfy1tJ .. section: Library
Support t-strings (:pep:750) in :mod:annotationlib. Patch by Jelle
Zijlstra.
..
.. date: 2025-05-06-14-44-55 .. gh-issue: 133517 .. nonce: Ca6NgW .. section: Library
Remove :func:os.listdrives, :func:os.listvolumes and
:func:os.listmounts in non Windows desktop builds since the underlying
functionality is missing.
..
.. date: 2025-05-05-22-11-24 .. gh-issue: 133439 .. nonce: LpmyFz .. section: Library
Fix dot commands with trailing spaces are mistaken for multi-line SQL statements in the sqlite3 command-line interface.
..
.. date: 2025-05-05-18-50-00 .. gh-issue: 133447 .. nonce: ajshdb .. section: Library
Add basic color to :mod:sqlite3 CLI interface.
..
.. date: 2025-05-05-10-41-41 .. gh-issue: 133253 .. nonce: J5-xDD .. section: Library
Fix thread-safety issues in :mod:linecache.
..
.. date: 2025-05-05-03-14-08 .. gh-issue: 133390 .. nonce: AuTggn .. section: Library
Support keyword completion in the :mod:sqlite3 command-line interface and
add :data:sqlite3.SQLITE_KEYWORDS constant.
..
.. date: 2025-05-04-17-04-55 .. gh-issue: 132493 .. nonce: huirKi .. section: Library
Avoid accessing __annotations__ unnecessarily in
:func:inspect.signature.
..
.. date: 2025-05-01-16-03-11 .. gh-issue: 133017 .. nonce: k7RLQp .. section: Library
Improve the error message of :func:multiprocessing.sharedctypes.Array,
:func:multiprocessing.sharedctypes.RawArray,
:func:multiprocessing.sharedctypes.Value and
:func:multiprocessing.sharedctypes.RawValue when an invalid typecode is
passed. Patch by Tomas Roun
..
.. date: 2025-05-01-10-56-44 .. gh-issue: 132813 .. nonce: rKurvp .. section: Library
Improve error messages for incorrect types and values of
:class:csv.Dialect attributes.
..
.. date: 2025-04-30-19-32-18 .. gh-issue: 132969 .. nonce: EagQ3G .. section: Library
Prevent the :class:~concurrent.futures.ProcessPoolExecutor executor
thread, which remains running when :meth:shutdown(wait=False) <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-29-11-48-46 .. gh-issue: 132876 .. nonce: lyTQGZ .. section: Library
ldexp() on Windows doesn't round subnormal results before Windows 11,
but should. Python's :func:math.ldexp wrapper now does round them, so
results may change slightly, in rare cases of very small results, on Windows
versions before 11.
..
.. date: 2025-04-26-15-50-12 .. gh-issue: 133009 .. nonce: etBuz5 .. section: Library
:mod:xml.etree.ElementTree: Fix a crash in :meth:Element.__deepcopy__ <object.__deepcopy__> when the element is concurrently mutated. Patch by
Bénédikt Tran.
..
.. date: 2025-04-25-16-06-53 .. gh-issue: 132908 .. nonce: wV5rja .. section: Library
Add :func:math.isnormal and :func:math.issubnormal functions. Patch by
Sergey B Kirpichev.
..
.. date: 2025-04-25-11-53-37 .. gh-issue: 95380 .. nonce: 7dvPe- .. section: Library
:func:fcntl.fcntl and :func:fcntl.ioctl: Remove the 1024 bytes limit on
the size of not mutated bytes-like argument.
..
.. date: 2025-04-25-11-48-00 .. gh-issue: 122781 .. nonce: ajsdns .. section: Library
Fix %z directive in :func:datetime.datetime.strptime to allow for no
provided offset as was documented.
..
.. date: 2025-04-22-21-00-23 .. gh-issue: 123471 .. nonce: asOLA2 .. section: Library
Make concurrent iterations over :class:itertools.combinations and
:class:itertools.product safe under free-threading.
..
.. date: 2025-04-21-01-05-14 .. gh-issue: 127081 .. nonce: Egrpq7 .. section: Library
Fix libc thread safety issues with :mod:dbm by performing stateful
operations in critical sections.
..
.. date: 2025-04-21-01-03-15 .. gh-issue: 127081 .. nonce: WXRliX .. section: Library
Fix libc thread safety issues with :mod:os by replacing getlogin with
getlogin_r re-entrant version.
..
.. date: 2025-04-21-00-58-04 .. gh-issue: 127081 .. nonce: 3DCl92 .. section: Library
Fix libc thread safety issues with :mod:pwd by locking access to
getpwall.
..
.. date: 2025-04-16-21-02-57 .. gh-issue: 132551 .. nonce: Psa7pL .. section: Library
Make :class:io.BytesIO safe in :term:free-threaded <free threading>
build.
..
.. date: 2025-04-08-07-25-10 .. gh-issue: 107583 .. nonce: JGfbhq .. section: Library
Fix :class:!Flag inversion when flag set has missing values
(:class:!IntFlag still flips all bits); fix negative assigned values
during flag creation (both :class:!Flag and :class:!IntFlag ignore
missing values).
..
.. date: 2025-04-07-10-20-16 .. gh-issue: 87790 .. nonce: X2SjJe .. section: Library
Support underscore and comma as thousands separators in the fractional part
for :class:~fractions.Fraction's formatting. Patch by Sergey B Kirpichev.
..
.. date: 2025-04-07-09-53-54 .. gh-issue: 87790 .. nonce: 6nj3zQ .. section: Library
Support underscore and comma as thousands separators in the fractional part
for :class:~decimal.Decimal's formatting. Patch by Sergey B Kirpichev.
..
.. date: 2025-04-07-06-41-54 .. gh-issue: 131884 .. nonce: ym9BJN .. section: Library
Fix formatting issues in :func:json.dump when both indent and skipkeys
are used.
..
.. date: 2025-03-27-08-13-32 .. gh-issue: 131788 .. nonce: 0RWiFc .. section: Library
Make ResourceTracker.send from :mod:multiprocessing re-entrant safe
..
.. date: 2025-03-19-12-41-42 .. gh-issue: 91349 .. nonce: 8eTOCP .. section: Library
Adjust default compressionlevel= to 6 (down from 9) in :mod:gzip and
:mod:tarfile. It is the default level used by most compression tools and a
better tradeoff between speed and performance.
..
.. date: 2025-03-17-21-21-06 .. gh-issue: 131146 .. nonce: A5Obgv .. section: Library
Fix :class:calendar.TextCalendar, :class:calendar.HTMLCalendar, and the
:mod:calendar CLI to display month names in the nominative case by adding
:data:calendar.standalone_month_name and
:data:calendar.standalone_month_abbr, which provide month names and
abbreviations in the grammatical form used when a month name stands by
itself, if the locale supports it.
..
.. date: 2025-03-13-20-48-58 .. gh-issue: 123471 .. nonce: cM4w4f .. section: Library
Make concurrent iterations over :class:itertools.cycle safe under
free-threading.
..
.. date: 2025-03-11-05-24-14 .. gh-issue: 130664 .. nonce: g0yNMm .. section: Library
Handle corner-case for :class:~fractions.Fraction's formatting: treat
zero-padding (preceding the width field by a zero ('0') character) as an
equivalent to a fill character of '0' with an alignment type of '=',
just as in case of :class:float's.
..
.. date: 2025-03-09-03-13-41 .. gh-issue: 130999 .. nonce: tBRBVB .. section: Library
Avoid exiting the new REPL and offer suggestions even if there are non-string candidates when errors occur.
..
.. date: 2025-03-08-17-07-00 .. gh-issue: 88473 .. nonce: qg23g8 .. section: Library
Implement a fast path for :class:datetime.date objects in
:func:datetime.date.today which results in a 5x performance gain while
proper subclasses retain their previous performance.
..
.. date: 2024-11-25-10-22-08 .. gh-issue: 126883 .. nonce: MAEF7g .. section: Library
Add check that timezone fields are in range for
:meth:datetime.datetime.fromisoformat and
:meth:datetime.time.fromisoformat. Patch by Semyon Moroz.
..
.. date: 2024-10-28-06-54-22 .. gh-issue: 125028 .. nonce: GEY8Ws .. section: Library
:data:functools.Placeholder cannot be passed to :func:functools.partial
as a keyword argument.
..
.. date: 2024-10-22-16-21-55 .. gh-issue: 125843 .. nonce: 2ttzYo .. section: Library
If possible, indicate which :mod:curses C function or macro is responsible
for raising a :exc:curses.error exception. Patch by Bénédikt Tran.
..
.. date: 2024-10-17-01-12-22 .. gh-issue: 119109 .. nonce: u4hcvb .. section: Library
:func:functools.partial calls are now faster when keyword arguments are
used.
..
.. date: 2024-09-13-09-48-25 .. gh-issue: 124033 .. nonce: WNudS0 .. section: Library
SimplePath is now presented in importlib.metadata.__all__.
..
.. date: 2024-09-13-09-46-47 .. gh-issue: 91216 .. nonce: LuOsF4 .. section: Library
importlib.metadata now raises a KeyError instead of returning
None when a key is missing from the metadata.
..
.. date: 2024-09-13-09-43-15 .. gh-issue: 120492 .. nonce: Mm6CJ6 .. section: Library
importlib.metadata now prioritizes valid dists to invalid dists when
retrieving by name.
..
.. date: 2024-07-16-00-01-04 .. gh-issue: 99631 .. nonce: GWD4fD .. section: Library
The :mod:shelve module now accepts custom serialization and
deserialization functions.
..
.. date: 2024-07-06-14-32-30 .. gh-issue: 119186 .. nonce: E5B1HQ .. section: Library
Slightly speed up :func:os.walk by calling :func:os.path.join less
often.
..
.. date: 2024-06-06-17-49-07 .. gh-issue: 120170 .. nonce: DUxhmT .. section: Library
Fix an issue in the :mod:!_pickle extension module in which importing
:mod:multiprocessing could change how pickle identifies which module an
object belongs to, potentially breaking the unpickling of those objects.
..
.. date: 2024-05-13-09-50-31 .. gh-issue: 118981 .. nonce: zgOQPv .. section: Library
Fix potential hang in multiprocessing.popen_spawn_posix that can happen
when the child proc dies early by closing the child fds right away.
..
.. date: 2023-07-05-14-34-10 .. gh-issue: 105497 .. nonce: HU5u89 .. section: Library
Fix flag mask inversion when unnamed flags exist.
..
.. date: 2023-03-13-22-51-40 .. gh-issue: 99813 .. nonce: 40TV02 .. section: Library
:mod:ssl now uses SSL_sendfile internally when it is possible (see
:data:~ssl.OP_ENABLE_KTLS). The function sends a file more efficiently
because it performs TLS encryption in the kernel to avoid additional context
switches. Patch by Illia Volochii.
..
.. date: 2023-02-13-21-56-38 .. gh-issue: 62824 .. nonce: CBZzX3 .. section: Library
Fix aliases for iso8859_8 encoding. Patch by Dave Goncalves.
..
.. date: 2023-02-13-21-41-34 .. gh-issue: 86155 .. nonce: ppIGSC .. section: Library
:meth:html.parser.HTMLParser.close no longer loses data when the
<script> tag is not closed. Patch by Waylan Limberg.
..
.. date: 2023-02-13-20-34-52 .. gh-issue: 78319 .. nonce: V1zzed .. section: Library
UTF8 support for the IMAP APPEND command has been made RFC compliant.
..
.. date: 2022-10-08-14-56-07 .. gh-issue: 93334 .. nonce: 0KUm8d .. section: Library
Reraise :exc:KeyError as :exc:ModuleNotFoundError when
:meth:importlib.machinery.PathFinder.find_spec is called on a submodule
without importing the parent (and without a path argument).
..
.. date: 2022-07-24-20-56-32 .. gh-issue: 69426 .. nonce: unccw7 .. section: Library
Fix :class:html.parser.HTMLParser to not unescape character entities in
attribute values if they are followed by an ASCII alphanumeric or an equals
sign.
..
.. bpo: 38735 .. date: 2022-01-07-16-56-57 .. nonce: NFfJX6 .. section: Library
Fix failure when importing a module from the root directory on unix-like platforms with sys.pycache_prefix set.
..
.. bpo: 45959 .. date: 2021-12-18-12-46-20 .. nonce: vPlr3P .. section: Library
:mod:pprint can now pretty-print dict views.
..
.. date: 2021-09-21-17-17-29 .. gh-issue: 84683 .. nonce: wDSRsG .. section: Library
:mod:zoneinfo: Check in <prefix>/share/zoneinfo for data files on
Windows
..
.. bpo: 43429 .. date: 2021-03-07-16-31-36 .. nonce: Koa0mf .. section: Library
The :meth:~mmap.mmap.size method of the :class:mmap.mmap class now
returns the size of an anonymous mapping on both Unix and Windows.
Previously, the size would be returned on Windows and an :exc:OSError
would be raised on Unix. :exc:ValueError is now raised instead of
:exc:OSError when trackfd=False.
..
.. bpo: 41839 .. date: 2020-09-23-11-54-17 .. nonce: kU5Ywl .. section: Library
Allow negative priority values from :func:os.sched_get_priority_min and
:func:os.sched_get_priority_max functions.
..
.. bpo: 28494 .. date: 2017-12-30-18-21-00 .. nonce: Dt_Wks .. section: Library
Improve Zip file validation false positive rate in
:func:zipfile.is_zipfile.
..
.. date: 2025-10-09-12-53-47 .. gh-issue: 96491 .. nonce: 4YKxvy .. section: IDLE
Deduplicate version number in IDLE shell title bar after saving to a file.
..
.. date: 2025-10-08-08-35-50 .. gh-issue: 139742 .. nonce: B3fZLg .. section: IDLE
Colorize t-string prefixes for template strings in IDLE, as done for f-string prefixes.
..
.. date: 2025-07-01-23-00-58 .. gh-issue: 136155 .. nonce: 4siQQO .. section: Documentation
We are now checking for fatal errors in EPUB builds in CI.
..
.. 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.
..
.. bpo: 45210 .. date: 2021-09-15-13-07-25 .. nonce: RtGk7i .. section: Documentation
Document that error indicator may be set in tp_dealloc, and how to avoid clobbering it.
..
.. date: 2025-10-13-17-56-23 .. gh-issue: 140000 .. nonce: tLhn3e .. section: Core and Builtins
Fix potential memory leak when a reference cycle exists between an instance
of :class:typing.TypeAliasType, :class:typing.TypeVar,
:class:typing.ParamSpec, or :class:typing.TypeVarTuple and its
__name__ attribute. Patch by Mikhail Efimov.
..
.. date: 2025-10-12-18-54-06 .. gh-issue: 140009 .. nonce: -MbFh_ .. section: Core and Builtins
Improve performance of list extension by dictionary items.
..
.. date: 2025-10-12-11-00-06 .. gh-issue: 139988 .. nonce: 4wi51t .. section: Core and Builtins
Fix a memory leak when failing to create a :class:~typing.Union type.
Patch by Bénédikt Tran.
..
.. date: 2025-10-08-13-52-00 .. gh-issue: 139748 .. nonce: jq0yFJ .. section: Core and Builtins
Fix reference leaks in error branches of functions accepting path strings or
bytes such as :func:compile and :func:os.system. Patch by Bénédikt Tran.
..
.. date: 2025-10-06-13-15-26 .. gh-issue: 139516 .. nonce: d9Pkur .. section: Core and Builtins
Fix lambda colon erroneously start format spec in f-string in tokenizer.
..
.. date: 2025-10-01-18-21-19 .. gh-issue: 63161 .. nonce: ef1S6N .. section: Core and Builtins
Support non-UTF-8 shebang and comments in Python source files if non-UTF-8 encoding is specified. Detect decoding error in comments for default (UTF-8) encoding. Show the line and position of decoding error for default encoding in a traceback. Show the line containing the coding cookie when it conflicts with the BOM in a traceback.
..
.. date: 2025-09-30-14-57-19 .. gh-issue: 139116 .. nonce: nlVf40 .. section: Core and Builtins
Prevent a deadlock when multiple threads start, stop and use
:mod:tracemalloc simultaneously.
..
.. date: 2025-09-24-17-32-52 .. gh-issue: 139275 .. nonce: novrqf .. section: Core and Builtins
Fix compilation problems in _remote_debugging_module.c when the system
doesn't have process_vm_readv. Patch by Pablo Galindo
..
.. date: 2025-09-24-17-08-42 .. gh-issue: 133059 .. nonce: EXvxb7 .. section: Core and Builtins
Increased the number of cached small positive integers from 256 to 1024.
..
.. date: 2025-09-22-15-21-49 .. gh-issue: 74857 .. nonce: 5XRQaA .. section: Core and Builtins
:pep:538: Coerce the POSIX locale to a UTF-8 based locale. Patch by Victor
Stinner.
..
.. date: 2025-09-21-14-33-17 .. gh-issue: 116738 .. nonce: vNaI4h .. section: Library
Make :mod:mmap thread-safe on the :term:free threaded <free threading>
build.
..
.. date: 2025-09-17-17-17-21 .. gh-issue: 138558 .. nonce: 0VbzCH .. section: Core and Builtins
Fix handling of unusual t-string annotations in annotationlib. Patch by Dave Peck.
..
.. date: 2025-09-15-14-04-56 .. gh-issue: 134466 .. nonce: yR4fYW .. section: Core and Builtins
Don't run PyREPL in a degraded environment where setting termios attributes is not allowed.
..
.. date: 2025-09-11-15-56-18 .. gh-issue: 138794 .. nonce: nrOn1K .. section: Core and Builtins
When a new tracing function is registered with
:c:func:PyRefTracer_SetTracer, replacing the current a call to the trace
function will be made with the object set to NULL and event set to
:c:data:PyRefTracer_TRACKER_REMOVED. This will happen just before the new
function is registered. Patch by Pablo Galindo
..
.. date: 2025-09-10-14-53-59 .. gh-issue: 71810 .. nonce: ppf0J- .. section: Core and Builtins
Raise :exc:OverflowError for (-1).to_bytes() for signed conversions
when bytes count is zero. Patch by Sergey B Kirpichev.
..
.. date: 2025-09-09-23-59-13 .. gh-issue: 138716 .. nonce: UawDY0 .. section: Core and Builtins
Improve :exc:SyntaxError message for :keyword:assert in cases like
assert a := b.
..
.. date: 2025-09-06-13-53-33 .. gh-issue: 105487 .. nonce: a43YaY .. section: Core and Builtins
Remove non-existent :meth:~object.__copy__, :meth:~object.__deepcopy__,
and :attr:~type.__bases__ from the :meth:~object.__dir__ entries of
:class:types.GenericAlias.
..
.. date: 2025-09-05-01-19-04 .. gh-issue: 138192 .. nonce: erluq5 .. section: Core and Builtins
Fix :mod:contextvars initialization so that all subinterpreters are
assigned the :attr:~contextvars.Token.MISSING value.
..
.. date: 2025-09-03-17-00-30 .. gh-issue: 138479 .. nonce: qUxgWs .. section: Core and Builtins
Fix a crash when a generic object's __typing_subst__ returns an object
that isn't a :class:tuple.
..
.. date: 2025-09-03-15-35-34 .. gh-issue: 138431 .. nonce: EUsrtA .. section: Core and Builtins
Fix a bug in the JIT optimizer when round-tripping strings and tuples.
..
.. date: 2025-09-03-10-16-09 .. gh-issue: 138378 .. nonce: r6BQxV .. section: Core and Builtins
Move the globals-to-const JIT optimizer pass into to the main JIT optimizer pass
..
.. date: 2025-09-02-22-17-55 .. gh-issue: 138401 .. nonce: uTRvue .. section: Library
Add missing validation of argument count in :func:os.sendfile to be
non-negative.
..
.. date: 2025-09-02-09-10-06 .. gh-issue: 138372 .. nonce: h1Xk4- .. section: Core and Builtins
Fix :exc:SyntaxWarning emitted for erroneous subscript expressions
involving :ref:template string literals <t-strings>. Patch by Brian
Schubert.
..
.. date: 2025-09-01-21-52-54 .. gh-issue: 138302 .. nonce: -ez47B .. section: Core and Builtins
BINARY_OP now specializes to BINARY_OP_ADD_INT,
BINARY_OP_SUBTRACT_INT or BINARY_OP_MULTIPLY_INT if operands are
compact ints.
..
.. date: 2025-09-01-16-09-02 .. gh-issue: 138318 .. nonce: t-WEN5 .. section: Core and Builtins
The default REPL now avoids highlighting built-in names (for instance
:class:set or :func:format) when they are used as attribute names (for
instance in value.set or text.format).
..
.. date: 2025-09-01-13-54-43 .. gh-issue: 138349 .. nonce: 0fGmAi .. section: Core and Builtins
Fix crash in certain cases where a module contains both a module-level annotation and a comprehension.
..
.. date: 2025-08-30-17-15-05 .. gh-issue: 69605 .. nonce: KjBk99 .. section: Core and Builtins
Fix some standard library submodules missing from the :term:REPL
auto-completion of imports.
..
.. date: 2025-08-30-00-55-35 .. gh-issue: 61206 .. nonce: HeFLvl .. section: Core and Builtins
:mod:zipimport now supports zstandard compressed zip file entries.
..
.. date: 2025-08-28-09-29-46 .. gh-issue: 116738 .. nonce: yLZJpV .. section: Library
Make :mod:!cProfile thread-safe on the :term:free threaded <free threading> build.
..
.. date: 2025-08-27-17-51-38 .. gh-issue: 137838 .. nonce: lK6T0j .. section: Core and Builtins
Fix JIT trace buffer overrun by increasing possible exit stubs. Patch by Donghee Na.
..
.. date: 2025-08-27-13-11-47 .. gh-issue: 71679 .. nonce: V0yFeT .. section: Core and Builtins
Use the same quoting algorithm for the repr of bytearrays as for bytes objects and strings -- use double quotes for quoting if the bytearray contains single quotes and does not contain double quotes.
..
.. date: 2025-08-22-11-39-40 .. gh-issue: 137384 .. nonce: j4b_in .. section: Core and Builtins
Fix a crash when using the :mod:warnings module in a finalizer at
shutdown. Patch by Kumar Aditya.
..
.. date: 2025-08-21-06-31-42 .. gh-issue: 138004 .. nonce: FH2Hre .. section: Library
On Solaris/Illumos platforms, thread names are now encoded as ASCII to avoid errors on systems (e.g. OpenIndiana) that don't support non-ASCII names.
..
.. date: 2025-08-21-01-46-39 .. gh-issue: 137976 .. nonce: p4sb4x .. section: Library
Removed localtime from the list of reported system timezones.
..
.. date: 2025-08-20-14-17-47 .. gh-issue: 137992 .. nonce: fcL3SK .. section: Core and Builtins
Ensure that :c:func:PyRefTracer_SetTracer sync with all existing threads
when called to avoid races in the free threaded build. Patch by Pablo
Galindo
..
.. date: 2025-08-19-18-52-22 .. gh-issue: 137967 .. nonce: uw67Ys .. section: Core and Builtins
Show error suggestions on nested attribute access. Patch by Pablo Galindo
..
.. date: 2025-08-19-16-07-07 .. gh-issue: 137959 .. nonce: EWj0RZ .. section: Core and Builtins
Replace the shim code added to every piece of jitted code with a single trampoline function.
..
.. date: 2025-08-17-13-36-53 .. gh-issue: 137883 .. nonce: 55VDCN .. section: Core and Builtins
Fix runaway recursion when calling a function with keyword arguments.
..
.. date: 2025-08-15-15-45-26 .. gh-issue: 137079 .. nonce: YEow69 .. section: Core and Builtins
Fix keyword typo recognition when parsing files. Patch by Pablo Galindo.
..
.. date: 2025-08-14-14-18-29 .. gh-issue: 137728 .. nonce: HdYS9R .. section: Core and Builtins
Fix the JIT's handling of many local variables. This previously caused a segfault.
..
.. date: 2025-08-13-16-58-58 .. gh-issue: 137716 .. nonce: ZcZSyi .. section: Core and Builtins
Fix double period in :exc:AttributeError message for invalid mock
assertions
..
.. date: 2025-08-13-13-39-02 .. gh-issue: 137433 .. nonce: g6Atfz .. section: Core and Builtins
Fix a potential deadlock in the :term:free threading build when daemon
threads enable or disable profiling or tracing while the main thread is
shutting down the interpreter.
..
.. date: 2025-08-10-21-34-12 .. gh-issue: 137576 .. nonce: 0ZicS- .. section: Core and Builtins
Fix for incorrect source code being shown in tracebacks from the Basic REPL
when :envvar:PYTHONSTARTUP is given. Patch by Adam Hartz.
..
.. date: 2025-08-09-11-38-37 .. gh-issue: 37817 .. nonce: Y5Fhde .. section: Core and Builtins
Allow assignment to :attr:~type.__bases__ of direct subclasses of builtin
classes.
..
.. date: 2025-08-09-04-07-05 .. gh-issue: 132732 .. nonce: 8BiIVJ .. section: Core and Builtins
Optimize _COMPARE_OP, _CONTAINS_OP, _UNARY_NEGATIVE,
_UNARY_NOT, and _UNARY_INVERT in JIT builds with constant-loading
uops (_POP_TWO_LOAD_CONST_INLINE_BORROW and
_POP_TOP_LOAD_CONST_INLINE_BORROW), and then remove both to reduce
instruction count.
..
.. date: 2025-08-07-09-52-19 .. gh-issue: 137400 .. nonce: AK1dy- .. section: Core and Builtins
Fix a crash in the :term:free threading build when disabling profiling or
tracing across all threads with :c:func:PyEval_SetProfileAllThreads or
:c:func:PyEval_SetTraceAllThreads or their Python equivalents
:func:threading.settrace_all_threads and
:func:threading.setprofile_all_threads.
..
.. date: 2025-08-06-16-55-44 .. gh-issue: 133143 .. nonce: l7CI9v .. section: Core and Builtins
Add :data:sys.abi_info object to make ABI information more easily
accessible.
..
.. date: 2025-08-06-15-39-54 .. gh-issue: 137400 .. nonce: xIw0zs .. section: Core and Builtins
Fix a crash in the :term:free threading build when disabling profiling or
tracing across all threads with :c:func:PyEval_SetProfileAllThreads or
:c:func:PyEval_SetTraceAllThreads or their Python equivalents
:func:threading.settrace_all_threads and
:func:threading.setprofile_all_threads.
..
.. date: 2025-08-05-20-24-12 .. gh-issue: 120037 .. nonce: MB7MmI .. section: Core and Builtins
Disable user site packages directory when a ._pth file is used, even if
it contains import site.
..
.. 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-05-10-22-15 .. gh-issue: 136966 .. nonce: J5lrE0 .. section: Core and Builtins
The :attr:object.__dict__ and :attr:!__weakref__ descriptors now use a
single descriptor instance per interpreter, shared across all types that
need them. This speeds up class creation, and helps avoid reference cycles.
..
.. 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-08-02-10-27-53 .. gh-issue: 137308 .. nonce: at05p_ .. section: Core and Builtins
A standalone docstring in a node body is optimized as a :keyword:pass
statement to ensure that the node's body is never empty. There was a
:exc:ValueError in :func:compile otherwise.
..
.. date: 2025-08-01-18-54-31 .. gh-issue: 137288 .. nonce: FhE7ku .. section: Core and Builtins
Fix bug where some bytecode instructions of a boolean expression are not associated with the correct exception handler.
..
.. date: 2025-07-31-23-02-02 .. gh-issue: 137291 .. nonce: kIxVZd .. section: Core and Builtins
The perf profiler can now be used if a previous frame evaluation API has been provided.
..
.. date: 2025-07-28-19-11-34 .. gh-issue: 134291 .. nonce: IiB9Id .. section: Core and Builtins
Remove some newer macOS API usage from the JIT compiler in order to restore compatibility with older OSX 10.15 deployment targets.
..
.. date: 2025-07-28-17-01-05 .. gh-issue: 88886 .. nonce: g4XFPb .. section: Core and Builtins
The codecs lookup function now again performs only minimal normalization of the encoding name before passing it to the search functions: all ASCII letters are converted to lower case, spaces are replaced with hyphens. This restores the pre-Python 3.9 behavior.
..
.. date: 2025-07-25-22-31-52 .. gh-issue: 131338 .. nonce: zJDCMp .. section: Core and Builtins
Disable computed stack limit checks on non-glibc linux platforms to fix crashes on deep recursion.
..
.. date: 2025-07-24-17-30-58 .. gh-issue: 136870 .. nonce: ncx82J .. section: Core and Builtins
Fix data races while de-instrumenting bytecode of code objects running concurrently in threads.
..
.. date: 2025-07-24-02-13-59 .. gh-issue: 132732 .. nonce: p77xkb .. section: Core and Builtins
Optimize constant comparison for _COMPARE_OP_INT, _COMPARE_OP_FLOAT
and _COMPARE_OP_STR in JIT builds
..
.. date: 2025-07-19-17-08-09 .. gh-issue: 127598 .. nonce: Mx8S-y .. section: Core and Builtins
Improve :exc:ModuleNotFoundError by adding flavour text to the exception
when the :option:-S option is passed. Patch by Andrea Mattei.
..
.. date: 2025-07-19-12-37-05 .. gh-issue: 136801 .. nonce: XU_tF2 .. section: Core and Builtins
Fix PyREPL syntax highlighting on match cases after multi-line case. Contributed by Olga Matoula.
..
.. date: 2025-07-19-10-35-31 .. gh-issue: 74185 .. nonce: 7hPCA5 .. section: Core and Builtins
The :meth:~object.__repr__ of :class:ImportError and
:class:ModuleNotFoundError now shows "name" and "path" as name=<name>
and path=<path> if they were given as keyword arguments at construction
time. Patch by Serhiy Storchaka, Oleg Iarygin, and Yoav Nir
..
.. date: 2025-07-18-08-43-35 .. gh-issue: 116738 .. nonce: i0HWtP .. section: Library
Make functions in :mod:syslog thread-safe on the :term:free threaded <free threading> build.
..
.. date: 2025-07-15-10-03-57 .. gh-issue: 116738 .. nonce: oFttKl .. section: Library
Make functions in :mod:pwd thread-safe on the :term:free threaded <free threading> build.
..
.. date: 2025-07-14-17-01-23 .. gh-issue: 136616 .. nonce: FQjXE_ .. section: Core and Builtins
Improve :exc:SyntaxError error messages for invalid :keyword:assert
usages.
..
.. date: 2025-07-13-21-21-17 .. gh-issue: 136599 .. nonce: sLhm2O .. section: Core and Builtins
Improve performance of :class:int hash calculations.
..
.. date: 2025-07-12-09-59-14 .. gh-issue: 136421 .. nonce: ZD1rNj .. section: Library
Fix crash when initializing :mod:datetime concurrently.
..
.. 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-11-12-29-09 .. gh-issue: 107545 .. nonce: ipfl7U .. section: Library
Improve the error messages that may be raised by
:meth:~socket.socket.setsockopt.
..
.. date: 2025-07-10-23-23-50 .. gh-issue: 136517 .. nonce: _NHJyv .. section: Core and Builtins
Fixed a typo that prevented printing of uncollectable objects when the
:const:gc.DEBUG_UNCOLLECTABLE mode was set.
..
.. date: 2025-07-10-15-53-16 .. gh-issue: 136525 .. nonce: xAko0e .. section: Core and Builtins
Fix issue where per-thread bytecode was not instrumented for newly created threads.
..
.. date: 2025-07-09-21-27-14 .. gh-issue: 132657 .. nonce: kSA8R3 .. section: Core and Builtins
Improve performance of :class:frozenset by removing locks in the
free-threading build.
..
.. date: 2025-07-09-11-15-42 .. gh-issue: 136459 .. nonce: m4Udh8 .. section: Core and Builtins
Add support for perf trampoline on macOS, to allow profilers wit JIT map
support to read Python calls. While profiling, PYTHONPERFSUPPORT=1 can
be appended to enable the trampoline.
..
.. date: 2025-07-08-23-53-51 .. gh-issue: 132661 .. nonce: B84iYt .. section: Core and Builtins
Interpolation.expression now has a default, the empty string.
..
.. date: 2025-07-08-23-22-08 .. gh-issue: 132661 .. nonce: 34ftJl .. section: Core and Builtins
Reflect recent :pep:750 change.
Disallow concatenation of string.templatelib.Template and :class:str.
Also, disallow implicit concatenation of t-string literals with string or
f-string literals.
..
.. date: 2025-07-07-17-26-06 .. gh-issue: 91636 .. nonce: GyHU72 .. section: Core and Builtins
While performing garbage collection, clear weakrefs to unreachable objects that are created during running of finalizers. If those weakrefs were are not cleared, they could reveal unreachable objects.
..
.. date: 2025-07-07-12-24-00 .. gh-issue: 136355 .. nonce: MTcA8j .. section: Core and Builtins
Deprecate :option:-b and :option:!-bb command line options and schedule
them to become no-op in Python 3.17.
..
.. 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-07-03-06-04-42 .. gh-issue: 135552 .. nonce: CbBQof .. section: Core and Builtins
Fix a bug caused by the garbage collector clearing weakrefs too early. The
weakrefs in the tp_subclasses dictionary are needed in order to
correctly invalidate type caches (for example, by calling
PyType_Modified()). Clearing weakrefs before calling finalizers causes
the caches to not be correctly invalidated. That can cause crashes since
the caches can refer to invalid objects. Defer the clearing of weakrefs
without callbacks until after finalizers are executed.
..
.. date: 2025-07-02-15-18-41 .. gh-issue: 136203 .. nonce: Y934sC .. section: Core and Builtins
Improve :exc:TypeError error message, when richcomparing two
:class:types.MappingProxyType objects.
..
.. date: 2025-06-26-18-44-34 .. gh-issue: 136003 .. nonce: sln51d .. section: Core and Builtins
Fix :class:threading.Thread objects becoming incorrectly daemon when
created from an :mod:atexit callback or a pending call
(:c:func:Py_AddPendingCall).
..
.. 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-24-16-46-34 .. gh-issue: 135904 .. nonce: 78xfon .. section: Core and Builtins
Perform more aggressive control-flow optimizations on the machine code templates emitted by the experimental JIT compiler.
..
.. date: 2025-06-24-06-41-47 .. gh-issue: 129958 .. nonce: EaJuS0 .. section: Core and Builtins
Differentiate between t-strings and f-strings in syntax error for newlines in format specifiers of single-quoted interpolated strings.
..
.. 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-20-14-50-44 .. gh-issue: 134584 .. nonce: 3CJdAI .. section: Core and Builtins
Specialize :opcode:POP_TOP in the JIT compiler by specializing for
reference lifetime and type. This will also enable easier top of stack
caching in the JIT compiler.
..
.. date: 2025-06-18-16-45-36 .. gh-issue: 135106 .. nonce: cpl6Aq .. section: Core and Builtins
Restrict the trashcan mechanism to GC'ed objects and untrack them while in the trashcan to prevent the GC and trashcan mechanisms conflicting.
..
.. date: 2025-06-18-12-19-13 .. gh-issue: 135379 .. nonce: TCvGpj .. section: Core and Builtins
Changes specialization of BINARY_OP for ints to only specialize for
"compact" ints. This streamlines the fast path at the cost of fewer
specializations when very large integers are used.
..
.. 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-17-12-50-48 .. gh-issue: 135608 .. nonce: PnHckD .. section: Core and Builtins
Fix a crash in the JIT involving attributes of modules.
..
.. date: 2025-06-17-08-37-45 .. gh-issue: 82088 .. nonce: TgPvLg .. section: Core and Builtins
Improve performance of PyLongObject conversion functions
PyLong_AsLongAndOverflow(), PyLong_AsSsize_t(),
PyLong_AsUnsignedLong(), PyLong_AsSize_t(),
PyLong_AsUnsignedLongMask(), PyLong_AsUnsignedLongLongMask(),
PyLong_AsLongLongAndOverflow() for integers larger than 2**30 up to 30%.
..
.. date: 2025-06-16-03-56-15 .. gh-issue: 135551 .. nonce: hRTQO- .. section: Core and Builtins
Sorting randomly ordered lists will often run a bit faster, thanks to a new scheme for picking minimum run lengths from Stefan Pochmann, which arranges for the merge tree to be as evenly balanced as is possible.
..
.. date: 2025-06-16-02-31-42 .. gh-issue: 135543 .. nonce: 6b0HOF .. section: Core and Builtins
Emit sys.remote_exec audit event when :func:sys.remote_exec is called
and migrate remote_debugger_script to
cpython.remote_debugger_script.
..
.. 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-13-16-05-24 .. gh-issue: 135474 .. nonce: 67nOl3 .. section: Core and Builtins
Specialize integer operations only on compact integers. This is a CPython internal change.
..
.. date: 2025-06-12-18-12-42 .. gh-issue: 135371 .. nonce: R_YUtR .. section: Core and Builtins
Fixed :mod:asyncio debugging tools to properly display internal coroutine
call stacks alongside external task dependencies. The python -m asyncio ps and python -m asyncio pstree commands now show complete execution
context. Patch by Pablo Galindo.
..
.. date: 2025-06-12-11-19-52 .. gh-issue: 135422 .. nonce: F6yQi6 .. section: Core and Builtins
Fix regression in :exc:SyntaxError messages after :gh:134036.
..
.. date: 2025-06-12-00-03-34 .. gh-issue: 116738 .. nonce: iBBAdo .. section: Library
Make functions in :mod:grp thread-safe on the :term:free threaded <free threading> build.
..
.. date: 2025-06-11-15-08-10 .. gh-issue: 127319 .. nonce: OVGFSZ .. section: Library
Set the allow_reuse_port class variable to False on the XMLRPC,
logging, and HTTP servers. This matches the behavior in prior Python
releases, which is to not allow port reuse.
..
.. 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-08-14-24-29 .. gh-issue: 131798 .. nonce: qfw91T .. section: Core and Builtins
Optimize _CALL_LEN in the JIT when the length is known. Patch by Tomas Roun
..
.. date: 2025-06-06-19-17-22 .. gh-issue: 131798 .. nonce: XoV8Eb .. section: Core and Builtins
Optimize _UNARY_NEGATIVE in JIT-compiled code.
..
.. 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-06-01-09-44 .. gh-issue: 131798 .. nonce: 1SuxO9 .. section: Core and Builtins
Optimize _UNARY_INVERT in JIT-compiled code.
..
.. date: 2025-06-05-21-58-30 .. gh-issue: 131798 .. nonce: nt5Ab7 .. section: Core and Builtins
Optimize away _CALL_TYPE_1 in the JIT when the return type is known.
Patch by Tomas Roun
..
.. 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-06-02-20-13-37 .. gh-issue: 131798 .. nonce: JQRFvR .. section: Core and Builtins
Optimize _CHECK_METHOD_VERSION into _CHECK_FUNCTION_VERSION_INLINE
in JIT-compiled code.
..
.. date: 2025-06-02-13-57-40 .. gh-issue: 116738 .. nonce: ycJsL8 .. section: Library
Make methods in :mod:heapq thread-safe on the :term:free threaded <free threading> build.
..
.. date: 2025-05-31-19-24-54 .. gh-issue: 134280 .. nonce: NDVbzY .. section: Core and Builtins
Disable constant folding for ~ with a boolean argument. This moves the
deprecation warning from compile time to runtime.
..
.. date: 2025-05-31-10-26-46 .. gh-issue: 134876 .. nonce: 8mBGJI .. section: Core and Builtins
Add support to :pep:768 remote debugging for Linux kernels which don't
have CONFIG_CROSS_MEMORY_ATTACH configured.
..
.. date: 2025-05-30-18-09-54 .. gh-issue: 134889 .. nonce: Ic9UM- .. section: Core and Builtins
Fix handling of a few opcodes that leave operands on the stack when
optimizing LOAD_FAST.
..
.. date: 2025-05-30-15-56-19 .. gh-issue: 134908 .. nonce: 3a7PxM .. section: Library
Fix crash when iterating over lines in a text file on the :term:free threaded <free threading> build.
..
.. date: 2025-05-28-23-58-50 .. gh-issue: 117852 .. nonce: BO9g7z .. section: Core and Builtins
Fix argument checking of :meth:~agen.athrow.
..
.. 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-27-20-21-34 .. gh-issue: 131798 .. nonce: b32zkl .. section: Core and Builtins
Allow the JIT to remove unnecessary _ITER_CHECK_TUPLE ops.
..
.. date: 2025-05-27-18-59-54 .. gh-issue: 134679 .. nonce: FWPBu6 .. section: Core and Builtins
Fix crash in the :term:free threading build's QSBR code that could occur
when changing an object's __dict__ attribute.
..
.. date: 2025-05-26-15-55-50 .. gh-issue: 133912 .. nonce: -xAguL .. section: Core and Builtins
Fix the C API function PyObject_GenericSetDict to handle extension
classes with inline values.
..
.. date: 2025-05-25-19-32-15 .. gh-issue: 131798 .. nonce: f5h8aI .. section: Core and Builtins
Make the JIT optimizer understand that slicing a string/list/tuple returns the same type.
..
.. date: 2025-05-23-14-54-07 .. gh-issue: 134584 .. nonce: y-WDjf .. section: Core and Builtins
Add a reference count elimination pass to the JIT compiler. Patch by Ken Jin.
..
.. date: 2025-05-22-17-49-39 .. gh-issue: 131798 .. nonce: U6ZmFm .. section: Core and Builtins
Optimize _POP_CALL_TWO_LOAD_CONST_INLINE_BORROW.
..
.. date: 2025-05-22-14-48-19 .. gh-issue: 134381 .. nonce: 2BXhth .. section: Library
Fix :exc:RuntimeError when using a not-started :class:threading.Thread
after calling :func:os.fork
..
.. date: 2025-05-21-18-02-56 .. gh-issue: 127960 .. nonce: W3J_2X .. section: Core and Builtins
PyREPL interactive shell no longer starts with __package__ and
__file__ global names set to _pyrepl package internals. Contributed
by Yuichiro Tachibana.
..
.. date: 2025-05-21-15-14-32 .. gh-issue: 130397 .. nonce: aG6EON .. section: Core and Builtins
Remove special-casing for C stack depth limits for WASI. Due to WebAssembly's built-in stack protection this does not pose a security concern.
..
.. date: 2025-05-21-13-57-26 .. gh-issue: 131798 .. nonce: QwS5Bb .. section: Core and Builtins
JIT: replace _LOAD_SMALL_INT with _LOAD_CONST_INLINE_BORROW
..
.. date: 2025-05-20-23-32-11 .. gh-issue: 131798 .. nonce: G9ZQZw .. section: Core and Builtins
Improve the JIT's ability to optimize away cached class attribute and method loads.
..
.. date: 2025-05-20-14-41-50 .. gh-issue: 128066 .. nonce: qzzGfv .. section: Core and Builtins
Fixes an edge case where PyREPL improperly threw an error when Python is invoked on a read only filesystem while trying to write history file entries.
..
.. date: 2025-05-20-13-58-18 .. gh-issue: 131798 .. nonce: hG8xBw .. section: Core and Builtins
Improve the JIT's ability to narrow unknown classes to constant values.
..
.. date: 2025-05-19-20-52-53 .. gh-issue: 134268 .. nonce: HPKX1e .. section: Core and Builtins
Add _POP_CALL_TWO_LOAD_CONST_INLINE_BORROW and use it to further
optimize CALL_ISINSTANCE.
..
.. date: 2025-05-19-15-15-58 .. gh-issue: 131798 .. nonce: PCP71j .. section: Core and Builtins
Split CALL_LIST_APPEND into several uops. Patch by Diego Russo.
..
.. date: 2025-05-18-14-33-23 .. gh-issue: 69605 .. nonce: ZMO49F .. section: Core and Builtins
When auto-completing an import in the :term:REPL, finding no candidates
now issues no suggestion, rather than suggestions from the current
namespace.
..
.. date: 2025-05-18-10-50-46 .. gh-issue: 134170 .. nonce: J0Hvmi .. section: Core and Builtins
Add colorization to :func:sys.unraisablehook by default.
..
.. 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-05-17-20-44-51 .. gh-issue: 134158 .. nonce: ewLNLp .. section: Core and Builtins
Fix coloring of double braces in f-strings and t-strings in the
:term:REPL.
..
.. date: 2025-05-16-20-59-12 .. gh-issue: 134119 .. nonce: w8expI .. section: Core and Builtins
Fix crash when calling :func:next on an exhausted template string
iterator. Patch by Jelle Zijlstra.
..
.. date: 2025-05-16-17-25-52 .. gh-issue: 134100 .. nonce: 5-FbLK .. section: Core and Builtins
Fix a use-after-free bug that occurs when an imported module isn't in
:data:sys.modules after its initial import. Patch by Nico-Posada.
..
.. date: 2025-05-16-09-06-38 .. gh-issue: 134036 .. nonce: st2e-B .. section: Core and Builtins
Improve :exc:SyntaxError message when using invalid :keyword:raise
statements.
..
.. date: 2025-05-15-11-38-16 .. gh-issue: 133999 .. nonce: uBZ8uS .. section: Core and Builtins
Fix :exc:SyntaxError regression in :keyword:except parsing after
:gh:123440.
..
.. date: 2025-05-11-13-40-42 .. gh-issue: 133886 .. nonce: ryBAyo .. section: Core and Builtins
Fix :func:sys.remote_exec for non-ASCII paths in non-UTF-8 locales and
non-UTF-8 paths in UTF-8 locales.
..
.. date: 2025-05-11-09-40-19 .. gh-issue: 133400 .. nonce: zkWla8 .. section: Core and Builtins
Fixed Ctrl+D (^D) behavior in _pyrepl module to match old pre-3.13 REPL behavior.
..
.. date: 2025-05-10-17-12-27 .. gh-issue: 133703 .. nonce: bVM-re .. section: Core and Builtins
Fix hashtable in dict can be bigger than intended in some situations.
..
.. date: 2025-05-09-18-11-21 .. gh-issue: 133778 .. nonce: pWEV3t .. section: Core and Builtins
Fix bug where assigning to the :attr:~type.__annotations__ attributes of
classes defined under from __future__ import annotations had no effect.
..
.. date: 2025-05-08-22-19-10 .. gh-issue: 133711 .. nonce: e91wUy .. section: Core and Builtins
Implement :pep:686: Enable :ref:Python UTF-8 Mode <utf8-mode> by
default. Patch by Adam Turner.
..
.. date: 2025-05-08-13-48-02 .. gh-issue: 132762 .. nonce: tKbygC .. section: Core and Builtins
:meth:~dict.fromkeys no longer loops forever when adding a small set of
keys to a large base dict. Patch by Angela Liss.
..
.. date: 2025-05-07-23-26-53 .. gh-issue: 133541 .. nonce: bHIC55 .. section: Core and Builtins
Inconsistent indentation in user input crashed the new REPL when syntax highlighting was active. This is now fixed.
..
.. date: 2025-05-06-15-01-41 .. gh-issue: 133516 .. nonce: RqWVf2 .. section: Core and Builtins
Raise :exc:ValueError when constants True, False or None are
used as an identifier after NFKC normalization.
..
.. date: 2025-05-03-22-31-53 .. gh-issue: 131798 .. nonce: fQ0ato .. section: Core and Builtins
Allow the JIT to remove int guards after _GET_LEN by setting the return
type to int.
..
.. date: 2025-05-03-13-36-01 .. gh-issue: 131798 .. nonce: U4_QEJ .. section: Core and Builtins
Split CALL_ISINSTANCE into several uops, allowing the JIT to remove some
of them.
..
.. date: 2025-04-30-14-13-01 .. gh-issue: 132554 .. nonce: GqQaUp .. section: Core and Builtins
Change iteration to use "virtual iterators" for sequences. Instead of
creating an iterator, a tagged integer representing the next index is pushed
to the stack above the iterable. For non-sequence iterators, NULL is
pushed.
..
.. date: 2025-04-28-18-59-11 .. gh-issue: 130821 .. nonce: B11LU1 .. section: Core and Builtins
Enhance wrong type error messages and make them more consistent. Patch by Semyon Moroz.
..
.. date: 2025-04-26-17-50-01 .. gh-issue: 131798 .. nonce: XiOgw5 .. section: Core and Builtins
Narrow the return type and constant-evaluate CALL_ISINSTANCE for a
subset of known values in the JIT. Patch by Tomas Roun
..
.. date: 2025-04-19-17-16-46 .. gh-issue: 132542 .. nonce: 7T_TY_ .. section: Core and Builtins
Update :attr:Thread.native_id <threading.Thread.native_id> after
:manpage:fork(2) to ensure accuracy. Patch by Noam Cohen.
..
.. date: 2025-04-19-16-22-47 .. gh-issue: 132732 .. nonce: jgqhlF .. section: Library
Automatically constant evaluate bytecode operations marked as pure in the JIT optimizer.
..
.. 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: 2025-04-10-01-52-42 .. gh-issue: 132042 .. nonce: fePwlj .. section: Core and Builtins
Improve class creation times by up to 12% by pre-computing type slots just once. Patch by Sergey Miryanov.
..
.. date: 2025-04-04-16-41-00 .. gh-issue: 133379 .. nonce: asdjhjdf .. section: Core and Builtins
Correct usage of arguments in error messages.
..
.. date: 2025-03-14-13-08-20 .. gh-issue: 127266 .. nonce: _tyfBp .. section: Core and Builtins
In the free-threaded build, avoid data races caused by updating type slots or type flags after the type was initially created. For those (typically rare) cases, use the stop-the-world mechanism. Remove the use of atomics when reading or writing type flags. The use of atomics is not sufficient to avoid races (since flags are sometimes read without a lock and without atomics) and are no longer required.
..
.. date: 2025-02-22-01-23-23 .. gh-issue: 130425 .. nonce: x5SNQ8 .. section: Core and Builtins
Add "Did you mean: 'attr'?" suggestion when using del obj.attr if
attr does not exist.
..
.. date: 2025-01-08-12-52-47 .. gh-issue: 128640 .. nonce: 9nbh9z .. section: Core and Builtins
Fix a crash when using threads inside of a subinterpreter.
..
.. date: 2024-06-04-20-26-21 .. gh-issue: 116738 .. nonce: q_hPYq .. section: Library
Make the module :mod:json safe to use under the free-threading build.
..
.. date: 2024-05-24-07-02-47 .. gh-issue: 119494 .. nonce: x3KUMC .. section: Core and Builtins
Exception text when trying to delete attributes of types was clarified.
..
.. date: 2025-10-10-20-59-07 .. gh-issue: 139924 .. nonce: ALByCb .. section: C API
Function watchers can now receive a PyFunction_PYFUNC_EVENT_MODIFY_QUALNAME event when a watched functions qualname is changed.
..
.. date: 2025-10-07-12-51-32 .. gh-issue: 111489 .. nonce: LCKKlg .. section: C API
Add :c:func:PyTuple_FromArray to create a :class:tuple from an array.
Patch by Victor Stinner.
..
.. date: 2025-09-14-14-44-24 .. gh-issue: 136355 .. nonce: LCaYyC .. section: C API
Deprecate :c:member:PyConfig.bytes_warning field and schedule its removal
in 3.17.
..
.. date: 2025-09-14-13-09-47 .. gh-issue: 138886 .. nonce: dlcTXL .. section: C API
Remove deprecated :c:func:!PySys_ResetWarnOptions C-API function.
..
.. date: 2025-09-12-13-05-20 .. gh-issue: 129813 .. nonce: dJZpME .. section: C API
Implement :pep:782, the :c:type:PyBytesWriter API. Add functions:
PyBytesWriter_CreatePyBytesWriter_DiscardPyBytesWriter_FinishWithPointerPyBytesWriter_FinishWithSizePyBytesWriter_FinishPyBytesWriter_FormatPyBytesWriter_GetDataPyBytesWriter_GetSizePyBytesWriter_GrowAndUpdatePointerPyBytesWriter_GrowPyBytesWriter_ResizePyBytesWriter_WriteBytesPatch by Victor Stinner.
..
.. date: 2025-08-19-15-31-36 .. gh-issue: 137956 .. nonce: P4TK1d .. section: C API
Display and raise an exception if an extension compiled for non-free-threaded Python is loaded in a free-threaded interpreter.
..
.. date: 2025-08-13-13-41-04 .. gh-issue: 137573 .. nonce: r6uwRf .. section: C API
Mark _PyOptimizer_Optimize as :c:macro:Py_NO_INLINE to prevent stack
overflow crashes on macOS.
..
.. date: 2025-07-31-04-30-42 .. gh-issue: 128813 .. nonce: opL-Pv .. section: C API
Functions :c:func:_Py_c_sum, :c:func:_Py_c_diff, :c:func:_Py_c_neg,
:c:func:_Py_c_prod, :c:func:_Py_c_quot, :c:func:_Py_c_pow and
previously undocumented :c:func:_Py_c_abs are :term:soft deprecated.
Deprecate also :c:member:~PyComplexObject.cval field of the
:c:type:PyComplexObject type. Patch by Sergey B Kirpichev.
..
.. date: 2025-07-29-18-00-22 .. gh-issue: 137210 .. nonce: DD4VEm .. section: C API
Add API for checking an extension module's ABI compatibility:
:c:data:Py_mod_abi, :c:func:PyABIInfo_Check, :c:macro:PyABIInfo_VAR
and :c:data:Py_mod_abi.
..
.. date: 2025-07-23-22-30-23 .. gh-issue: 136759 .. nonce: ffB4wO .. section: C API
Rename lock.h to pylock.h to avoid potential include conflicts.
..
.. date: 2025-07-22-15-18-08 .. gh-issue: 112068 .. nonce: 4WvT-8 .. section: C API
Revert support of nullable arguments in :c:func:PyArg_Parse.
..
.. date: 2025-07-08-22-07-54 .. gh-issue: 136006 .. nonce: XRU5w4 .. section: C API
On Solaris, the :c:macro:!Py_NAN macro now expands to a :c:type:!double
instead of a function address. Patch by Bénédikt Tran.
..
.. date: 2025-07-01-16-22-39 .. gh-issue: 135075 .. nonce: angu3J .. section: C API
Make :c:func:PyObject_SetAttr and :c:func:PyObject_SetAttrString fail if
called with NULL value and an exception set. Patch by Victor Stinner.
..
.. date: 2025-06-25-01-03-10 .. gh-issue: 135906 .. nonce: UBrCWq .. section: C API
Fix compilation errors when compiling the internal headers with a C++ compiler.
..
.. date: 2025-06-24-11-10-01 .. gh-issue: 133296 .. nonce: lIEuVJ .. section: C API
New variants for the critical section API that accept one or two
:c:type:PyMutex pointers rather than :c:type:PyObject instances are now
public in the non-limited C API.
..
.. date: 2025-06-19-12-47-18 .. gh-issue: 133157 .. nonce: 1WA85f .. section: C API
Remove the private, undocumented macro
:c:macro:!_Py_NO_SANITIZE_UNDEFINED.
..
.. date: 2025-06-05-11-06-07 .. gh-issue: 134989 .. nonce: 74p4ud .. section: C API
Fix Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE macros in
the limited C API 3.11 and older: don't treat Py_None, Py_True and
Py_False as immortal. Patch by Victor Stinner.
..
.. date: 2025-06-02-13-19-22 .. gh-issue: 134989 .. nonce: sDDyBN .. section: C API
Implement :c:func:PyObject_DelAttr and :c:func:PyObject_DelAttrString as
macros in the limited C API 3.12 and older. Patch by Victor Stinner.
..
.. date: 2025-05-30-11-33-17 .. gh-issue: 134745 .. nonce: GN-zk2 .. section: C API
Change :c:func:!PyThread_allocate_lock implementation to PyMutex. On
Windows, :c:func:!PyThread_acquire_lock_timed now supports the intr_flag
parameter: it can be interrupted. Patch by Victor Stinner.
..
.. date: 2025-05-29-16-56-23 .. gh-issue: 134891 .. nonce: 7eKO8U .. section: C API
Add :c:type:PyUnstable_Unicode_GET_CACHED_HASH to get the cached hash of a
string.
..
.. date: 2025-05-20-17-13-51 .. gh-issue: 134009 .. nonce: CpCmry .. section: C API
Expose :c:func:PyMutex_IsLocked as part of the public C API.
..
.. date: 2025-05-17-14-41-21 .. gh-issue: 134144 .. nonce: xVpZik .. section: C API
Fix crash when calling :c:func:Py_EndInterpreter with a :term:thread state that isn't the initial thread for the interpreter.
..
.. date: 2025-05-13-16-06-46 .. gh-issue: 133968 .. nonce: 6alWst .. section: C API
Add :c:func:PyUnicodeWriter_WriteASCII function to write an ASCII string
into a :c:type:PyUnicodeWriter. The function is faster than
:c:func:PyUnicodeWriter_WriteUTF8, but has an undefined behavior if the
input string contains non-ASCII characters. Patch by Victor Stinner.
..
.. date: 2025-05-08-13-14-45 .. gh-issue: 133644 .. nonce: J8_KZ2 .. section: C API
Remove deprecated Python initialization getter functions Py_Get*. Patch
by Bénédikt Tran.
..
.. date: 2025-05-08-12-40-59 .. gh-issue: 133644 .. nonce: FNexLJ .. section: C API
Remove deprecated function :c:func:!PyWeakref_GetObject and macro
:c:macro:!PyWeakref_GET_OBJECT. Use :c:func:PyWeakref_GetRef instead.
Patch by Bénédikt Tran.
..
.. date: 2025-05-08-12-25-47 .. gh-issue: 133644 .. nonce: Yb86Rm .. section: C API
Remove deprecated alias :c:func:!PyImport_ImportModuleNoBlock of
:c:func:PyImport_ImportModule. Patch by Bénédikt Tran.
..
.. date: 2025-05-07-21-18-00 .. gh-issue: 133610 .. nonce: asdfjs .. section: C API
Remove deprecated functions :c:func:!PyUnicode_AsDecodedObject,
:c:func:!PyUnicode_AsDecodedUnicode, :c:func:!PyUnicode_AsEncodedObject,
and :c:func:!PyUnicode_AsEncodedUnicode.
..
.. date: 2025-04-17-12-37-27 .. gh-issue: 132629 .. nonce: 01ArwX .. section: C API
For unsigned integer formats in :c:func:PyArg_ParseTuple, accepting Python
integers with value that is larger than the maximal value for the C type or
less than the minimal value for the corresponding signed integer type of the
same size is now deprecated.
..
.. date: 2025-04-14-07-41-28 .. gh-issue: 131185 .. nonce: ZCjMHD .. section: C API
:c:func:PyGILState_Ensure no longer crashes when called after interpreter
finalization.
..
.. date: 2023-10-18-14-36-35 .. gh-issue: 108512 .. nonce: fMZLfr .. section: C API
Add functions :c:func:PySys_GetAttr, :c:func:PySys_GetAttrString,
:c:func:PySys_GetOptionalAttr and :c:func:PySys_GetOptionalAttrString.
..
.. date: 2025-09-24-13-59-26 .. gh-issue: 138489 .. nonce: 1AcuZM .. section: Build
When cross-compiling for WASI by build_wasm or build_emscripten, the
build-details.json step is now included in the build process, just like
with native builds.
This fixes the libinstall task which requires the build-details.json
file during the process.
..
.. date: 2025-09-04-12-16-31 .. gh-issue: 138497 .. nonce: Y_5YXh .. section: Build
The LLVM version used by the JIT at build time can now be modified using the
LLVM_VERSION environment variable. Use this at your own risk, as there
is only one officially supported LLVM version. For more information, please
check Tools/jit/README.md.
..
.. date: 2025-08-27-11-32-02 .. gh-issue: 95952 .. nonce: KSymc7 .. section: Build
When cross-compiling for WASI, require that the HOSTRUNNER environment variable be explicitly set.
This was needed as macOS lacks the appropriate CLI tools to set a reasonable default.
..
.. date: 2025-08-27-09-52-45 .. gh-issue: 138061 .. nonce: fMVS9w .. section: Build
Ensure reproducible builds by making JIT stencil header generation deterministic.
..
.. date: 2025-08-26-21-18-32 .. gh-issue: 128042 .. nonce: 5voC8H .. section: Build
./configure now warns when --enable-optimizations and CFLAGS=-O0
are both set, suggesting removing -O0 from CFLAGS for optimal
performance. Patch by Taegyun Kim.
..
.. date: 2025-08-13-12-10-12 .. gh-issue: 132339 .. nonce: 3Czz5y .. section: Build
Add support for OpenSSL 3.5.
..
.. date: 2025-07-18-17-15-00 .. gh-issue: 135621 .. nonce: 9cyCNb .. section: Build
PyREPL no longer depends on the :mod:curses standard library. Contributed
by Łukasz Langa.
..
.. date: 2025-06-25-13-27-14 .. gh-issue: 135927 .. nonce: iCNPQc .. section: Build
Fix building with MSVC when passing option /std:clatest.
..
.. date: 2025-06-16-07-20-28 .. gh-issue: 119132 .. nonce: fcI8s7 .. section: Build
Remove "experimental" tag from the CPython free-threading build.
..
.. date: 2025-06-14-10-32-11 .. gh-issue: 135497 .. nonce: ajlV4F .. section: Build
Fix the detection of MAXLOGNAME in the configure.ac script.
..
.. date: 2025-05-30-11-02-30 .. gh-issue: 134923 .. nonce: gBkRg4 .. section: Build
Windows builds with profile-guided optimization enabled now use
/GENPROFILE and /USEPROFILE instead of deprecated /LTCG:
options.
..
.. date: 2025-05-24-16-59-20 .. gh-issue: 134632 .. nonce: i0W2hc .. section: Build
Fixed build-details.json generation to use INCLUDEPY, in order to
reference the pythonX.Y subdirectory of the include directory, as
required in :pep:739, instead of the top-level include directory.
..
.. date: 2025-05-21-22-13-30 .. gh-issue: 134486 .. nonce: yvdL6f .. section: Build
The :mod:ctypes module now performs a more portable test for the
definition of :manpage:alloca(3), fixing a compilation failure on NetBSD.
..
.. date: 2025-05-21-19-46-28 .. gh-issue: 134455 .. nonce: vdwlrq .. section: Build
Fixed build-details.json generation to use the correct c_api.headers
as defined in :pep:739, instead of c_api.include.
..
.. date: 2025-05-19-18-09-20 .. gh-issue: 134273 .. nonce: ZAliyy .. section: Build
Add support for configuring compiler flags for the JIT with CFLAGS_JIT
..
.. date: 2025-05-16-07-46-06 .. gh-issue: 115119 .. nonce: ALBgS_ .. section: Build
Removed implicit fallback to the bundled copy of the libmpdec library.
Now this should be explicitly enabled via :option:--with-system-libmpdec
set to no or :option:!--without-system-libmpdec. Patch by Sergey B
Kirpichev.
..
.. date: 2025-05-14-09-43-48 .. gh-issue: 131769 .. nonce: H0oy5x .. section: Build
Fix detecting when the build Python in a cross-build is a pydebug build.
..
.. date: 2025-04-16-09-38-48 .. gh-issue: 117088 .. nonce: EFt_5c .. section: Build
AIX linker don't support -h option, so avoid it through platform check
..
.. date: 2025-01-03-13-02-06 .. gh-issue: 123681 .. nonce: gQ67nK .. section: Build
Check the strftime() behavior at runtime instead of at the compile time
to support cross-compiling. Remove the internal macro
_Py_NORMALIZE_CENTURY.
..
.. date: 2024-12-04-10-00-35 .. gh-issue: 127545 .. nonce: t0THjE .. section: Build
Fix crash when building on Linux/m68k.