mirror of
https://github.com/python/cpython.git
synced 2025-10-07 15:42:02 +00:00
Python 3.11.0a3
This commit is contained in:
parent
3ea574f35b
commit
2e91dba437
129 changed files with 1798 additions and 596 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 2
|
#define PY_RELEASE_SERIAL 3
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.11.0a2+"
|
#define PY_VERSION "3.11.0a3"
|
||||||
/*--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.
|
||||||
|
|
File diff suppressed because it is too large
Load diff
1287
Misc/NEWS.d/3.11.0a3.rst
Normal file
1287
Misc/NEWS.d/3.11.0a3.rst
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1 +0,0 @@
|
||||||
Run smelly.py tool from $(srcdir).
|
|
|
@ -1 +0,0 @@
|
||||||
Skip the marshal step for frozen modules by generating C code that produces a set of ready-to-use code objects. This speeds up startup time by another 10% or more.
|
|
|
@ -1,2 +0,0 @@
|
||||||
configure.ac now uses custom helper macros and ``AC_CACHE_CHECK`` to
|
|
||||||
simplify and speed up configure runs.
|
|
|
@ -1 +0,0 @@
|
||||||
``configure --enable-loadable-sqlite-extensions`` is now handled by new ``PY_SQLITE_ENABLE_LOAD_EXTENSION`` macro instead of logic in setup.py.
|
|
|
@ -1 +0,0 @@
|
||||||
``configure`` now prints a warning when pkg-config is missing.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``configure.ac`` is now compatible with autoconf 2.71. Deprecated checks
|
|
||||||
``STDC_HEADERS`` and ``AC_HEADER_TIME`` have been removed.
|
|
|
@ -1,2 +0,0 @@
|
||||||
On macOS, the build system no longer passes ``search_paths_first`` to the
|
|
||||||
linker. The flag has been the default since Xcode 4 / macOS 10.6.
|
|
|
@ -1 +0,0 @@
|
||||||
gdbm and dbm build dependencies are now detected by ``configure``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The build dependencies for :mod:`zlib`, :mod:`bz2`, and :mod:`lzma` are now
|
|
||||||
detected by ``configure``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The build dependencies for :mod:`sqlite3` are now detected by ``configure`` and
|
|
||||||
``pkg-config``. Patch by Erlend E. Aasland.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:program:`configure` has a new option ``--with-pkg-config`` to disable or
|
|
||||||
require pkg-config.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Settings for :mod:`decimal` internal C extension are now detected by
|
|
||||||
``configure``. The bundled ``libmpdec`` library is built in ``Makefile``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Settings for :mod:`pyexpat` C extension are now detected by ``configure``.
|
|
||||||
The bundled ``expat`` library is built in ``Makefile``.
|
|
|
@ -1 +0,0 @@
|
||||||
Python now supports building with Visual Studio 2022 (MSVC v143, VS Version 17.0). Patch by Jeremiah Vivian.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``configure`` now uses a unified format to set state, compiler flags, and
|
|
||||||
linker flags in Makefile. The new macro ``PY_STDLIB_MOD`` sets three
|
|
||||||
variables that are consumed by ``Modules/Setup`` and ``setup.py``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``configure`` now creates ``Modules/Setup.stdlib`` with conditionally
|
|
||||||
enabled/disabled extension module lines. The file is not used, yet.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Mandatory core modules, that are required to bootstrap Python, are now in
|
|
||||||
``Modules/Setup.bootstrap``.
|
|
|
@ -1,10 +0,0 @@
|
||||||
Add ``autoconf`` helpers for saving and restoring environment variables:
|
|
||||||
|
|
||||||
* ``SAVE_ENV``: Save ``$CFLAGS``, ``$LDFLAGS``, ``$LIBS``, and
|
|
||||||
``$CPPFLAGS``.
|
|
||||||
* ``RESTORE_ENV``: Restore ``$CFLAGS``, ``$LDFLAGS``, ``$LIBS``, and
|
|
||||||
``$CPPFLAGS``.
|
|
||||||
* ``WITH_SAVE_ENV([SCRIPT])``: Run ``SCRIPT`` wrapped with ``SAVE_ENV`` and
|
|
||||||
``RESTORE_ENV``.
|
|
||||||
|
|
||||||
Patch by Erlend E. Aasland.
|
|
|
@ -1 +0,0 @@
|
||||||
Port builtin hashlib extensions to ``PY_STDLIB_MOD`` macro and ``addext()``.
|
|
|
@ -1 +0,0 @@
|
||||||
Get rid of the ``_bootstrap_python`` build step. The deepfreeze.py script is now run using ``$(PYTHON_FOR_REGEN)`` which can be Python 3.7 or newer (on Windows, 3.8 or newer).
|
|
|
@ -1,2 +0,0 @@
|
||||||
The ``_freeze_module`` program path can now be overridden on the command
|
|
||||||
line, e.g. ``make FREEZE_MODULE=../x86_64/Program/_freeze_module``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``setup.py`` now uses ``CC`` from environment first to discover multiarch
|
|
||||||
and cross compile paths.
|
|
|
@ -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.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``configure`` now accepts machine ``wasm32`` or ``wasm64`` and OS ``wasi``
|
|
||||||
or ``emscripten`` for cross building, e.g. ``wasm32-unknown-emscripten``,
|
|
||||||
``wasm32-wasi``, or ``wasm32-unknown-wasi``.
|
|
|
@ -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.
|
|
|
@ -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.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``configure`` now checks for functions ``fork1, getegid,
|
|
||||||
geteuid, getgid, getppid, getuid, opendir, pipe, system, wait,
|
|
||||||
ttyname``.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``configure`` now checks for socket ``shutdown`` function. The check makes
|
|
||||||
it possible to disable ``SYS_shutdown`` with ``ac_cv_func_shutdown=no`` in
|
|
||||||
CONFIG_SITE.
|
|
|
@ -1 +0,0 @@
|
||||||
Disable unusable core extension modules on WASM/Emscripten targets.
|
|
|
@ -1 +0,0 @@
|
||||||
Emscripten platform now uses ``.wasm`` suffix by default.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The :program:`configure` script now accepts ``--with-build-python`` and
|
|
||||||
``--with-freeze-module`` options to make cross compiling easier.
|
|
|
@ -1,4 +0,0 @@
|
||||||
The build system now uses a :program:`_bootstrap_python` interpreter for
|
|
||||||
freezing and deepfreezing again. To speed up build process the build tools
|
|
||||||
:program:`_bootstrap_python` and :program:`_freeze_module` are no longer
|
|
||||||
build with LTO.
|
|
|
@ -1,2 +0,0 @@
|
||||||
CI now verifies that autoconf files have been regenerated with a current and
|
|
||||||
unpatched autoconf package.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix Python.h to build C extensions with Xcode: remove a relative include
|
|
||||||
from ``Include/cpython/pystate.h``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improve the syntax error message for parenthesized arguments. Patch by Pablo
|
|
||||||
Galindo.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Path calculation (known as ``getpath``) has been reimplemented as a frozen
|
|
||||||
Python module. This should have no visible impact, but may affect
|
|
||||||
calculation of all paths referenced in :mod:`sys` and :mod:`sysconfig`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Replace all numeric ``BINARY_*`` and ``INPLACE_*`` instructions with a single
|
|
||||||
:opcode:`BINARY_OP` implementation.
|
|
|
@ -1 +0,0 @@
|
||||||
Specialized the ``STORE_SUBSCR`` opcode using the PEP 659 machinery.
|
|
|
@ -1,9 +0,0 @@
|
||||||
The parser now gives a better error message when leaving out the opening
|
|
||||||
parenthesis ``(`` after a ``def``-statement::
|
|
||||||
|
|
||||||
>>> def f:
|
|
||||||
File "<stdin>", line 1
|
|
||||||
def f:
|
|
||||||
^
|
|
||||||
SyntaxError: expected '('
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Fix a compiler hang when attempting to optimize certain jump patterns.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Make recursion checks a bit more efficient by tracking amount of calls left
|
|
||||||
before overflow.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Remove an existing "fast path" for old-style string formatting, since
|
|
||||||
it no longer appears to have any measurable impact.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix computation of error location for invalid continuation characters in the
|
|
||||||
parser. Patch by Pablo Galindo.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix crash when :func:`os.fork` is called with an active non-default
|
|
||||||
memory allocator.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Simplify the implementation of :opcode:`BINARY_OP` by indexing into an array
|
|
||||||
of function pointers (rather than switching on the oparg).
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix a segfault when the parser fails without reading any input. Patch by
|
|
||||||
Pablo Galindo
|
|
|
@ -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
|
|
|
@ -1 +0,0 @@
|
||||||
Fixed a crash when calling ``.with_traceback(None)`` on ``NameError``. This occurs internally in ``unittest.TestCase.assertRaises()``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Specialize :opcode:`BINARY_SUBSCR` for classes with a ``__getitem__`` method
|
|
||||||
implemented in Python
|
|
|
@ -1,3 +0,0 @@
|
||||||
Adds new :opcode:`COPY_FREE_VARS` opcode, to make copying of free variables
|
|
||||||
from function to frame explicit. Helps optimization of calls to Python
|
|
||||||
function.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Restore behavior from 3.10 when tracing an exception raised within a with
|
|
||||||
statement.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Allow the parser to obtain error lines directly from encoded files. Patch by
|
|
||||||
Pablo Galindo
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improve the tokenizer errors when encountering invisible control characters
|
|
||||||
in the parser. Patch by Pablo Galindo
|
|
|
@ -1 +0,0 @@
|
||||||
Fix crash when calling coro.cr_frame.clear() after coroutine has been freed.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix :mod:`traceback` display for exceptions with invalid module name.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Allocate space for the interpreter frame in the frame object, to avoid an
|
|
||||||
additional allocation when the frame object outlives the frame activation.
|
|
|
@ -1 +0,0 @@
|
||||||
Specialized the ``COMPARE_OP`` opcode using the PEP 659 machinery.
|
|
|
@ -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
|
|
|
@ -1,6 +0,0 @@
|
||||||
The three values of ``exc_info`` are now always consistent with each other.
|
|
||||||
In particular, the ``type`` and ``traceback`` fields are now derived from
|
|
||||||
the exception instance. This impacts the return values of :func:`sys.exc_info`
|
|
||||||
and :c:func:`PyErr_GetExcInfo()` if the exception instance is modified while
|
|
||||||
the exception is handled, as well as :c:func:`PyErr_SetExcInfo()`, which now
|
|
||||||
ignores the ``type`` and ``traceback`` arguments provided to it.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fail the configure step if the selected compiler doesn't support memory
|
|
||||||
sanitizer. Patch by Pablo Galindo
|
|
|
@ -1,2 +0,0 @@
|
||||||
Reverts a change to the ``code.__new__`` :ref:`audit event <audit-events>`
|
|
||||||
from an earlier prerelease.
|
|
|
@ -1 +0,0 @@
|
||||||
``is_valid_fd`` now uses faster ``fcntl(fd, F_GETFD)`` on Linux, macOS, and Windows.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Place pointers to dict and values immediately before GC header. This reduces
|
|
||||||
number of dependent memory loads to access either dict or values from 3 to
|
|
||||||
1.
|
|
|
@ -1,4 +0,0 @@
|
||||||
The ``__note__`` field was added to :exc:`BaseException`. It is ``None``
|
|
||||||
by default but can be set to a string which is added to the exception's
|
|
||||||
traceback.
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
:c:func:`_PyErr_ChainStackItem` no longer normalizes ``exc_info`` (including setting the traceback on the exception instance) because ``exc_info`` is always normalized.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix the :exc:`SyntaxError` location for errors involving for loops with
|
|
||||||
invalid targets. Patch by Pablo Galindo
|
|
|
@ -1,5 +0,0 @@
|
||||||
Restore behavior from 3.9 and earlier when sending non-None to newly started
|
|
||||||
generator. In 3.9 this did not affect the state of the generator. In 3.10.0
|
|
||||||
and 3.10.1 ``gen_func().send(0)`` is equivalent to
|
|
||||||
``gen_func().throw(TypeError(...)`` which exhausts the generator. In 3.10.2
|
|
||||||
onward, the behavior has been reverted to that of 3.9.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Expanded :func:`~dataclasses.astuple` and :func:`~dataclasses.asdict` docs,
|
|
||||||
warning about deepcopy being applied and providing a workaround.
|
|
|
@ -1,2 +0,0 @@
|
||||||
In the extending chapter of the extending doc, update a paragraph about the
|
|
||||||
global variables containing exception information.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Update the documentation to note that CPython does not consistently
|
|
||||||
require iterators to define ``__iter__``.
|
|
|
@ -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.
|
|
|
@ -1 +0,0 @@
|
||||||
``socket.socket`` documentation is corrected to a class from a function.
|
|
|
@ -1 +0,0 @@
|
||||||
Link doc for sys.prefix to sysconfig doc on installation paths.
|
|
|
@ -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.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve cross-references in the documentation for the data model.
|
|
|
@ -1,2 +0,0 @@
|
||||||
``make -C Doc suspicious`` will be removed soon in favor of ``make -C Doc
|
|
||||||
check``, mark it as deprecated.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add :func:`inspect.getmembers_static` , it return all members without
|
|
||||||
triggering dynamic lookup via the descriptor protocol. Patch by Weipeng Hong.
|
|
|
@ -1 +0,0 @@
|
||||||
Add MIME types for N-quads, N-triples, Notation3 and TriG to ``mimetypes``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Avoid a possible *"RuntimeError: dictionary changed size during iteration"*
|
|
||||||
when adjusting the process count of :class:`ProcessPoolExecutor`.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve netrc library. netrc file no longer needs to contain all tokens. And if the login name is anonymous, security check is no longer need.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add ``max_tasks_per_child`` to :class:`concurrent.futures.ProcessPoolExecutor`.
|
|
||||||
This allows users to specify the maximum number of tasks a single process
|
|
||||||
should execute before the process needs to be restarted.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement :pep:`585` for :class:`graphlib.TopologicalSorter`.
|
|
|
@ -1 +0,0 @@
|
||||||
Add tests for truncated/missing trailers in gzip.decompress implementation.
|
|
|
@ -1 +0,0 @@
|
||||||
Deprecated legacy functions in :mod:`importlib.resources`.
|
|
|
@ -1 +0,0 @@
|
||||||
Optimize :func:`math.comb` and :func:`math.perm`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
On Windows, :func:`time.sleep` now uses a waitable timer which supports
|
|
||||||
high-resolution timers. Patch by Dong-hee Na and Eryk Sun.
|
|
|
@ -1 +0,0 @@
|
||||||
Launch GNOME web browsers via gio tool instead of obsolete gvfs-open
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix the repr of :data:`dataclasses.InitVar` with a type alias to the
|
|
||||||
built-in class, e.g. ``InitVar[list[int]]``.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix :func:`dataclasses.is_dataclass` for dataclasses which are subclasses of
|
|
||||||
:class:`types.GenericAlias`.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix :func:`types.resolve_bases` and :func:`types.new_class` for
|
|
||||||
:class:`types.GenericAlias` instance as a base.
|
|
|
@ -1 +0,0 @@
|
||||||
Improve output of ``dir()`` with Enums.
|
|
|
@ -1,5 +0,0 @@
|
||||||
When a namespace package is imported before another module from the same
|
|
||||||
namespace is created/installed in a different :data:`sys.path` location
|
|
||||||
while the program is running, calling the
|
|
||||||
:func:`importlib.invalidate_caches` function will now also guarantee the new
|
|
||||||
module is noticed.
|
|
|
@ -1,3 +0,0 @@
|
||||||
In-place JSON file formatting using ``python3 -m json.tool infile infile``
|
|
||||||
now works correctly, previously it left the file empty. Patch by Chris
|
|
||||||
Wesseling.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix bug where :mod:`dis` produced an incorrect oparg when :opcode:`EXTENDED_ARG` is followed by an opcode that does not use its argument.
|
|
|
@ -1 +0,0 @@
|
||||||
In importlib.metadata, fix distribution discovery for an empty path.
|
|
|
@ -1 +0,0 @@
|
||||||
Added *proportional* option to :meth:`statistics.linear_regression`.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix a regression in Python 3.11a1 and 3.11a2 where :mod:`sqlite3`
|
|
||||||
incorrectly would use ``SQLITE_LIMIT_LENGTH`` when checking SQL statement
|
|
||||||
lengths. Now, ``SQLITE_LIMIT_SQL_LENGTH`` is used. Patch by Erlend E. Aasland.
|
|
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