Python 3.12.3

This commit is contained in:
Thomas Wouters 2024-04-09 09:16:57 +02:00
parent ced359855e
commit f6650f9ad7
109 changed files with 1218 additions and 330 deletions

View file

@ -18,12 +18,12 @@
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 12
#define PY_MICRO_VERSION 2
#define PY_MICRO_VERSION 3
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0
/* Version as a string */
#define PY_VERSION "3.12.2+"
#define PY_VERSION "3.12.3"
/*--end constants--*/
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Autogenerated by Sphinx on Tue Feb 6 21:16:37 2024
# Autogenerated by Sphinx on Tue Apr 9 09:17:41 2024
# as part of the release process.
topics = {'assert': 'The "assert" statement\n'
'**********************\n'
@ -722,9 +722,9 @@
'\n'
'object.__dir__(self)\n'
'\n'
' Called when "dir()" is called on the object. A '
'sequence must be\n'
' returned. "dir()" converts the returned sequence to a '
' Called when "dir()" is called on the object. An '
'iterable must be\n'
' returned. "dir()" converts the returned iterable to a '
'list and\n'
' sorts it.\n'
'\n'
@ -751,8 +751,8 @@
'returned.\n'
'\n'
'The "__dir__" function should accept no arguments, and '
'return a\n'
'sequence of strings that represents the names accessible '
'return an\n'
'iterable of strings that represents the names accessible '
'on module. If\n'
'present, this function overrides the standard "dir()" '
'search on a\n'
@ -4724,7 +4724,7 @@
'reflection,\n'
' and "__eq__()" and "__ne__()" are their own reflection. '
'If the\n'
' operands are of different types, and right operands '
' operands are of different types, and the right operands '
'type is a\n'
' direct or indirect subclass of the left operands type, '
'the\n'
@ -4734,6 +4734,11 @@
'is not\n'
' considered.\n'
'\n'
' When no appropriate method returns any value other than\n'
' "NotImplemented", the "==" and "!=" operators will fall '
'back to\n'
' "is" and "is not", respectively.\n'
'\n'
'object.__hash__(self)\n'
'\n'
' Called by built-in function "hash()" and for operations '
@ -5212,22 +5217,23 @@
'the\n'
'current directory, it is read with "\'utf-8\'" encoding and '
'executed as\n'
'if it had been typed at the debugger prompt. This is '
'particularly\n'
'useful for aliases. If both files exist, the one in the home\n'
'directory is read first and aliases defined there can be '
'overridden by\n'
'the local file.\n'
'\n'
'Changed in version 3.11: ".pdbrc" is now read with "\'utf-8\'" '
'encoding.\n'
'Previously, it was read with the system locale encoding.\n'
'if it had been typed at the debugger prompt, with the exception '
'that\n'
'empty lines and lines starting with "#" are ignored. This is\n'
'particularly useful for aliases. If both files exist, the one '
'in the\n'
'home directory is read first and aliases defined there can be\n'
'overridden by the local file.\n'
'\n'
'Changed in version 3.2: ".pdbrc" can now contain commands that\n'
'continue debugging, such as "continue" or "next". Previously, '
'these\n'
'commands had no effect.\n'
'\n'
'Changed in version 3.11: ".pdbrc" is now read with "\'utf-8\'" '
'encoding.\n'
'Previously, it was read with the system locale encoding.\n'
'\n'
'h(elp) [command]\n'
'\n'
' Without argument, print the list of available commands. With '
@ -8559,32 +8565,36 @@
'\n'
' nonlocal_stmt ::= "nonlocal" identifier ("," identifier)*\n'
'\n'
'The "nonlocal" statement causes the listed identifiers to refer '
'to\n'
'previously bound variables in the nearest enclosing scope '
'excluding\n'
'globals. This is important because the default behavior for '
'binding is\n'
'to search the local namespace first. The statement allows\n'
'encapsulated code to rebind variables outside of the local '
'scope\n'
'besides the global (module) scope.\n'
'When the definition of a function or class is nested (enclosed) '
'within\n'
'the definitions of other functions, its nonlocal scopes are the '
'local\n'
'scopes of the enclosing functions. The "nonlocal" statement '
'causes the\n'
'listed identifiers to refer to names previously bound in '
'nonlocal\n'
'scopes. It allows encapsulated code to rebind such nonlocal\n'
'identifiers. If a name is bound in more than one nonlocal '
'scope, the\n'
'nearest binding is used. If a name is not bound in any nonlocal '
'scope,\n'
'or if there is no nonlocal scope, a "SyntaxError" is raised.\n'
'\n'
'Names listed in a "nonlocal" statement, unlike those listed in '
'a\n'
'"global" statement, must refer to pre-existing bindings in an\n'
'enclosing scope (the scope in which a new binding should be '
'created\n'
'cannot be determined unambiguously).\n'
'\n'
'Names listed in a "nonlocal" statement must not collide with '
'pre-\n'
'existing bindings in the local scope.\n'
'The nonlocal statement applies to the entire scope of a function '
'or\n'
'class body. A "SyntaxError" is raised if a variable is used or\n'
'assigned to prior to its nonlocal declaration in the scope.\n'
'\n'
'See also:\n'
'\n'
' **PEP 3104** - Access to Names in Outer Scopes\n'
' The specification for the "nonlocal" statement.\n',
' The specification for the "nonlocal" statement.\n'
'\n'
'**Programmers note:** "nonlocal" is a directive to the parser '
'and\n'
'applies only to code parsed along with it. See the note for '
'the\n'
'"global" statement.\n',
'numbers': 'Numeric literals\n'
'****************\n'
'\n'
@ -8680,7 +8690,7 @@
'"__rsub__()"\n'
' method, "type(y).__rsub__(y, x)" is called if '
'"type(x).__sub__(x,\n'
' y)" returns *NotImplemented*.\n'
' y)" returns "NotImplemented".\n'
'\n'
' Note that ternary "pow()" will not try calling '
'"__rpow__()" (the\n'
@ -8723,14 +8733,18 @@
'the result\n'
' (which could be, but does not have to be, *self*). If a '
'specific\n'
' method is not defined, the augmented assignment falls '
'back to the\n'
' normal methods. For instance, if *x* is an instance of '
'a class\n'
' with an "__iadd__()" method, "x += y" is equivalent to '
'"x =\n'
' x.__iadd__(y)" . Otherwise, "x.__add__(y)" and '
'"y.__radd__(x)" are\n'
' method is not defined, or if that method returns '
'"NotImplemented",\n'
' the augmented assignment falls back to the normal '
'methods. For\n'
' instance, if *x* is an instance of a class with an '
'"__iadd__()"\n'
' method, "x += y" is equivalent to "x = x.__iadd__(y)" . '
'If\n'
' "__iadd__()" does not exist, or if "x.__iadd__(y)" '
'returns\n'
' "NotImplemented", "x.__add__(y)" and "y.__radd__(x)" '
'are\n'
' considered, as with the evaluation of "x + y". In '
'certain\n'
' situations, augmented assignment can result in '
@ -8811,7 +8825,7 @@
'Every object has an identity, a type and a value. An objects\n'
'*identity* never changes once it has been created; you may think '
'of it\n'
'as the objects address in memory. The "is" operator compares '
'as the objects address in memory. The "is" operator compares '
'the\n'
'identity of two objects; the "id()" function returns an integer\n'
'representing its identity.\n'
@ -8876,7 +8890,7 @@
'Note that the use of the implementations tracing or debugging\n'
'facilities may keep objects alive that would normally be '
'collectable.\n'
'Also note that catching an exception with a "try""except" '
'Also note that catching an exception with a "try""except" '
'statement\n'
'may keep objects alive.\n'
'\n'
@ -8891,8 +8905,9 @@
'release the external resource, usually a "close()" method. '
'Programs\n'
'are strongly recommended to explicitly close such objects. The\n'
'"try""finally" statement and the "with" statement provide\n'
'convenient ways to do this.\n'
'"try""finally" statement and the "with" statement provide '
'convenient\n'
'ways to do this.\n'
'\n'
'Some objects contain references to other objects; these are '
'called\n'
@ -9269,10 +9284,7 @@
'The try statement.\n'
'\n'
'Changed in version 3.3: "None" is now permitted as "Y" in "raise X\n'
'from Y".\n'
'\n'
'New in version 3.3: The "__suppress_context__" attribute to '
'suppress\n'
'from Y".Added the "__suppress_context__" attribute to suppress\n'
'automatic display of the exception context.\n'
'\n'
'Changed in version 3.11: If the traceback of the active exception '
@ -10057,8 +10069,8 @@
'reflection,\n'
' and "__eq__()" and "__ne__()" are their own reflection. '
'If the\n'
' operands are of different types, and right operands type '
'is a\n'
' operands are of different types, and the right operands '
'type is a\n'
' direct or indirect subclass of the left operands type, '
'the\n'
' reflected method of the right operand has priority, '
@ -10067,6 +10079,11 @@
'is not\n'
' considered.\n'
'\n'
' When no appropriate method returns any value other than\n'
' "NotImplemented", the "==" and "!=" operators will fall '
'back to\n'
' "is" and "is not", respectively.\n'
'\n'
'object.__hash__(self)\n'
'\n'
' Called by built-in function "hash()" and for operations '
@ -10308,9 +10325,9 @@
'\n'
'object.__dir__(self)\n'
'\n'
' Called when "dir()" is called on the object. A sequence '
' Called when "dir()" is called on the object. An iterable '
'must be\n'
' returned. "dir()" converts the returned sequence to a '
' returned. "dir()" converts the returned iterable to a '
'list and\n'
' sorts it.\n'
'\n'
@ -10337,8 +10354,8 @@
'returned.\n'
'\n'
'The "__dir__" function should accept no arguments, and '
'return a\n'
'sequence of strings that represents the names accessible on '
'return an\n'
'iterable of strings that represents the names accessible on '
'module. If\n'
'present, this function overrides the standard "dir()" search '
'on a\n'
@ -11606,7 +11623,7 @@
'"__rsub__()"\n'
' method, "type(y).__rsub__(y, x)" is called if '
'"type(x).__sub__(x,\n'
' y)" returns *NotImplemented*.\n'
' y)" returns "NotImplemented".\n'
'\n'
' Note that ternary "pow()" will not try calling '
'"__rpow__()" (the\n'
@ -11649,14 +11666,17 @@
'the result\n'
' (which could be, but does not have to be, *self*). If a '
'specific\n'
' method is not defined, the augmented assignment falls '
'back to the\n'
' normal methods. For instance, if *x* is an instance of a '
'class\n'
' with an "__iadd__()" method, "x += y" is equivalent to "x '
'=\n'
' x.__iadd__(y)" . Otherwise, "x.__add__(y)" and '
'"y.__radd__(x)" are\n'
' method is not defined, or if that method returns '
'"NotImplemented",\n'
' the augmented assignment falls back to the normal '
'methods. For\n'
' instance, if *x* is an instance of a class with an '
'"__iadd__()"\n'
' method, "x += y" is equivalent to "x = x.__iadd__(y)" . '
'If\n'
' "__iadd__()" does not exist, or if "x.__iadd__(y)" '
'returns\n'
' "NotImplemented", "x.__add__(y)" and "y.__radd__(x)" are\n'
' considered, as with the evaluation of "x + y". In '
'certain\n'
' situations, augmented assignment can result in unexpected '
@ -12998,9 +13018,8 @@
'\n'
'New in version 3.3: The "\'rb\'" prefix of raw bytes literals has '
'been\n'
'added as a synonym of "\'br\'".\n'
'\n'
'New in version 3.3: Support for the unicode legacy literal\n'
'added as a synonym of "\'br\'".Support for the unicode legacy '
'literal\n'
'("u\'value\'") was reintroduced to simplify the maintenance of '
'dual\n'
'Python 2.x and 3.x codebases. See **PEP 414** for more '
@ -13709,14 +13728,18 @@
'contains\n'
'the numbers 0, 1, …, *n*-1. Item *i* of sequence *a* is selected '
'by\n'
'"a[i]".\n'
'"a[i]". Some sequences, including built-in sequences, interpret\n'
'negative subscripts by adding the sequence length. For example,\n'
'"a[-2]" equals "a[n-2]", the second to last item of sequence a '
'with\n'
'length "n".\n'
'\n'
'Sequences also support slicing: "a[i:j]" selects all items with '
'index\n'
'*k* such that *i* "<=" *k* "<" *j*. When used as an expression, a\n'
'slice is a sequence of the same type. This implies that the index '
'set\n'
'is renumbered so that it starts at 0.\n'
'slice is a sequence of the same type. The comment above about '
'negative\n'
'indexes also applies to negative slice positions.\n'
'\n'
'Some sequences also support “extended slicing” with a third “step”\n'
'parameter: "a[i:j:k]" selects all items of *a* with index *x* where '
@ -14461,7 +14484,9 @@
'name |\n'
'+----------------------------------------------------+----------------------------------------------------+\n'
'| codeobject.co_qualname | The fully '
'qualified function name |\n'
'qualified function name New in version |\n'
'| | '
'3.11. |\n'
'+----------------------------------------------------+----------------------------------------------------+\n'
'| codeobject.co_argcount | The total '
'number of positional *parameters* |\n'
@ -14681,6 +14706,14 @@
'tools.\n'
' The PEP that introduced the "co_lines()" method.\n'
'\n'
'codeobject.replace(**kwargs)\n'
'\n'
' Return a copy of the code object with new values for the '
'specified\n'
' fields.\n'
'\n'
' New in version 3.8.\n'
'\n'
'\n'
'Frame objects\n'
'-------------\n'
@ -16019,7 +16052,7 @@
'\n'
' For sorting examples and a brief sorting tutorial, see '
'Sorting\n'
' HOW TO.\n'
' Techniques.\n'
'\n'
' **CPython implementation detail:** While a list is being '
'sorted,\n'
@ -16234,9 +16267,8 @@
'objects\n'
'based on the sequence of values they define (instead of '
'comparing\n'
'based on object identity).\n'
'\n'
'New in version 3.3: The "start", "stop" and "step" attributes.\n'
'based on object identity).Added the "start", "stop" and "step"\n'
'attributes.\n'
'\n'
'See also:\n'
'\n'

1101
Misc/NEWS.d/3.12.3.rst Normal file

File diff suppressed because it is too large Load diff

View file

@ -1 +0,0 @@
Add support for thread sanitizer (TSAN)

View file

@ -1 +0,0 @@
Avoid vendoring ``vcruntime140_threads.dll`` when building with Visual Studio 2022 version 17.8.

View file

@ -1,2 +0,0 @@
Backport ``libb2``'s PR #42 to fix compiling CPython on 32-bit Windows
with ``clang-cl``.

View file

@ -1 +0,0 @@
Get WASI builds to work under wasmtime 18 w/ WASI 0.2/preview2 primitives.

View file

@ -1,2 +0,0 @@
Make the C API compatible with ``-Werror=declaration-after-statement``
compiler flag again. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Fix integer overflow in :c:func:`PyLong_AsPid` on non-Windows 64-bit
platforms.

View file

@ -1,2 +0,0 @@
Fix incorrect resolution of mangled class variables used in assignment
expressions in comprehensions.

View file

@ -1,2 +0,0 @@
Change the C recursion limits to more closely reflect the underlying
platform limits.

View file

@ -1,3 +0,0 @@
Setters for members with an unsigned integer type now support the same range
of valid values for objects that has a :meth:`~object.__index__` method as
for :class:`int`.

View file

@ -1,2 +0,0 @@
Fix compilation crashes in uncommon code examples using :func:`super` inside
a comprehension in a class body.

View file

@ -1,2 +0,0 @@
Fix a bug that was causing the :func:`tokenize.untokenize` function to
handle unicode named literals incorrectly. Patch by Pablo Galindo

View file

@ -1,2 +0,0 @@
For an empty reverse iterator for list will be reduced to :func:`reversed`.
Patch by Donghee Na.

View file

@ -1,3 +0,0 @@
Properly calculate error ranges in the parser when raising
:exc:`SyntaxError` exceptions caused by invalid byte sequences. Patch by
Pablo Galindo

View file

@ -1 +0,0 @@
Fix location of the error on a failed assertion.

View file

@ -1 +0,0 @@
Fix possible refleak in :meth:`!object.__reduce__` internal error handling.

View file

@ -1 +0,0 @@
Ensure ``INSTRUMENTED_CALL_FUNCTION_EX`` always emits :monitoring-event:`CALL`

View file

@ -1,3 +0,0 @@
Respect the status of the garbage collector when indirect calls are made via
:c:func:`PyErr_CheckSignals` and the evaluation breaker. Patch by Pablo
Galindo

View file

@ -1,2 +0,0 @@
Starting new threads and process creation through :func:`os.fork` are now
only prevented once all non-daemon threads exit.

View file

@ -1 +0,0 @@
For ``INSTRUMENTED_CALL_FUNCTION_EX``, set ``arg0`` to ``sys.monitoring.MISSING`` instead of ``None`` for :monitoring-event:`CALL` event.

View file

@ -1,6 +0,0 @@
Updated the :mod:`hashlib` built-in `HACL\* project`_ C code from upstream
that we use for many implementations when they are not present via OpenSSL
in a given build. This also avoids the rare potential for a C symbol name
one definition rule linking issue.
.. _HACL\* project: https://github.com/hacl-star/hacl-star

View file

@ -1,2 +0,0 @@
Added handle of incorrect star expressions, e.g ``f(3, *)``. Patch by
Grigoryev Semyon

View file

@ -1 +0,0 @@
Fix an example for :class:`~logging.LoggerAdapter` in the Logging Cookbook.

View file

@ -1 +0,0 @@
Document CVE-2023-52425 of Expat <2.6.0 under "XML vulnerabilities".

View file

@ -1,2 +0,0 @@
On macOS show a proxy icon in the title bar of editor windows to match
platform behaviour.

View file

@ -1 +0,0 @@
Add 'default' and 'version' help text for localization in argparse.

View file

@ -1,4 +0,0 @@
Make :func:`mimetypes.guess_type` properly parsing of URLs with only a host
name, URLs containing fragment or query, and filenames with only a UNC
sharepoint on Windows.
Based on patch by Dong-hee Na.

View file

@ -1,2 +0,0 @@
linecache: get module name from ``__spec__`` if available. This allows getting
source code for the ``__main__`` module when a custom loader is used.

View file

@ -1,2 +0,0 @@
Fix :meth:`multiprocessing.connection.Listener.accept()` to accept empty bytes
as authkey. Not accepting empty bytes as key causes it to hang indefinitely.

View file

@ -1 +0,0 @@
Add missing call to localization function in :mod:`argparse`.

View file

@ -1 +0,0 @@
Fixed a bug in :class:`logging.handlers.TimedRotatingFileHandler` where multiple rotating handler instances pointing to files with the same name but different extensions would conflict and not delete the correct files.

View file

@ -1,2 +0,0 @@
Fix a traceback in :mod:`argparse` when all options in a mutually exclusive
group are suppressed.

View file

@ -1,4 +0,0 @@
Fix :func:`io.BufferedReader.tell`, :func:`io.BufferedReader.seek`,
:func:`_pyio.BufferedReader.tell`, :func:`io.BufferedRandom.tell`,
:func:`io.BufferedRandom.seek` and :func:`_pyio.BufferedRandom.tell`
being able to return negative offsets.

View file

@ -1,2 +0,0 @@
email: fix misfolding of comma in address-lists over multiple lines in
combination with unicode encoding.

View file

@ -1,2 +0,0 @@
Update HTTPSConnection to consistently wrap IPv6 Addresses when using a
proxy.

View file

@ -1 +0,0 @@
Fix ArgumentParser inconsistent with parse_known_args.

View file

@ -1 +0,0 @@
Fixed ``_get_slots`` bug which caused error when defining dataclasses with slots and a weakref_slot.

View file

@ -1,3 +0,0 @@
Fix incorrect output of ``help(x)`` where ``x`` is a :keyword:`lambda`
function, which has an ``__annotations__`` dictionary attribute with a
``"return"`` key.

View file

@ -1 +0,0 @@
Make .pdbrc and -c work with any valid pdb commands.

View file

@ -1,2 +0,0 @@
Fix :meth:`importlib.resources.simple.ResourceHandle.open` for text mode,
added missed ``stream`` argument.

View file

@ -1,2 +0,0 @@
Allow creating :ref:`union of types<types-union>` for
:class:`typing.Annotated` with unhashable metadata.

View file

@ -1,7 +0,0 @@
Fix rendering class methods, bound methods, method and function aliases in
:mod:`pydoc`. Class methods no longer have "method of builtins.type
instance" note. Corresponding notes are now added for class and unbound
methods. Method and function aliases now have references to the module or
the class where the origin was defined if it differs from the current. Bound
methods are now listed in the static methods section. Methods of builtin
classes are now supported as well as methods of Python classes.

View file

@ -1,3 +0,0 @@
Protect modules loaded with :class:`importlib.util.LazyLoader` from race
conditions when multiple threads try to access attributes before the loading
is complete.

View file

@ -1 +0,0 @@
Support tuple subclasses using auto() for enum member value.

View file

@ -1,2 +0,0 @@
Trailing ``**`` no longer allows to match files and non-existing paths in
recursive :func:`~glob.glob`.

View file

@ -1 +0,0 @@
:meth:`io.BufferedRandom.read1` now flushes the underlying write buffer.

View file

@ -1,2 +0,0 @@
Fix tests for :class:`~xml.etree.ElementTree.XMLPullParser` with Expat
2.6.0.

View file

@ -1,4 +0,0 @@
Most exceptions are now ignored when attempting to set the ``__orig_class__``
attribute on objects returned when calling :mod:`typing` generic aliases
(including generic aliases created using :data:`typing.Annotated`).
Previously only :exc:`AttributeError` was ignored. Patch by Dave Shawley.

View file

@ -1,2 +0,0 @@
``urllib.request`` no longer resolves the hostname before checking it
against the system's proxy bypass list on macOS and Windows.

View file

@ -1,4 +0,0 @@
Fix several :func:`format()` bugs when using the C implementation of :class:`~decimal.Decimal`:
* memory leak in some rare cases when using the ``z`` format option (coerce negative 0)
* incorrect output when applying the ``z`` format option to type ``F`` (fixed-point with capital ``NAN`` / ``INF``)
* incorrect output when applying the ``#`` format option (alternate form)

View file

@ -1,2 +0,0 @@
Fix a bug in :mod:`doctest` where incorrect line numbers would be
reported for decorated functions.

View file

@ -1,4 +0,0 @@
Support callables with the ``__call__()`` method and types with
``__new__()`` and ``__init__()`` methods set to class methods, static
methods, bound methods, partial functions, and other types of methods and
descriptors in :meth:`inspect.Signature.from_callable`.

View file

@ -1,2 +0,0 @@
Fix :func:`inspect.unwrap` for types with the ``__wrapper__`` data
descriptor.

View file

@ -1,3 +0,0 @@
A :exc:`DeprecationWarning` is no longer omitted on access to the
``__doc__`` attributes of the deprecated ``typing.io`` and ``typing.re``
pseudo-modules.

View file

@ -1,3 +0,0 @@
Fix improper decreasing the reference count for ``None`` argument in
:class:`property` methods :meth:`~property.getter`, :meth:`~property.setter`
and :meth:`~property.deleter`.

View file

@ -1,2 +0,0 @@
Fix a bug in :meth:`asyncio.BaseEventLoop.shutdown_default_executor` to
ensure the timeout passed to the coroutine behaves as expected.

View file

@ -1 +0,0 @@
Fixed :func:`ast.unparse` to handle format_spec with ``"``, ``'`` or ``\\``. Patched by Frank Hoffmann.

View file

@ -1,3 +0,0 @@
:func:`csv.writer()` now quotes empty fields if delimiter is a
space and skipinitialspace is true and raises exception if quoting is not
possible.

View file

@ -1,2 +0,0 @@
:func:`csv.writer` now always quotes or escapes ``'\r'`` and ``'\n'``,
regardless of *lineterminator* value.

View file

@ -1,3 +0,0 @@
:mod:`urllib.parse` functions :func:`~urllib.parse.parse_qs` and
:func:`~urllib.parse.parse_qsl` now support bytes arguments containing raw
and percent-encoded non-ASCII data.

View file

@ -1,4 +0,0 @@
Improve algorithm for computing which rolled-over log files to delete in
:class:`logging.TimedRotatingFileHandler`. It is now reliable for handlers
without ``namer`` and with arbitrary deterministic ``namer`` that leaves the
datetime part in the file name unmodified.

View file

@ -1,2 +0,0 @@
Fix silent truncation of the name with an embedded null character in
:class:`multiprocessing.shared_memory.SharedMemory`.

View file

@ -1,4 +0,0 @@
Fix issue where :func:`ast.parse` would incorrectly flag conditional context
managers (such as ``with (x() if y else z()): ...``) as invalid syntax if
``feature_version=(3, 8)`` was passed. This reverts changes to the
grammar made as part of gh-94949.

View file

@ -1 +0,0 @@
Fixed :func:`unittest.mock.create_autospec` to pass the call through to the wrapped object to return the real result.

View file

@ -1 +0,0 @@
[Enum] fix by-value calls when second value is falsey; e.g. Cardinal(1, 0)

View file

@ -1,4 +0,0 @@
Fix UnicodeEncodeError in :meth:`email.Message.as_string` that results when
a message that claims to be in the ascii character set actually has non-ascii
characters. Non-ascii characters are now replaced with the U+FFFD replacement
character, like in the ``replace`` error handler.

View file

@ -1 +0,0 @@
Set ``__main__.__spec__`` to ``None`` when running a script with :mod:`pdb`

View file

@ -1,6 +0,0 @@
Fix the computation of the next rollover time in the
:class:`logging.TimedRotatingFileHandler` handler. :meth:`!computeRollover`
now always returns a timestamp larger than the specified time and works
correctly during the DST change. :meth:`!doRollover` no longer overwrite the
already rolled over file, saving from data loss when run at midnight or
during repeated time at the DST change.

View file

@ -1,4 +0,0 @@
Disable preadv(), readv(), pwritev(), and writev() on WASI.
Under wasmtime for WASI 0.2, these functions don't pass test_posix
(https://github.com/bytecodealliance/wasmtime/issues/7830).

View file

@ -1,3 +0,0 @@
Fix support of *interval* values > 1 in
:class:`logging.TimedRotatingFileHandler` for ``when='MIDNIGHT'`` and
``when='Wx'``.

View file

@ -1,2 +0,0 @@
:mod:`typing`: raise :exc:`SyntaxError` instead of :exc:`AttributeError`
on forward references as empty strings.

View file

@ -1,3 +0,0 @@
Fix a race in pydoc ``_start_server``, eliminating a window in which
``_start_server`` can return a thread that is "serving" but without a
``docserver`` set.

View file

@ -1,2 +0,0 @@
Fix blocking :func:`os.fwalk` and :func:`shutil.rmtree` on opening named
pipe.

View file

@ -1,3 +0,0 @@
Change automatically generated :class:`tkinter.Checkbutton` widget names to
avoid collisions with automatically generated
:class:`tkinter.ttk.Checkbutton` widget names within the same parent widget.

View file

@ -1 +0,0 @@
Fix :func:`repr` for global :class:`~enum.Flag` members.

View file

@ -1,2 +0,0 @@
In ``PathFinder.invalidate_caches``, delegate to
``MetadataPathFinder.invalidate_caches``.

View file

@ -1,4 +0,0 @@
Restore support of ``None`` and other false values in :mod:`urllib.parse`
functions :func:`~urllib.parse.parse_qs` and
:func:`~urllib.parse.parse_qsl`. Also, they now raise a TypeError for
non-zero integers and non-empty sequences.

View file

@ -1 +0,0 @@
Ignore empty lines and comments in ``.pdbrc``

View file

@ -1,3 +0,0 @@
configparser: Don't leave ConfigParser values in an invalid state (stored as
a list instead of a str) after an earlier read raised DuplicateSectionError
or DuplicateOptionError.

View file

@ -1,3 +0,0 @@
On Windows, :meth:`subprocess.Popen.wait` no longer calls
``WaitForSingleObject()`` with a negative timeout: pass ``0`` ms if the
timeout is negative. Patch by Victor Stinner.

View file

@ -1 +0,0 @@
Fix a bug that prevents subclasses of :class:`typing.Any` to be instantiated with arguments. Patch by Chris Fu.

View file

@ -1,2 +0,0 @@
Fix :mod:`zipfile` extraction for directory entries with the name containing
backslashes on Windows.

View file

@ -1,2 +0,0 @@
Fix regression in lazy loading of self-referential modules, introduced in
gh-114781.

View file

@ -1,4 +0,0 @@
Fixed an unlikely early & extra ``Py_DECREF`` triggered crash in :mod:`ssl`
when creating a new ``_ssl._SSLContext`` if CPython was built implausibly such
that the default cipher list is empty **or** the SSL library it was linked
against reports a failure from its C ``SSL_CTX_set_cipher_list()`` API.

View file

@ -1,2 +0,0 @@
Preserve mailbox ownership when rewriting in :func:`mailbox.mbox.flush`.
Patch by Tony Mountifield.

View file

@ -1,4 +0,0 @@
:meth:`ssl.SSLContext.cert_store_stats` and
:meth:`ssl.SSLContext.get_ca_certs` now correctly lock access to the
certificate store, when the :class:`ssl.SSLContext` is shared across
multiple threads.

View file

@ -1 +0,0 @@
Fix possible crashes in :meth:`collections.deque.index` when the deque is concurrently modified.

View file

@ -1 +0,0 @@
Update bundled libexpat to 2.6.0

View file

@ -1,8 +0,0 @@
Allow controlling Expat >=2.6.0 reparse deferral (CVE-2023-52425) by adding
five new methods:
* :meth:`xml.etree.ElementTree.XMLParser.flush`
* :meth:`xml.etree.ElementTree.XMLPullParser.flush`
* :meth:`xml.parsers.expat.xmlparser.GetReparseDeferralEnabled`
* :meth:`xml.parsers.expat.xmlparser.SetReparseDeferralEnabled`
* :meth:`xml.sax.expatreader.ExpatParser.flush`

View file

@ -1,2 +0,0 @@
Fix ``ProgramPriorityTests`` in ``test_os`` permanently changing the process
priority.

View file

@ -1,2 +0,0 @@
Add ``--bisect`` option to regrtest test runner: run failed tests with
``test.bisect_cmd`` to identify failing tests. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Leak tests (``-R``, ``--huntrleaks``) now show a summary of the number of
leaks found in each iteration.

View file

@ -1,3 +0,0 @@
Added import helper ``isolated_modules`` as ``CleanImport`` does not remove
modules imported during the context. Use it in importlib.resources tests to
avoid leaving ``mod`` around to impede importlib.metadata tests.

View file

@ -1,2 +0,0 @@
Add --tsan to test.regrtest for running TSAN tests in reasonable execution
times. Patch by Donghee Na.

View file

@ -1 +0,0 @@
Update test_importlib so that it passes under WASI SDK 21.

View file

@ -1,3 +0,0 @@
Tests of TLS related things (error codes, etc) were updated to be more
lenient about specific error message strings and behaviors as seen in the
BoringSSL and AWS-LC forks of OpenSSL.

View file

@ -1 +0,0 @@
Fix XML tests for vanilla Expat <2.6.0.

View file

@ -1,3 +0,0 @@
Disable JUnit XML output (``--junit-xml=FILE`` command line option) in
regrtest when hunting for reference leaks (``-R`` option). Patch by Victor
Stinner.

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