Python 3.10.1

This commit is contained in:
Pablo Galindo 2021-12-06 17:56:39 +00:00
parent 1528d249a5
commit 2cd268a3a9
No known key found for this signature in database
GPG key ID: FFE87404168BD847
153 changed files with 1884 additions and 477 deletions

View file

@ -18,12 +18,12 @@
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 10
#define PY_MICRO_VERSION 0
#define PY_MICRO_VERSION 1
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0
/* Version as a string */
#define PY_VERSION "3.10.0+"
#define PY_VERSION "3.10.1"
/*--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 Mon Oct 4 18:28:12 2021
# Autogenerated by Sphinx on Mon Dec 6 17:57:38 2021
topics = {'assert': 'The "assert" statement\n'
'**********************\n'
'\n'
@ -3339,9 +3339,9 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
'The same keyword should not be repeated in class patterns.\n'
'\n'
'The following is the logical flow for matching a mapping '
'pattern\n'
'against a subject value:\n'
'The following is the logical flow for matching a class pattern '
'against\n'
'a subject value:\n'
'\n'
'1. If "name_or_attr" is not an instance of the builtin "type" , '
'raise\n'
@ -5488,20 +5488,32 @@ topics = {'assert': 'The "assert" statement\n'
'binding\n'
'operations.\n'
'\n'
'The following constructs bind names: formal parameters to '
'functions,\n'
'"import" statements, class and function definitions (these bind '
'the\n'
'class or function name in the defining block), and targets that '
'are\n'
'identifiers if occurring in an assignment, "for" loop header, '
'or after\n'
'"as" in a "with" statement or "except" clause. The "import" '
'statement\n'
'of the form "from ... import *" binds all names defined in the\n'
'imported module, except those beginning with an underscore. '
'This form\n'
'may only be used at the module level.\n'
'The following constructs bind names:\n'
'\n'
'* formal parameters to functions,\n'
'\n'
'* class definitions,\n'
'\n'
'* function definitions,\n'
'\n'
'* assignment expressions,\n'
'\n'
'* targets that are identifiers if occurring in an assignment:\n'
'\n'
' * "for" loop header,\n'
'\n'
' * after "as" in a "with" statement, "except" clause or in the '
'as-\n'
' pattern in structural pattern matching,\n'
'\n'
' * in a capture pattern in structural pattern matching\n'
'\n'
'* "import" statements.\n'
'\n'
'The "import" statement of the form "from ... import *" binds '
'all names\n'
'defined in the imported module, except those beginning with an\n'
'underscore. This form may only be used at the module level.\n'
'\n'
'A target occurring in a "del" statement is also considered '
'bound for\n'
@ -5574,9 +5586,9 @@ topics = {'assert': 'The "assert" statement\n'
'operations.\n'
'\n'
'If the "global" statement occurs within a block, all uses of '
'the name\n'
'specified in the statement refer to the binding of that name in '
'the\n'
'the names\n'
'specified in the statement refer to the bindings of those names '
'in the\n'
'top-level namespace. Names are resolved in the top-level '
'namespace by\n'
'searching the global namespace, i.e. the namespace of the '
@ -5585,9 +5597,10 @@ topics = {'assert': 'The "assert" statement\n'
'namespace\n'
'of the module "builtins". The global namespace is searched '
'first. If\n'
'the name is not found there, the builtins namespace is '
'searched. The\n'
'"global" statement must precede all uses of the name.\n'
'the names are not found there, the builtins namespace is '
'searched.\n'
'The "global" statement must precede all uses of the listed '
'names.\n'
'\n'
'The "global" statement has the same scope as a name binding '
'operation\n'
@ -6943,22 +6956,31 @@ topics = {'assert': 'The "assert" statement\n'
'trailing underscore characters:\n'
'\n'
'"_*"\n'
' Not imported by "from module import *". The special '
'identifier "_"\n'
' is used in the interactive interpreter to store the result '
'of the\n'
' last evaluation; it is stored in the "builtins" module. '
'When not\n'
' in interactive mode, "_" has no special meaning and is not '
'defined.\n'
' See section The import statement.\n'
' Not imported by "from module import *".\n'
'\n'
'"_"\n'
' In a "case" pattern within a "match" statement, "_" is a '
'soft\n'
' keyword that denotes a wildcard.\n'
'\n'
' Separately, the interactive interpreter makes the result of '
'the\n'
' last evaluation available in the variable "_". (It is '
'stored in the\n'
' "builtins" module, alongside built-in functions like '
'"print".)\n'
'\n'
' Elsewhere, "_" is a regular identifier. It is often used to '
'name\n'
' “special” items, but it is not special to Python itself.\n'
'\n'
' Note:\n'
'\n'
' The name "_" is often used in conjunction with\n'
' internationalization; refer to the documentation for the\n'
' "gettext" module for more information on this '
'convention.\n'
'convention.It is\n'
' also commonly used for unused variables.\n'
'\n'
'"__*__"\n'
' System-defined names, informally known as “dunder” names. '
@ -7113,15 +7135,23 @@ topics = {'assert': 'The "assert" statement\n'
'trailing underscore characters:\n'
'\n'
'"_*"\n'
' Not imported by "from module import *". The special '
'identifier "_"\n'
' is used in the interactive interpreter to store the result '
' Not imported by "from module import *".\n'
'\n'
'"_"\n'
' In a "case" pattern within a "match" statement, "_" is a '
'soft\n'
' keyword that denotes a wildcard.\n'
'\n'
' Separately, the interactive interpreter makes the result '
'of the\n'
' last evaluation; it is stored in the "builtins" module. '
'When not\n'
' in interactive mode, "_" has no special meaning and is not '
'defined.\n'
' See section The import statement.\n'
' last evaluation available in the variable "_". (It is '
'stored in the\n'
' "builtins" module, alongside built-in functions like '
'"print".)\n'
'\n'
' Elsewhere, "_" is a regular identifier. It is often used '
'to name\n'
' “special” items, but it is not special to Python itself.\n'
'\n'
' Note:\n'
'\n'
@ -7129,7 +7159,8 @@ topics = {'assert': 'The "assert" statement\n'
' internationalization; refer to the documentation for '
'the\n'
' "gettext" module for more information on this '
'convention.\n'
'convention.It is\n'
' also commonly used for unused variables.\n'
'\n'
'"__*__"\n'
' System-defined names, informally known as “dunder” names. '
@ -7590,20 +7621,32 @@ topics = {'assert': 'The "assert" statement\n'
'*Names* refer to objects. Names are introduced by name binding\n'
'operations.\n'
'\n'
'The following constructs bind names: formal parameters to '
'functions,\n'
'"import" statements, class and function definitions (these bind '
'the\n'
'class or function name in the defining block), and targets that '
'are\n'
'identifiers if occurring in an assignment, "for" loop header, or '
'after\n'
'"as" in a "with" statement or "except" clause. The "import" '
'statement\n'
'of the form "from ... import *" binds all names defined in the\n'
'imported module, except those beginning with an underscore. This '
'form\n'
'may only be used at the module level.\n'
'The following constructs bind names:\n'
'\n'
'* formal parameters to functions,\n'
'\n'
'* class definitions,\n'
'\n'
'* function definitions,\n'
'\n'
'* assignment expressions,\n'
'\n'
'* targets that are identifiers if occurring in an assignment:\n'
'\n'
' * "for" loop header,\n'
'\n'
' * after "as" in a "with" statement, "except" clause or in the '
'as-\n'
' pattern in structural pattern matching,\n'
'\n'
' * in a capture pattern in structural pattern matching\n'
'\n'
'* "import" statements.\n'
'\n'
'The "import" statement of the form "from ... import *" binds all '
'names\n'
'defined in the imported module, except those beginning with an\n'
'underscore. This form may only be used at the module level.\n'
'\n'
'A target occurring in a "del" statement is also considered bound '
'for\n'
@ -7673,8 +7716,8 @@ topics = {'assert': 'The "assert" statement\n'
'operations.\n'
'\n'
'If the "global" statement occurs within a block, all uses of the '
'name\n'
'specified in the statement refer to the binding of that name in '
'names\n'
'specified in the statement refer to the bindings of those names in '
'the\n'
'top-level namespace. Names are resolved in the top-level '
'namespace by\n'
@ -7683,9 +7726,9 @@ topics = {'assert': 'The "assert" statement\n'
'namespace\n'
'of the module "builtins". The global namespace is searched '
'first. If\n'
'the name is not found there, the builtins namespace is searched. '
'The\n'
'"global" statement must precede all uses of the name.\n'
'the names are not found there, the builtins namespace is '
'searched.\n'
'The "global" statement must precede all uses of the listed names.\n'
'\n'
'The "global" statement has the same scope as a name binding '
'operation\n'
@ -8020,9 +8063,9 @@ topics = {'assert': 'The "assert" statement\n'
' of the object truncated to an "Integral" (typically an '
'"int").\n'
'\n'
' If "__int__()" is not defined then the built-in function '
'"int()"\n'
' falls back to "__trunc__()".\n',
' The built-in function "int()" falls back to '
'"__trunc__()" if\n'
' neither "__int__()" nor "__index__()" is defined.\n',
'objects': 'Objects, values and types\n'
'*************************\n'
'\n'
@ -8644,22 +8687,24 @@ topics = {'assert': 'The "assert" statement\n'
'object.__getitem__(self, key)\n'
'\n'
' Called to implement evaluation of "self[key]". For '
'sequence types,\n'
' the accepted keys should be integers and slice '
'objects. Note that\n'
' the special interpretation of negative indexes (if the '
'class wishes\n'
' to emulate a sequence type) is up to the '
'"__getitem__()" method. If\n'
' *key* is of an inappropriate type, "TypeError" may be '
'raised; if of\n'
' a value outside the set of indexes for the sequence '
'(after any\n'
' special interpretation of negative values), '
'"IndexError" should be\n'
' raised. For mapping types, if *key* is missing (not in '
'*sequence*\n'
' types, the accepted keys should be integers and slice '
'objects.\n'
' Note that the special interpretation of negative '
'indexes (if the\n'
' class wishes to emulate a *sequence* type) is up to '
'the\n'
' container), "KeyError" should be raised.\n'
' "__getitem__()" method. If *key* is of an inappropriate '
'type,\n'
' "TypeError" may be raised; if of a value outside the '
'set of indexes\n'
' for the sequence (after any special interpretation of '
'negative\n'
' values), "IndexError" should be raised. For *mapping* '
'types, if\n'
' *key* is missing (not in the container), "KeyError" '
'should be\n'
' raised.\n'
'\n'
' Note:\n'
'\n'
@ -8669,6 +8714,15 @@ topics = {'assert': 'The "assert" statement\n'
'of the\n'
' sequence.\n'
'\n'
' Note:\n'
'\n'
' When subscripting a *class*, the special class '
'method\n'
' "__class_getitem__()" may be called instead of '
'"__getitem__()".\n'
' See __class_getitem__ versus __getitem__ for more '
'details.\n'
'\n'
'object.__setitem__(self, key, value)\n'
'\n'
' Called to implement assignment to "self[key]". Same '
@ -8704,19 +8758,13 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
'object.__iter__(self)\n'
'\n'
' This method is called when an iterator is required for '
'a container.\n'
' This method should return a new iterator object that '
'can iterate\n'
' over all the objects in the container. For mappings, '
'it should\n'
' iterate over the keys of the container.\n'
'\n'
' Iterator objects also need to implement this method; '
'they are\n'
' required to return themselves. For more information on '
'iterator\n'
' objects, see Iterator Types.\n'
' This method is called when an *iterator* is required '
'for a\n'
' container. This method should return a new iterator '
'object that can\n'
' iterate over all the objects in the container. For '
'mappings, it\n'
' should iterate over the keys of the container.\n'
'\n'
'object.__reversed__(self)\n'
'\n'
@ -10294,9 +10342,33 @@ topics = {'assert': 'The "assert" statement\n'
'Emulating generic types\n'
'=======================\n'
'\n'
'One can implement the generic class syntax as specified by '
'**PEP 484**\n'
'(for example "List[int]") by defining a special method:\n'
'When using *type annotations*, it is often useful to '
'*parameterize* a\n'
'*generic type* using Pythons square-brackets notation. For '
'example,\n'
'the annotation "list[int]" might be used to signify a "list" '
'in which\n'
'all the elements are of type "int".\n'
'\n'
'See also:\n'
'\n'
' **PEP 484** - Type Hints\n'
' Introducing Pythons framework for type annotations\n'
'\n'
' Generic Alias Types\n'
' Documentation for objects representing parameterized '
'generic\n'
' classes\n'
'\n'
' Generics, user-defined generics and "typing.Generic"\n'
' Documentation on how to implement generic classes that '
'can be\n'
' parameterized at runtime and understood by static '
'type-checkers.\n'
'\n'
'A class can *generally* only be parameterized if it defines '
'the\n'
'special class method "__class_getitem__()".\n'
'\n'
'classmethod object.__class_getitem__(cls, key)\n'
'\n'
@ -10304,18 +10376,144 @@ topics = {'assert': 'The "assert" statement\n'
'generic class\n'
' by type arguments found in *key*.\n'
'\n'
'This method is looked up on the class object itself, and '
'when defined\n'
'in the class body, this method is implicitly a class '
'method. Note,\n'
'this mechanism is primarily reserved for use with static '
'type hints,\n'
'other usage is discouraged.\n'
' When defined on a class, "__class_getitem__()" is '
'automatically a\n'
' class method. As such, there is no need for it to be '
'decorated with\n'
' "@classmethod" when it is defined.\n'
'\n'
'\n'
'The purpose of *__class_getitem__*\n'
'----------------------------------\n'
'\n'
'The purpose of "__class_getitem__()" is to allow runtime\n'
'parameterization of standard-library generic classes in '
'order to more\n'
'easily apply *type hints* to these classes.\n'
'\n'
'To implement custom generic classes that can be '
'parameterized at\n'
'runtime and understood by static type-checkers, users should '
'either\n'
'inherit from a standard library class that already '
'implements\n'
'"__class_getitem__()", or inherit from "typing.Generic", '
'which has its\n'
'own implementation of "__class_getitem__()".\n'
'\n'
'Custom implementations of "__class_getitem__()" on classes '
'defined\n'
'outside of the standard library may not be understood by '
'third-party\n'
'type-checkers such as mypy. Using "__class_getitem__()" on '
'any class\n'
'for purposes other than type hinting is discouraged.\n'
'\n'
'\n'
'*__class_getitem__* versus *__getitem__*\n'
'----------------------------------------\n'
'\n'
'Usually, the subscription of an object using square brackets '
'will call\n'
'the "__getitem__()" instance method defined on the objects '
'class.\n'
'However, if the object being subscribed is itself a class, '
'the class\n'
'method "__class_getitem__()" may be called instead.\n'
'"__class_getitem__()" should return a GenericAlias object if '
'it is\n'
'properly defined.\n'
'\n'
'Presented with the *expression* "obj[x]", the Python '
'interpreter\n'
'follows something like the following process to decide '
'whether\n'
'"__getitem__()" or "__class_getitem__()" should be called:\n'
'\n'
' from inspect import isclass\n'
'\n'
' def subscribe(obj, x):\n'
' """Return the result of the expression `obj[x]`"""\n'
'\n'
' class_of_obj = type(obj)\n'
'\n'
' # If the class of obj defines __getitem__,\n'
' # call class_of_obj.__getitem__(obj, x)\n'
" if hasattr(class_of_obj, '__getitem__'):\n"
' return class_of_obj.__getitem__(obj, x)\n'
'\n'
' # Else, if obj is a class and defines '
'__class_getitem__,\n'
' # call obj.__class_getitem__(x)\n'
' elif isclass(obj) and hasattr(obj, '
"'__class_getitem__'):\n"
' return obj.__class_getitem__(x)\n'
'\n'
' # Else, raise an exception\n'
' else:\n'
' raise TypeError(\n'
' f"\'{class_of_obj.__name__}\' object is not '
'subscriptable"\n'
' )\n'
'\n'
'In Python, all classes are themselves instances of other '
'classes. The\n'
'class of a class is known as that classs *metaclass*, and '
'most\n'
'classes have the "type" class as their metaclass. "type" '
'does not\n'
'define "__getitem__()", meaning that expressions such as '
'"list[int]",\n'
'"dict[str, float]" and "tuple[str, bytes]" all result in\n'
'"__class_getitem__()" being called:\n'
'\n'
' >>> # list has class "type" as its metaclass, like most '
'classes:\n'
' >>> type(list)\n'
" <class 'type'>\n"
' >>> type(dict) == type(list) == type(tuple) == type(str) '
'== type(bytes)\n'
' True\n'
' >>> # "list[int]" calls "list.__class_getitem__(int)"\n'
' >>> list[int]\n'
' list[int]\n'
' >>> # list.__class_getitem__ returns a GenericAlias '
'object:\n'
' >>> type(list[int])\n'
" <class 'types.GenericAlias'>\n"
'\n'
'However, if a class has a custom metaclass that defines\n'
'"__getitem__()", subscribing the class may result in '
'different\n'
'behaviour. An example of this can be found in the "enum" '
'module:\n'
'\n'
' >>> from enum import Enum\n'
' >>> class Menu(Enum):\n'
' ... """A breakfast menu"""\n'
" ... SPAM = 'spam'\n"
" ... BACON = 'bacon'\n"
' ...\n'
' >>> # Enum classes have a custom metaclass:\n'
' >>> type(Menu)\n'
" <class 'enum.EnumMeta'>\n"
' >>> # EnumMeta defines __getitem__,\n'
' >>> # so __class_getitem__ is not called,\n'
' >>> # and the result is not a GenericAlias object:\n'
" >>> Menu['SPAM']\n"
" <Menu.SPAM: 'spam'>\n"
" >>> type(Menu['SPAM'])\n"
" <enum 'Menu'>\n"
'\n'
'See also:\n'
'\n'
' **PEP 560** - Core support for typing module and generic '
' **PEP 560** - Core Support for typing module and generic '
'types\n'
' Introducing "__class_getitem__()", and outlining when '
'a\n'
' subscription results in "__class_getitem__()" being '
'called\n'
' instead of "__getitem__()"\n'
'\n'
'\n'
'Emulating callable objects\n'
@ -10445,22 +10643,23 @@ topics = {'assert': 'The "assert" statement\n'
'object.__getitem__(self, key)\n'
'\n'
' Called to implement evaluation of "self[key]". For '
'sequence types,\n'
' the accepted keys should be integers and slice objects. '
'Note that\n'
' the special interpretation of negative indexes (if the '
'class wishes\n'
' to emulate a sequence type) is up to the "__getitem__()" '
'method. If\n'
' *key* is of an inappropriate type, "TypeError" may be '
'raised; if of\n'
' a value outside the set of indexes for the sequence '
'(after any\n'
' special interpretation of negative values), "IndexError" '
'*sequence*\n'
' types, the accepted keys should be integers and slice '
'objects.\n'
' Note that the special interpretation of negative indexes '
'(if the\n'
' class wishes to emulate a *sequence* type) is up to the\n'
' "__getitem__()" method. If *key* is of an inappropriate '
'type,\n'
' "TypeError" may be raised; if of a value outside the set '
'of indexes\n'
' for the sequence (after any special interpretation of '
'negative\n'
' values), "IndexError" should be raised. For *mapping* '
'types, if\n'
' *key* is missing (not in the container), "KeyError" '
'should be\n'
' raised. For mapping types, if *key* is missing (not in '
'the\n'
' container), "KeyError" should be raised.\n'
' raised.\n'
'\n'
' Note:\n'
'\n'
@ -10470,6 +10669,14 @@ topics = {'assert': 'The "assert" statement\n'
'the\n'
' sequence.\n'
'\n'
' Note:\n'
'\n'
' When subscripting a *class*, the special class method\n'
' "__class_getitem__()" may be called instead of '
'"__getitem__()".\n'
' See __class_getitem__ versus __getitem__ for more '
'details.\n'
'\n'
'object.__setitem__(self, key, value)\n'
'\n'
' Called to implement assignment to "self[key]". Same note '
@ -10505,19 +10712,13 @@ topics = {'assert': 'The "assert" statement\n'
'\n'
'object.__iter__(self)\n'
'\n'
' This method is called when an iterator is required for a '
'container.\n'
' This method should return a new iterator object that can '
'iterate\n'
' over all the objects in the container. For mappings, it '
'should\n'
' iterate over the keys of the container.\n'
'\n'
' Iterator objects also need to implement this method; they '
'are\n'
' required to return themselves. For more information on '
'iterator\n'
' objects, see Iterator Types.\n'
' This method is called when an *iterator* is required for '
'a\n'
' container. This method should return a new iterator '
'object that can\n'
' iterate over all the objects in the container. For '
'mappings, it\n'
' should iterate over the keys of the container.\n'
'\n'
'object.__reversed__(self)\n'
'\n'
@ -10760,9 +10961,9 @@ topics = {'assert': 'The "assert" statement\n'
' of the object truncated to an "Integral" (typically an '
'"int").\n'
'\n'
' If "__int__()" is not defined then the built-in function '
'"int()"\n'
' falls back to "__trunc__()".\n'
' The built-in function "int()" falls back to "__trunc__()" '
'if\n'
' neither "__int__()" nor "__index__()" is defined.\n'
'\n'
'\n'
'With Statement Context Managers\n'
@ -12971,20 +13172,18 @@ topics = {'assert': 'The "assert" statement\n'
' A function or method which uses the "yield" statement (see\n'
' section The yield statement) is called a *generator '
'function*.\n'
' Such a function, when called, always returns an iterator '
'object\n'
' which can be used to execute the body of the function: '
'calling\n'
' the iterators "iterator.__next__()" method will cause the\n'
' function to execute until it provides a value using the '
'"yield"\n'
' statement. When the function executes a "return" statement '
'or\n'
' falls off the end, a "StopIteration" exception is raised and '
'the\n'
' iterator will have reached the end of the set of values to '
'be\n'
' returned.\n'
' Such a function, when called, always returns an *iterator*\n'
' object which can be used to execute the body of the '
'function:\n'
' calling the iterators "iterator.__next__()" method will '
'cause\n'
' the function to execute until it provides a value using the\n'
' "yield" statement. When the function executes a "return"\n'
' statement or falls off the end, a "StopIteration" exception '
'is\n'
' raised and the iterator will have reached the end of the set '
'of\n'
' values to be returned.\n'
'\n'
' Coroutine functions\n'
' A function or method which is defined using "async def" is\n'
@ -13000,9 +13199,9 @@ topics = {'assert': 'The "assert" statement\n'
' which uses the "yield" statement is called a *asynchronous\n'
' generator function*. Such a function, when called, returns '
'an\n'
' asynchronous iterator object which can be used in an "async '
'for"\n'
' statement to execute the body of the function.\n'
' *asynchronous iterator* object which can be used in an '
'"async\n'
' for" statement to execute the body of the function.\n'
'\n'
' Calling the asynchronous iterators "aiterator.__anext__()"\n'
' method will return an *awaitable* which when awaited will\n'

1530
Misc/NEWS.d/3.10.1.rst Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,7 +0,0 @@
The ncurses function extended_color_content was introduced in 2017
(https://invisible-island.net/ncurses/NEWS.html#index-t20170401). The
ncurses-devel package in CentOS 7 had a older version ncurses resulted in
compilation error. For compiling ncurses with extended color support, we
verify the version of the ncurses library >= 20170401.

View file

@ -1,3 +0,0 @@
Avoid building with the Windows 11 SDK previews automatically. This may be
overridden by setting the ``DefaultWindowsSDKVersion`` environment variable
before building.

View file

@ -1,2 +0,0 @@
Prevent ``internal configure error`` when running ``configure``
with recent versions of non-Apple clang. Patch by David Bohman.

View file

@ -1,3 +0,0 @@
Fixed regression in handling of ``LDFLAGS`` and ``CPPFLAGS`` options
where :meth:`argparse.parse_known_args` could interpret an option as
one of the built-in command line argument, for example ``-h`` for help.

View file

@ -1,3 +0,0 @@
The ``configure`` script now checks whether OpenSSL headers and libraries
provide required APIs. Most common APIs are verified. The check detects
outdated or missing OpenSSL. Failures do not stop configure.

View file

@ -1,2 +0,0 @@
Update :data:`sys.version` to use ``main`` as fallback information.
Patch by Jeong YunWon.

View file

@ -1 +0,0 @@
Run smelly.py tool from $(srcdir).

View file

@ -1,2 +0,0 @@
``Modules/Setup`` now use ``PY_CFLAGS_NODIST`` instead of ``PY_CFLAGS`` to
compile shared modules.

View file

@ -1,2 +0,0 @@
``setup.py`` now uses values from configure script to build the ``_uuid``
extension module. Configure now detects util-linux's ``libuuid``, too.

View file

@ -1,2 +0,0 @@
``setup.py`` now uses ``CC`` from environment first to discover multiarch
and cross compile paths.

View file

@ -1,4 +0,0 @@
Python now compiles on platforms without ``sigset_t``. Several functions
in :mod:`signal` are not available when ``sigset_t`` is missing.
Based on patch by Roman Yurchak for pyodide.

View file

@ -1,4 +0,0 @@
``make regen-all`` now produces the same output when run from a directory
other than the source tree: when building Python out of the source tree.
pegen now strips directory of the "generated by pygen from <FILENAME>" header
Patch by Victor Stinner.

View file

@ -1,3 +0,0 @@
Update ``config.guess`` to 2021-06-03 and ``config.sub`` to 2021-08-14.
``Makefile`` now has an ``update-config`` target to make updating more
convenient.

View file

@ -1,2 +0,0 @@
CI now verifies that autoconf files have been regenerated with a current and
unpatched autoconf package.

View file

@ -1 +0,0 @@
Remove ``crypt.h`` include from the public ``Python.h`` header.

View file

@ -1 +0,0 @@
:meth:`BufferedReader.peek` no longer raises :exc:`ValueError` when the entire file has already been buffered.

View file

@ -1,2 +0,0 @@
Restore the private C API function :func:`_PyImport_FindExtensionObject`. It
will be removed in Python 3.11.

View file

@ -1,2 +0,0 @@
Fix Python.h to build C extensions with Xcode: remove a relative include
from ``Include/cpython/pystate.h``.

View file

@ -1 +0,0 @@
Compiler now removes trailing unused constants from co_consts.

View file

@ -1,3 +0,0 @@
When the interpreter renders an exception, its name now has a complete qualname. Previously only the class name was concatenated to the module name, which sometimes resulted in an incorrect full name being displayed.
(This issue impacted only the C code exception rendering, the :mod:`traceback` module was using qualname already).

View file

@ -1,2 +0,0 @@
Fix issue where ``Protocol.__init__`` raises ``RecursionError`` when it's
called directly or via ``super()``. Patch provided by Yurii Karabas.

View file

@ -1,3 +0,0 @@
Extensions that indicate they use global state (by setting ``m_size`` to -1)
can again be used in multiple interpreters. This reverts to behavior of
Python 3.8.

View file

@ -1 +0,0 @@
Added fallback to extension modules with '.sl' suffix on HP-UX

View file

@ -1,5 +0,0 @@
Release the GIL while performing ``isatty`` system calls on arbitrary file
descriptors. In particular, this affects :func:`os.isatty`,
:func:`os.device_encoding` and :class:`io.TextIOWrapper`. By extension,
:func:`io.open` in text mode is also affected. This change solves
a deadlock in :func:`os.isatty`. Patch by Vincent Michel in :issue:`44219`.

View file

@ -1 +0,0 @@
Fix deepcopying of :class:`types.GenericAlias` objects.

View file

@ -1 +0,0 @@
Fix reference leak from descr_check. Patch by Dong-hee Na.

View file

@ -1,2 +0,0 @@
Fix a crash in the parser when reporting tokenizer errors that occur at the
same time unclosed parentheses are detected. Patch by Pablo Galindo.

View file

@ -1,2 +0,0 @@
Fix parser crash when reporting errors involving invalid continuation
characters. Patch by Pablo Galindo.

View file

@ -1,3 +0,0 @@
Fix a bug in the obmalloc radix tree code. On 64-bit machines, the bug
causes the tree to hold 46-bits of virtual addresses, rather than the
intended 48-bits.

View file

@ -1 +0,0 @@
Fixed a crash in ``issubclass()`` from infinite recursion when searching pathological ``__bases__`` tuples.

View file

@ -1,2 +0,0 @@
:data:`sys.stdlib_module_names` now contains the macOS-specific module
:mod:`_scproxy`.

View file

@ -1,2 +0,0 @@
Improve the :exc:`SyntaxError` message when using ``True``, ``None`` or
``False`` as keywords in a function call. Patch by Pablo Galindo.

View file

@ -1 +0,0 @@
Fix a compiler hang when attempting to optimize certain jump patterns.

View file

@ -1,2 +0,0 @@
Fix computation of error location for invalid continuation characters in the
parser. Patch by Pablo Galindo.

View file

@ -1,2 +0,0 @@
Fix crash when :func:`os.fork` is called with an active non-default
memory allocator.

View file

@ -1,2 +0,0 @@
Fix a segfault when the parser fails without reading any input. Patch by
Pablo Galindo

View file

@ -1,2 +0,0 @@
Fixed a bug in the parser that was causing it to not respect :pep:`263`
coding cookies when no flags are provided. Patch by Pablo Galindo

View file

@ -1 +0,0 @@
Fixed a crash when calling ``.with_traceback(None)`` on ``NameError``. This occurs internally in ``unittest.TestCase.assertRaises()``.

View file

@ -1,2 +0,0 @@
Allow the parser to obtain error lines directly from encoded files. Patch by
Pablo Galindo

View file

@ -1 +0,0 @@
Fix :mod:`traceback` display for exceptions with invalid module name.

View file

@ -1,3 +0,0 @@
Refine the custom syntax error that suggests that a comma may be missing to
trigger only when the expressions are detected between parentheses or
brackets. Patch by Pablo Galindo

View file

@ -1,2 +0,0 @@
Fail the configure step if the selected compiler doesn't support memory
sanitizer. Patch by Pablo Galindo

View file

@ -1,2 +0,0 @@
Expanded :func:`~dataclasses.astuple` and :func:`~dataclasses.asdict` docs,
warning about deepcopy being applied and providing a workaround.

View file

@ -1,2 +0,0 @@
In the extending chapter of the extending doc, update a paragraph about the
global variables containing exception information.

View file

@ -1,4 +0,0 @@
:mod:`collections.abc` documentation has been expanded to explicitly cover
how instance and subclass checks work, with additional doctest examples and
an exhaustive list of ABCs which test membership purely by presence of the
right :term:`special method`\s. Patch by Raymond Hettinger.

View file

@ -1,2 +0,0 @@
Remove extra documentation listing methods in ``difflib``. It was rendering
twice in pydoc and was outdated in some places.

View file

@ -1,2 +0,0 @@
Add Programming FAQ entry explaining that int literal attribute access
requires either a space after or parentheses around the literal.

View file

@ -1,2 +0,0 @@
Add protocol description to the :class:`importlib.abc.Traversable`
documentation.

View file

@ -1 +0,0 @@
Add note about :pep:`585` in :mod:`collections.abc`.

View file

@ -1,4 +0,0 @@
Mention in the documentation of :ref:`Built-in Exceptions
<bltin-exceptions>` that inheriting from multiple exception types in a
single subclass is not recommended due to possible memory layout
incompatibility.

View file

@ -1,2 +0,0 @@
Update the documentation to note that CPython does not consistently
require iterators to define ``__iter__``.

View file

@ -1 +0,0 @@
Add ``level`` argument to ``multiprocessing.log_to_stderr`` function docs.

View file

@ -1,2 +0,0 @@
Add a new "relevant PEPs" section to the top of the documentation for the
``typing`` module. Patch by Alex Waygood.

View file

@ -1,3 +0,0 @@
Amend the docs on ``GenericAlias`` objects to clarify that non-container
classes can also implement ``__class_getitem__``. Patch contributed by Alex
Waygood.

View file

@ -1,2 +0,0 @@
Improve documentation for :func:`functools.singledispatch` and
:class:`functools.singledispatchmethod`.

View file

@ -1,2 +0,0 @@
Update the docstring of the :class:`type` built-in to remove a redundant
line and to mention keyword arguments for the constructor.

View file

@ -1 +0,0 @@
``socket.socket`` documentation is corrected to a class from a function.

View file

@ -1 +0,0 @@
Link doc for sys.prefix to sysconfig doc on installation paths.

View file

@ -1,3 +0,0 @@
Properly marked-up grammar tokens in the documentation are now clickable and
take you to the definition of a given piece of grammar. Patch by Arthur
Milchior.

View file

@ -1 +0,0 @@
Make completion boxes appear on Ubuntu again.

View file

@ -1,2 +0,0 @@
On Windows, change exit/quit message to suggest Ctrl-D, which works, instead
of <Ctrl-Z Return>, which does not work in IDLE.

View file

@ -1 +0,0 @@
Add context keywords 'case' and 'match' to completions list.

View file

@ -1,2 +0,0 @@
Avoid a possible *"RuntimeError: dictionary changed size during iteration"*
when adjusting the process count of :class:`ProcessPoolExecutor`.

View file

@ -1,2 +0,0 @@
Ensure deprecation warning from :func:`assertDictContainsSubset` points at
calling code - by Anthony Sottile.

View file

@ -1,3 +0,0 @@
Fix an edge case of :class:`ExitStack` and :class:`AsyncExitStack` exception
chaining. They will now match ``with`` block behavior when ``__context__`` is
explicitly set to ``None`` when the exception is in flight.

View file

@ -1,2 +0,0 @@
tarfile.open raises :exc:`~tarfile.ReadError` when a zlib error occurs
during file extraction.

View file

@ -1 +0,0 @@
Fix a potential deadlock at shutdown of forked children when using :mod:`concurrent.futures` module

View file

@ -1,2 +0,0 @@
Fixed an error raised in :mod:`argparse` help display when help for an
option is set to 1+ blank spaces or when *choices* arg is an empty container.

View file

@ -1 +0,0 @@
Improve the speed and accuracy of statistics.pvariance().

View file

@ -1,2 +0,0 @@
:func:`typing.get_type_hints` now works with :data:`~typing.Final` wrapped in
:class:`~typing.ForwardRef`.

View file

@ -1,3 +0,0 @@
Calling :func:`mimetypes.guess_all_extensions` with ``strict=False`` no
longer affects the result of the following call with ``strict=True``.
Also, mutating the returned list no longer affects the global state.

View file

@ -1 +0,0 @@
When tracing a tkinter variable used by a ttk OptionMenu, callbacks are no longer made twice.

View file

@ -1,3 +0,0 @@
Fix typo: ``importlib.find_loader`` is really slated for removal in Python 3.12 not 3.10, like the others in GH-25169.
Patch by Hugo van Kemenade.

View file

@ -1,5 +0,0 @@
Fix the ``tempfile._infer_return_type`` function so that the ``dir``
argument of the :mod:`tempfile` functions accepts an object implementing the
``os.PathLike`` protocol.
Patch by Kyungmin Lee.

View file

@ -1 +0,0 @@
Fix stack buffer overflow in parsing J1939 network address.

View file

@ -1,3 +0,0 @@
Fixed a regression in :func:`~shutil.copyfile`, :func:`~shutil.copy`,
:func:`~shutil.copy2` raising :exc:`FileNotFoundError` when source is a
directory, which should raise :exc:`IsADirectoryError`

View file

@ -1,3 +0,0 @@
Have zipimport.zipimporter.find_spec() not raise an exception when the underlying zip
file has been deleted and the internal cache has been reset via
invalidate_cache().

View file

@ -1,2 +0,0 @@
Fix an issue where argparse would not preserve values in a provided namespace
when using a subparser with defaults.

View file

@ -1,2 +0,0 @@
:meth:`unittest.TestCase.debug` raises now a :class:`unittest.SkipTest` if
the class or the test method are decorated with the skipping decorator.

View file

@ -1,2 +0,0 @@
Fix :meth:`unittest.IsolatedAsyncioTestCase.debug`: it runs now asynchronous
methods and callbacks.

View file

@ -1,5 +0,0 @@
Fix a race condition in the :meth:`Thread.join() <threading.Thread.join>`
method of the :mod:`threading` module. If the function is interrupted by a
signal and the signal handler raises an exception, make sure that the thread
remains in a consistent state to prevent a deadlock. Patch by Victor
Stinner.

View file

@ -1,3 +0,0 @@
Fix the :func:`threading._shutdown` function when the :mod:`threading` module
was imported first from a thread different than the main thread: no longer log
an error at Python exit.

View file

@ -1 +0,0 @@
Fixed :class:`http.client.HTTPConnection` to work properly in OSs that don't support the ``TCP_NODELAY`` socket option.

View file

@ -1,5 +0,0 @@
On Unix, if the ``sem_clockwait()`` function is available in the C library
(glibc 2.30 and newer), the :meth:`threading.Lock.acquire` method now uses the
monotonic clock (:data:`time.CLOCK_MONOTONIC`) for the timeout, rather than
using the system clock (:data:`time.CLOCK_REALTIME`), to not be affected by
system clock changes. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Fix freed memory access in :class:`pyexpat.xmlparser` when building it with an
installed expat library <= 2.2.0.

View file

@ -1 +0,0 @@
Update bundled pip to 21.2.4 and setuptools to 58.1.0

View file

@ -1,2 +0,0 @@
Improve error message of :class:`csv.Dialect` when initializing.
Patch by Vajrasky Kok and Dong-hee Na.

View file

@ -1,3 +0,0 @@
Fix clang rpath issue in :mod:`distutils`. The UnixCCompiler now uses
correct clang option to add a runtime library directory (rpath) to a shared
library.

View file

@ -1,3 +0,0 @@
Make :mod:`xmlrpc.client` more robust to C runtimes where the underlying C
``strftime`` function results in a ``ValueError`` when testing for year
formatting options.

View file

@ -1 +0,0 @@
Prevent use-after-free in asyncio. Make sure the cached running loop holder gets cleared on dealloc to prevent use-after-free in get_running_loop

View file

@ -1 +0,0 @@
Make :func:`inspect.getmodule` catch ``FileNotFoundError`` raised by :'func:`inspect.getabsfile`, and return ``None`` to indicate that the module could not be determined.

View file

@ -1,3 +0,0 @@
Fix bug in the :mod:`doctest` module that caused it to fail if a docstring
included an example with a ``classmethod`` ``property``. Patch by Alex
Waygood.

View file

@ -1 +0,0 @@
Correct interfaces on DegenerateFiles.Path.

View file

@ -1,2 +0,0 @@
Fix use of :class:`asyncio.Condition` with explicit :class:`asyncio.Lock` objects, which was a regression due to removal of explicit loop arguments.
Patch by Joongi Kim.

View file

@ -1,2 +0,0 @@
Fix the behaviour of :func:`traceback.print_exc` when displaying the caret
when the ``end_offset`` in the exception is set to 0. Patch by Pablo Galindo

View file

@ -1,3 +0,0 @@
Fixed :func:`email.utils.parsedate_tz` crashing with
:exc:`UnboundLocalError` on certain invalid input instead of returning
``None``. Patch by Ben Hoyt.

View file

@ -1,2 +0,0 @@
Fix incremental decoder and stream reader in the "unicode-escape" codec.
Previously they failed if the escape sequence was split.

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