Python 3.9.0a6
This commit is contained in:
parent
0169d3003b
commit
bc1c8af8ef
|
@ -20,10 +20,10 @@
|
||||||
#define PY_MINOR_VERSION 9
|
#define PY_MINOR_VERSION 9
|
||||||
#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 5
|
#define PY_RELEASE_SERIAL 6
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.9.0a5+"
|
#define PY_VERSION "3.9.0a6"
|
||||||
/*--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 23 17:18:04 2020
|
# Autogenerated by Sphinx on Mon Apr 27 22:35:16 2020
|
||||||
topics = {'assert': 'The "assert" statement\n'
|
topics = {'assert': 'The "assert" statement\n'
|
||||||
'**********************\n'
|
'**********************\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -1877,9 +1877,9 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' value is false. A counter-intuitive implication is that '
|
' value is false. A counter-intuitive implication is that '
|
||||||
'not-a-number\n'
|
'not-a-number\n'
|
||||||
' values are not equal to themselves. For example, if "x =\n'
|
' values are not equal to themselves. For example, if "x =\n'
|
||||||
' float(\'NaN\')", "3 < x", "x < 3", "x == x", "x != x" are '
|
' float(\'NaN\')", "3 < x", "x < 3" and "x == x" are all '
|
||||||
'all false.\n'
|
'false, while "x\n'
|
||||||
' This behavior is compliant with IEEE 754.\n'
|
' != x" is true. This behavior is compliant with IEEE 754.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'* "None" and "NotImplemented" are singletons. **PEP 8** '
|
'* "None" and "NotImplemented" are singletons. **PEP 8** '
|
||||||
'advises\n'
|
'advises\n'
|
||||||
|
@ -3150,7 +3150,7 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'\n'
|
'\n'
|
||||||
'When a description of an arithmetic operator below uses the '
|
'When a description of an arithmetic operator below uses the '
|
||||||
'phrase\n'
|
'phrase\n'
|
||||||
'“the numeric arguments are converted to a common type,” this '
|
'“the numeric arguments are converted to a common type”, this '
|
||||||
'means\n'
|
'means\n'
|
||||||
'that the operator implementation for built-in types works as '
|
'that the operator implementation for built-in types works as '
|
||||||
'follows:\n'
|
'follows:\n'
|
||||||
|
@ -3414,7 +3414,7 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Changed in version 3.7: "object.__format__(x, \'\')" is '
|
' Changed in version 3.7: "object.__format__(x, \'\')" is '
|
||||||
'now\n'
|
'now\n'
|
||||||
' equivalent to "str(x)" rather than "format(str(self), '
|
' equivalent to "str(x)" rather than "format(str(x), '
|
||||||
'\'\')".\n'
|
'\'\')".\n'
|
||||||
'\n'
|
'\n'
|
||||||
'object.__lt__(self, other)\n'
|
'object.__lt__(self, other)\n'
|
||||||
|
@ -5962,19 +5962,18 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'convention.\n'
|
'convention.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'"__*__"\n'
|
'"__*__"\n'
|
||||||
' System-defined names. These names are defined by the '
|
' System-defined names, informally known as “dunder” names. '
|
||||||
'interpreter\n'
|
'These\n'
|
||||||
' and its implementation (including the standard library). '
|
' names are defined by the interpreter and its '
|
||||||
'Current\n'
|
'implementation\n'
|
||||||
' system names are discussed in the Special method names '
|
' (including the standard library). Current system names are\n'
|
||||||
'section and\n'
|
' discussed in the Special method names section and '
|
||||||
' elsewhere. More will likely be defined in future versions '
|
'elsewhere. More\n'
|
||||||
'of\n'
|
' will likely be defined in future versions of Python. *Any* '
|
||||||
' Python. *Any* use of "__*__" names, in any context, that '
|
'use of\n'
|
||||||
'does not\n'
|
' "__*__" names, in any context, that does not follow '
|
||||||
' follow explicitly documented use, is subject to breakage '
|
'explicitly\n'
|
||||||
'without\n'
|
' documented use, is subject to breakage without warning.\n'
|
||||||
' warning.\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
'"__*"\n'
|
'"__*"\n'
|
||||||
' Class-private names. Names in this category, when used '
|
' Class-private names. Names in this category, when used '
|
||||||
|
@ -6110,19 +6109,19 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'convention.\n'
|
'convention.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'"__*__"\n'
|
'"__*__"\n'
|
||||||
' System-defined names. These names are defined by the '
|
' System-defined names, informally known as “dunder” names. '
|
||||||
'interpreter\n'
|
'These\n'
|
||||||
' and its implementation (including the standard library). '
|
' names are defined by the interpreter and its '
|
||||||
'Current\n'
|
'implementation\n'
|
||||||
' system names are discussed in the Special method names '
|
' (including the standard library). Current system names '
|
||||||
'section and\n'
|
'are\n'
|
||||||
' elsewhere. More will likely be defined in future versions '
|
' discussed in the Special method names section and '
|
||||||
'of\n'
|
'elsewhere. More\n'
|
||||||
' Python. *Any* use of "__*__" names, in any context, that '
|
' will likely be defined in future versions of Python. '
|
||||||
'does not\n'
|
'*Any* use of\n'
|
||||||
' follow explicitly documented use, is subject to breakage '
|
' "__*__" names, in any context, that does not follow '
|
||||||
'without\n'
|
'explicitly\n'
|
||||||
' warning.\n'
|
' documented use, is subject to breakage without warning.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'"__*"\n'
|
'"__*"\n'
|
||||||
' Class-private names. Names in this category, when used '
|
' Class-private names. Names in this category, when used '
|
||||||
|
@ -7007,7 +7006,7 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'program is represented by objects or by relations between '
|
'program is represented by objects or by relations between '
|
||||||
'objects. (In\n'
|
'objects. (In\n'
|
||||||
'a sense, and in conformance to Von Neumann’s model of a “stored\n'
|
'a sense, and in conformance to Von Neumann’s model of a “stored\n'
|
||||||
'program computer,” code is also represented by objects.)\n'
|
'program computer”, code is also represented by objects.)\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Every object has an identity, a type and a value. An object’s\n'
|
'Every object has an identity, a type and a value. An object’s\n'
|
||||||
'*identity* never changes once it has been created; you may think '
|
'*identity* never changes once it has been created; you may think '
|
||||||
|
@ -8168,7 +8167,7 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Changed in version 3.7: "object.__format__(x, \'\')" is '
|
' Changed in version 3.7: "object.__format__(x, \'\')" is '
|
||||||
'now\n'
|
'now\n'
|
||||||
' equivalent to "str(x)" rather than "format(str(self), '
|
' equivalent to "str(x)" rather than "format(str(x), '
|
||||||
'\'\')".\n'
|
'\'\')".\n'
|
||||||
'\n'
|
'\n'
|
||||||
'object.__lt__(self, other)\n'
|
'object.__lt__(self, other)\n'
|
||||||
|
@ -9915,6 +9914,35 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'*start* and\n'
|
'*start* and\n'
|
||||||
' *end* are interpreted as in slice notation.\n'
|
' *end* are interpreted as in slice notation.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
'str.removeprefix(prefix, /)\n'
|
||||||
|
'\n'
|
||||||
|
' If the string starts with the *prefix* string, return\n'
|
||||||
|
' "string[len(prefix):]". Otherwise, return a copy of the '
|
||||||
|
'original\n'
|
||||||
|
' string:\n'
|
||||||
|
'\n'
|
||||||
|
" >>> 'TestHook'.removeprefix('Test')\n"
|
||||||
|
" 'Hook'\n"
|
||||||
|
" >>> 'BaseTestCase'.removeprefix('Test')\n"
|
||||||
|
" 'BaseTestCase'\n"
|
||||||
|
'\n'
|
||||||
|
' New in version 3.9.\n'
|
||||||
|
'\n'
|
||||||
|
'str.removesuffix(suffix, /)\n'
|
||||||
|
'\n'
|
||||||
|
' If the string ends with the *suffix* string and that '
|
||||||
|
'*suffix* is\n'
|
||||||
|
' not empty, return "string[:-len(suffix)]". Otherwise, '
|
||||||
|
'return a copy\n'
|
||||||
|
' of the original string:\n'
|
||||||
|
'\n'
|
||||||
|
" >>> 'MiscTests'.removesuffix('Tests')\n"
|
||||||
|
" 'Misc'\n"
|
||||||
|
" >>> 'TmpDirMixin'.removesuffix('Tests')\n"
|
||||||
|
" 'TmpDirMixin'\n"
|
||||||
|
'\n'
|
||||||
|
' New in version 3.9.\n'
|
||||||
|
'\n'
|
||||||
'str.encode(encoding="utf-8", errors="strict")\n'
|
'str.encode(encoding="utf-8", errors="strict")\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Return an encoded version of the string as a bytes '
|
' Return an encoded version of the string as a bytes '
|
||||||
|
@ -10297,6 +10325,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
" >>> 'www.example.com'.lstrip('cmowz.')\n"
|
" >>> 'www.example.com'.lstrip('cmowz.')\n"
|
||||||
" 'example.com'\n"
|
" 'example.com'\n"
|
||||||
'\n'
|
'\n'
|
||||||
|
' See "str.removeprefix()" for a method that will remove '
|
||||||
|
'a single\n'
|
||||||
|
' prefix string rather than all of a set of characters. '
|
||||||
|
'For example:\n'
|
||||||
|
'\n'
|
||||||
|
" >>> 'Arthur: three!'.lstrip('Arthur: ')\n"
|
||||||
|
" 'ee!'\n"
|
||||||
|
" >>> 'Arthur: three!'.removeprefix('Arthur: ')\n"
|
||||||
|
" 'three!'\n"
|
||||||
|
'\n'
|
||||||
'static str.maketrans(x[, y[, z]])\n'
|
'static str.maketrans(x[, y[, z]])\n'
|
||||||
'\n'
|
'\n'
|
||||||
' This static method returns a translation table usable '
|
' This static method returns a translation table usable '
|
||||||
|
@ -10410,6 +10448,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
" >>> 'mississippi'.rstrip('ipz')\n"
|
" >>> 'mississippi'.rstrip('ipz')\n"
|
||||||
" 'mississ'\n"
|
" 'mississ'\n"
|
||||||
'\n'
|
'\n'
|
||||||
|
' See "str.removesuffix()" for a method that will remove '
|
||||||
|
'a single\n'
|
||||||
|
' suffix string rather than all of a set of characters. '
|
||||||
|
'For example:\n'
|
||||||
|
'\n'
|
||||||
|
" >>> 'Monty Python'.rstrip(' Python')\n"
|
||||||
|
" 'M'\n"
|
||||||
|
" >>> 'Monty Python'.removesuffix(' Python')\n"
|
||||||
|
" 'Monty'\n"
|
||||||
|
'\n'
|
||||||
'str.split(sep=None, maxsplit=-1)\n'
|
'str.split(sep=None, maxsplit=-1)\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Return a list of the words in the string, using *sep* '
|
' Return a list of the words in the string, using *sep* '
|
||||||
|
@ -11483,6 +11531,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' then they can be used interchangeably to index the same\n'
|
' then they can be used interchangeably to index the same\n'
|
||||||
' dictionary entry.\n'
|
' dictionary entry.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
' Dictionaries preserve insertion order, meaning that keys will '
|
||||||
|
'be\n'
|
||||||
|
' produced in the same order they were added sequentially over '
|
||||||
|
'the\n'
|
||||||
|
' dictionary. Replacing an existing key does not change the '
|
||||||
|
'order,\n'
|
||||||
|
' however removing a key and re-inserting it will add it to '
|
||||||
|
'the\n'
|
||||||
|
' end instead of keeping its old place.\n'
|
||||||
|
'\n'
|
||||||
' Dictionaries are mutable; they can be created by the "{...}"\n'
|
' Dictionaries are mutable; they can be created by the "{...}"\n'
|
||||||
' notation (see section Dictionary displays).\n'
|
' notation (see section Dictionary displays).\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -11491,6 +11549,13 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'"collections"\n'
|
'"collections"\n'
|
||||||
' module.\n'
|
' module.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
' Changed in version 3.7: Dictionaries did not preserve '
|
||||||
|
'insertion\n'
|
||||||
|
' order in versions of Python before 3.6. In CPython 3.6,\n'
|
||||||
|
' insertion order was preserved, but it was considered an\n'
|
||||||
|
' implementation detail at that time rather than a language\n'
|
||||||
|
' guarantee.\n'
|
||||||
|
'\n'
|
||||||
'Callable types\n'
|
'Callable types\n'
|
||||||
' These are the types to which the function call operation (see\n'
|
' These are the types to which the function call operation (see\n'
|
||||||
' section Calls) can be applied:\n'
|
' section Calls) can be applied:\n'
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,2 +0,0 @@
|
||||||
Fix configure check on Solaris for "float word ordering": sometimes, the correct "grep" command was not being used.
|
|
||||||
Patch by Arnon Yaari.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix CPython MSBuild Properties in NuGet Package (build/native/python.props)
|
|
|
@ -1 +0,0 @@
|
||||||
Support single-argument form of macOS -isysroot flag.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add :c:func:`PyThreadState_GetID` function: get the unique identifier of a
|
|
||||||
Python thread state.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Always declare :c:func:`PyIndex_Check` as an opaque function to hide
|
|
||||||
implementation details: remove ``PyIndex_Check()`` macro. The macro accessed
|
|
||||||
directly the :c:member:`PyTypeObject.tp_as_number` member.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Convert :c:func:`PyObject_CheckBuffer` macro to a function to hide
|
|
||||||
implementation details: the macro accessed directly the
|
|
||||||
:c:member:`PyTypeObject.tp_as_buffer` member.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Convert the :c:func:`PyObject_GET_WEAKREFS_LISTPTR` macro to a function to hide
|
|
||||||
implementation details: the macro accessed directly to the
|
|
||||||
:c:member:`PyTypeObject.tp_weaklistoffset` member.
|
|
|
@ -1,4 +0,0 @@
|
||||||
:c:func:`PyType_HasFeature` now always calls :c:func:`PyType_GetFlags` to
|
|
||||||
hide implementation details. Previously, it accessed directly the
|
|
||||||
:c:member:`PyTypeObject.tp_flags` member when the limited C API was not
|
|
||||||
used.
|
|
|
@ -1,4 +0,0 @@
|
||||||
The :c:func:`PyObject_NEW` macro becomes an alias to the :c:func:`PyObject_New`
|
|
||||||
macro, and the :c:func:`PyObject_NEW_VAR` macro becomes an alias to the
|
|
||||||
:c:func:`PyObject_NewVar` macro, to hide implementation details. They no longer
|
|
||||||
access directly the :c:member:`PyTypeObject.tp_basicsize` member.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Add the functions :c:func:`PyObject_GC_IsTracked` and
|
|
||||||
:c:func:`PyObject_GC_IsFinalized` to the public API to allow to query if
|
|
||||||
Python objects are being currently tracked or have been already finalized by
|
|
||||||
the garbage collector respectively. Patch by Pablo Galindo.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Convert :c:func:`PyObject_IS_GC` macro to a function to hide
|
|
||||||
implementation details.
|
|
|
@ -1 +0,0 @@
|
||||||
Move the :c:type:`PyGC_Head` structure to the internal C API.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Speed up calls to ``list()`` by using the :pep:`590` ``vectorcall``
|
|
||||||
calling convention. Patch by Mark Shannon.
|
|
|
@ -1 +0,0 @@
|
||||||
Support unparsing of infinity numbers in postponed annotations. Patch by Batuhan Taşkaya.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement PEP 585. This supports list[int], tuple[str, ...] etc.
|
|
|
@ -1,5 +0,0 @@
|
||||||
Added str.removeprefix and str.removesuffix methods and corresponding
|
|
||||||
bytes, bytearray, and collections.UserString methods to remove affixes
|
|
||||||
from a string if present.
|
|
||||||
See :pep:`616` for a full description.
|
|
||||||
Patch by Dennis Sweeney.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix a leak and subsequent crash in parsetok.c caused by realloc misuse on a rare codepath.
|
|
|
@ -1 +0,0 @@
|
||||||
Port _weakref extension module to multiphase initialization (:pep:`489`).
|
|
|
@ -1,2 +0,0 @@
|
||||||
Port time module to multiphase initialization (:pep:`489`).
|
|
||||||
Patch by Paulo Henrique Silva.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix :c:func:`PyThreadState_Clear()`. ``PyThreadState.frame`` is a borrowed
|
|
||||||
reference, not a strong reference: ``PyThreadState_Clear()`` must not call
|
|
||||||
``Py_CLEAR(tstate->frame)``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Port operator module to multiphase initialization (PEP 489). Patch by Paulo
|
|
||||||
Henrique Silva.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Port _functools module to multiphase initialization (PEP 489). Patch by
|
|
||||||
Paulo Henrique Silva.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improve the error message for multiple star expressions in an assignment.
|
|
||||||
Patch by Furkan Onder
|
|
|
@ -1 +0,0 @@
|
||||||
Convert json module to use :c:func:`PyType_FromSpec`.
|
|
|
@ -1 +0,0 @@
|
||||||
Port _uuid module to multiphase initialization (:pep:`489`).
|
|
|
@ -1 +0,0 @@
|
||||||
Port :mod:`math` to multiphase initialization (:pep:`489`).
|
|
|
@ -1 +0,0 @@
|
||||||
Port :mod:`resource` to multiphase initialization (:pep:`489`).
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add column and line information to ``ast.keyword`` nodes. Patch by Pablo
|
|
||||||
Galindo.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Speed up calls to ``dict()`` by using the :pep:`590` ``vectorcall`` calling
|
|
||||||
convention.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix possible refleaks in :mod:`_json`, memo of PyScannerObject should be traversed.
|
|
|
@ -1,4 +0,0 @@
|
||||||
str.encode() and str.decode() no longer check the encoding and errors in
|
|
||||||
development mode or in debug mode during Python finalization. The codecs
|
|
||||||
machinery can no longer work on very late calls to str.encode() and
|
|
||||||
str.decode().
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix the signal handler: it now always uses the main interpreter, rather than
|
|
||||||
trying to get the current Python thread state.
|
|
|
@ -1 +0,0 @@
|
||||||
Report a specialized error message, `invalid string prefix`, when the tokenizer encounters a string with an invalid prefix.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Correctly unparse explicit ``u`` prefix for strings when postponed
|
|
||||||
evaluation for annotations activated. Patch by Batuhan Taskaya.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix the tokenizer to display the correct error message, when there is a SyntaxError on the last input character and no newline follows. It used to be `unexpected EOF while parsing`, while it should be `invalid syntax`.
|
|
|
@ -1,5 +0,0 @@
|
||||||
Switch to a new parser, based on PEG. For more details see PEP 617. To
|
|
||||||
temporarily switch back to the old parser, use ``-X oldparser`` or
|
|
||||||
``PYTHONOLDPARSER=1``. In Python 3.10 we will remove the old parser
|
|
||||||
completely, including the ``parser`` module (already deprecated) and
|
|
||||||
anything that depends on it.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve the performance of bytes.hex().
|
|
|
@ -1 +0,0 @@
|
||||||
Some methods within xml.dom.minidom.Element class are now better documented.
|
|
|
@ -1 +0,0 @@
|
||||||
Document :c:macro:`PyDoc_STRVAR` macro in the C-API reference.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Updated :ref:`datamodel` docs to include :func:`dict` insertion order preservation.
|
|
||||||
Patch by Furkan Onder and Samy Lahfa.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The pickle documentation incorrectly claimed that ``__new__`` isn't called by
|
|
||||||
default when unpickling.
|
|
|
@ -1,2 +0,0 @@
|
||||||
IDLE will no longer freeze when inspect.signature fails when fetching
|
|
||||||
a calltip.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add a 256×256 pixel IDLE icon to support more modern environments. Created by Andrew Clover.
|
|
||||||
Delete the unused macOS idle.icns icon file.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Prevent crashes when using an uninitialized ``_elementtree.XMLParser``
|
|
||||||
object. Patch by Oren Milman.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Deprecate passing None as an argument for :func:`shlex.split()`'s ``s``
|
|
||||||
parameter. Patch by Zackery Spytz.
|
|
|
@ -1,3 +0,0 @@
|
||||||
:meth:`inspect.getsource` now returns correct source code for inner class
|
|
||||||
with same name as module level class. Decorators are also returned as part
|
|
||||||
of source of the class. Patch by Karthikeyan Singaravelan.
|
|
|
@ -1 +0,0 @@
|
||||||
In platform, delay the invocation of 'uname -p' until the processor attribute is requested.
|
|
|
@ -1,2 +0,0 @@
|
||||||
lib2to3 now recognizes named assignment expressions (the walrus operator,
|
|
||||||
``:=``)
|
|
|
@ -1,2 +0,0 @@
|
||||||
Properly handle :func:`sys.audit` failures in
|
|
||||||
:func:`sys.set_asyncgen_hooks`.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Normalization of line endings in ElementTree attributes was removed, as line
|
|
||||||
endings which were replaced by entity numbers should be preserved in
|
|
||||||
original form.
|
|
|
@ -1 +0,0 @@
|
||||||
Added :pep:`584` operators (``|`` and ``|=``) to :class:`collections.ChainMap`.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Remove undocumented support for *closing* a `pathlib.Path` object via its
|
|
||||||
context manager. The context manager magic methods remain, but they are now a
|
|
||||||
no-op, making `Path` objects immutable.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix linear runtime behaviour of the `__getitem__` and `__setitem__` methods in
|
|
||||||
:class:`multiprocessing.shared_memory.ShareableList`. This avoids quadratic
|
|
||||||
performance when iterating a `ShareableList`. Patch by Thomas Krennwallner.
|
|
|
@ -1 +0,0 @@
|
||||||
Added :pep:`584` operators to :class:`weakref.WeakKeyDictionary`.
|
|
|
@ -1 +0,0 @@
|
||||||
Added :pep:`584` operators to :class:`weakref.WeakValueDictionary`.
|
|
|
@ -1 +0,0 @@
|
||||||
Update internal table of OpenSSL error codes in the ``ssl`` module.
|
|
|
@ -1 +0,0 @@
|
||||||
In re docstring, clarify the relationship between inline and argument compile flags.
|
|
|
@ -1 +0,0 @@
|
||||||
Add :data:`time.CLOCK_TAI` constant if the operating system support it.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Fix ``os.getgrouplist()``: if ``getgrouplist()`` function fails because the
|
|
||||||
group list is too small, retry with a larger group list. On failure, the glibc
|
|
||||||
implementation of ``getgrouplist()`` sets ``ngroups`` to the total number of
|
|
||||||
groups. For other implementations, double the group list size.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix ``importlib._bootstrap_external``: avoid creating a new ``winreg`` builtin
|
|
||||||
module if it's already available in :data:`sys.modules`, and remove redundant
|
|
||||||
imports.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Removed daemon threads from :mod:`concurrent.futures` by adding
|
|
||||||
an internal `threading._register_atexit()`, which calls registered functions
|
|
||||||
prior to joining all non-daemon threads. This allows for compatibility
|
|
||||||
with subinterpreters, which don't support daemon threads.
|
|
|
@ -1,3 +0,0 @@
|
||||||
:class:`~urllib.request.AbstractBasicAuthHandler` of :mod:`urllib.request`
|
|
||||||
now parses all WWW-Authenticate HTTP headers and accepts multiple challenges
|
|
||||||
per header: use the realm of the first Basic challenge.
|
|
|
@ -1 +0,0 @@
|
||||||
Expose :data:`~socket.CAN_RAW_JOIN_FILTERS` in the :mod:`socket` module.
|
|
|
@ -1,6 +0,0 @@
|
||||||
Add a private ``_at_fork_reinit()`` method to :class:`_thread.Lock`,
|
|
||||||
:class:`_thread.RLock`, :class:`threading.RLock` and
|
|
||||||
:class:`threading.Condition` classes: reinitialize the lock at fork in the
|
|
||||||
child process, reset the lock to the unlocked state.
|
|
||||||
Rename also the private ``_reset_internal_locks()`` method of
|
|
||||||
:class:`threading.Event` to ``_at_fork_reinit()``.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix threading._after_fork(): if fork was not called by a thread spawned by
|
|
||||||
threading.Thread, threading._after_fork() now creates a _MainThread instance
|
|
||||||
for _main_thread, instead of a _DummyThread instance.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add :func:`os.waitstatus_to_exitcode` function:
|
|
||||||
convert a wait status to an exit code.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Improve the error message when triying to import a module using :mod:`runpy`
|
|
||||||
and incorrently use the ".py" extension at the end of the module name. Patch
|
|
||||||
by Pablo Galindo.
|
|
|
@ -1,3 +0,0 @@
|
||||||
CGIHTTPRequestHandler of http.server now logs the CGI script exit code,
|
|
||||||
rather than the CGI script exit status of os.waitpid(). For example, if the
|
|
||||||
script is killed by signal 11, it now logs: "CGI script exit code -11."
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fixed reverting multiple patches in unittest.mock. Patcher's ``__exit__()``
|
|
||||||
is now never called if its ``__enter__()`` is failed. Returning true from
|
|
||||||
``__exit__()`` silences now the exception.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Multiple inheritance with :class:`typing.NamedTuple` now raises an error
|
|
||||||
instead of silently ignoring other types.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Removed the ``_field_types`` attribute of the :class:`typing.NamedTuple`
|
|
||||||
class.
|
|
|
@ -1 +0,0 @@
|
||||||
Add support for ``_SC_AIX_REALMEM`` to :func:`posix.sysconf`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix a bug in the :mod:`symtable` module that was causing incorrectly report
|
|
||||||
global variables as local. Patch by Pablo Galindo.
|
|
|
@ -1 +0,0 @@
|
||||||
Remove deprecated :meth:`symtable.SymbolTable.has_exec`.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement traverse and clear slots in _abc._abc_data type.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix a hang at fork in the logging module: the new private _at_fork_reinit()
|
|
||||||
method is now used to reinitialize locks at fork in the child process.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Workers in :class:`~concurrent.futures.ProcessPoolExecutor` are now spawned on
|
|
||||||
demand, only when there are no available idle workers to reuse. This optimizes
|
|
||||||
startup overhead and reduces the amount of lost CPU time to idle workers.
|
|
||||||
Patch by Kyle Stanley.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Allow again to spawn daemon threads in subinterpreters (revert change which
|
|
||||||
denied them).
|
|
|
@ -1 +0,0 @@
|
||||||
Ensure :mod:`modulefinder` uses :func:`io.open_code` and respects coding comments.
|
|
|
@ -1 +0,0 @@
|
||||||
Wait in `KqueueSelector.select` when no fds are registered
|
|
|
@ -1,2 +0,0 @@
|
||||||
The included copy of sqlite3 on Windows is now compiled with the json
|
|
||||||
extension. This allows the use of functions such as ``json_object``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:func:`collections.namedtuple` now provides a human-readable repr for its
|
|
||||||
field accessors.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add :func:`random.randbytes` function and
|
|
||||||
:meth:`random.Random.randbytes` method to generate random bytes.
|
|
|
@ -1 +0,0 @@
|
||||||
Allow ``random.getrandbits(0)`` to succeed and to return 0.
|
|
|
@ -1 +0,0 @@
|
||||||
Added zscore() to statistics.NormalDist().
|
|
|
@ -1 +0,0 @@
|
||||||
Fixed ``SpooledTemporaryFile.seek()`` to return the position.
|
|
|
@ -1,5 +0,0 @@
|
||||||
func:`inspect.getdoc` no longer returns docstring inherited from the type of
|
|
||||||
the object or from parent class if it is a class if it is not defined in the
|
|
||||||
object itself. In :mod:`pydoc` the documentation string is now shown not
|
|
||||||
only for class, function, method etc, but for any object that has its own
|
|
||||||
``__doc__`` attribute.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Improved help for the :mod:`typing` module. Docstrings are now shown for all
|
|
||||||
special forms and special generic aliases (like ``Union`` and ``List``).
|
|
||||||
Using ``help()`` with generic alias like ``List[int]`` will show the help
|
|
||||||
for the correspondent concrete type (``list`` in this case).
|
|
|
@ -1 +0,0 @@
|
||||||
Deprecated support for set objects in random.sample().
|
|
|
@ -1 +0,0 @@
|
||||||
Added :meth:`pathlib.Path.with_stem()` to create a new Path with the stem replaced.
|
|
|
@ -1,2 +0,0 @@
|
||||||
In :meth:`ShareableList.__setitem__`, check the size of a new string item
|
|
||||||
after encoding it to utf-8, not before.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The :mod:`asyncio` package is now imported lazily in :mod:`unittest` only
|
|
||||||
when the :class:`~unittest.IsolatedAsyncioTestCase` class is used.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The :mod:`logging` package is now imported lazily in :mod:`unittest` only
|
|
||||||
when the :meth:`~unittest.TestCase.assertLogs` assertion is used.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Set "__main__" as the default module name when "__name__" is missing in
|
|
||||||
:class:`typing.TypeVar`. Patch by Weipeng Hong.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix the Windows implementation of :func:`os.waitpid` for exit code larger than
|
|
||||||
``INT_MAX >> 8``. The exit status is now interpreted as an unsigned number.
|
|
|
@ -1 +0,0 @@
|
||||||
The :mod:`lib2to3` module is pending deprecation due to :pep:`617`.
|
|
|
@ -1,6 +0,0 @@
|
||||||
On FreeBSD, ``os.closerange(fd_low, fd_high)`` now calls ``closefrom(fd_low)``
|
|
||||||
if *fd_high* is greater than or equal to ``sysconf(_SC_OPEN_MAX)``.
|
|
||||||
|
|
||||||
Initial patch by Ed Maste (emaste), Conrad Meyer (cem), Kyle Evans (kevans)
|
|
||||||
and Kubilay Kocak (koobs):
|
|
||||||
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=242274
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue