mirror of
https://github.com/python/cpython.git
synced 2025-10-09 16:34:44 +00:00
Python 3.11.0a7
This commit is contained in:
parent
c1d93b6411
commit
2e49bd06c5
159 changed files with 1750 additions and 474 deletions
|
@ -20,10 +20,10 @@
|
||||||
#define PY_MINOR_VERSION 11
|
#define PY_MINOR_VERSION 11
|
||||||
#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 6
|
#define PY_RELEASE_SERIAL 7
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.11.0a6+"
|
#define PY_VERSION "3.11.0a7"
|
||||||
/*--end constants--*/
|
/*--end constants--*/
|
||||||
|
|
||||||
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# Autogenerated by Sphinx on Mon Mar 7 12:29:42 2022
|
# Autogenerated by Sphinx on Tue Apr 5 20:53:43 2022
|
||||||
topics = {'assert': 'The "assert" statement\n'
|
topics = {'assert': 'The "assert" statement\n'
|
||||||
'**********************\n'
|
'**********************\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -93,11 +93,7 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' optionally in parentheses, the object is assigned to that '
|
' optionally in parentheses, the object is assigned to that '
|
||||||
'target.\n'
|
'target.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'* Else: The object must be an iterable with the same number of '
|
'* Else:\n'
|
||||||
'items\n'
|
|
||||||
' as there are targets in the target list, and the items are '
|
|
||||||
'assigned,\n'
|
|
||||||
' from left to right, to the corresponding targets.\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
' * If the target list contains one target prefixed with an '
|
' * If the target list contains one target prefixed with an '
|
||||||
'asterisk,\n'
|
'asterisk,\n'
|
||||||
|
@ -2328,27 +2324,18 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' for_stmt ::= "for" target_list "in" starred_list ":" suite\n'
|
' for_stmt ::= "for" target_list "in" starred_list ":" suite\n'
|
||||||
' ["else" ":" suite]\n'
|
' ["else" ":" suite]\n'
|
||||||
'\n'
|
'\n'
|
||||||
'The expression list is evaluated once; it should yield an '
|
'The "starred_list" expression is evaluated once; it should yield '
|
||||||
'iterable\n'
|
'an\n'
|
||||||
'object. An iterator is created for the result of the '
|
'*iterable* object. An *iterator* is created for that iterable. '
|
||||||
'"starred_list".\n'
|
'The\n'
|
||||||
'The expression list can contain starred elements ("*x, *y") that '
|
'first item provided by the iterator is then assigned to the '
|
||||||
'will\n'
|
'target\n'
|
||||||
'be unpacked in the final iterator (as when constructing a '
|
'list using the standard rules for assignments (see Assignment\n'
|
||||||
'"tuple" or\n'
|
'statements), and the suite is executed. This repeats for each '
|
||||||
'"list" literal). The suite is then executed once for each item\n'
|
'item\n'
|
||||||
'provided by the iterator, in the order returned by the '
|
'provided by the iterator. When the iterator is exhausted, the '
|
||||||
'iterator. Each\n'
|
'suite\n'
|
||||||
'item in turn is assigned to the target list using the standard '
|
'in the "else" clause, if present, is executed, and the loop\n'
|
||||||
'rules\n'
|
|
||||||
'for assignments (see Assignment statements), and then the suite '
|
|
||||||
'is\n'
|
|
||||||
'executed. When the items are exhausted (which is immediately '
|
|
||||||
'when the\n'
|
|
||||||
'sequence is empty or an iterator raises a "StopIteration" '
|
|
||||||
'exception),\n'
|
|
||||||
'the suite in the "else" clause, if present, is executed, and the '
|
|
||||||
'loop\n'
|
|
||||||
'terminates.\n'
|
'terminates.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'A "break" statement executed in the first suite terminates the '
|
'A "break" statement executed in the first suite terminates the '
|
||||||
|
@ -2427,11 +2414,11 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'resulting\n'
|
'resulting\n'
|
||||||
'object is “compatible” with the exception. An object is '
|
'object is “compatible” with the exception. An object is '
|
||||||
'compatible\n'
|
'compatible\n'
|
||||||
'with an exception if the object is the class or a base class of '
|
'with an exception if the object is the class or a *non-virtual '
|
||||||
'the\n'
|
'base\n'
|
||||||
'exception object, or a tuple containing an item that is the '
|
'class* of the exception object, or a tuple containing an item '
|
||||||
'class or a\n'
|
'that is\n'
|
||||||
'base class of the exception object.\n'
|
'the class or a non-virtual base class of the exception object.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'If no except clause matches the exception, the search for an '
|
'If no except clause matches the exception, the search for an '
|
||||||
'exception\n'
|
'exception\n'
|
||||||
|
@ -4461,15 +4448,17 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'on members\n'
|
'on members\n'
|
||||||
' of hashed collections including "set", "frozenset", and '
|
' of hashed collections including "set", "frozenset", and '
|
||||||
'"dict".\n'
|
'"dict".\n'
|
||||||
' "__hash__()" should return an integer. The only required '
|
' The "__hash__()" method should return an integer. The '
|
||||||
'property\n'
|
'only required\n'
|
||||||
' is that objects which compare equal have the same hash '
|
' property is that objects which compare equal have the '
|
||||||
'value; it is\n'
|
'same hash\n'
|
||||||
' advised to mix together the hash values of the '
|
' value; it is advised to mix together the hash values of '
|
||||||
'components of the\n'
|
'the\n'
|
||||||
' object that also play a part in comparison of objects by '
|
' components of the object that also play a part in '
|
||||||
'packing\n'
|
'comparison of\n'
|
||||||
' them into a tuple and hashing the tuple. Example:\n'
|
' objects by packing them into a tuple and hashing the '
|
||||||
|
'tuple.\n'
|
||||||
|
' Example:\n'
|
||||||
'\n'
|
'\n'
|
||||||
' def __hash__(self):\n'
|
' def __hash__(self):\n'
|
||||||
' return hash((self.name, self.nick, self.color))\n'
|
' return hash((self.name, self.nick, self.color))\n'
|
||||||
|
@ -5458,11 +5447,11 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'clause is\n'
|
'clause is\n'
|
||||||
'selected depending on the class of the instance: it must '
|
'selected depending on the class of the instance: it must '
|
||||||
'reference the\n'
|
'reference the\n'
|
||||||
'class of the instance or a base class thereof. The instance '
|
'class of the instance or a *non-virtual base class* thereof. '
|
||||||
'can be\n'
|
'The\n'
|
||||||
'received by the handler and can carry additional information '
|
'instance can be received by the handler and can carry '
|
||||||
'about the\n'
|
'additional\n'
|
||||||
'exceptional condition.\n'
|
'information about the exceptional condition.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Note:\n'
|
'Note:\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -5797,11 +5786,11 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'clause is\n'
|
'clause is\n'
|
||||||
'selected depending on the class of the instance: it must '
|
'selected depending on the class of the instance: it must '
|
||||||
'reference the\n'
|
'reference the\n'
|
||||||
'class of the instance or a base class thereof. The instance '
|
'class of the instance or a *non-virtual base class* thereof. '
|
||||||
'can be\n'
|
'The\n'
|
||||||
'received by the handler and can carry additional information '
|
'instance can be received by the handler and can carry '
|
||||||
'about the\n'
|
'additional\n'
|
||||||
'exceptional condition.\n'
|
'information about the exceptional condition.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Note:\n'
|
'Note:\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -5901,23 +5890,13 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' for_stmt ::= "for" target_list "in" starred_list ":" suite\n'
|
' for_stmt ::= "for" target_list "in" starred_list ":" suite\n'
|
||||||
' ["else" ":" suite]\n'
|
' ["else" ":" suite]\n'
|
||||||
'\n'
|
'\n'
|
||||||
'The expression list is evaluated once; it should yield an iterable\n'
|
'The "starred_list" expression is evaluated once; it should yield an\n'
|
||||||
'object. An iterator is created for the result of the '
|
'*iterable* object. An *iterator* is created for that iterable. The\n'
|
||||||
'"starred_list".\n'
|
'first item provided by the iterator is then assigned to the target\n'
|
||||||
'The expression list can contain starred elements ("*x, *y") that '
|
'list using the standard rules for assignments (see Assignment\n'
|
||||||
'will\n'
|
'statements), and the suite is executed. This repeats for each item\n'
|
||||||
'be unpacked in the final iterator (as when constructing a "tuple" or\n'
|
'provided by the iterator. When the iterator is exhausted, the suite\n'
|
||||||
'"list" literal). The suite is then executed once for each item\n'
|
'in the "else" clause, if present, is executed, and the loop\n'
|
||||||
'provided by the iterator, in the order returned by the iterator. '
|
|
||||||
'Each\n'
|
|
||||||
'item in turn is assigned to the target list using the standard rules\n'
|
|
||||||
'for assignments (see Assignment statements), and then the suite is\n'
|
|
||||||
'executed. When the items are exhausted (which is immediately when '
|
|
||||||
'the\n'
|
|
||||||
'sequence is empty or an iterator raises a "StopIteration" '
|
|
||||||
'exception),\n'
|
|
||||||
'the suite in the "else" clause, if present, is executed, and the '
|
|
||||||
'loop\n'
|
|
||||||
'terminates.\n'
|
'terminates.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'A "break" statement executed in the first suite terminates the loop\n'
|
'A "break" statement executed in the first suite terminates the loop\n'
|
||||||
|
@ -9388,15 +9367,17 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'on members\n'
|
'on members\n'
|
||||||
' of hashed collections including "set", "frozenset", and '
|
' of hashed collections including "set", "frozenset", and '
|
||||||
'"dict".\n'
|
'"dict".\n'
|
||||||
' "__hash__()" should return an integer. The only required '
|
' The "__hash__()" method should return an integer. The '
|
||||||
'property\n'
|
'only required\n'
|
||||||
' is that objects which compare equal have the same hash '
|
' property is that objects which compare equal have the '
|
||||||
'value; it is\n'
|
'same hash\n'
|
||||||
' advised to mix together the hash values of the components '
|
' value; it is advised to mix together the hash values of '
|
||||||
'of the\n'
|
'the\n'
|
||||||
' object that also play a part in comparison of objects by '
|
' components of the object that also play a part in '
|
||||||
'packing\n'
|
'comparison of\n'
|
||||||
' them into a tuple and hashing the tuple. Example:\n'
|
' objects by packing them into a tuple and hashing the '
|
||||||
|
'tuple.\n'
|
||||||
|
' Example:\n'
|
||||||
'\n'
|
'\n'
|
||||||
' def __hash__(self):\n'
|
' def __hash__(self):\n'
|
||||||
' return hash((self.name, self.nick, self.color))\n'
|
' return hash((self.name, self.nick, self.color))\n'
|
||||||
|
@ -10003,14 +9984,14 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Whenever a class inherits from another class, '
|
'Whenever a class inherits from another class, '
|
||||||
'"__init_subclass__()" is\n'
|
'"__init_subclass__()" is\n'
|
||||||
'called on that class. This way, it is possible to write '
|
'called on the parent class. This way, it is possible to '
|
||||||
'classes which\n'
|
'write classes\n'
|
||||||
'change the behavior of subclasses. This is closely related '
|
'which change the behavior of subclasses. This is closely '
|
||||||
'to class\n'
|
'related to\n'
|
||||||
'decorators, but where class decorators only affect the '
|
'class decorators, but where class decorators only affect the '
|
||||||
'specific class\n'
|
'specific\n'
|
||||||
'they’re applied to, "__init_subclass__" solely applies to '
|
'class they’re applied to, "__init_subclass__" solely applies '
|
||||||
'future\n'
|
'to future\n'
|
||||||
'subclasses of the class defining the method.\n'
|
'subclasses of the class defining the method.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'classmethod object.__init_subclass__(cls)\n'
|
'classmethod object.__init_subclass__(cls)\n'
|
||||||
|
@ -12381,67 +12362,86 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'subscriptions': 'Subscriptions\n'
|
'subscriptions': 'Subscriptions\n'
|
||||||
'*************\n'
|
'*************\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Subscription of a sequence (string, tuple or list) or '
|
'The subscription of an instance of a container class will '
|
||||||
'mapping\n'
|
'generally\n'
|
||||||
'(dictionary) object usually selects an item from the '
|
'select an element from the container. The subscription of a '
|
||||||
'collection:\n'
|
'*generic\n'
|
||||||
|
'class* will generally return a GenericAlias object.\n'
|
||||||
'\n'
|
'\n'
|
||||||
' subscription ::= primary "[" expression_list "]"\n'
|
' subscription ::= primary "[" expression_list "]"\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
'When an object is subscripted, the interpreter will '
|
||||||
|
'evaluate the\n'
|
||||||
|
'primary and the expression list.\n'
|
||||||
|
'\n'
|
||||||
'The primary must evaluate to an object that supports '
|
'The primary must evaluate to an object that supports '
|
||||||
'subscription\n'
|
'subscription. An\n'
|
||||||
'(lists or dictionaries for example). User-defined objects '
|
'object may support subscription through defining one or '
|
||||||
'can support\n'
|
'both of\n'
|
||||||
'subscription by defining a "__getitem__()" method.\n'
|
'"__getitem__()" and "__class_getitem__()". When the primary '
|
||||||
|
'is\n'
|
||||||
|
'subscripted, the evaluated result of the expression list '
|
||||||
|
'will be\n'
|
||||||
|
'passed to one of these methods. For more details on when\n'
|
||||||
|
'"__class_getitem__" is called instead of "__getitem__", '
|
||||||
|
'see\n'
|
||||||
|
'__class_getitem__ versus __getitem__.\n'
|
||||||
|
'\n'
|
||||||
|
'If the expression list contains at least one comma, it will '
|
||||||
|
'evaluate\n'
|
||||||
|
'to a "tuple" containing the items of the expression list. '
|
||||||
|
'Otherwise,\n'
|
||||||
|
'the expression list will evaluate to the value of the '
|
||||||
|
'list’s sole\n'
|
||||||
|
'member.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'For built-in objects, there are two types of objects that '
|
'For built-in objects, there are two types of objects that '
|
||||||
'support\n'
|
'support\n'
|
||||||
'subscription:\n'
|
'subscription via "__getitem__()":\n'
|
||||||
'\n'
|
'\n'
|
||||||
'If the primary is a mapping, the expression list must '
|
'1. Mappings. If the primary is a *mapping*, the expression '
|
||||||
'evaluate to an\n'
|
'list must\n'
|
||||||
'object whose value is one of the keys of the mapping, and '
|
' evaluate to an object whose value is one of the keys of '
|
||||||
'the\n'
|
'the\n'
|
||||||
'subscription selects the value in the mapping that '
|
' mapping, and the subscription selects the value in the '
|
||||||
'corresponds to that\n'
|
'mapping that\n'
|
||||||
'key. (The expression list is a tuple except if it has '
|
' corresponds to that key. An example of a builtin mapping '
|
||||||
'exactly one\n'
|
'class is\n'
|
||||||
'item.)\n'
|
' the "dict" class.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'If the primary is a sequence, the expression list must '
|
'2. Sequences. If the primary is a *sequence*, the '
|
||||||
'evaluate to an\n'
|
'expression list must\n'
|
||||||
'integer or a slice (as discussed in the following '
|
' evaluate to an "int" or a "slice" (as discussed in the '
|
||||||
'section).\n'
|
'following\n'
|
||||||
|
' section). Examples of builtin sequence classes include '
|
||||||
|
'the "str",\n'
|
||||||
|
' "list" and "tuple" classes.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'The formal syntax makes no special provision for negative '
|
'The formal syntax makes no special provision for negative '
|
||||||
'indices in\n'
|
'indices in\n'
|
||||||
'sequences; however, built-in sequences all provide a '
|
'*sequences*. However, built-in sequences all provide a '
|
||||||
'"__getitem__()"\n'
|
'"__getitem__()"\n'
|
||||||
'method that interprets negative indices by adding the '
|
'method that interprets negative indices by adding the '
|
||||||
'length of the\n'
|
'length of the\n'
|
||||||
'sequence to the index (so that "x[-1]" selects the last '
|
'sequence to the index so that, for example, "x[-1]" selects '
|
||||||
'item of "x").\n'
|
'the last\n'
|
||||||
'The resulting value must be a nonnegative integer less than '
|
'item of "x". The resulting value must be a nonnegative '
|
||||||
'the number\n'
|
'integer less\n'
|
||||||
'of items in the sequence, and the subscription selects the '
|
'than the number of items in the sequence, and the '
|
||||||
'item whose\n'
|
'subscription selects\n'
|
||||||
'index is that value (counting from zero). Since the support '
|
'the item whose index is that value (counting from zero). '
|
||||||
'for\n'
|
'Since the\n'
|
||||||
'negative indices and slicing occurs in the object’s '
|
'support for negative indices and slicing occurs in the '
|
||||||
'"__getitem__()"\n'
|
'object’s\n'
|
||||||
'method, subclasses overriding this method will need to '
|
'"__getitem__()" method, subclasses overriding this method '
|
||||||
'explicitly add\n'
|
'will need to\n'
|
||||||
'that support.\n'
|
'explicitly add that support.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'A string’s items are characters. A character is not a '
|
'A "string" is a special kind of sequence whose items are '
|
||||||
'separate data\n'
|
'*characters*.\n'
|
||||||
'type but a string of exactly one character.\n'
|
'A character is not a separate data type but a string of '
|
||||||
'\n'
|
'exactly one\n'
|
||||||
'Subscription of certain *classes* or *types* creates a '
|
'character.\n',
|
||||||
'generic alias.\n'
|
|
||||||
'In this case, user-defined classes can support subscription '
|
|
||||||
'by\n'
|
|
||||||
'providing a "__class_getitem__()" classmethod.\n',
|
|
||||||
'truth': 'Truth Value Testing\n'
|
'truth': 'Truth Value Testing\n'
|
||||||
'*******************\n'
|
'*******************\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -12502,10 +12502,10 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'exception. For an except clause with an expression, that expression\n'
|
'exception. For an except clause with an expression, that expression\n'
|
||||||
'is evaluated, and the clause matches the exception if the resulting\n'
|
'is evaluated, and the clause matches the exception if the resulting\n'
|
||||||
'object is “compatible” with the exception. An object is compatible\n'
|
'object is “compatible” with the exception. An object is compatible\n'
|
||||||
'with an exception if the object is the class or a base class of the\n'
|
'with an exception if the object is the class or a *non-virtual base\n'
|
||||||
'exception object, or a tuple containing an item that is the class or '
|
'class* of the exception object, or a tuple containing an item that '
|
||||||
'a\n'
|
'is\n'
|
||||||
'base class of the exception object.\n'
|
'the class or a non-virtual base class of the exception object.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'If no except clause matches the exception, the search for an '
|
'If no except clause matches the exception, the search for an '
|
||||||
'exception\n'
|
'exception\n'
|
||||||
|
|
1614
Misc/NEWS.d/3.11.0a7.rst
Normal file
1614
Misc/NEWS.d/3.11.0a7.rst
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,2 +0,0 @@
|
||||||
``configure`` now verifies that all SQLite C APIs needed for the
|
|
||||||
:mod:`sqlite3` extension module are found.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Building Python now requires support of IEEE 754 floating point numbers.
|
|
||||||
Patch by Victor Stinner.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add ``regen-configure`` make target to regenerate configure script with
|
|
||||||
Christian's container image ``quay.io/tiran/cpython_autoconf:269``.
|
|
|
@ -1 +0,0 @@
|
||||||
The :mod:`tkinter` package now requires Tcl/Tk version 8.5.12 or newer.
|
|
|
@ -1 +0,0 @@
|
||||||
Update OpenSSL to 1.1.1n for macOS installers and all Windows builds.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Ensure Windows install builds fail correctly with a non-zero exit code when
|
|
||||||
part of the build fails.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add SOABI ``wasm32-emscripten`` for Emscripten and ``wasm32-wasi`` for WASI
|
|
||||||
on 32bit WASM as well as ``wasm64`` counter parts.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``makesetup`` now detects and skips all duplicated module definitions. The
|
|
||||||
first entry wins.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add configure option :option:`--enable-wasm-dynamic-linking` to enable
|
|
||||||
``dlopen`` and MAIN_MODULE / SIDE_MODULE on ``wasm32-emscripten``.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Add new functions to pack and unpack C double (serialize and deserialize):
|
|
||||||
:c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`,
|
|
||||||
:c:func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` and
|
|
||||||
:c:func:`PyFloat_Unpack8`. Patch by Victor Stinner.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Remove private functions ``_PySys_GetObjectId()`` and ``_PySys_SetObjectId()``.
|
|
||||||
Patch by Dong-hee Na.
|
|
|
@ -1,9 +0,0 @@
|
||||||
Remove the following private undocumented functions from the C API:
|
|
||||||
|
|
||||||
* ``_PyEval_GetAsyncGenFirstiter()``
|
|
||||||
* ``_PyEval_GetAsyncGenFinalizer()``
|
|
||||||
* ``_PyEval_SetAsyncGenFirstiter()``
|
|
||||||
* ``_PyEval_SetAsyncGenFinalizer()``
|
|
||||||
|
|
||||||
Call the public :func:`sys.get_asyncgen_hooks` and
|
|
||||||
:func:`sys.set_asyncgen_hooks` functions instead. Patch by Victor Stinner.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Remove the private undocumented function
|
|
||||||
``_PyEval_GetCoroutineOriginTrackingDepth()`` from the C API. Call the
|
|
||||||
public :func:`sys.get_coroutine_origin_tracking_depth` function instead.
|
|
||||||
Patch by Victor Stinner.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Remove the private undocumented function ``_PyEval_CallTracing()`` from the
|
|
||||||
C API. Call the public :func:`sys.call_tracing` function instead. Patch by
|
|
||||||
Victor Stinner.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Move the private undocumented ``_PyEval_EvalFrameDefault()`` function to the
|
|
||||||
internal C API. The function now uses the ``_PyInterpreterFrame`` type which is
|
|
||||||
part of the internal C API. Patch by Victor Stinner.
|
|
|
@ -1,6 +0,0 @@
|
||||||
Move the private ``_PyFrameEvalFunction`` type, and private
|
|
||||||
``_PyInterpreterState_GetEvalFrameFunc()`` and
|
|
||||||
``_PyInterpreterState_SetEvalFrameFunc()`` functions to the internal C API. The
|
|
||||||
``_PyFrameEvalFunction`` callback function type now uses the
|
|
||||||
``_PyInterpreterFrame`` type which is part of the internal C API. Patch by
|
|
||||||
Victor Stinner.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add ``PyFrame_GetBuiltins``, ``PyFrame_GetGenerator`` and
|
|
||||||
``PyFrame_GetGlobals`` C-API functions to access frame object attributes
|
|
||||||
safely from C code.
|
|
|
@ -1 +0,0 @@
|
||||||
Make grammar changes required for PEP 646.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix docstrings of :attr:`~property.getter`, :attr:`~property.setter`, and :attr:`~property.deleter` to clarify that they create a new copy of the property.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improve syntax errors for incorrect function definitions. Patch by Pablo
|
|
||||||
Galindo
|
|
|
@ -1 +0,0 @@
|
||||||
Statically allocate and initialize the latin1 characters.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Use inline caching for :opcode:`PRECALL` and :opcode:`CALL`, and remove the
|
|
||||||
internal machinery for managing the (now unused) non-inline caches.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Modify :opcode:`STORE_SUBSCR` to use an inline cache entry (rather than its
|
|
||||||
oparg) as an adaptive counter.
|
|
|
@ -1 +0,0 @@
|
||||||
Speed up throwing exception in generator with :const:`METH_FASTCALL` calling convention. Patch by Kumar Aditya.
|
|
|
@ -1 +0,0 @@
|
||||||
Removed the ``__len__()`` call when initializing a list and moved initializing to ``list_extend``. Patch by Jeremiah Pascual.
|
|
|
@ -1 +0,0 @@
|
||||||
Speed up :class:`bytearray` creation from :class:`list` and :class:`tuple` by 40%. Patch by Kumar Aditya.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Deprecate passing a message into :meth:`asyncio.Future.cancel` and
|
|
||||||
:meth:`asyncio.Task.cancel`
|
|
|
@ -1 +0,0 @@
|
||||||
Improve performance of ``bytearray_repeat`` and ``bytearray_irepeat`` by reducing the number of invocations of ``memcpy``.
|
|
|
@ -1 +0,0 @@
|
||||||
Improved the performance of :meth:`list.append()` and list comprehensions by optimizing for the common case, where no resize is needed. Patch by Dennis Sweeney.
|
|
|
@ -1 +0,0 @@
|
||||||
Speed up iteration of :class:`bytes` and :class:`bytearray` by 30%. Patch by Kumar Aditya.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Quicken bytecode in-place by storing it as part of the corresponding
|
|
||||||
``PyCodeObject``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Use low bit of ``LOAD_GLOBAL`` to indicate whether to push a ``NULL`` before
|
|
||||||
the global. Helps streamline the call sequence a bit.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Check for the existence of the "sys/auxv.h" header in :mod:`faulthandler` to
|
|
||||||
avoid compilation problems in systems where this header doesn't exist. Patch
|
|
||||||
by Pablo Galindo
|
|
|
@ -1,3 +0,0 @@
|
||||||
Remove the ``f_state`` field from the _PyInterpreterFrame struct. Add the
|
|
||||||
``owner`` field to the _PyInterpreterFrame struct to make ownership explicit
|
|
||||||
to simplify clearing and deallocing frames and generators.
|
|
|
@ -1 +0,0 @@
|
||||||
Reduce de-optimization in the specialized ``BINARY_OP_INPLACE_ADD_UNICODE`` opcode.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Improve performance of ``array_inplace_repeat`` by reducing the number of invocations of ``memcpy``.
|
|
||||||
Refactor the ``repeat`` and inplace ``repeat`` methods of ``array``, ``bytes``, ``bytearray``
|
|
||||||
and ``unicodeobject`` to use the common ``_PyBytes_Repeat``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:c:func:`PyFrame_FastToLocalsWithError` and :c:func:`PyFrame_LocalsToFast` are no longer
|
|
||||||
called during profiling nor tracing. C code can access the ``f_locals`` attribute of :c:type:`PyFrameObject` by calling :c:func:`PyFrame_GetLocals`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Replaced :opcode:`JUMP_ABSOLUTE` by the relative jump :opcode:`JUMP_BACKWARD`.
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Speed up calls to c functions with keyword arguments by 25% with specialization. Patch by Kumar Aditya.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix a crash if we fail to decode characters in interactive mode if the
|
|
||||||
tokenizer buffers are uninitialized. Patch by Pablo Galindo.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve error messages in f-string syntax errors concerning empty expressions.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Some Windows system error codes(>= 10000) are now mapped into
|
|
||||||
the correct errno and may now raise a subclass of :exc:`OSError`.
|
|
||||||
Patch by Dong-hee Na.
|
|
|
@ -1,4 +0,0 @@
|
||||||
WebAssembly cannot deal with bad function pointer casts (different count
|
|
||||||
or types of arguments). Python can now use call trampolines to mitigate
|
|
||||||
the problem. Define :c:macro:`PY_CALL_TRAMPOLINE` to enable call
|
|
||||||
trampolines.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix a crash when using a named unicode character like ``"\N{digit nine}"``
|
|
||||||
after the main interpreter has been initialized a second time.
|
|
|
@ -1 +0,0 @@
|
||||||
Avoid unnecessary allocations when comparing code objects.
|
|
|
@ -1 +0,0 @@
|
||||||
Replace the absolute jump opcode :opcode:`JUMP_NO_INTERRUPT` by the relative :opcode:`JUMP_BACKWARD_NO_INTERRUPT`.
|
|
|
@ -1 +0,0 @@
|
||||||
Replace :opcode:`JUMP_IF_NOT_EXC_MATCH` by :opcode:`CHECK_EXC_MATCH` + jump.
|
|
|
@ -1,6 +0,0 @@
|
||||||
Emscripten builds cannot handle signals in the usual way due to platform
|
|
||||||
limitations. Python can now handle signals. To use, set
|
|
||||||
Module.Py_EmscriptenSignalBuffer to be a single byte SharedArrayBuffer and
|
|
||||||
set Py_EMSCRIPTEN_SIGNAL_HANDLING to 1. Writing a number into the
|
|
||||||
SharedArrayBuffer will cause the corresponding signal to be raised into the
|
|
||||||
Python thread.
|
|
|
@ -1 +0,0 @@
|
||||||
Replace :opcode:`JUMP_IF_NOT_EG_MATCH` by :opcode:`CHECK_EG_MATCH` + jump.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Raise :exc:`IndentationError` instead of :exc:`SyntaxError` for a bare
|
|
||||||
``except`` with no following indent. Improve :exc:`SyntaxError` locations for
|
|
||||||
an un-parenthesized generator used as arguments. Patch by Matthieu Dartiailh.
|
|
|
@ -1 +0,0 @@
|
||||||
Link the errnos referenced in ``Doc/library/exceptions.rst`` to their respective section in ``Doc/library/errno.rst``, and vice versa. Previously this was only done for EINTR and InterruptedError. Patch by Yan "yyyyyyyan" Orestes.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Document that in some circumstances :exc:`KeyboardInterrupt` may cause the
|
|
||||||
code to enter an inconsistent state. Provided a sample workaround to avoid
|
|
||||||
it if needed.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Adjust inaccurate phrasing in :doc:`../extending/newtypes_tutorial` about the
|
|
||||||
``ob_base`` field and the macros used to access its contents.
|
|
|
@ -1 +0,0 @@
|
||||||
Clarify ``for`` statement execution in its doc.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Clarified the old Python versions compatiblity note of :func:`binascii.crc32` /
|
|
||||||
:func:`zlib.adler32` / :func:`zlib.crc32` functions.
|
|
|
@ -1 +0,0 @@
|
||||||
Update PEP URLs to :pep:`676`'s new canonical form.
|
|
|
@ -1 +0,0 @@
|
||||||
Document internal :mod:`asyncio` API.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:mod:`re` module, fix a few bugs about capturing group. In rare cases,
|
|
||||||
capturing group gets an incorrect string. Patch by Ma Lin.
|
|
|
@ -1 +0,0 @@
|
||||||
Add an Barrier object in synchronization primitives of *asyncio* Lib in order to be consistant with Barrier from *threading* and *multiprocessing* libs*
|
|
|
@ -1 +0,0 @@
|
||||||
Added :class:`ctypes.BigEndianUnion` and :class:`ctypes.LittleEndianUnion` classes, as originally documented in the library docs but not yet implemented.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add :meth:`~sqlite3.Connection.serialize` and
|
|
||||||
:meth:`~sqlite3.Connection.deserialize` support to :mod:`sqlite3`. Patch by
|
|
||||||
Erlend E. Aasland.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add missing terminated NUL in sockaddr_un's length
|
|
||||||
|
|
||||||
This was potentially observable when using non-abstract AF_UNIX datagram sockets to processes written in another programming language.
|
|
|
@ -1,10 +0,0 @@
|
||||||
Raise more accurate and :pep:`249` compatible exceptions in :mod:`sqlite3`.
|
|
||||||
|
|
||||||
* Raise :exc:`~sqlite3.InterfaceError` instead of
|
|
||||||
:exc:`~sqlite3.ProgrammingError` for ``SQLITE_MISUSE`` errors.
|
|
||||||
* Don't overwrite :exc:`BufferError` with :exc:`ValueError` when conversion to
|
|
||||||
BLOB fails.
|
|
||||||
* Raise :exc:`~sqlite3.ProgrammingError` instead of :exc:`~sqlite3.Warning` if
|
|
||||||
user tries to :meth:`~sqlite3.Cursor.execute()` more than one SQL statement.
|
|
||||||
* Raise :exc:`~sqlite3.ProgrammingError` instead of :exc:`ValueError` if an SQL
|
|
||||||
query contains null characters.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix bug where :mod:`unittest` sometimes drops frames from tracebacks of exceptions raised in tests.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Fix handling of the ``stacklevel`` argument to logging functions in the
|
|
||||||
:mod:`logging` module so that it is consistent accross all logging functions
|
|
||||||
and, as advertised, similar to the ``stacklevel`` argument used in
|
|
||||||
:meth:`~warnings.warn`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix ``.write()`` method of a member file in ``ZipFile``, when the input data is
|
|
||||||
an object that supports the buffer protocol, the file length may be wrong.
|
|
|
@ -1 +0,0 @@
|
||||||
Add ``LOCAL_CREDS``, ``LOCAL_CREDS_PERSISTENT`` and ``SCM_CREDS2`` FreeBSD constants to the socket module.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix inconsistency with uppercase file extensions in :meth:`MimeTypes.guess_type`. Patch by Kumar Aditya.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix supporting generic aliases in :mod:`pydoc`.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve the error message when you try to subclass an instance of :class:`typing.NewType`.
|
|
|
@ -1 +0,0 @@
|
||||||
:meth:`~unittest.TestProgram.usageExit` is marked deprecated, to be removed in 3.13.
|
|
|
@ -1 +0,0 @@
|
||||||
Add optional parameter *dir_fd* in :func:`shutil.rmtree`.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix a unittest issue where if the command was invoked as ``python -m
|
|
||||||
unittest`` and the filename(s) began with a dot (.), a ``ValueError`` is
|
|
||||||
returned.
|
|
|
@ -1 +0,0 @@
|
||||||
Add :func:`typing.assert_type`. Patch by Jelle Zijlstra.
|
|
|
@ -1 +0,0 @@
|
||||||
:mod:`pydoc` now excludes __future__ imports from the module's data items.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add :exc:`DeprecationWarning` to :class:`LegacyInterpolation`, deprecated in
|
|
||||||
the docstring since Python 3.2. Will be removed in Python 3.13. Use
|
|
||||||
:class:`BasicInterpolation` or :class:`ExtendedInterpolation` instead.
|
|
|
@ -1 +0,0 @@
|
||||||
:func:`typing.get_type_hints` now supports evaluating strings as forward references in :ref:`PEP 585 generic aliases <types-genericalias>`.
|
|
|
@ -1 +0,0 @@
|
||||||
Warnings captured by the logging module are now logged without a format string to prevent systems that group logs by the msg argument from grouping captured warnings together.
|
|
|
@ -1 +0,0 @@
|
||||||
Allow unpacking types.GenericAlias objects, e.g. ``*tuple[int, str]``.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement support for PEP 646 in typing.py.
|
|
|
@ -1,15 +0,0 @@
|
||||||
Define *posix_venv* and *nt_venv*
|
|
||||||
:ref:`sysconfig installation schemes <installation_paths>`
|
|
||||||
to be used for bootstrapping new virtual environments.
|
|
||||||
Add *venv* sysconfig installation scheme to get the appropriate one of the above.
|
|
||||||
The schemes are identical to the pre-existing
|
|
||||||
*posix_prefix* and *nt* install schemes.
|
|
||||||
The :mod:`venv` module now uses the *venv* scheme to create new virtual environments
|
|
||||||
instead of hardcoding the paths depending only on the platform. Downstream
|
|
||||||
Python distributors customizing the *posix_prefix* or *nt* install
|
|
||||||
scheme in a way that is not compatible with the install scheme used in
|
|
||||||
virtual environments are encouraged not to customize the *venv* schemes.
|
|
||||||
When Python itself runs in a virtual environment,
|
|
||||||
:func:`sysconfig.get_default_scheme` and
|
|
||||||
:func:`sysconfig.get_preferred_scheme` with ``key="prefix"`` returns
|
|
||||||
*venv*.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Brings :class:`ParamSpec` propagation for :class:`GenericAlias` in line with
|
|
||||||
:class:`Concatenate` (and others).
|
|
|
@ -1 +0,0 @@
|
||||||
No longer require valid typeforms to be callable. This allows :data:`typing.Annotated` to wrap :data:`typing.ParamSpecArgs` and :data:`dataclasses.InitVar`. Patch by Gregory Beauregard.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Added raw datagram socket functions for asyncio:
|
|
||||||
:meth:`~asyncio.AbstractEventLoop.sock_sendto`,
|
|
||||||
:meth:`~asyncio.AbstractEventLoop.sock_recvfrom` and
|
|
||||||
:meth:`~asyncio.AbstractEventLoop.sock_recvfrom_into`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:func:`asyncio.timeout` and :func:`asyncio.timeout_at` context managers
|
|
||||||
added. Patch by Tin Tvrtković and Andrew Svetlov.
|
|
|
@ -1 +0,0 @@
|
||||||
:pep:`680`, the :mod:`tomllib` module. Adds support for parsing TOML.
|
|
|
@ -1 +0,0 @@
|
||||||
The :mod:`pwd` module is now optional. :func:`os.path.expanduser` returns the path when the :mod:`pwd` module is not available.
|
|
|
@ -1 +0,0 @@
|
||||||
Update bundled libexpat to 2.4.7
|
|
|
@ -1,2 +0,0 @@
|
||||||
The :mod:`signal` module no longer assumes that :const:`~signal.SIG_IGN` and
|
|
||||||
:const:`~signal.SIG_DFL` are small int singletons.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Expose :class:`asyncio.base_events.Server` as :class:`asyncio.Server`. Patch
|
|
||||||
by Stefan Zabka.
|
|
|
@ -1 +0,0 @@
|
||||||
The :data:`math.nan` value is now always available. Patch by Victor Stinner.
|
|
|
@ -1,5 +0,0 @@
|
||||||
:mod:`faulthandler`: On Linux 5.14 and newer, dynamically determine size of
|
|
||||||
signal handler stack size CPython allocates using ``getauxval(AT_MINSIGSTKSZ)``.
|
|
||||||
This changes allows for Python extension's request to Linux kernel to use
|
|
||||||
AMX_TILE instruction set on Sapphire Rapids Xeon processor to succeed,
|
|
||||||
unblocking use of the ISA in frameworks.
|
|
|
@ -1 +0,0 @@
|
||||||
Upgrade pip wheel bundled with ensurepip (pip 22.0.4)
|
|
|
@ -1 +0,0 @@
|
||||||
Add ``os.sysconf_names['SC_MINSIGSTKSZ']``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``typing.get_args(typing.Tuple[()])`` now returns ``()`` instead of
|
|
||||||
``((),)``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Accept explicit contextvars.Context in :func:`asyncio.create_task` and
|
|
||||||
:meth:`asyncio.loop.create_task`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Deprecate missing :meth:`asyncio.Task.set_name` for third-party task
|
|
||||||
implementations, schedule making it mandatory in Python 3.13.
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue