Python 3.15.0a2

This commit is contained in:
Hugo van Kemenade 2025-11-18 16:50:49 +02:00
parent f46785f8bc
commit a62562859d
192 changed files with 1811 additions and 394 deletions

View file

@ -353,4 +353,4 @@ Importing Modules
On error, return NULL with an exception set. On error, return NULL with an exception set.
.. versionadded:: next .. versionadded:: 3.15

View file

@ -1390,7 +1390,7 @@ All of the following functions must be called after :c:func:`Py_Initialize`.
See :c:func:`PyUnstable_ThreadState_ResetStackProtection` for undoing this operation. See :c:func:`PyUnstable_ThreadState_ResetStackProtection` for undoing this operation.
.. versionadded:: next .. versionadded:: 3.15
.. c:function:: void PyUnstable_ThreadState_ResetStackProtection(PyThreadState *tstate) .. c:function:: void PyUnstable_ThreadState_ResetStackProtection(PyThreadState *tstate)
@ -1400,7 +1400,7 @@ All of the following functions must be called after :c:func:`Py_Initialize`.
See :c:func:`PyUnstable_ThreadState_SetStackProtection` for an explanation. See :c:func:`PyUnstable_ThreadState_SetStackProtection` for an explanation.
.. versionadded:: next .. versionadded:: 3.15
.. c:function:: PyInterpreterState* PyInterpreterState_Get(void) .. c:function:: PyInterpreterState* PyInterpreterState_Get(void)

View file

@ -2261,7 +2261,7 @@ and classes for traversing abstract syntax trees:
The minimum supported version for ``feature_version`` is now ``(3, 7)``. The minimum supported version for ``feature_version`` is now ``(3, 7)``.
The ``optimize`` argument was added. The ``optimize`` argument was added.
.. versionadded:: next .. versionadded:: 3.15
Added the *module* parameter. Added the *module* parameter.

View file

@ -1575,7 +1575,7 @@ Constants
Specification that this implementation complies with. Specification that this implementation complies with.
See https://speleotrove.com/decimal/decarith.html for the specification. See https://speleotrove.com/decimal/decarith.html for the specification.
.. versionadded:: next .. versionadded:: 3.15
The following constants are only relevant for the C module. They The following constants are only relevant for the C module. They

View file

@ -377,7 +377,7 @@ are always available. They are listed here in alphabetical order.
``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable ``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable
support for top-level ``await``, ``async for``, and ``async with``. support for top-level ``await``, ``async for``, and ``async with``.
.. versionadded:: next .. versionadded:: 3.15
Added the *module* parameter. Added the *module* parameter.

View file

@ -716,7 +716,7 @@ The :mod:`functools` module defines the following functions:
.. versionadded:: 3.8 .. versionadded:: 3.8
.. versionchanged:: next .. versionchanged:: 3.15
Added support of non-:term:`descriptor` callables. Added support of non-:term:`descriptor` callables.

View file

@ -480,7 +480,7 @@ ABC hierarchy::
.. versionchanged:: 3.5 .. versionchanged:: 3.5
Made the method static. Made the method static.
.. versionadded:: next .. versionadded:: 3.15
Added the *fullname* parameter. Added the *fullname* parameter.
@ -1048,7 +1048,7 @@ find and load modules.
:meth:`PathFinder.invalidate_caches` invalidates :class:`NamespacePath`, :meth:`PathFinder.invalidate_caches` invalidates :class:`NamespacePath`,
forcing the path value to be recomputed next time it is accessed. forcing the path value to be recomputed next time it is accessed.
.. versionadded:: next .. versionadded:: 3.15
.. class:: SourceFileLoader(fullname, path) .. class:: SourceFileLoader(fullname, path)

View file

@ -636,7 +636,7 @@ Retrieving source code
.. versionchanged:: 3.5 .. versionchanged:: 3.5
Documentation strings are now inherited if not overridden. Documentation strings are now inherited if not overridden.
.. versionchanged:: next .. versionchanged:: 3.15
Added parameters *inherit_class_doc* and *fallback_to_class_doc*. Added parameters *inherit_class_doc* and *fallback_to_class_doc*.
Documentation strings on :class:`~functools.cached_property` Documentation strings on :class:`~functools.cached_property`

View file

@ -4,7 +4,7 @@
.. module:: math.integer .. module:: math.integer
:synopsis: Integer-specific mathematics functions. :synopsis: Integer-specific mathematics functions.
.. versionadded:: next .. versionadded:: 3.15
-------------- --------------

View file

@ -781,7 +781,7 @@ the following functions from the :mod:`math.integer` module:
Floats with integral values (like ``5.0``) are no longer accepted in the Floats with integral values (like ``5.0``) are no longer accepted in the
:func:`factorial` function. :func:`factorial` function.
.. deprecated:: next .. deprecated:: 3.15
These aliases are :term:`soft deprecated` in favor of the These aliases are :term:`soft deprecated` in favor of the
:mod:`math.integer` functions. :mod:`math.integer` functions.

View file

@ -3404,7 +3404,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. class:: statx_result .. class:: statx_result
@ -3661,7 +3661,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. data:: STATX_TYPE .. data:: STATX_TYPE
@ -3690,7 +3690,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. data:: AT_STATX_FORCE_SYNC .. data:: AT_STATX_FORCE_SYNC
@ -3700,7 +3700,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. data:: AT_STATX_DONT_SYNC .. data:: AT_STATX_DONT_SYNC
@ -3709,7 +3709,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. data:: AT_STATX_SYNC_AS_STAT .. data:: AT_STATX_SYNC_AS_STAT
@ -3721,7 +3721,7 @@ features:
.. availability:: Linux >= 4.11 with glibc >= 2.28. .. availability:: Linux >= 4.11 with glibc >= 2.28.
.. versionadded:: next .. versionadded:: 3.15
.. data:: AT_NO_AUTOMOUNT .. data:: AT_NO_AUTOMOUNT
@ -3733,7 +3733,7 @@ features:
.. availability:: Linux. .. availability:: Linux.
.. versionadded:: next .. versionadded:: 3.15
.. function:: statvfs(path) .. function:: statvfs(path)

View file

@ -511,4 +511,4 @@ meaning of these constants.
STATX_ATTR_DAX STATX_ATTR_DAX
STATX_ATTR_WRITE_ATOMIC STATX_ATTR_WRITE_ATOMIC
.. versionadded:: next .. versionadded:: 3.15

View file

@ -3191,7 +3191,7 @@ objects.
Taking all bytes is a zero-copy operation. Taking all bytes is a zero-copy operation.
.. versionadded:: next .. versionadded:: 3.15
See the :ref:`What's New <whatsnew315-bytearray-take-bytes>` entry for See the :ref:`What's New <whatsnew315-bytearray-take-bytes>` entry for
common code patterns which can be optimized with common code patterns which can be optimized with

View file

@ -30,7 +30,7 @@ Generating Symbol Tables
It is needed to unambiguous :ref:`filter <warning-filter>` syntax warnings It is needed to unambiguous :ref:`filter <warning-filter>` syntax warnings
by module name. by module name.
.. versionadded:: next .. versionadded:: 3.15
Added the *module* parameter. Added the *module* parameter.

View file

@ -156,7 +156,7 @@ following functions:
>>> unicodedata.isxidstart('0') >>> unicodedata.isxidstart('0')
False False
.. versionadded:: next .. versionadded:: 3.15
.. function:: isxidcontinue(chr, /) .. function:: isxidcontinue(chr, /)
@ -171,7 +171,7 @@ following functions:
>>> unicodedata.isxidcontinue(' ') >>> unicodedata.isxidcontinue(' ')
False False
.. versionadded:: next .. versionadded:: 3.15
.. function:: decomposition(chr, /) .. function:: decomposition(chr, /)

View file

@ -513,7 +513,7 @@ Available Functions
.. versionchanged:: 3.6 .. versionchanged:: 3.6
Add the *source* parameter. Add the *source* parameter.
.. versionchanged:: next .. versionchanged:: 3.15
If no module is passed, test the filter regular expression against If no module is passed, test the filter regular expression against
module names created from the path, not only the path itself. module names created from the path, not only the path itself.

View file

@ -818,6 +818,6 @@ integer handle, and also disconnect the Windows handle from the handle object.
will automatically close *key* when control leaves the :keyword:`with` block. will automatically close *key* when control leaves the :keyword:`with` block.
.. versionchanged:: next .. versionchanged:: 3.15
Handle objects are now compared by their underlying Windows handle value Handle objects are now compared by their underlying Windows handle value
instead of object identity for equality comparisons. instead of object identity for equality comparisons.

View file

@ -656,7 +656,7 @@ Functions
.. versionchanged:: 3.13 .. versionchanged:: 3.13
Added the :meth:`!close` method. Added the :meth:`!close` method.
.. versionchanged:: next .. versionchanged:: 3.15
A :exc:`ResourceWarning` is now emitted if the iterator opened a file A :exc:`ResourceWarning` is now emitted if the iterator opened a file
and is not explicitly closed. and is not explicitly closed.

View file

@ -24,10 +24,10 @@
#define PY_MINOR_VERSION 15 #define PY_MINOR_VERSION 15
#define PY_MICRO_VERSION 0 #define PY_MICRO_VERSION 0
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
#define PY_RELEASE_SERIAL 1 #define PY_RELEASE_SERIAL 2
/* Version as a string */ /* Version as a string */
#define PY_VERSION "3.15.0a1+" #define PY_VERSION "3.15.0a2"
/*--end constants--*/ /*--end constants--*/

View file

@ -1,4 +1,4 @@
# Autogenerated by Sphinx on Tue Oct 14 13:46:01 2025 # Autogenerated by Sphinx on Tue Nov 18 16:51:09 2025
# as part of the release process. # as part of the release process.
topics = { topics = {
@ -1098,10 +1098,10 @@ class and instance attributes applies as for regular assignments.
'bltin-ellipsis-object': r'''The Ellipsis Object 'bltin-ellipsis-object': r'''The Ellipsis Object
******************* *******************
This object is commonly used used to indicate that something is This object is commonly used to indicate that something is omitted. It
omitted. It supports no special operations. There is exactly one supports no special operations. There is exactly one ellipsis object,
ellipsis object, named "Ellipsis" (a built-in name). named "Ellipsis" (a built-in name). "type(Ellipsis)()" produces the
"type(Ellipsis)()" produces the "Ellipsis" singleton. "Ellipsis" singleton.
It is written as "Ellipsis" or "...". It is written as "Ellipsis" or "...".
@ -4140,6 +4140,10 @@ def double(x):
available for commands and command arguments, e.g. the current global available for commands and command arguments, e.g. the current global
and local names are offered as arguments of the "p" command. and local names are offered as arguments of the "p" command.
Command-line interface
======================
You can also invoke "pdb" from the command line to debug other You can also invoke "pdb" from the command line to debug other
scripts. For example: scripts. For example:
@ -4155,7 +4159,7 @@ def double(x):
-c, --command <command> -c, --command <command>
To execute commands as if given in a ".pdbrc" file; see Debugger To execute commands as if given in a ".pdbrc" file; see Debugger
Commands. commands.
Changed in version 3.2: Added the "-c" option. Changed in version 3.2: Added the "-c" option.
@ -4376,7 +4380,7 @@ class pdb.Pdb(completekey='tab', stdin=None, stdout=None, skip=None, nosigint=Fa
See the documentation for the functions explained above. See the documentation for the functions explained above.
Debugger Commands Debugger commands
================= =================
The commands recognized by the debugger are listed below. Most The commands recognized by the debugger are listed below. Most
@ -5616,9 +5620,8 @@ class of the instance or a *non-virtual base class* thereof. The
2.71828 2.71828
4.0 4.0
Unlike in integer literals, leading zeros are allowed in the numeric Unlike in integer literals, leading zeros are allowed. For example,
parts. For example, "077.010" is legal, and denotes the same number as "077.010" is legal, and denotes the same number as "77.01".
"77.10".
As in integer literals, single underscores may occur between digits to As in integer literals, single underscores may occur between digits to
help readability: help readability:
@ -7435,9 +7438,8 @@ class body. A "SyntaxError" is raised if a variable is used or
2.71828 2.71828
4.0 4.0
Unlike in integer literals, leading zeros are allowed in the numeric Unlike in integer literals, leading zeros are allowed. For example,
parts. For example, "077.010" is legal, and denotes the same number as "077.010" is legal, and denotes the same number as "77.01".
"77.10".
As in integer literals, single underscores may occur between digits to As in integer literals, single underscores may occur between digits to
help readability: help readability:
@ -7685,9 +7687,8 @@ class that has an "__rsub__()" method, "type(y).__rsub__(y, x)" is
************************* *************************
*Objects* are Pythons abstraction for data. All data in a Python *Objects* are Pythons abstraction for data. All data in a Python
program is represented by objects or by relations between objects. (In program is represented by objects or by relations between objects.
a sense, and in conformance to Von Neumanns model of a stored Even code is represented by objects.
program computer, code is also represented by objects.)
Every object has an identity, a type and a value. An objects Every object has an identity, a type and a value. An objects
*identity* never changes once it has been created; you may think of it *identity* never changes once it has been created; you may think of it
@ -10301,6 +10302,17 @@ class is used in a class pattern with positional arguments, each
follow uncased characters and lowercase characters only cased ones. follow uncased characters and lowercase characters only cased ones.
Return "False" otherwise. Return "False" otherwise.
For example:
>>> 'Spam, Spam, Spam'.istitle()
True
>>> 'spam, spam, spam'.istitle()
False
>>> 'SPAM, SPAM, SPAM'.istitle()
False
See also "title()".
str.isupper() str.isupper()
Return "True" if all cased characters [4] in the string are Return "True" if all cased characters [4] in the string are
@ -10663,6 +10675,8 @@ class is used in a class pattern with positional arguments, each
>>> titlecase("they're bill's friends.") >>> titlecase("they're bill's friends.")
"They're Bill's Friends." "They're Bill's Friends."
See also "istitle()".
str.translate(table, /) str.translate(table, /)
Return a copy of the string in which each character has been mapped Return a copy of the string in which each character has been mapped
@ -12362,6 +12376,11 @@ class method object, it is transformed into an instance method object
| | "X.__bases__" will be exactly equal to "(A, B, | | | "X.__bases__" will be exactly equal to "(A, B, |
| | C)". | | | C)". |
+----------------------------------------------------+----------------------------------------------------+ +----------------------------------------------------+----------------------------------------------------+
| type.__base__ | **CPython implementation detail:** The single base |
| | class in the inheritance chain that is responsible |
| | for the memory layout of instances. This attribute |
| | corresponds to "tp_base" at the C level. |
+----------------------------------------------------+----------------------------------------------------+
| type.__doc__ | The classs documentation string, or "None" if | | type.__doc__ | The classs documentation string, or "None" if |
| | undefined. Not inherited by subclasses. | | | undefined. Not inherited by subclasses. |
+----------------------------------------------------+----------------------------------------------------+ +----------------------------------------------------+----------------------------------------------------+

1746
Misc/NEWS.d/3.15.0a2.rst Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,2 +0,0 @@
``PYTHON_FOR_REGEN`` now requires Python 3.10 to Python 3.15.
Patch by Adam Turner.

View file

@ -1 +0,0 @@
iOS builds were added to CI.

View file

@ -1 +0,0 @@
Check ``statx`` availability only on Linux (including Android).

View file

@ -1 +0,0 @@
Support WASI SDK 25.

View file

@ -1,2 +0,0 @@
Generate a clear compilation error when ``_Py_TAIL_CALL_INTERP`` is enabled but
either ``preserve_none`` or ``musttail`` is not supported.

View file

@ -1 +0,0 @@
Warn when the WASI SDK version doesn't match what's supported.

View file

@ -1,3 +0,0 @@
When building the JIT, match the jit_stencils filename expectations in
Makefile with the generator script. This avoid needless JIT recompilation
during ``make install``.

View file

@ -1,4 +0,0 @@
Add :c:func:`PyUnstable_ThreadState_SetStackProtection` and
:c:func:`PyUnstable_ThreadState_ResetStackProtection` functions to set the
stack protection base address and stack protection size of a Python thread
state. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Fix :c:func:`Py_REFCNT` definition on limited C API 3.11-3.13. Patch by
Victor Stinner.

View file

@ -1,2 +0,0 @@
Fix :c:macro:`Py_RETURN_NOTIMPLEMENTED` in limited C API 3.11 and older:
don't treat ``Py_NotImplemented`` as immortal. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
:pep:`793`: Add a new entry point for C extension modules,
``PyModExport_<modulename>``.

View file

@ -1 +0,0 @@
The :c:macro:`!Py_INFINITY` macro is :term:`soft deprecated`.

View file

@ -1 +0,0 @@
:c:macro:`!Py_MATH_El` and :c:macro:`!Py_MATH_PIl` are deprecated.

View file

@ -1,3 +0,0 @@
Make qNaN in :c:func:`PyFloat_Pack2` and :c:func:`PyFloat_Pack4`, if while
conversion to a narrower precision floating-point format --- the remaining
after truncation payload will be zero. Patch by Sergey B Kirpichev.

View file

@ -1,2 +0,0 @@
Add a new :c:func:`PyImport_CreateModuleFromInitfunc` C-API for creating a
module from a *spec* and *initfunc*. Patch by Itamar Oren.

View file

@ -1,2 +0,0 @@
On Windows, rename the ``COMPILER`` macro to ``_Py_COMPILER`` to avoid name
conflicts. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
If :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:`Py_TPFLAGS_MANAGED_WEAKREF`
are used, then :c:macro:`Py_TPFLAGS_HAVE_GC` must be used as well.

View file

@ -1,2 +0,0 @@
Errors when calling functions with invalid values after ``*`` and ``**`` now do not
include the function name. Patch by Ilia Solin.

View file

@ -1 +0,0 @@
Support the ``--enable-pystats`` build option for the free-threaded build.

View file

@ -1,2 +0,0 @@
Improve :exc:`SyntaxError` message for ``case`` keyword placed outside
:keyword:`match` body.

View file

@ -1,3 +0,0 @@
Fix :exc:`SyntaxError` message when invalid syntax appears on the same line
as a valid ``import ... as ...`` or ``from ... import ... as ...``
statement. Patch by Brian Schubert.

View file

@ -1 +0,0 @@
Fix undefined behavior when using unaligned store in JIT's ``patch_*`` functions.

View file

@ -1,2 +0,0 @@
Changes in stackref debugging mode when ``Py_STACKREF_DEBUG`` is set. We use
the same pattern of refcounting for stackrefs as in production build.

View file

@ -1,3 +0,0 @@
Fix swallowing some syntax warnings in different modules if they
accidentally have the same message and are emitted from the same line.
Fix duplicated warnings in the ``finally`` block.

View file

@ -1,3 +0,0 @@
:func:`ast.parse` no longer emits syntax warnings for
``return``/``break``/``continue`` in ``finally`` (see :pep:`765`) -- they are
only emitted during compilation.

View file

@ -1,6 +0,0 @@
Many functions related to compiling or parsing Python code, such as
:func:`compile`, :func:`ast.parse`, :func:`symtable.symtable`, and
:func:`importlib.abc.InspectLoader.source_to_code` now allow to specify
the module name.
It is needed to unambiguous :ref:`filter <warning-filter>` syntax warnings
by module name.

View file

@ -1,2 +0,0 @@
Attribute ``__qualname__`` is added to :class:`typing.TypeAliasType`.
Patch by Mikhail Efimov.

View file

@ -1 +0,0 @@
Restore support for HP PA-RISC, which has an upwards-growing stack.

View file

@ -1 +0,0 @@
Fix memory leak in sub-interpreter creation.

View file

@ -1,2 +0,0 @@
Update :class:`bytearray` to use a :class:`bytes` under the hood as its buffer
and add :func:`bytearray.take_bytes` to take it out.

View file

@ -1 +0,0 @@
Fix hang during finalization when attempting to call :mod:`atexit` handlers under no memory.

View file

@ -1,2 +0,0 @@
Fixing the checking of whether an object is uniquely referenced to ensure
free-threaded compatibility. Patch by Sergey Miryanov.

View file

@ -1,2 +0,0 @@
Speed up parsing bytes literals concatenation by using PyBytesWriter API and
a single memory allocation (about 3x faster).

View file

@ -1,2 +0,0 @@
Fix a bug with exception handling in the JIT. Patch by Ken Jin. Bug reported
by Daniel Diniz.

View file

@ -1,2 +0,0 @@
Wrong placement of a double-star pattern inside a mapping pattern now throws a specialized syntax error.
Contributed by Bartosz Sławecki in :gh:`140253`.

View file

@ -1,7 +0,0 @@
Fixes a regression in GC performance for a growing heap composed mostly of
small tuples.
* Counts number of actually tracked objects, instead of trackable objects.
This ensures that untracking tuples has the desired effect of reducing GC overhead.
* Does not track most untrackable tuples during creation.
This prevents large numbers of small tuples causing excessive GCs.

View file

@ -1,2 +0,0 @@
Fix data race between interpreter_clear() and take_gil() on eval_breaker
during finalization with daemon threads.

View file

@ -1 +0,0 @@
Fix memory leak of ``PyConfig`` in subinterpreters.

View file

@ -1,2 +0,0 @@
Make _suggestions module thread-safe on the :term:`free threaded <free
threading>` build.

View file

@ -1,2 +0,0 @@
Fix memory leaks in cross-interpreter channel operations and shared
namespace handling.

View file

@ -1 +0,0 @@
A new tracing frontend for the JIT compiler has been implemented. Patch by Ken Jin. Design for CPython by Ken Jin, Mark Shannon and Brandt Bucher.

View file

@ -1 +0,0 @@
Update JIT compilation to use LLVM 20 at build time.

View file

@ -1,4 +0,0 @@
Restore elapsed time and unreachable object count in GC debug output. These
were inadvertently removed during a refactor of ``gc.c``. The debug log now
again reports elapsed collection time and the number of unreachable objects.
Contributed by Pål Grønås Drange.

View file

@ -1,2 +0,0 @@
Fix memory leak when an object's :meth:`~object.__hash__` method returns an
object that isn't an :class:`int`.

View file

@ -1,4 +0,0 @@
Fix memory leaks in :mod:`readline` functions
:func:`~readline.read_init_file`, :func:`~readline.read_history_file`,
:func:`~readline.write_history_file`, and
:func:`~readline.append_history_file` when :c:func:`PySys_Audit` fails.

View file

@ -1,3 +0,0 @@
Add special labels to the assembly created during stencil creation to
support relocations that the native object file format does not support.
Specifically, 19 bit branches for AArch64 in Mach-O object files.

View file

@ -1,2 +0,0 @@
Optimize :c:func:`PySet_Add` for :class:`frozenset` in :term:`free threaded
<free threading>` build.

View file

@ -1,3 +0,0 @@
Fix a crash in Python's :term:`garbage collector <garbage collection>` due to
partially initialized :term:`coroutine` objects when coroutine origin tracking
depth is enabled (:func:`sys.set_coroutine_origin_tracking_depth`).

View file

@ -1,5 +0,0 @@
The logarithm functions (such as :func:`math.log10` and :func:`math.log`) may now produce
slightly different results for extremely large integers that cannot be
converted to floats without overflow. These results are generally more
accurate, with reduced worst-case error and a tighter overall error
distribution.

View file

@ -1,2 +0,0 @@
Fix potential buffer overflow in :class:`ast.AST` node initialization when
encountering malformed :attr:`~ast.AST._fields` containing non-:class:`str`.

View file

@ -1 +0,0 @@
Fix race when updating :attr:`!type.__bases__` that could allow a read of :attr:`!type.__base__` to observe an inconsistent value on the free threaded build.

View file

@ -1,3 +0,0 @@
Fixed a reference leak when iterating over the result of :func:`map`
with ``strict=True`` when the input iterables have different lengths.
Patch by Mikhail Efimov.

View file

@ -1,2 +0,0 @@
Fixed crash in :class:`dict` if :meth:`dict.clear` is called at the lookup
stage. Patch by Mikhail Efimov and Inada Naoki.

View file

@ -1 +0,0 @@
Speed up accessing interpreter state by caching it in a thread local variable. Patch by Kumar Aditya.

View file

@ -1,2 +0,0 @@
Fixed crash in :func:`tokenize.generate_tokens` in case of
specific incorrect input. Patch by Mikhail Efimov.

View file

@ -1,2 +0,0 @@
Dynamic borrow checking for stackrefs is added to ``Py_STACKREF_DEBUG``
mode. Patch by Mikhail Efimov.

View file

@ -1,2 +0,0 @@
Fix pickling error in the sampling profiler when using ``concurrent.futures.ProcessPoolExecutor``
script can not be properly pickled and executed in worker processes.

View file

@ -1,2 +0,0 @@
Correctly emit ``PY_UNWIND`` event when generator object is closed. Patch by
Mikhail Efimov.

View file

@ -1 +0,0 @@
Replace :class:`io.IncrementalNewlineDecoder` with non incremental newline decoders in codebase where :meth:`!io.IncrementalNewlineDecoder.decode` was being called once.

View file

@ -1,2 +0,0 @@
Fix a reference leak when ``raise exc from cause`` fails. Patch by Bénédikt
Tran.

View file

@ -1,2 +0,0 @@
Fix :mod:`struct` data race in endian table initialization with
subinterpreters. Patch by Shamil Abdulaev.

View file

@ -1,2 +0,0 @@
Fix memory leak when :class:`bytearray` or :class:`bytes` is formated with the
``%*b`` format with a large width that results in a :exc:`MemoryError`.

View file

@ -1 +0,0 @@
Update JIT compilation to use LLVM 21 at build time.

View file

@ -1,2 +0,0 @@
Add ``.cjs`` to :mod:`mimetypes` to give CommonJS modules a MIME type of
``application/node``.

View file

@ -1,3 +0,0 @@
Add support for ``<GC>`` and ``<native>`` frames to
:mod:`!profiling.sampling` output to denote active garbage collection and
calls to native code.

View file

@ -1,2 +0,0 @@
Fix the assertion failure in the ``__setstate__`` method of the range iterator
when a non-integer argument is passed. Patch by Sergey Miryanov.

View file

@ -1,2 +0,0 @@
Specialize ``CALL_LIST_APPEND`` instruction only for lists, not for list
subclasses, to avoid unnecessary deopt. Patch by Mikhail Efimov.

View file

@ -1,3 +0,0 @@
Suggest using :meth:`concurrent.interpreters.Interpreter.close` instead of the
private ``_interpreters.destroy`` function when warning about remaining subinterpreters.
Patch by Sergey Miryanov.

View file

@ -1 +0,0 @@
Skip locking if object is already locked by two-mutex critical section.

View file

@ -1,2 +0,0 @@
Fix :func:`sys.activate_stack_trampoline` to properly support the
``perf_jit`` backend. Patch by Pablo Galindo.

View file

@ -1 +0,0 @@
Add the :mod:`math.integer` module (:pep:`791`).

View file

@ -1,2 +0,0 @@
Clarify constraints for "logical" arguments in methods of
:class:`decimal.Context`.

View file

@ -1 +0,0 @@
Publicly expose and document :class:`importlib.machinery.NamespacePath`.

View file

@ -1,2 +0,0 @@
:func:`math.log` now supports arbitrary large integer-like arguments in the
same way as arbitrary large integer arguments.

View file

@ -1,4 +0,0 @@
In the :mod:`linecache` module and in the Python implementation of the
:mod:`warnings` module, a ``DeprecationWarning`` is issued when
``mod.__loader__`` differs from ``mod.__spec__.loader`` (like in the C
implementation of the :mod:`!warnings` module).

View file

@ -1 +0,0 @@
Add support for ``-nolinestop``, and ``-strictlimits`` options to :meth:`!tkinter.Text.search`. Also add the :meth:`!tkinter.Text.search_all` method for ``-all`` and ``-overlap`` options.

View file

@ -1,2 +0,0 @@
:func:`inspect.getdoc` now correctly returns an inherited docstring on
:class:`~functools.cached_property` objects if none is given in a subclass.

View file

@ -1,2 +0,0 @@
Add parameters *inherit_class_doc* and *fallback_to_class_doc* for
:func:`inspect.getdoc`.

View file

@ -1 +0,0 @@
Remove deprecated :func:`!typing.no_type_check_decorator`.

Some files were not shown because too many files have changed in this diff Show more