mirror of
https://github.com/python/cpython.git
synced 2024-11-23 18:04:37 +08:00
Python 3.11.0a5
This commit is contained in:
parent
2d080347d7
commit
c4e4b91557
@ -20,10 +20,10 @@
|
||||
#define PY_MINOR_VERSION 11
|
||||
#define PY_MICRO_VERSION 0
|
||||
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
|
||||
#define PY_RELEASE_SERIAL 4
|
||||
#define PY_RELEASE_SERIAL 5
|
||||
|
||||
/* Version as a string */
|
||||
#define PY_VERSION "3.11.0a4+"
|
||||
#define PY_VERSION "3.11.0a5"
|
||||
/*--end constants--*/
|
||||
|
||||
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
||||
|
@ -1,5 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Autogenerated by Sphinx on Thu Jan 13 19:37:48 2022
|
||||
# Autogenerated by Sphinx on Thu Feb 3 18:35:23 2022
|
||||
topics = {'assert': 'The "assert" statement\n'
|
||||
'**********************\n'
|
||||
'\n'
|
||||
@ -2518,22 +2518,21 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
' >>> print(sys.exc_info())\n'
|
||||
' (None, None, None)\n'
|
||||
'\n'
|
||||
'The "except*" clause(s) are used for handling "ExceptionGroup`s. '
|
||||
'The "except*" clause(s) are used for handling "ExceptionGroup"s. '
|
||||
'The\n'
|
||||
'exception type for matching is interpreted as in the case of\n'
|
||||
':keyword:`except", but in the case of exception groups we can '
|
||||
'have\n'
|
||||
'partial matches when the type matches some of the exceptions in '
|
||||
'the\n'
|
||||
'group. This means that multiple except* clauses can execute, '
|
||||
'each\n'
|
||||
'handling part of the exception group. Each clause executes once '
|
||||
'and\n'
|
||||
'handles an exception group of all matching exceptions. Each '
|
||||
'exception\n'
|
||||
'in the group is handled by at most one except* clause, the first '
|
||||
'exception type for matching is interpreted as in the case of '
|
||||
'"except",\n'
|
||||
'but in the case of exception groups we can have partial matches '
|
||||
'when\n'
|
||||
'the type matches some of the exceptions in the group. This means '
|
||||
'that\n'
|
||||
'matches it.\n'
|
||||
'multiple except* clauses can execute, each handling part of the\n'
|
||||
'exception group. Each clause executes once and handles an '
|
||||
'exception\n'
|
||||
'group of all matching exceptions. Each exception in the group '
|
||||
'is\n'
|
||||
'handled by at most one except* clause, the first that matches '
|
||||
'it.\n'
|
||||
'\n'
|
||||
' >>> try:\n'
|
||||
' ... raise ExceptionGroup("eg",\n'
|
||||
@ -8082,7 +8081,11 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
'\n'
|
||||
' The built-in function "int()" falls back to '
|
||||
'"__trunc__()" if\n'
|
||||
' neither "__int__()" nor "__index__()" is defined.\n',
|
||||
' neither "__int__()" nor "__index__()" is defined.\n'
|
||||
'\n'
|
||||
' Changed in version 3.11: The delegation of "int()" to '
|
||||
'"__trunc__()"\n'
|
||||
' is deprecated.\n',
|
||||
'objects': 'Objects, values and types\n'
|
||||
'*************************\n'
|
||||
'\n'
|
||||
@ -8445,12 +8448,12 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
'\n'
|
||||
' raise_stmt ::= "raise" [expression ["from" expression]]\n'
|
||||
'\n'
|
||||
'If no expressions are present, "raise" re-raises the last '
|
||||
'exception\n'
|
||||
'that was active in the current scope. If no exception is active '
|
||||
'in\n'
|
||||
'the current scope, a "RuntimeError" exception is raised indicating\n'
|
||||
'that this is an error.\n'
|
||||
'If no expressions are present, "raise" re-raises the exception that '
|
||||
'is\n'
|
||||
'currently being handled, which is also known as the *active\n'
|
||||
'exception*. If there isn’t currently an active exception, a\n'
|
||||
'"RuntimeError" exception is raised indicating that this is an '
|
||||
'error.\n'
|
||||
'\n'
|
||||
'Otherwise, "raise" evaluates the first expression as the exception\n'
|
||||
'object. It must be either a subclass or an instance of\n'
|
||||
@ -8505,11 +8508,14 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
' File "<stdin>", line 4, in <module>\n'
|
||||
' RuntimeError: Something bad happened\n'
|
||||
'\n'
|
||||
'A similar mechanism works implicitly if an exception is raised '
|
||||
'inside\n'
|
||||
'an exception handler or a "finally" clause: the previous exception '
|
||||
'is\n'
|
||||
'then attached as the new exception’s "__context__" attribute:\n'
|
||||
'A similar mechanism works implicitly if a new exception is raised '
|
||||
'when\n'
|
||||
'an exception is already being handled. An exception may be '
|
||||
'handled\n'
|
||||
'when an "except" or "finally" clause, or a "with" statement, is '
|
||||
'used.\n'
|
||||
'The previous exception is then attached as the new exception’s\n'
|
||||
'"__context__" attribute:\n'
|
||||
'\n'
|
||||
' >>> try:\n'
|
||||
' ... print(1 / 0)\n'
|
||||
@ -10995,6 +11001,10 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
'if\n'
|
||||
' neither "__int__()" nor "__index__()" is defined.\n'
|
||||
'\n'
|
||||
' Changed in version 3.11: The delegation of "int()" to '
|
||||
'"__trunc__()"\n'
|
||||
' is deprecated.\n'
|
||||
'\n'
|
||||
'\n'
|
||||
'With Statement Context Managers\n'
|
||||
'===============================\n'
|
||||
@ -12562,17 +12572,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||
' >>> print(sys.exc_info())\n'
|
||||
' (None, None, None)\n'
|
||||
'\n'
|
||||
'The "except*" clause(s) are used for handling "ExceptionGroup`s. The\n'
|
||||
'exception type for matching is interpreted as in the case of\n'
|
||||
':keyword:`except", but in the case of exception groups we can have\n'
|
||||
'partial matches when the type matches some of the exceptions in the\n'
|
||||
'group. This means that multiple except* clauses can execute, each\n'
|
||||
'handling part of the exception group. Each clause executes once and\n'
|
||||
'handles an exception group of all matching exceptions. Each '
|
||||
'exception\n'
|
||||
'in the group is handled by at most one except* clause, the first '
|
||||
'The "except*" clause(s) are used for handling "ExceptionGroup"s. The\n'
|
||||
'exception type for matching is interpreted as in the case of '
|
||||
'"except",\n'
|
||||
'but in the case of exception groups we can have partial matches when\n'
|
||||
'the type matches some of the exceptions in the group. This means '
|
||||
'that\n'
|
||||
'matches it.\n'
|
||||
'multiple except* clauses can execute, each handling part of the\n'
|
||||
'exception group. Each clause executes once and handles an exception\n'
|
||||
'group of all matching exceptions. Each exception in the group is\n'
|
||||
'handled by at most one except* clause, the first that matches it.\n'
|
||||
'\n'
|
||||
' >>> try:\n'
|
||||
' ... raise ExceptionGroup("eg",\n'
|
||||
|
986
Misc/NEWS.d/3.11.0a5.rst
Normal file
986
Misc/NEWS.d/3.11.0a5.rst
Normal file
@ -0,0 +1,986 @@
|
||||
.. bpo: 45773
|
||||
.. date: 2022-02-01-14-30-56
|
||||
.. nonce: Up77LD
|
||||
.. release date: 2022-02-03
|
||||
.. section: Core and Builtins
|
||||
|
||||
Remove two invalid "peephole" optimizations from the bytecode compiler.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46564
|
||||
.. date: 2022-02-01-10-23-21
|
||||
.. nonce: 6Xc2_H
|
||||
.. section: Core and Builtins
|
||||
|
||||
Do not create frame objects when creating :class:`super` object. Patch by
|
||||
Kumar Aditya.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45885
|
||||
.. date: 2022-02-01-01-17-28
|
||||
.. nonce: CjyNf_
|
||||
.. section: Core and Builtins
|
||||
|
||||
Added more fined-grained specialization failure stats regarding the
|
||||
``COMPARE_OP`` bytecode.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 44977
|
||||
.. date: 2022-01-30-18-23-08
|
||||
.. nonce: BQV_zS
|
||||
.. section: Core and Builtins
|
||||
|
||||
The delegation of :func:`int` to :meth:`__trunc__` is now deprecated.
|
||||
Calling ``int(a)`` when ``type(a)`` implements :meth:`__trunc__` but not
|
||||
:meth:`__int__` or :meth:`__index__` now raises a :exc:`DeprecationWarning`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46458
|
||||
.. date: 2022-01-27-10-49-34
|
||||
.. nonce: 5Gm3Gv
|
||||
.. section: Core and Builtins
|
||||
|
||||
Reorder code emitted by the compiler for a :keyword:`try`-:keyword:`except`
|
||||
block so that the :keyword:`else` block's code immediately follows the
|
||||
:keyword:`try` body (without a jump). This is more optimal for the happy
|
||||
path.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46527
|
||||
.. date: 2022-01-25-19-34-55
|
||||
.. nonce: mQLNPk
|
||||
.. section: Core and Builtins
|
||||
|
||||
Allow passing ``iterable`` as a keyword argument to :func:`enumerate` again.
|
||||
Patch by Jelle Zijlstra.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46528
|
||||
.. date: 2022-01-25-17-40-07
|
||||
.. nonce: 2Qmni9
|
||||
.. section: Core and Builtins
|
||||
|
||||
Replace several stack manipulation instructions (``DUP_TOP``,
|
||||
``DUP_TOP_TWO``, ``ROT_TWO``, ``ROT_THREE``, ``ROT_FOUR``, and ``ROT_N``)
|
||||
with new :opcode:`COPY` and :opcode:`SWAP` instructions.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46329
|
||||
.. date: 2022-01-25-11-44-17
|
||||
.. nonce: SEhynE
|
||||
.. section: Core and Builtins
|
||||
|
||||
Use two or three bytecodes to implement most calls.
|
||||
|
||||
Calls without named arguments are implemented as a sequence of two
|
||||
instructions: ``PRECALL; CALL``. Calls with named arguments are implemented
|
||||
as a sequence of three instructions: ``PRECALL; KW_NAMES; CALL``. There are
|
||||
two different ``PRECALL`` instructions: ``PRECALL_FUNTION`` and
|
||||
``PRECALL_METHOD``. The latter pairs with ``LOAD_METHOD``.
|
||||
|
||||
This partition into pre-call and call allows better specialization, and thus
|
||||
better performance ultimately.
|
||||
|
||||
There is no change in semantics.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46503
|
||||
.. date: 2022-01-24-21-24-41
|
||||
.. nonce: 4UrPsE
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix an assert when parsing some invalid \N escape sequences in f-strings.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46431
|
||||
.. date: 2022-01-24-16-58-01
|
||||
.. nonce: N6mKAx
|
||||
.. section: Core and Builtins
|
||||
|
||||
Improve error message on invalid calls to
|
||||
:meth:`BaseExceptionGroup.__new__`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46476
|
||||
.. date: 2022-01-24-15-39-34
|
||||
.. nonce: cvP1Mr
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix memory leak in code objects generated by deepfreeze. Patch by Kumar
|
||||
Aditya.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46481
|
||||
.. date: 2022-01-23-06-56-33
|
||||
.. nonce: X_FfnB
|
||||
.. section: Core and Builtins
|
||||
|
||||
Speed up calls to :meth:`weakref.ref.__call__` by using the :pep:`590`
|
||||
``vectorcall`` calling convention. Patch by Dong-hee Na.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46417
|
||||
.. date: 2022-01-22-14-39-23
|
||||
.. nonce: 3U5SfN
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix a race condition on setting a type ``__bases__`` attribute: the internal
|
||||
function ``add_subclass()`` now gets the ``PyTypeObject.tp_subclasses``
|
||||
member after calling :c:func:`PyWeakref_NewRef` which can trigger a garbage
|
||||
collection which can indirectly modify ``PyTypeObject.tp_subclasses``. Patch
|
||||
by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46417
|
||||
.. date: 2022-01-21-12-24-14
|
||||
.. nonce: i3IqMf
|
||||
.. section: Core and Builtins
|
||||
|
||||
``python -X showrefcount`` now shows the total reference count after
|
||||
clearing and destroyed the main Python interpreter. Previously, it was shown
|
||||
before. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43683
|
||||
.. date: 2022-01-20-17-13-49
|
||||
.. nonce: BqQ26Z
|
||||
.. section: Core and Builtins
|
||||
|
||||
Add ASYNC_GEN_WRAP opcode to wrap the value to be yielded in async
|
||||
generators. Removes the need to special case async generators in the
|
||||
``YIELD_VALUE`` instruction.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46407
|
||||
.. date: 2022-01-17-23-12-01
|
||||
.. nonce: 2_5a7R
|
||||
.. section: Core and Builtins
|
||||
|
||||
Optimize some modulo operations in ``Objects/longobject.c``. Patch by
|
||||
Jeremiah Vivian.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46409
|
||||
.. date: 2022-01-17-12-57-27
|
||||
.. nonce: HouS6m
|
||||
.. section: Core and Builtins
|
||||
|
||||
Add new ``RETURN_GENERATOR`` bytecode to make generators. Simplifies calling
|
||||
Python functions in the VM, as they no longer any need to special case
|
||||
generator functions.
|
||||
|
||||
Also add ``JUMP_NO_INTERRUPT`` bytecode that acts like ``JUMP_ABSOLUTE``,
|
||||
but does not check for interrupts.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46406
|
||||
.. date: 2022-01-16-15-40-11
|
||||
.. nonce: g0mke-
|
||||
.. section: Core and Builtins
|
||||
|
||||
The integer division ``//`` implementation has been optimized to better let
|
||||
the compiler understand its constraints. It can be 20% faster on the amd64
|
||||
platform when dividing an int by a value smaller than ``2**30``.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46383
|
||||
.. date: 2022-01-14-20-55-34
|
||||
.. nonce: v8MTl4
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix invalid signature of ``_zoneinfo``'s ``module_free`` function to resolve
|
||||
a crash on wasm32-emscripten platform.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46361
|
||||
.. date: 2022-01-12-17-15-17
|
||||
.. nonce: mgI_j_
|
||||
.. section: Core and Builtins
|
||||
|
||||
Ensure that "small" integers created by :meth:`int.from_bytes` and
|
||||
:class:`decimal.Decimal` are properly cached.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46161
|
||||
.. date: 2021-12-23-12-32-45
|
||||
.. nonce: EljBmu
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fix the class building error when the arguments are constants and
|
||||
CALL_FUNCTION_EX is used.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46028
|
||||
.. date: 2021-12-16-15-04-58
|
||||
.. nonce: zfWacB
|
||||
.. section: Core and Builtins
|
||||
|
||||
Fixes calculation of :data:`sys._base_executable` when inside a virtual
|
||||
environment that uses symlinks with different binary names than the base
|
||||
environment provides.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46091
|
||||
.. date: 2021-12-16-00-24-00
|
||||
.. nonce: rJ_e_e
|
||||
.. section: Core and Builtins
|
||||
|
||||
Correctly calculate indentation levels for lines with whitespace character
|
||||
that are ended by line continuation characters. Patch by Pablo Galindo
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 30512
|
||||
.. date: 2021-12-12-00-49-19
|
||||
.. nonce: nU9E9V
|
||||
.. section: Core and Builtins
|
||||
|
||||
Add CAN Socket support for NetBSD.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46045
|
||||
.. date: 2021-12-11-11-36-48
|
||||
.. nonce: sfThay
|
||||
.. section: Core and Builtins
|
||||
|
||||
Do not use POSIX semaphores on NetBSD
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 44024
|
||||
.. date: 2021-05-04-21-55-49
|
||||
.. nonce: M9m8Qd
|
||||
.. section: Core and Builtins
|
||||
|
||||
Improve the exc:`TypeError` message for non-string second arguments passed
|
||||
to the built-in functions :func:`getattr` and :func:`hasattr`. Patch by Géry
|
||||
Ogam.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46624
|
||||
.. date: 2022-02-03-12-07-41
|
||||
.. nonce: f_Qqh0
|
||||
.. section: Library
|
||||
|
||||
Restore support for non-integer arguments of :func:`random.randrange` and
|
||||
:func:`random.randint`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46591
|
||||
.. date: 2022-01-31-15-40-38
|
||||
.. nonce: prBD1M
|
||||
.. section: Library
|
||||
|
||||
Make the IDLE doc URL on the About IDLE dialog clickable.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46565
|
||||
.. date: 2022-01-28-19-48-31
|
||||
.. nonce: bpZXO4
|
||||
.. section: Library
|
||||
|
||||
Remove loop variables that are leaking into modules' namespaces.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46553
|
||||
.. date: 2022-01-28-08-47-53
|
||||
.. nonce: f7Uc96
|
||||
.. section: Library
|
||||
|
||||
In :func:`typing.get_type_hints`, support evaluating bare stringified
|
||||
``ClassVar`` annotations. Patch by Gregory Beauregard.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46544
|
||||
.. date: 2022-01-27-13-30-02
|
||||
.. nonce: oFDVWj
|
||||
.. section: Library
|
||||
|
||||
Don't leak ``x`` & ``uspace`` intermediate vars in
|
||||
:class:`textwrap.TextWrapper`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46487
|
||||
.. date: 2022-01-27-12-24-38
|
||||
.. nonce: UDkN2z
|
||||
.. section: Library
|
||||
|
||||
Add the ``get_write_buffer_limits`` method to
|
||||
:class:`asyncio.transports.WriteTransport` and to the SSL transport.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45173
|
||||
.. date: 2022-01-27-11-16-59
|
||||
.. nonce: wreRF2
|
||||
.. section: Library
|
||||
|
||||
Note the configparser deprecations will be removed in Python 3.12.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45162
|
||||
.. date: 2022-01-26-23-58-48
|
||||
.. nonce: 4Jmg_j
|
||||
.. section: Library
|
||||
|
||||
The deprecated :mod:`unittest` APIs removed in 3.11a1 have been temporarily
|
||||
restored to be removed in 3.12 while cleanups in external projects go in.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46539
|
||||
.. date: 2022-01-26-20-36-30
|
||||
.. nonce: 23iW1d
|
||||
.. section: Library
|
||||
|
||||
In :func:`typing.get_type_hints`, support evaluating stringified
|
||||
``ClassVar`` and ``Final`` annotations inside ``Annotated``. Patch by
|
||||
Gregory Beauregard.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46510
|
||||
.. date: 2022-01-25-10-59-41
|
||||
.. nonce: PM5svI
|
||||
.. section: Library
|
||||
|
||||
Add missing test for :class:`types.TracebackType` and
|
||||
:class:`types.FrameType`. Calculate them directly from the caught exception
|
||||
without calling :func:`sys.exc_info`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46491
|
||||
.. date: 2022-01-24-23-55-30
|
||||
.. nonce: jmIKHo
|
||||
.. section: Library
|
||||
|
||||
Allow :data:`typing.Annotated` to wrap :data:`typing.Final` and
|
||||
:data:`typing.ClassVar`. Patch by Gregory Beauregard.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46483
|
||||
.. date: 2022-01-24-13-00-09
|
||||
.. nonce: 9XnmKp
|
||||
.. section: Library
|
||||
|
||||
Remove :meth:`~object.__class_getitem__` from :class:`pathlib.PurePath` as
|
||||
this class was not supposed to be generic.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46436
|
||||
.. date: 2022-01-23-19-37-00
|
||||
.. nonce: Biz1p9
|
||||
.. section: Library
|
||||
|
||||
Fix command-line option ``-d``/``--directory`` in module :mod:`http.server`
|
||||
which is ignored when combined with command-line option ``--cgi``. Patch by
|
||||
Géry Ogam.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 41403
|
||||
.. date: 2022-01-23-18-04-45
|
||||
.. nonce: SgoHqV
|
||||
.. section: Library
|
||||
|
||||
Make :meth:`mock.patch` raise a :exc:`TypeError` with a relevant error
|
||||
message on invalid arg. Previously it allowed a cryptic
|
||||
:exc:`AttributeError` to escape.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46474
|
||||
.. date: 2022-01-22-14-49-10
|
||||
.. nonce: eKQhvx
|
||||
.. section: Library
|
||||
|
||||
In ``importlib.metadata.EntryPoint.pattern``, avoid potential REDoS by
|
||||
limiting ambiguity in consecutive whitespace.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46474
|
||||
.. date: 2022-01-22-14-45-46
|
||||
.. nonce: 2DUC62
|
||||
.. section: Library
|
||||
|
||||
Removed private method from ``importlib.metadata.Path``. Sync with
|
||||
importlib_metadata 4.10.0.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46470
|
||||
.. date: 2022-01-22-13-17-35
|
||||
.. nonce: MnNhgU
|
||||
.. section: Library
|
||||
|
||||
Remove unused branch from ``typing._remove_dups_flatten``
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46469
|
||||
.. date: 2022-01-22-05-05-08
|
||||
.. nonce: plUab5
|
||||
.. section: Library
|
||||
|
||||
:mod:`asyncio` generic classes now return :class:`types.GenericAlias` in
|
||||
``__class_getitem__`` instead of the same class.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 41906
|
||||
.. date: 2022-01-21-18-19-45
|
||||
.. nonce: YBaquj
|
||||
.. section: Library
|
||||
|
||||
Support passing filter instances in the ``filters`` values of ``handlers``
|
||||
and ``loggers`` in the dictionary passed to
|
||||
:func:`logging.config.dictConfig`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46422
|
||||
.. date: 2022-01-20-10-35-50
|
||||
.. nonce: 1UAEHL
|
||||
.. section: Library
|
||||
|
||||
Use ``dis.Positions`` in ``dis.Instruction`` instead of a regular ``tuple``.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46434
|
||||
.. date: 2022-01-20-10-35-10
|
||||
.. nonce: geS-aP
|
||||
.. section: Library
|
||||
|
||||
:mod:`pdb` now gracefully handles ``help`` when :attr:`__doc__` is missing,
|
||||
for example when run with pregenerated optimized ``.pyc`` files.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43869
|
||||
.. date: 2022-01-18-17-24-21
|
||||
.. nonce: NayN12
|
||||
.. section: Library
|
||||
|
||||
Python uses the same time Epoch on all platforms. Add an explicit unit test
|
||||
to ensure that it's the case. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46414
|
||||
.. date: 2022-01-17-10-00-02
|
||||
.. nonce: Ld0b_y
|
||||
.. section: Library
|
||||
|
||||
Add :func:`typing.reveal_type`. Patch by Jelle Zijlstra.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40280
|
||||
.. date: 2022-01-16-14-07-14
|
||||
.. nonce: LtFHfF
|
||||
.. section: Library
|
||||
|
||||
:mod:`subprocess` now imports Windows-specific imports when ``msvcrt``
|
||||
module is available, and POSIX-specific imports on all other platforms. This
|
||||
gives a clean exception when ``_posixsubprocess`` is not available (e.g.
|
||||
Emscripten browser target).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40066
|
||||
.. date: 2022-01-13-11-41-24
|
||||
.. nonce: 1QuVli
|
||||
.. section: Library
|
||||
|
||||
``IntEnum``, ``IntFlag``, and ``StrEnum`` use the mixed-in type for their
|
||||
``str()`` and ``format()`` output.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46316
|
||||
.. date: 2022-01-09-15-04-56
|
||||
.. nonce: AMTyd0
|
||||
.. section: Library
|
||||
|
||||
Optimize :meth:`pathlib.Path.iterdir` by removing an unnecessary check for
|
||||
special entries.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 29688
|
||||
.. date: 2022-01-05-03-21-21
|
||||
.. nonce: W06bSH
|
||||
.. section: Library
|
||||
|
||||
Document :meth:`pathlib.Path.absolute` (which has always existed).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43012
|
||||
.. date: 2022-01-05-03-09-29
|
||||
.. nonce: RVhLIL
|
||||
.. section: Library
|
||||
|
||||
The pathlib module's obsolete and internal ``_Accessor`` class has been
|
||||
removed to prepare the terrain for upcoming enhancements to the module.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46258
|
||||
.. date: 2022-01-04-18-05-25
|
||||
.. nonce: DYgwRo
|
||||
.. section: Library
|
||||
|
||||
Speed up :func:`math.isqrt` for small positive integers by replacing two
|
||||
division steps with a lookup table.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46242
|
||||
.. date: 2022-01-03-16-25-06
|
||||
.. nonce: f4l_CL
|
||||
.. section: Library
|
||||
|
||||
Improve error message when creating a new :class:`enum.Enum` type
|
||||
subclassing an existing ``Enum`` with ``_member_names_`` using
|
||||
:meth:`enum.Enum.__call__`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43118
|
||||
.. date: 2021-12-29-14-42-09
|
||||
.. nonce: BoVi_5
|
||||
.. section: Library
|
||||
|
||||
Fix a bug in :func:`inspect.signature` that was causing it to fail on some
|
||||
subclasses of classes with a ``__text_signature__`` referencing module
|
||||
globals. Patch by Weipeng Hong.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 26552
|
||||
.. date: 2021-12-29-13-42-55
|
||||
.. nonce: 1BqeAn
|
||||
.. section: Library
|
||||
|
||||
Fixed case where failing :func:`asyncio.ensure_future` did not close the
|
||||
coroutine. Patch by Kumar Aditya.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 21987
|
||||
.. date: 2021-12-28-11-55-10
|
||||
.. nonce: avBK-p
|
||||
.. section: Library
|
||||
|
||||
Fix an issue with :meth:`tarfile.TarFile.getmember` getting a directory name
|
||||
with a trailing slash.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46124
|
||||
.. date: 2021-12-18-18-41-30
|
||||
.. nonce: ESPrb7
|
||||
.. section: Library
|
||||
|
||||
Update :mod:`zoneinfo` to rely on importlib.resources traversable API.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46103
|
||||
.. date: 2021-12-16-23-42-54
|
||||
.. nonce: LMnZAN
|
||||
.. section: Library
|
||||
|
||||
Now :func:`inspect.getmembers` only gets :attr:`__bases__` attribute from
|
||||
class type. Patch by Weipeng Hong.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46080
|
||||
.. date: 2021-12-15-06-29-00
|
||||
.. nonce: AuQpLt
|
||||
.. section: Library
|
||||
|
||||
Fix exception in argparse help text generation if a
|
||||
:class:`argparse.BooleanOptionalAction` argument's default is
|
||||
``argparse.SUPPRESS`` and it has ``help`` specified. Patch by Felix
|
||||
Fontein.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 44791
|
||||
.. date: 2021-07-31-23-18-50
|
||||
.. nonce: 4jFdpO
|
||||
.. section: Library
|
||||
|
||||
Fix substitution of :class:`~typing.ParamSpec` in
|
||||
:data:`~typing.Concatenate` with different parameter expressions.
|
||||
Substitution with a list of types returns now a tuple of types. Substitution
|
||||
with ``Concatenate`` returns now a ``Concatenate`` with concatenated lists
|
||||
of arguments.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46463
|
||||
.. date: 2022-01-21-21-33-48
|
||||
.. nonce: fBbdTG
|
||||
.. section: Documentation
|
||||
|
||||
Fixes :file:`escape4chm.py` script used when building the CHM documentation
|
||||
file
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43478
|
||||
.. date: 2022-02-03-00-21-32
|
||||
.. nonce: 0nfcam
|
||||
.. section: Tests
|
||||
|
||||
Mocks can no longer be provided as the specs for other Mocks. As a result,
|
||||
an already-mocked object cannot be passed to `mock.Mock()`. This can uncover
|
||||
bugs in tests since these Mock-derived Mocks will always pass certain tests
|
||||
(e.g. isinstance) and builtin assert functions (e.g.
|
||||
assert_called_once_with) will unconditionally pass.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46616
|
||||
.. date: 2022-02-02-18-14-38
|
||||
.. nonce: URvBtE
|
||||
.. section: Tests
|
||||
|
||||
Ensures ``test_importlib.test_windows`` cleans up registry keys after
|
||||
completion.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 44359
|
||||
.. date: 2022-02-02-02-24-04
|
||||
.. nonce: kPPSmN
|
||||
.. section: Tests
|
||||
|
||||
test_ftplib now silently ignores socket errors to prevent logging unhandled
|
||||
threading exceptions. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46600
|
||||
.. date: 2022-02-01-17-13-53
|
||||
.. nonce: FMCk8Z
|
||||
.. section: Tests
|
||||
|
||||
Fix test_gdb.test_pycfunction() for Python built with ``clang -Og``.
|
||||
Tolerate inlined functions in the gdb traceback. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46542
|
||||
.. date: 2022-01-31-17-34-13
|
||||
.. nonce: RTMm1T
|
||||
.. section: Tests
|
||||
|
||||
Fix a Python crash in test_lib2to3 when using Python built in debug mode:
|
||||
limit the recursion limit. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46576
|
||||
.. date: 2022-01-29-12-37-53
|
||||
.. nonce: -prRaV
|
||||
.. section: Tests
|
||||
|
||||
test_peg_generator now disables compiler optimization when testing
|
||||
compilation of its own C extensions to significantly speed up the testing on
|
||||
non-debug builds of CPython.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46542
|
||||
.. date: 2022-01-28-01-17-10
|
||||
.. nonce: xRLTdj
|
||||
.. section: Tests
|
||||
|
||||
Fix ``test_json`` tests checking for :exc:`RecursionError`: modify these
|
||||
tests to use ``support.infinite_recursion()``. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 13886
|
||||
.. date: 2022-01-17-13-10-04
|
||||
.. nonce: 5mZH4b
|
||||
.. section: Tests
|
||||
|
||||
Skip test_builtin PTY tests on non-ASCII characters if the readline module
|
||||
is loaded. The readline module changes input() behavior, but test_builtin is
|
||||
not intented to test the readline module. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40280
|
||||
.. date: 2022-01-16-14-11-57
|
||||
.. nonce: fNnFfx
|
||||
.. section: Tests
|
||||
|
||||
Add :func:`test.support.requires_fork` decorators to mark tests that require
|
||||
a working :func:`os.fork`.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40280
|
||||
.. date: 2022-01-14-23-22-41
|
||||
.. nonce: nHLWoD
|
||||
.. section: Tests
|
||||
|
||||
Add :func:`test.support.requires_subprocess` decorator to mark tests which
|
||||
require working :mod:`subprocess` module or ``os.spawn*``. The
|
||||
wasm32-emscripten platform has no support for processes.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46126
|
||||
.. date: 2021-12-18-22-23-50
|
||||
.. nonce: 0LH3Yb
|
||||
.. section: Tests
|
||||
|
||||
Disable 'descriptions' when running tests internally.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46602
|
||||
.. date: 2022-02-02-02-06-07
|
||||
.. nonce: 8GaOZ2
|
||||
.. section: Build
|
||||
|
||||
Tidied up configure.ac so that conftest.c is truncated rather than appended.
|
||||
This assists in the case where the 'rm' of conftest.c fails to happen
|
||||
between tests. Downstream issues such as a clobbered SOABI can result.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46600
|
||||
.. date: 2022-02-01-14-07-37
|
||||
.. nonce: NNLnfj
|
||||
.. section: Build
|
||||
|
||||
Fix the test checking if the C compiler supports ``-Og`` option in the
|
||||
``./configure`` script to also use ``-Og`` on clang which supports it. Patch
|
||||
by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 38472
|
||||
.. date: 2022-01-26-22-59-12
|
||||
.. nonce: RxfLho
|
||||
.. section: Build
|
||||
|
||||
Fix GCC detection in setup.py when cross-compiling. The C compiler is now
|
||||
run with LC_ALL=C. Previously, the detection failed with a German locale.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46513
|
||||
.. date: 2022-01-25-12-32-37
|
||||
.. nonce: mPm9B4
|
||||
.. section: Build
|
||||
|
||||
:program:`configure` no longer uses ``AC_C_CHAR_UNSIGNED`` macro and
|
||||
``pyconfig.h`` no longer defines reserved symbol ``__CHAR_UNSIGNED__``.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46471
|
||||
.. date: 2022-01-22-11-06-23
|
||||
.. nonce: 03snrE
|
||||
.. section: Build
|
||||
|
||||
Use global singletons for single byte bytes objects in deepfreeze.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46443
|
||||
.. date: 2022-01-20-05-27-07
|
||||
.. nonce: udCVII
|
||||
.. section: Build
|
||||
|
||||
Deepfreeze now uses cached small integers as it saves some space for common
|
||||
small integers.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46429
|
||||
.. date: 2022-01-19-04-36-15
|
||||
.. nonce: y0OtVL
|
||||
.. section: Build
|
||||
|
||||
Merge all deep-frozen files into one for space savings. Patch by Kumar
|
||||
Aditya.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45569
|
||||
.. date: 2022-01-09-11-24-54
|
||||
.. nonce: zCIENy
|
||||
.. section: Build
|
||||
|
||||
The build now defaults to using 30-bit digits for Python integers.
|
||||
Previously either 15-bit or 30-bit digits would be selected, depending on
|
||||
the platform. 15-bit digits may still be selected using the
|
||||
``--enable-big-digits=15`` option to the ``configure`` script, or by
|
||||
defining ``PYLONG_BITS_IN_DIGIT`` in ``pyconfig.h``.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45925
|
||||
.. date: 2022-01-08-12-43-31
|
||||
.. nonce: 38F3NO
|
||||
.. section: Build
|
||||
|
||||
Update Windows installer to use SQLite 3.37.2.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 43112
|
||||
.. date: 2021-02-10-17-54-04
|
||||
.. nonce: H5Lat6
|
||||
.. section: Build
|
||||
|
||||
Detect musl libc as a separate SOABI (tagged as ``linux-musl``).
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 33125
|
||||
.. date: 2022-01-25-14-48-39
|
||||
.. nonce: 5WyY_J
|
||||
.. section: Windows
|
||||
|
||||
The traditional EXE/MSI based installer for Windows is now available for
|
||||
ARM64
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46362
|
||||
.. date: 2022-01-13-22-31-09
|
||||
.. nonce: f2cuEb
|
||||
.. section: Windows
|
||||
|
||||
os.path.abspath("C:\CON") is now fixed to return "\\.\CON", not the same
|
||||
path. The regression was true of all legacy DOS devices such as COM1, LPT1,
|
||||
or NUL.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 44934
|
||||
.. date: 2021-09-01-10-48-11
|
||||
.. nonce: W1xPATH
|
||||
.. section: Windows
|
||||
|
||||
The installer now offers a command-line only option to add the installation
|
||||
directory to the end of :envvar:`PATH` instead of at the start.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45925
|
||||
.. date: 2022-01-26-12-04-09
|
||||
.. nonce: yBSiYO
|
||||
.. section: macOS
|
||||
|
||||
Update macOS installer to SQLite 3.37.2.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45296
|
||||
.. date: 2022-01-26-19-33-55
|
||||
.. nonce: LzZKdU
|
||||
.. section: IDLE
|
||||
|
||||
Clarify close, quit, and exit in IDLE. In the File menu, 'Close' and 'Exit'
|
||||
are now 'Close Window' (the current one) and 'Exit' is now 'Exit IDLE' (by
|
||||
closing all windows). In Shell, 'quit()' and 'exit()' mean 'close Shell'.
|
||||
If there are no other windows, this also exits IDLE.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40170
|
||||
.. date: 2022-01-27-02-51-22
|
||||
.. nonce: uPolek
|
||||
.. section: C API
|
||||
|
||||
Remove the ``PyHeapType_GET_MEMBERS()`` macro. It was exposed in the public
|
||||
C API by mistake, it must only be used by Python internally. Use the
|
||||
``PyTypeObject.tp_members`` member instead. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 40170
|
||||
.. date: 2022-01-27-02-37-18
|
||||
.. nonce: XxQB0i
|
||||
.. section: C API
|
||||
|
||||
Move _Py_GetAllocatedBlocks() and _PyObject_DebugMallocStats() private
|
||||
functions to the internal C API. Patch by Victor Stinner.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 46433
|
||||
.. date: 2022-01-19-16-51-54
|
||||
.. nonce: Er9ApS
|
||||
.. section: C API
|
||||
|
||||
The internal function _PyType_GetModuleByDef now correctly handles
|
||||
inheritance patterns involving static types.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 45459
|
||||
.. date: 2021-10-18-16-54-24
|
||||
.. nonce: Y1pEZs
|
||||
.. section: C API
|
||||
|
||||
:c:type:`Py_buffer` and various ``Py_buffer`` related functions are now part
|
||||
of the limited API and stable ABI.
|
||||
|
||||
..
|
||||
|
||||
.. bpo: 14916
|
||||
.. date: 2020-09-11-02-50-41
|
||||
.. nonce: QN1Y03
|
||||
.. section: C API
|
||||
|
||||
Fixed bug in the tokenizer that prevented ``PyRun_InteractiveOne`` from
|
||||
parsing from the provided FD.
|
@ -1 +0,0 @@
|
||||
Detect musl libc as a separate SOABI (tagged as ``linux-musl``).
|
@ -1 +0,0 @@
|
||||
Update Windows installer to use SQLite 3.37.2.
|
@ -1,5 +0,0 @@
|
||||
The build now defaults to using 30-bit digits for Python integers. Previously
|
||||
either 15-bit or 30-bit digits would be selected, depending on the platform.
|
||||
15-bit digits may still be selected using the ``--enable-big-digits=15`` option
|
||||
to the ``configure`` script, or by defining ``PYLONG_BITS_IN_DIGIT`` in
|
||||
``pyconfig.h``.
|
@ -1 +0,0 @@
|
||||
Merge all deep-frozen files into one for space savings. Patch by Kumar Aditya.
|
@ -1 +0,0 @@
|
||||
Deepfreeze now uses cached small integers as it saves some space for common small integers.
|
@ -1 +0,0 @@
|
||||
Use global singletons for single byte bytes objects in deepfreeze.
|
@ -1,2 +0,0 @@
|
||||
:program:`configure` no longer uses ``AC_C_CHAR_UNSIGNED`` macro and
|
||||
``pyconfig.h`` no longer defines reserved symbol ``__CHAR_UNSIGNED__``.
|
@ -1,2 +0,0 @@
|
||||
Fix GCC detection in setup.py when cross-compiling. The C compiler is now
|
||||
run with LC_ALL=C. Previously, the detection failed with a German locale.
|
@ -1,3 +0,0 @@
|
||||
Fix the test checking if the C compiler supports ``-Og`` option in the
|
||||
``./configure`` script to also use ``-Og`` on clang which supports it. Patch
|
||||
by Victor Stinner.
|
@ -1 +0,0 @@
|
||||
Tidied up configure.ac so that conftest.c is truncated rather than appended. This assists in the case where the 'rm' of conftest.c fails to happen between tests. Downstream issues such as a clobbered SOABI can result.
|
@ -1 +0,0 @@
|
||||
Fixed bug in the tokenizer that prevented ``PyRun_InteractiveOne`` from parsing from the provided FD.
|
@ -1,2 +0,0 @@
|
||||
:c:type:`Py_buffer` and various ``Py_buffer`` related functions are now
|
||||
part of the limited API and stable ABI.
|
@ -1,2 +0,0 @@
|
||||
The internal function _PyType_GetModuleByDef now correctly handles
|
||||
inheritance patterns involving static types.
|
@ -1,2 +0,0 @@
|
||||
Move _Py_GetAllocatedBlocks() and _PyObject_DebugMallocStats() private
|
||||
functions to the internal C API. Patch by Victor Stinner.
|
@ -1,4 +0,0 @@
|
||||
Remove the ``PyHeapType_GET_MEMBERS()`` macro. It was exposed in the public C
|
||||
API by mistake, it must only be used by Python internally. Use the
|
||||
``PyTypeObject.tp_members`` member instead. Patch by Victor Stinner.
|
||||
|
@ -1,2 +0,0 @@
|
||||
Improve the exc:`TypeError` message for non-string second arguments passed to
|
||||
the built-in functions :func:`getattr` and :func:`hasattr`. Patch by Géry Ogam.
|
@ -1 +0,0 @@
|
||||
Do not use POSIX semaphores on NetBSD
|
@ -1 +0,0 @@
|
||||
Add CAN Socket support for NetBSD.
|
@ -1,2 +0,0 @@
|
||||
Correctly calculate indentation levels for lines with whitespace character
|
||||
that are ended by line continuation characters. Patch by Pablo Galindo
|
@ -1,3 +0,0 @@
|
||||
Fixes calculation of :data:`sys._base_executable` when inside a virtual
|
||||
environment that uses symlinks with different binary names than the base
|
||||
environment provides.
|
@ -1 +0,0 @@
|
||||
Fix the class building error when the arguments are constants and CALL_FUNCTION_EX is used.
|
@ -1,2 +0,0 @@
|
||||
Ensure that "small" integers created by :meth:`int.from_bytes` and
|
||||
:class:`decimal.Decimal` are properly cached.
|
@ -1,2 +0,0 @@
|
||||
Fix invalid signature of ``_zoneinfo``'s ``module_free`` function to resolve
|
||||
a crash on wasm32-emscripten platform.
|
@ -1,3 +0,0 @@
|
||||
The integer division ``//`` implementation has been optimized to better let the
|
||||
compiler understand its constraints. It can be 20% faster on the amd64 platform
|
||||
when dividing an int by a value smaller than ``2**30``.
|
@ -1,6 +0,0 @@
|
||||
Add new ``RETURN_GENERATOR`` bytecode to make generators.
|
||||
Simplifies calling Python functions in the VM, as they no
|
||||
longer any need to special case generator functions.
|
||||
|
||||
Also add ``JUMP_NO_INTERRUPT`` bytecode that acts like
|
||||
``JUMP_ABSOLUTE``, but does not check for interrupts.
|
@ -1 +0,0 @@
|
||||
Optimize some modulo operations in ``Objects/longobject.c``. Patch by Jeremiah Vivian.
|
@ -1,3 +0,0 @@
|
||||
Add ASYNC_GEN_WRAP opcode to wrap the value to be yielded in async
|
||||
generators. Removes the need to special case async generators in the
|
||||
``YIELD_VALUE`` instruction.
|
@ -1,3 +0,0 @@
|
||||
``python -X showrefcount`` now shows the total reference count after clearing
|
||||
and destroyed the main Python interpreter. Previously, it was shown before.
|
||||
Patch by Victor Stinner.
|
@ -1,5 +0,0 @@
|
||||
Fix a race condition on setting a type ``__bases__`` attribute: the internal
|
||||
function ``add_subclass()`` now gets the ``PyTypeObject.tp_subclasses``
|
||||
member after calling :c:func:`PyWeakref_NewRef` which can trigger a garbage
|
||||
collection which can indirectly modify ``PyTypeObject.tp_subclasses``. Patch
|
||||
by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
Speed up calls to :meth:`weakref.ref.__call__` by using the :pep:`590`
|
||||
``vectorcall`` calling convention. Patch by Dong-hee Na.
|
@ -1 +0,0 @@
|
||||
Fix memory leak in code objects generated by deepfreeze. Patch by Kumar Aditya.
|
@ -1 +0,0 @@
|
||||
Improve error message on invalid calls to :meth:`BaseExceptionGroup.__new__`.
|
@ -1 +0,0 @@
|
||||
Fix an assert when parsing some invalid \N escape sequences in f-strings.
|
@ -1,12 +0,0 @@
|
||||
Use two or three bytecodes to implement most calls.
|
||||
|
||||
Calls without named arguments are implemented as a sequence of two
|
||||
instructions: ``PRECALL; CALL``. Calls with named arguments are implemented
|
||||
as a sequence of three instructions: ``PRECALL; KW_NAMES; CALL``. There are
|
||||
two different ``PRECALL`` instructions: ``PRECALL_FUNTION`` and
|
||||
``PRECALL_METHOD``. The latter pairs with ``LOAD_METHOD``.
|
||||
|
||||
This partition into pre-call and call allows better specialization, and thus
|
||||
better performance ultimately.
|
||||
|
||||
There is no change in semantics.
|
@ -1,3 +0,0 @@
|
||||
Replace several stack manipulation instructions (``DUP_TOP``,
|
||||
``DUP_TOP_TWO``, ``ROT_TWO``, ``ROT_THREE``, ``ROT_FOUR``, and ``ROT_N``)
|
||||
with new :opcode:`COPY` and :opcode:`SWAP` instructions.
|
@ -1,2 +0,0 @@
|
||||
Allow passing ``iterable`` as a keyword argument to :func:`enumerate` again.
|
||||
Patch by Jelle Zijlstra.
|
@ -1,4 +0,0 @@
|
||||
Reorder code emitted by the compiler for a :keyword:`try`-:keyword:`except`
|
||||
block so that the :keyword:`else` block's code immediately follows the
|
||||
:keyword:`try` body (without a jump). This is more optimal for the happy
|
||||
path.
|
@ -1,3 +0,0 @@
|
||||
The delegation of :func:`int` to :meth:`__trunc__` is now deprecated.
|
||||
Calling ``int(a)`` when ``type(a)`` implements :meth:`__trunc__` but not
|
||||
:meth:`__int__` or :meth:`__index__` now raises a :exc:`DeprecationWarning`.
|
@ -1 +0,0 @@
|
||||
Added more fined-grained specialization failure stats regarding the ``COMPARE_OP`` bytecode.
|
@ -1 +0,0 @@
|
||||
Do not create frame objects when creating :class:`super` object. Patch by Kumar Aditya.
|
@ -1 +0,0 @@
|
||||
Remove two invalid "peephole" optimizations from the bytecode compiler.
|
@ -1,2 +0,0 @@
|
||||
Fixes :file:`escape4chm.py` script used when building the CHM documentation
|
||||
file
|
@ -1,4 +0,0 @@
|
||||
Clarify close, quit, and exit in IDLE. In the File menu, 'Close' and 'Exit'
|
||||
are now 'Close Window' (the current one) and 'Exit' is now 'Exit IDLE'
|
||||
(by closing all windows). In Shell, 'quit()' and 'exit()' mean 'close Shell'.
|
||||
If there are no other windows, this also exits IDLE.
|
@ -1,5 +0,0 @@
|
||||
Fix substitution of :class:`~typing.ParamSpec` in
|
||||
:data:`~typing.Concatenate` with different parameter expressions.
|
||||
Substitution with a list of types returns now a tuple of types. Substitution
|
||||
with ``Concatenate`` returns now a ``Concatenate`` with concatenated lists
|
||||
of arguments.
|
@ -1,3 +0,0 @@
|
||||
Fix exception in argparse help text generation if a
|
||||
:class:`argparse.BooleanOptionalAction` argument's default is
|
||||
``argparse.SUPPRESS`` and it has ``help`` specified. Patch by Felix Fontein.
|
@ -1,2 +0,0 @@
|
||||
Now :func:`inspect.getmembers` only gets :attr:`__bases__` attribute from
|
||||
class type. Patch by Weipeng Hong.
|
@ -1 +0,0 @@
|
||||
Update :mod:`zoneinfo` to rely on importlib.resources traversable API.
|
@ -1,2 +0,0 @@
|
||||
Fix an issue with :meth:`tarfile.TarFile.getmember` getting a directory name
|
||||
with a trailing slash.
|
@ -1 +0,0 @@
|
||||
Fixed case where failing :func:`asyncio.ensure_future` did not close the coroutine. Patch by Kumar Aditya.
|
@ -1,3 +0,0 @@
|
||||
Fix a bug in :func:`inspect.signature` that was causing it to fail on some
|
||||
subclasses of classes with a ``__text_signature__`` referencing module
|
||||
globals. Patch by Weipeng Hong.
|
@ -1 +0,0 @@
|
||||
Improve error message when creating a new :class:`enum.Enum` type subclassing an existing ``Enum`` with ``_member_names_`` using :meth:`enum.Enum.__call__`.
|
@ -1,2 +0,0 @@
|
||||
Speed up :func:`math.isqrt` for small positive integers by replacing two
|
||||
division steps with a lookup table.
|
@ -1,2 +0,0 @@
|
||||
The pathlib module's obsolete and internal ``_Accessor`` class has been
|
||||
removed to prepare the terrain for upcoming enhancements to the module.
|
@ -1 +0,0 @@
|
||||
Document :meth:`pathlib.Path.absolute` (which has always existed).
|
@ -1 +0,0 @@
|
||||
Optimize :meth:`pathlib.Path.iterdir` by removing an unnecessary check for special entries.
|
@ -1,2 +0,0 @@
|
||||
``IntEnum``, ``IntFlag``, and ``StrEnum`` use the mixed-in type for their
|
||||
``str()`` and ``format()`` output.
|
@ -1,4 +0,0 @@
|
||||
:mod:`subprocess` now imports Windows-specific imports when
|
||||
``msvcrt`` module is available, and POSIX-specific imports on all other
|
||||
platforms. This gives a clean exception when ``_posixsubprocess`` is not
|
||||
available (e.g. Emscripten browser target).
|
@ -1 +0,0 @@
|
||||
Add :func:`typing.reveal_type`. Patch by Jelle Zijlstra.
|
@ -1,2 +0,0 @@
|
||||
Python uses the same time Epoch on all platforms. Add an explicit unit test
|
||||
to ensure that it's the case. Patch by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
:mod:`pdb` now gracefully handles ``help`` when :attr:`__doc__` is missing,
|
||||
for example when run with pregenerated optimized ``.pyc`` files.
|
@ -1 +0,0 @@
|
||||
Use ``dis.Positions`` in ``dis.Instruction`` instead of a regular ``tuple``.
|
@ -1,2 +0,0 @@
|
||||
Support passing filter instances in the ``filters`` values of ``handlers`` and
|
||||
``loggers`` in the dictionary passed to :func:`logging.config.dictConfig`.
|
@ -1 +0,0 @@
|
||||
:mod:`asyncio` generic classes now return :class:`types.GenericAlias` in ``__class_getitem__`` instead of the same class.
|
@ -1 +0,0 @@
|
||||
Remove unused branch from ``typing._remove_dups_flatten``
|
@ -1,2 +0,0 @@
|
||||
Removed private method from ``importlib.metadata.Path``. Sync with
|
||||
importlib_metadata 4.10.0.
|
@ -1,2 +0,0 @@
|
||||
In ``importlib.metadata.EntryPoint.pattern``, avoid potential REDoS by
|
||||
limiting ambiguity in consecutive whitespace.
|
@ -1,3 +0,0 @@
|
||||
Make :meth:`mock.patch` raise a :exc:`TypeError` with a relevant error
|
||||
message on invalid arg. Previously it allowed a cryptic
|
||||
:exc:`AttributeError` to escape.
|
@ -1,3 +0,0 @@
|
||||
Fix command-line option ``-d``/``--directory`` in module :mod:`http.server`
|
||||
which is ignored when combined with command-line option ``--cgi``. Patch by
|
||||
Géry Ogam.
|
@ -1 +0,0 @@
|
||||
Remove :meth:`~object.__class_getitem__` from :class:`pathlib.PurePath` as this class was not supposed to be generic.
|
@ -1 +0,0 @@
|
||||
Allow :data:`typing.Annotated` to wrap :data:`typing.Final` and :data:`typing.ClassVar`. Patch by Gregory Beauregard.
|
@ -1,3 +0,0 @@
|
||||
Add missing test for :class:`types.TracebackType` and
|
||||
:class:`types.FrameType`. Calculate them directly from the caught exception
|
||||
without calling :func:`sys.exc_info`.
|
@ -1 +0,0 @@
|
||||
In :func:`typing.get_type_hints`, support evaluating stringified ``ClassVar`` and ``Final`` annotations inside ``Annotated``. Patch by Gregory Beauregard.
|
@ -1,3 +0,0 @@
|
||||
The deprecated :mod:`unittest` APIs removed in 3.11a1 have been
|
||||
temporarily restored to be removed in 3.12 while cleanups in external
|
||||
projects go in.
|
@ -1 +0,0 @@
|
||||
Note the configparser deprecations will be removed in Python 3.12.
|
@ -1 +0,0 @@
|
||||
Add the ``get_write_buffer_limits`` method to :class:`asyncio.transports.WriteTransport` and to the SSL transport.
|
@ -1,2 +0,0 @@
|
||||
Don't leak ``x`` & ``uspace`` intermediate vars in
|
||||
:class:`textwrap.TextWrapper`.
|
@ -1 +0,0 @@
|
||||
In :func:`typing.get_type_hints`, support evaluating bare stringified ``ClassVar`` annotations. Patch by Gregory Beauregard.
|
@ -1 +0,0 @@
|
||||
Remove loop variables that are leaking into modules' namespaces.
|
@ -1 +0,0 @@
|
||||
Make the IDLE doc URL on the About IDLE dialog clickable.
|
@ -1 +0,0 @@
|
||||
Restore support for non-integer arguments of :func:`random.randrange` and :func:`random.randint`.
|
@ -1 +0,0 @@
|
||||
Disable 'descriptions' when running tests internally.
|
@ -1,3 +0,0 @@
|
||||
Add :func:`test.support.requires_subprocess` decorator to mark tests which
|
||||
require working :mod:`subprocess` module or ``os.spawn*``. The
|
||||
wasm32-emscripten platform has no support for processes.
|
@ -1,2 +0,0 @@
|
||||
Add :func:`test.support.requires_fork` decorators to mark tests that require
|
||||
a working :func:`os.fork`.
|
@ -1,3 +0,0 @@
|
||||
Skip test_builtin PTY tests on non-ASCII characters if the readline module
|
||||
is loaded. The readline module changes input() behavior, but test_builtin is
|
||||
not intented to test the readline module. Patch by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
Fix ``test_json`` tests checking for :exc:`RecursionError`: modify these tests
|
||||
to use ``support.infinite_recursion()``. Patch by Victor Stinner.
|
@ -1,3 +0,0 @@
|
||||
test_peg_generator now disables compiler optimization when testing
|
||||
compilation of its own C extensions to significantly speed up the
|
||||
testing on non-debug builds of CPython.
|
@ -1,2 +0,0 @@
|
||||
Fix a Python crash in test_lib2to3 when using Python built in debug mode:
|
||||
limit the recursion limit. Patch by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
Fix test_gdb.test_pycfunction() for Python built with ``clang -Og``.
|
||||
Tolerate inlined functions in the gdb traceback. Patch by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
test_ftplib now silently ignores socket errors to prevent logging unhandled
|
||||
threading exceptions. Patch by Victor Stinner.
|
@ -1,2 +0,0 @@
|
||||
Ensures ``test_importlib.test_windows`` cleans up registry keys after
|
||||
completion.
|
@ -1 +0,0 @@
|
||||
Mocks can no longer be provided as the specs for other Mocks. As a result, an already-mocked object cannot be passed to `mock.Mock()`. This can uncover bugs in tests since these Mock-derived Mocks will always pass certain tests (e.g. isinstance) and builtin assert functions (e.g. assert_called_once_with) will unconditionally pass.
|
@ -1 +0,0 @@
|
||||
The installer now offers a command-line only option to add the installation directory to the end of :envvar:`PATH` instead of at the start.
|
@ -1,2 +0,0 @@
|
||||
os.path.abspath("C:\CON") is now fixed to return "\\.\CON", not the same path.
|
||||
The regression was true of all legacy DOS devices such as COM1, LPT1, or NUL.
|
@ -1,2 +0,0 @@
|
||||
The traditional EXE/MSI based installer for Windows is now available for
|
||||
ARM64
|
@ -1 +0,0 @@
|
||||
Update macOS installer to SQLite 3.37.2.
|
@ -1,4 +1,4 @@
|
||||
This is Python version 3.11.0 alpha 4
|
||||
This is Python version 3.11.0 alpha 5
|
||||
=====================================
|
||||
|
||||
.. image:: https://github.com/python/cpython/workflows/Tests/badge.svg
|
||||
|
Loading…
Reference in New Issue
Block a user