Python 3.11.0a6

This commit is contained in:
Pablo Galindo 2022-03-07 12:28:08 +00:00
parent 3b3be05a16
commit 3ddfa55df4
No known key found for this signature in database
GPG Key ID: FFE87404168BD847
122 changed files with 1244 additions and 272 deletions

View File

@ -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 5 #define PY_RELEASE_SERIAL 6
/* Version as a string */ /* Version as a string */
#define PY_VERSION "3.11.0a5+" #define PY_VERSION "3.11.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.

View File

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Autogenerated by Sphinx on Thu Feb 3 18:35:23 2022 # Autogenerated by Sphinx on Mon Mar 7 12:29:42 2022
topics = {'assert': 'The "assert" statement\n' topics = {'assert': 'The "assert" statement\n'
'**********************\n' '**********************\n'
'\n' '\n'
@ -2325,15 +2325,18 @@ topics = {'assert': 'The "assert" statement\n'
'sequence\n' 'sequence\n'
'(such as a string, tuple or list) or other iterable object:\n' '(such as a string, tuple or list) or other iterable object:\n'
'\n' '\n'
' for_stmt ::= "for" target_list "in" expression_list ":" ' ' for_stmt ::= "for" target_list "in" starred_list ":" suite\n'
'suite\n'
' ["else" ":" suite]\n' ' ["else" ":" suite]\n'
'\n' '\n'
'The expression list is evaluated once; it should yield an ' 'The expression list is evaluated once; it should yield an '
'iterable\n' 'iterable\n'
'object. An iterator is created for the result of the\n' 'object. An iterator is created for the result of the '
'"expression_list". The suite is then executed once for each ' '"starred_list".\n'
'item\n' 'The expression list can contain starred elements ("*x, *y") that '
'will\n'
'be unpacked in the final iterator (as when constructing a '
'"tuple" or\n'
'"list" literal). The suite is then executed once for each item\n'
'provided by the iterator, in the order returned by the ' 'provided by the iterator, in the order returned by the '
'iterator. Each\n' 'iterator. Each\n'
'item in turn is assigned to the target list using the standard ' 'item in turn is assigned to the target list using the standard '
@ -2382,6 +2385,10 @@ topics = {'assert': 'The "assert" statement\n'
':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, ' ':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, '
'2]".\n' '2]".\n'
'\n' '\n'
'Changed in version 3.11: Starred elements are now allowed in '
'the\n'
'expression list.\n'
'\n'
'\n' '\n'
'The "try" statement\n' 'The "try" statement\n'
'===================\n' '===================\n'
@ -5891,12 +5898,16 @@ topics = {'assert': 'The "assert" statement\n'
'sequence\n' 'sequence\n'
'(such as a string, tuple or list) or other iterable object:\n' '(such as a string, tuple or list) or other iterable object:\n'
'\n' '\n'
' for_stmt ::= "for" target_list "in" expression_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 expression list is evaluated once; it should yield an iterable\n'
'object. An iterator is created for the result of the\n' 'object. An iterator is created for the result of the '
'"expression_list". The suite is then executed once for each item\n' '"starred_list".\n'
'The expression list can contain starred elements ("*x, *y") that '
'will\n'
'be unpacked in the final iterator (as when constructing a "tuple" or\n'
'"list" literal). The suite is then executed once for each item\n'
'provided by the iterator, in the order returned by the iterator. ' 'provided by the iterator, in the order returned by the iterator. '
'Each\n' 'Each\n'
'item in turn is assigned to the target list using the standard rules\n' 'item in turn is assigned to the target list using the standard rules\n'
@ -5933,7 +5944,10 @@ topics = {'assert': 'The "assert" statement\n'
'all by the loop. Hint: the built-in function "range()" returns an\n' 'all by the loop. Hint: the built-in function "range()" returns an\n'
'iterator of integers suitable to emulate the effect of Pascals "for ' 'iterator of integers suitable to emulate the effect of Pascals "for '
'i\n' 'i\n'
':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, 2]".\n', ':= a to b do"; e.g., "list(range(3))" returns the list "[0, 1, 2]".\n'
'\n'
'Changed in version 3.11: Starred elements are now allowed in the\n'
'expression list.\n',
'formatstrings': 'Format String Syntax\n' 'formatstrings': 'Format String Syntax\n'
'********************\n' '********************\n'
'\n' '\n'
@ -6293,19 +6307,19 @@ topics = {'assert': 'The "assert" statement\n'
'"\'0\'" no\n' '"\'0\'" no\n'
'longer affects the default alignment for strings.\n' 'longer affects the default alignment for strings.\n'
'\n' '\n'
'The *precision* is a decimal number indicating how many ' 'The *precision* is a decimal integer indicating how many '
'digits should\n' 'digits should\n'
'be displayed after the decimal point for a floating point ' 'be displayed after the decimal point for presentation types '
'value\n' '"\'f\'" and\n'
'formatted with "\'f\'" and "\'F\'", or before and after the ' '"\'F\'", or before and after the decimal point for '
'decimal point\n' 'presentation types\n'
'for a floating point value formatted with "\'g\'" or ' '"\'g\'" or "\'G\'". For string presentation types the '
'"\'G\'". For non-\n' 'field indicates the\n'
'number types the field indicates the maximum field size - ' 'maximum field size - in other words, how many characters '
'in other\n' 'will be used\n'
'words, how many characters will be used from the field ' 'from the field content. The *precision* is not allowed for '
'content. The\n' 'integer\n'
'*precision* is not allowed for integer values.\n' 'presentation types.\n'
'\n' '\n'
'Finally, the *type* determines how the data should be ' 'Finally, the *type* determines how the data should be '
'presented.\n' 'presented.\n'

1205
Misc/NEWS.d/3.11.0a6.rst Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
Intern strings in deep-frozen modules. Patch by Kumar Aditya.

View File

@ -1,9 +0,0 @@
Fix wasm32-emscripten test failures and platform issues.
- Disable syscalls that are not supported or don't work, e.g.
wait, getrusage, prlimit, mkfifo, mknod, setres[gu]id, setgroups.
- Use fd_count to cound open fds.
- Add more checks for subprocess and fork.
- Add workarounds for missing _multiprocessing and failing socket.accept().
- Enable bzip2.
- Disable large file support.
- Disable signal.alarm.

View File

@ -1,2 +0,0 @@
Exclude marshalled-frozen data if deep-freezing to save 300 KB disk space. This includes adding
a new ``is_package`` field to :c:struct:`_frozen`. Patch by Kumar Aditya.

View File

@ -1,3 +0,0 @@
Building Python now requires a C99 ``<math.h>`` header file providing a ``NAN``
constant, or the ``__builtin_nan()`` built-in function.
Patch by Victor Stinner.

View File

@ -1,2 +0,0 @@
Building Python now requires support for floating point Not-a-Number (NaN):
remove the ``Py_NO_NAN`` macro. Patch by by Victor Stinner.

View File

@ -1,2 +0,0 @@
Building Python now requires a C11 compiler without optional C11 features.
Patch by Victor Stinner.

View File

@ -1 +0,0 @@
Respect `--with-suffix` when building on case-insensitive file systems.

View File

@ -1,2 +0,0 @@
Added function :c:func:`PyType_GetModuleByDef`, which allows accesss to
module state when a method's defining class is not available.

View File

@ -1,2 +0,0 @@
Remove the ``HAVE_PY_SET_53BIT_PRECISION`` macro (moved to the internal C API).
Patch by Victor Stinner.

View File

@ -1,3 +0,0 @@
Rename ``Include/buffer.h`` header file to ``Include/pybuffer.h`` to avoid
conflits with projects having an existing ``buffer.h`` header file. Patch by
Victor Stinner.

View File

@ -1,2 +0,0 @@
Move the :c:type:`PyFrameObject` type definition (``struct _frame``) to the
internal C API ``pycore_frame.h`` header file. Patch by Victor Stinner.

View File

@ -1,2 +0,0 @@
Python's public headers no longer import ``<stdbool.h>``, leaving code that
embedd/extends Python free to define ``bool``, ``true`` and ``false``.

View File

@ -1,3 +0,0 @@
Fixed a minor portability issue in the implementation of
:c:func:`PyLong_FromLong`, and added a fast path for single-digit integers
to :c:func:`PyLong_FromLongLong`.

View File

@ -1,2 +0,0 @@
The bytecode compiler now attempts to apply runtime stack manipulations at
compile-time (whenever it is feasible to do so).

View File

@ -1 +0,0 @@
When iterating over sets internally in ``setobject.c``, acquire strong references to the resulting items from the set. This prevents crashes in corner-cases of various set operations where the set gets mutated.

View File

@ -1,2 +0,0 @@
Use :c:func:`PyObject_Vectorcall` while calling ctypes callback function.
Patch by Dong-hee Na.

View File

@ -1 +0,0 @@
Add a missing call to ``va_end()`` in ``Modules/_hashopenssl.c``.

View File

@ -1,2 +0,0 @@
Allow more than 16 items in a split dict before it is combined. The limit is
now 254.

View File

@ -1,2 +0,0 @@
Opcode pair stats are now gathered with ``--enable-pystats``. Defining
``DYNAMIC_EXECUTION_PROFILE`` or ``DXPAIRS`` no longer has any effect.

View File

@ -1,2 +0,0 @@
Specialize :opcode:`UNPACK_SEQUENCE` for :class:`tuple` and :class:`list`
unpackings.

View File

@ -1 +0,0 @@
Add a quickened form of :opcode:`RESUME` that skips quickening checks.

View File

@ -1,3 +0,0 @@
:mod:`ctypes` now allocates memory on the stack instead of on the heap
to pass arguments while calling a Python callback function.
Patch by Dong-hee Na.

View File

@ -1,2 +0,0 @@
Avoid potential exponential backtracking when producing some syntax errors
involving lots of brackets. Patch by Pablo Galindo.

View File

@ -1 +0,0 @@
Add more detailed specialization failure statistics for :opcode:`BINARY_OP`.

View File

@ -1,2 +0,0 @@
Correct the docstring for the :meth:`__bool__` method. Patch by Jelle
Zijlstra.

View File

@ -1,2 +0,0 @@
Make sure that all backwards jumps use the ``JUMP_ABSOLUTE`` instruction, rather
than ``JUMP_FORWARD`` with an argument of ``(2**32)+offset``.

View File

@ -1,3 +0,0 @@
Message of AttributeError caused by getting, setting or deleting a property
without the corresponding function now mentions that the attribute is in fact
a property and also specifies type of the class that it belongs to.

View File

@ -1,2 +0,0 @@
Fix an assert failure in debug builds when a '<', '>', or '=' is the last
character in an f-string that's missing a closing right brace.

View File

@ -1,6 +0,0 @@
Add ``PUSH_NULL`` instruction. This is used as a prefix when evaluating a
callable, so that the stack has the same shape for methods and other calls.
``PRECALL_FUNCTION`` and ``PRECALL_METHOD`` are merged into a single
``PRECALL`` instruction.
There is no change in semantics.

View File

@ -1 +0,0 @@
Remove the ``NEXT_BLOCK`` macro from compile.c, and make the compiler automatically generate implicit blocks when they are needed.

View File

@ -1,2 +0,0 @@
Move ``KW_NAMES`` before ``PRECALL`` instruction in call sequence. Change
``operand`` of ``CALL`` to match ``PRECALL`` for easier specialization.

View File

@ -1,3 +0,0 @@
Fix parsing a numeric literal immediately (without spaces) followed by "not
in" keywords, like in ``1not in x``. Now the parser only emits a warning,
not a syntax error.

View File

@ -1 +0,0 @@
Implement a specialized combined opcode ``LOAD_FAST__LOAD_ATTR_INSTANCE_VALUE``. Patch by Dennis Sweeney.

View File

@ -1 +0,0 @@
Bump up the libexpat version into 2.4.6

View File

@ -1 +0,0 @@
Fix specialization stats gathering for :opcode:`PRECALL` instructions.

View File

@ -1 +0,0 @@
Don't un-adapt :opcode:`COMPARE_OP` when collecting specialization stats.

View File

@ -1 +0,0 @@
Add number of sub-exceptions to :meth:`BaseException.__str__`.

View File

@ -1,2 +0,0 @@
Reduce the memory usage of specialized :opcode:`LOAD_ATTR` and
:opcode:`STORE_ATTR` instructions.

View File

@ -1 +0,0 @@
Specialize ``LOAD_METHOD`` for instances with a dict.

View File

@ -1,2 +0,0 @@
Store :opcode:`BINARY_OP` caches inline using a new :opcode:`CACHE`
instruction.

View File

@ -1 +0,0 @@
Fix memory leak in interned strings of deep-frozen modules.

View File

@ -1 +0,0 @@
Share global string identifiers in deep-frozen modules.

View File

@ -1,2 +0,0 @@
Fix regression that dict.update(other) may don't respect iterate order of
other when other is key sharing dict.

View File

@ -1,4 +0,0 @@
Remove the undocumented private ``float.__set_format__()`` method, previously
known as ``float.__setformat__()`` in Python 3.7. Its docstring said: "You
probably don't want to use this function. It exists mainly to be used in
Python's test suite." Patch by Victor Stinner.

View File

@ -1,3 +0,0 @@
Rename the private undocumented ``float.__set_format__()`` method to
``float.__setformat__()`` to fix a typo introduced in Python 3.7. The method
is only used by test_float. Patch by Victor Stinner.

View File

@ -1 +0,0 @@
Use inline cache for :opcode:`LOAD_GLOBAL`.

View File

@ -1,3 +0,0 @@
Reduces dict size by removing hash value from hash table when all inserted
keys are Unicode. For example, ``sys.getsizeof(dict.fromkeys("abcdefg"))``
becomes 272 bytes from 352 bytes on 64bit platform.

View File

@ -1 +0,0 @@
Use inline caching for :opcode:`UNPACK_SEQUENCE`.

View File

@ -1 +0,0 @@
Deprecate ``PyBytesObject.ob_shash``. It will be removed in Python 3.13.

View File

@ -1 +0,0 @@
Use inline caching for :opcode:`COMPARE_OP`.

View File

@ -1 +0,0 @@
Use inline cache for :opcode:`BINARY_SUBSCR`.

View File

@ -1,2 +0,0 @@
Use inline caching for :opcode:`LOAD_ATTR`, :opcode:`LOAD_METHOD`, and
:opcode:`STORE_ATTR`.

View File

@ -1,3 +0,0 @@
Fix bug introduced during 3.11alpha where subclasses of ``types.ModuleType``
with ``__slots__`` were not initialized correctly, resulting in an
interpreter crash.

View File

@ -1,2 +0,0 @@
Add more detailed specialization failure stats for :opcode:`COMPARE_OP`
followed by :opcode:`EXTENDED_ARG`.

View File

@ -1,2 +0,0 @@
Make sure that str subclasses can be used as attribute names for instances
with virtual dictionaries. Fixes regression in 3.11alpha

View File

@ -1,2 +0,0 @@
Use an oparg to simplify the construction of helpful error messages in
:opcode:`GET_AWAITABLE`.

View File

@ -1,2 +0,0 @@
Fix incorrect handling of inline cache entries when specializing
:opcode:`BINARY_OP`.

View File

@ -1 +0,0 @@
Support vectorcall for ``super()``. Patch by Ken Jin.

View File

@ -1,2 +0,0 @@
Include the type's name in the error message for subscripting non-generic
types.

View File

@ -1,2 +0,0 @@
Avoid overriding :exc:`AttributeError` metadata information for nested
attribute access calls. Patch by Pablo Galindo.

View File

@ -1,2 +0,0 @@
``Doc/tools/rstlint.py`` has moved to its own repository and is now packaged
on PyPI as ``sphinx-lint``.

View File

@ -1,2 +0,0 @@
Apply IDLE syntax highlighting to `.pyi` files. Patch by Alex Waygood
and Terry Jan Reedy.

View File

@ -1 +0,0 @@
Make query dialogs on Windows start with a cursor in the entry box.

View File

@ -1,4 +0,0 @@
argparse.FileType now supports an argument of '-' in binary mode, returning
the .buffer attribute of sys.stdin/sys.stdout as appropriate. Modes
including 'x' and 'a' are treated equivalently to 'w' when argument is '-'.
Patch contributed by Josh Rosenberg

View File

@ -1 +0,0 @@
Implement :func:`inspect.ismethodwrapper` and fix :func:`inspect.isroutine` for cases where methodwrapper is given. Patch by Hakan Çelik.

View File

@ -1 +0,0 @@
Make the :class:`configparser.ConfigParser` constructor raise :exc:`TypeError` if the ``interpolation`` parameter is not of type :class:`configparser.Interpolation`

View File

@ -1,2 +0,0 @@
Reimplement SSL/TLS support in asyncio, borrow the implementation from
uvloop library.

View File

@ -1 +0,0 @@
Fix an issue with :meth:`~tarfile.is_tarfile` method when using *fileobj* argument: position in the *fileobj* was advanced forward which made it unreadable with :meth:`tarfile.TarFile.open`.

View File

@ -1 +0,0 @@
Calling ``operator.itemgetter`` objects and ``operator.attrgetter`` objects is now faster due to use of the vectorcall calling convention.

View File

@ -1,2 +0,0 @@
:mod:`ctypes` no longer defines ``ffi_type_*`` symbols in ``cfield.c``. The
symbols have been provided by libffi for over a decade.

View File

@ -1,2 +0,0 @@
Add :class:`~re.RegexFlag` to ``re.__all__`` and documented it. Add
:data:`~re.RegexFlag.NOFLAG` to indicate no flags being set.

View File

@ -1,3 +0,0 @@
:func:`typing.get_type_hints` no longer adds ``Optional`` to parameters with
``None`` as a default. This aligns to changes to PEP 484 in
https://github.com/python/peps/pull/689

View File

@ -1,2 +0,0 @@
The :mod:`ssl` module now handles certificates with bit strings in DN
correctly.

View File

@ -1,2 +0,0 @@
Add missing ``__slots__`` to ``importlib.metadata.DeprecatedList``. Patch by
Arie Bovenberg.

View File

@ -1,4 +0,0 @@
The :meth:`__eq__` and :meth:`__hash__` methods of
:class:`typing.ForwardRef` now honor the ``module`` parameter of
:class:`typing.ForwardRef`. Forward references from different
modules are now differentiated.

View File

@ -1,2 +0,0 @@
Add :data:`typing.Never` and :func:`typing.assert_never`. Patch by Jelle
Zijlstra.

View File

@ -1 +0,0 @@
Make various module ``__getattr__`` AttributeErrors more closely match a typical AttributeError

View File

@ -1,2 +0,0 @@
Implement :pep:`673` :class:`typing.Self`.
Patch by James Hilton-Balfe.

View File

@ -1,2 +0,0 @@
Deprecate undocumented support for using a :class:`pathlib.Path` object as a
context manager.

View File

@ -1 +0,0 @@
expat: Update libexpat from 2.4.1 to 2.4.4

View File

@ -1,4 +0,0 @@
Improve :func:`typing.no_type_check`.
Now it does not modify external classes and functions.
We also now correctly mark classmethods as not to be type checked.

View File

@ -1,2 +0,0 @@
Fix a bug in the :mod:`codeop` module that was incorrectly identifying
invalid code involving string quotes as valid code.

View File

@ -1 +0,0 @@
Expose Linux's ``IP_BIND_ADDRESS_NO_PORT`` option in :mod:`socket`.

View File

@ -1,5 +0,0 @@
Fixed a discrepancy in the C implementation of the
:mod:`xml.etree.ElementTree` module. Now, instantiating an
:class:`xml.etree.ElementTree.XMLParser` with a ``target=None``
keyword provides a default :class:`xml.etree.ElementTree.TreeBuilder`
target as the Python implementation does.

View File

@ -1 +0,0 @@
In :func:`typing.get_type_hints`, support evaluating bare stringified ``TypeAlias`` annotations. Patch by Gregory Beauregard.

View File

@ -1,4 +0,0 @@
The :func:`locale.getdefaultlocale` function is deprecated and will be removed
in Python 3.13. Use :func:`locale.setlocale`,
:func:`locale.getpreferredencoding(False) <locale.getpreferredencoding>` and
:func:`locale.getlocale` functions instead. Patch by Victor Stinner.

View File

@ -1,4 +0,0 @@
The :class:`calendar.LocaleTextCalendar` and
:class:`calendar.LocaleHTMLCalendar` classes now use :func:`locale.getlocale`,
instead of using :func:`locale.getdefaultlocale`, if no locale is specified.
Patch by Victor Stinner.

View File

@ -1 +0,0 @@
Fix ``NameError`` in :func:`asyncio.gather` when initial type check fails.

View File

@ -1,3 +0,0 @@
``ctypes.CFUNCTYPE()`` and ``ctypes.WINFUNCTYPE()`` now fail to create the type
if its ``_argtypes_`` member contains too many arguments. Previously, the error
was only raised when calling a function. Patch by Victor Stinner.

View File

@ -1 +0,0 @@
Make :data:`typing.ParamSpec` args and kwargs equal to themselves. Patch by Gregory Beauregard.

View File

@ -1,3 +0,0 @@
Deprecate kwargs-based syntax for :class:`typing.TypedDict` definitions.
It had confusing semantics when specifying totality, and was largely unused.
Patch by Jingchen Ye.

View File

@ -1 +0,0 @@
When the :mod:`tarfile` module creates a pax format archive, it will put an integer representation of timestamps in the ustar header (if possible) for the benefit of older unarchivers, in addition to the existing full-precision timestamps in the pax extended header.

View File

@ -1,3 +0,0 @@
In :func:`typing.get_type_hints`, support evaluating stringified
``ParamSpecArgs`` and ``ParamSpecKwargs`` annotations. Patch by
Gregory Beauregard.

View File

@ -1,3 +0,0 @@
The :meth:`__repr__` method of :class:`typing.ForwardRef` now
includes the ``module`` parameter of :class:`typing.ForwardRef`
when it is set.

View File

@ -1 +0,0 @@
Fix :mod:`dis` behavior on negative jump offsets.

View File

@ -1,2 +0,0 @@
Add task groups to asyncio (structured concurrency, inspired by Trio's nurseries).
This also introduces a change to task cancellation, where a cancelled task can't be cancelled again until it calls .uncancel().

View File

@ -1,2 +0,0 @@
:func:`random.gauss` and :func:`random.normalvariate` now have default
arguments.

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