2022-04-05 16:52:24 -03:00
|
|
|
.. bpo: 47212
|
|
|
|
.. date: 2022-04-05-11-29-21
|
|
|
|
.. nonce: leF4pz
|
|
|
|
.. release date: 2022-04-05
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Raise :exc:`IndentationError` instead of :exc:`SyntaxError` for a bare
|
|
|
|
``except`` with no following indent. Improve :exc:`SyntaxError` locations
|
|
|
|
for an un-parenthesized generator used as arguments. Patch by Matthieu
|
|
|
|
Dartiailh.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47186
|
|
|
|
.. date: 2022-04-04-17-41-10
|
|
|
|
.. nonce: aQWoSh
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Replace :opcode:`JUMP_IF_NOT_EG_MATCH` by :opcode:`CHECK_EG_MATCH` + jump.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47176
|
|
|
|
.. date: 2022-04-02-14-32-21
|
|
|
|
.. nonce: kTygYI
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Emscripten builds cannot handle signals in the usual way due to platform
|
|
|
|
limitations. Python can now handle signals. To use, set
|
|
|
|
Module.Py_EmscriptenSignalBuffer to be a single byte SharedArrayBuffer and
|
|
|
|
set Py_EMSCRIPTEN_SIGNAL_HANDLING to 1. Writing a number into the
|
|
|
|
SharedArrayBuffer will cause the corresponding signal to be raised into the
|
|
|
|
Python thread.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47186
|
|
|
|
.. date: 2022-04-01-11-53-59
|
|
|
|
.. nonce: RBCPk8
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Replace :opcode:`JUMP_IF_NOT_EXC_MATCH` by :opcode:`CHECK_EXC_MATCH` + jump.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47120
|
|
|
|
.. date: 2022-03-31-21-43-57
|
|
|
|
.. nonce: NgxQbA
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Replace the absolute jump opcode :opcode:`JUMP_NO_INTERRUPT` by the relative
|
|
|
|
:opcode:`JUMP_BACKWARD_NO_INTERRUPT`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46841
|
|
|
|
.. date: 2022-03-31-15-57-42
|
|
|
|
.. nonce: U-25Z6
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Avoid unnecessary allocations when comparing code objects.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47182
|
|
|
|
.. date: 2022-03-31-15-37-02
|
|
|
|
.. nonce: e_4SsC
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Fix a crash when using a named unicode character like ``"\N{digit nine}"``
|
|
|
|
after the main interpreter has been initialized a second time.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47162
|
|
|
|
.. date: 2022-03-30-13-13-25
|
|
|
|
.. nonce: yDJMUm
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
WebAssembly cannot deal with bad function pointer casts (different count or
|
|
|
|
types of arguments). Python can now use call trampolines to mitigate the
|
|
|
|
problem. Define :c:macro:`PY_CALL_TRAMPOLINE` to enable call trampolines.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46775
|
|
|
|
.. date: 2022-03-30-02-36-25
|
|
|
|
.. nonce: e3Oxqf
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Some Windows system error codes(>= 10000) are now mapped into the correct
|
2023-09-22 15:52:57 -03:00
|
|
|
errno and may now raise a subclass of :exc:`OSError`. Patch by Donghee Na.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47129
|
|
|
|
.. date: 2022-03-26-16-35-57
|
|
|
|
.. nonce: hDg2Vt
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Improve error messages in f-string syntax errors concerning empty
|
|
|
|
expressions.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47117
|
|
|
|
.. date: 2022-03-26-15-45-57
|
|
|
|
.. nonce: 60W6GQ
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Fix a crash if we fail to decode characters in interactive mode if the
|
|
|
|
tokenizer buffers are uninitialized. Patch by Pablo Galindo.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47127
|
|
|
|
.. date: 2022-03-26-12-21-53
|
|
|
|
.. nonce: Mh86RB
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Speed up calls to c functions with keyword arguments by 25% with
|
|
|
|
specialization. Patch by Kumar Aditya.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47120
|
|
|
|
.. date: 2022-03-25-21-51-10
|
|
|
|
.. nonce: 9YJ-Xw
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Replaced :opcode:`JUMP_ABSOLUTE` by the relative jump
|
|
|
|
:opcode:`JUMP_BACKWARD`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 42197
|
|
|
|
.. date: 2022-03-22-15-12-28
|
|
|
|
.. nonce: SwrrFO
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
2024-01-27 09:06:59 -04:00
|
|
|
:c:func:`!PyFrame_FastToLocalsWithError` and :c:func:`!PyFrame_LocalsToFast`
|
2022-04-05 16:52:24 -03:00
|
|
|
are no longer called during profiling nor tracing. C code can access the
|
|
|
|
``f_locals`` attribute of :c:type:`PyFrameObject` by calling
|
|
|
|
:c:func:`PyFrame_GetLocals`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47070
|
|
|
|
.. date: 2022-03-19-21-50-59
|
|
|
|
.. nonce: wPcsQh
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Improve performance of ``array_inplace_repeat`` by reducing the number of
|
|
|
|
invocations of ``memcpy``. Refactor the ``repeat`` and inplace ``repeat``
|
|
|
|
methods of ``array``, ``bytes``, ``bytearray`` and ``unicodeobject`` to use
|
|
|
|
the common ``_PyBytes_Repeat``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47053
|
|
|
|
.. date: 2022-03-17-22-47-29
|
|
|
|
.. nonce: QAXk8Q
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Reduce de-optimization in the specialized ``BINARY_OP_INPLACE_ADD_UNICODE``
|
|
|
|
opcode.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47045
|
|
|
|
.. date: 2022-03-17-16-25-57
|
|
|
|
.. nonce: xQgHul
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Remove the ``f_state`` field from the _PyInterpreterFrame struct. Add the
|
|
|
|
``owner`` field to the _PyInterpreterFrame struct to make ownership explicit
|
|
|
|
to simplify clearing and deallocing frames and generators.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46968
|
|
|
|
.. date: 2022-03-17-14-22-23
|
|
|
|
.. nonce: 4gz4NA
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Check for the existence of the "sys/auxv.h" header in :mod:`faulthandler` to
|
|
|
|
avoid compilation problems in systems where this header doesn't exist. Patch
|
|
|
|
by Pablo Galindo
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46329
|
|
|
|
.. date: 2022-03-16-12-19-25
|
|
|
|
.. nonce: 9oS0HT
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Use low bit of ``LOAD_GLOBAL`` to indicate whether to push a ``NULL`` before
|
|
|
|
the global. Helps streamline the call sequence a bit.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46841
|
|
|
|
.. date: 2022-03-16-11-05-35
|
|
|
|
.. nonce: yUoIHg
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Quicken bytecode in-place by storing it as part of the corresponding
|
|
|
|
``PyCodeObject``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47012
|
|
|
|
.. date: 2022-03-14-11-15-11
|
|
|
|
.. nonce: 5L6NoE
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Speed up iteration of :class:`bytes` and :class:`bytearray` by 30%. Patch by
|
|
|
|
Kumar Aditya.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47009
|
|
|
|
.. date: 2022-03-14-09-45-10
|
|
|
|
.. nonce: ZI05b5
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Improved the performance of :meth:`list.append()` and list comprehensions by
|
|
|
|
optimizing for the common case, where no resize is needed. Patch by Dennis
|
|
|
|
Sweeney.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47005
|
|
|
|
.. date: 2022-03-13-21-04-20
|
|
|
|
.. nonce: OHBfCc
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Improve performance of ``bytearray_repeat`` and ``bytearray_irepeat`` by
|
|
|
|
reducing the number of invocations of ``memcpy``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46829
|
|
|
|
.. date: 2022-03-12-21-07-21
|
|
|
|
.. nonce: cpGoPV
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Deprecate passing a message into :meth:`asyncio.Future.cancel` and
|
|
|
|
:meth:`asyncio.Task.cancel`
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46993
|
|
|
|
.. date: 2022-03-12-09-44-31
|
|
|
|
.. nonce: -13hGo
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Speed up :class:`bytearray` creation from :class:`list` and :class:`tuple`
|
|
|
|
by 40%. Patch by Kumar Aditya.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 39829
|
|
|
|
.. date: 2022-03-11-09-39-01
|
|
|
|
.. nonce: mlW3Su
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Removed the ``__len__()`` call when initializing a list and moved
|
|
|
|
initializing to ``list_extend``. Patch by Jeremiah Pascual.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46944
|
|
|
|
.. date: 2022-03-08-10-50-42
|
|
|
|
.. nonce: cnaIK3
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
2023-07-21 04:52:07 -03:00
|
|
|
Speed up throwing exception in generator with :c:macro:`METH_FASTCALL` calling
|
2022-04-05 16:52:24 -03:00
|
|
|
convention. Patch by Kumar Aditya.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46841
|
|
|
|
.. date: 2022-03-07-15-54-39
|
|
|
|
.. nonce: 7wG92r
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Modify :opcode:`STORE_SUBSCR` to use an inline cache entry (rather than its
|
|
|
|
oparg) as an adaptive counter.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46841
|
|
|
|
.. date: 2022-03-06-10-37-36
|
|
|
|
.. nonce: O12Pba
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
2024-01-27 09:06:59 -04:00
|
|
|
Use inline caching for :opcode:`!PRECALL` and :opcode:`CALL`, and remove the
|
2022-04-05 16:52:24 -03:00
|
|
|
internal machinery for managing the (now unused) non-inline caches.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46881
|
|
|
|
.. date: 2022-03-03-09-08-17
|
|
|
|
.. nonce: ckD4tT
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Statically allocate and initialize the latin1 characters.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46838
|
|
|
|
.. date: 2022-02-25-22-42-30
|
|
|
|
.. nonce: RB6kEy
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Improve syntax errors for incorrect function definitions. Patch by Pablo
|
|
|
|
Galindo
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43721
|
|
|
|
.. date: 2022-02-01-10-05-27
|
|
|
|
.. nonce: -1XAIo
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Fix docstrings of :attr:`~property.getter`, :attr:`~property.setter`, and
|
|
|
|
:attr:`~property.deleter` to clarify that they create a new copy of the
|
|
|
|
property.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43224
|
|
|
|
.. date: 2022-01-20-16-48-09
|
|
|
|
.. nonce: WDihrT
|
|
|
|
.. section: Core and Builtins
|
|
|
|
|
|
|
|
Make grammar changes required for PEP 646.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47208
|
|
|
|
.. date: 2022-04-04-08-54-31
|
|
|
|
.. nonce: cOh9xZ
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Allow vendors to override :const:`CTYPES_MAX_ARGCOUNT`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 23689
|
|
|
|
.. date: 2022-04-03-13-19-08
|
|
|
|
.. nonce: TFSc3E
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:mod:`re` module: fix memory leak when a match is terminated by a signal or
|
|
|
|
memory allocation failure. Patch by Ma Lin.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47167
|
|
|
|
.. date: 2022-03-30-18-35-50
|
|
|
|
.. nonce: nCNHsB
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Allow overriding a future compliance check in :class:`asyncio.Task`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47151
|
|
|
|
.. date: 2022-03-30-01-17-43
|
|
|
|
.. nonce: z-nQkR
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
When subprocess tries to use vfork, it now falls back to fork if vfork
|
|
|
|
returns an error. This allows use in situations where vfork isn't allowed by
|
|
|
|
the OS kernel.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47152
|
|
|
|
.. date: 2022-03-29-19-14-53
|
|
|
|
.. nonce: 5rl5ZK
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Convert the :mod:`re` module into a package. Deprecate modules
|
|
|
|
``sre_compile``, ``sre_constants`` and ``sre_parse``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 4833
|
|
|
|
.. date: 2022-03-28-20-16-37
|
|
|
|
.. nonce: 2vSUE5
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add :meth:`ZipFile.mkdir`
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 27929
|
|
|
|
.. date: 2022-03-28-13-35-50
|
|
|
|
.. nonce: j5mAmV
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix :meth:`asyncio.loop.sock_connect` to only resolve names for
|
|
|
|
:const:`socket.AF_INET` or :const:`socket.AF_INET6` families. Resolution may
|
|
|
|
not make sense for other families, like :const:`socket.AF_BLUETOOTH` and
|
|
|
|
:const:`socket.AF_UNIX`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 14265
|
|
|
|
.. date: 2022-03-27-10-41-24
|
|
|
|
.. nonce: OBMlAi
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Adds the fully qualified test name to unittest output
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47061
|
|
|
|
.. date: 2022-03-26-13-14-43
|
|
|
|
.. nonce: QLxbC6
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Deprecate the aifc module.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 39622
|
|
|
|
.. date: 2022-03-25-01-27-25
|
|
|
|
.. nonce: ieBIMp
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Handle Ctrl+C in asyncio programs to interrupt the main task.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47101
|
|
|
|
.. date: 2022-03-23-15-31-02
|
|
|
|
.. nonce: rVSld-
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:const:`hashlib.algorithms_available` now lists only algorithms that are
|
|
|
|
provided by activated crypto providers on OpenSSL 3.0. Legacy algorithms are
|
|
|
|
not listed unless the legacy provider has been loaded into the default OSSL
|
|
|
|
context.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47099
|
|
|
|
.. date: 2022-03-23-14-16-38
|
|
|
|
.. nonce: 2raait
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
All :exc:`URLError` exception messages raised in
|
|
|
|
:class:`urllib.request.URLopener` now contain a colon between ``ftp error``
|
|
|
|
and the rest of the message. Previously,
|
|
|
|
:func:`~urllib.request.URLopener.open_ftp` missed the colon. Patch by Oleg
|
|
|
|
Iarygin.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47099
|
|
|
|
.. date: 2022-03-23-13-55-41
|
|
|
|
.. nonce: P6quRP
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Exception chaining is changed from
|
|
|
|
:func:`Exception.with_traceback`/:func:`sys.exc_info` to :pep:`3134`. Patch
|
|
|
|
by Oleg Iarygin.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47095
|
|
|
|
.. date: 2022-03-23-12-07-26
|
|
|
|
.. nonce: P3YTrh
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:mod:`hashlib`'s internal ``_blake2`` module now prefers ``libb2`` from
|
|
|
|
https://www.blake2.net/ over Python's vendored copy of blake2.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47098
|
|
|
|
.. date: 2022-03-23-10-07-41
|
|
|
|
.. nonce: 7AN_qp
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
The Keccak Code Package for :mod:`hashlib`'s internal ``_sha3`` module has
|
|
|
|
been replaced with tiny_sha3. The module is used as fallback when Python is
|
|
|
|
built without OpenSSL.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47088
|
|
|
|
.. date: 2022-03-22-19-18-31
|
|
|
|
.. nonce: JM1kNI
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Implement :data:`typing.LiteralString`, part of :pep:`675`. Patch by Jelle
|
|
|
|
Zijlstra.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 42885
|
|
|
|
.. date: 2022-03-21-08-32-19
|
|
|
|
.. nonce: LCnTTp
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Optimize :func:`re.search`, :func:`re.split`, :func:`re.findall`,
|
|
|
|
:func:`re.finditer` and :func:`re.sub` for regular expressions starting with
|
|
|
|
``\A`` or ``^``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 23691
|
|
|
|
.. date: 2022-03-20-22-13-24
|
|
|
|
.. nonce: Nc2TrW
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Protect the :func:`re.finditer` iterator from re-entering.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47067
|
|
|
|
.. date: 2022-03-20-17-15-56
|
|
|
|
.. nonce: XXLnje
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Optimize calling ``GenericAlias`` objects by using :pep:`590` ``vectorcall``
|
|
|
|
and by replacing ``PyObject_SetAttrString`` with ``PyObject_SetAttr``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 28080
|
|
|
|
.. date: 2022-03-20-15-54-41
|
|
|
|
.. nonce: kn35Vk
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add the *metadata_encoding* parameter in the :class:`zipfile.ZipFile`
|
|
|
|
constructor and the ``--metadata-encoding`` option in the :mod:`zipfile` CLI
|
|
|
|
to allow reading zipfiles using non-standard codecs to encode the filenames
|
|
|
|
within the archive.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47000
|
|
|
|
.. date: 2022-03-20-13-00-08
|
|
|
|
.. nonce: p8HpG0
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Make :func:`io.text_encoding` returns "utf-8" when UTF-8 mode is enabled.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 42369
|
|
|
|
.. date: 2022-03-19-19-56-04
|
|
|
|
.. nonce: Ok828t
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix thread safety of :meth:`zipfile._SharedFile.tell` to avoid a
|
|
|
|
"zipfile.BadZipFile: Bad CRC-32 for file" exception when reading a
|
|
|
|
:class:`ZipFile` from multiple threads.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 38256
|
|
|
|
.. date: 2022-03-19-15-54-41
|
|
|
|
.. nonce: FoMbjE
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix :func:`binascii.crc32` when it is compiled to use zlib'c crc32 to work
|
|
|
|
properly on inputs 4+GiB in length instead of returning the wrong result.
|
|
|
|
The workaround prior to this was to always feed the function data in
|
|
|
|
increments smaller than 4GiB or to just call the zlib module function.
|
|
|
|
|
|
|
|
We also have :func:`binascii.crc32` release the GIL when computing on larger
|
|
|
|
inputs as :func:`zlib.crc32` and :mod:`hashlib` do.
|
|
|
|
|
|
|
|
This also boosts performance on Windows as it now uses the zlib crc32
|
|
|
|
implementation for :func:`binascii.crc32` for a 2-3x speedup.
|
|
|
|
|
|
|
|
That the stdlib has a crc32 API in two modules is a known historical oddity.
|
|
|
|
This moves us closer to a single implementation behind them.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47066
|
|
|
|
.. date: 2022-03-19-14-12-23
|
|
|
|
.. nonce: we3YFx
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Global inline flags (e.g. ``(?i)``) can now only be used at the start of the
|
|
|
|
regular expressions. Using them not at the start of expression was
|
|
|
|
deprecated since Python 3.6.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 39394
|
|
|
|
.. date: 2022-03-19-13-38-29
|
|
|
|
.. nonce: 7j6WL6
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
A warning about inline flags not at the start of the regular expression now
|
|
|
|
contains the position of the flag.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 433030
|
|
|
|
.. date: 2022-03-19-08-42-57
|
|
|
|
.. nonce: UTwRX7
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add support of atomic grouping (``(?>...)``) and possessive quantifiers
|
|
|
|
(``*+``, ``++``, ``?+``, ``{m,n}+``) in :mod:`regular expressions <re>`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47062
|
|
|
|
.. date: 2022-03-18-22-46-18
|
|
|
|
.. nonce: RNc99_
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Implement :class:`asyncio.Runner` context manager.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46382
|
|
|
|
.. date: 2022-03-18-17-25-57
|
|
|
|
.. nonce: zQUJ66
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:func:`~dataclasses.dataclass` ``slots=True`` now correctly omits slots
|
|
|
|
already defined in base classes. Patch by Arie Bovenberg.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47057
|
|
|
|
.. date: 2022-03-18-14-22-38
|
|
|
|
.. nonce: n-IHbt
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Use FASTCALL convention for ``FutureIter.throw()``
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47061
|
|
|
|
.. date: 2022-03-18-13-30-40
|
|
|
|
.. nonce: etLHK5
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Deprecate the various modules listed by :pep:`594`:
|
|
|
|
|
|
|
|
aifc, asynchat, asyncore, audioop, cgi, cgitb, chunk, crypt, imghdr, msilib,
|
|
|
|
nntplib, nis, ossaudiodev, pipes, smtpd, sndhdr, spwd, sunau, telnetlib, uu,
|
|
|
|
xdrlib
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 34790
|
|
|
|
.. date: 2022-03-17-19-38-40
|
|
|
|
.. nonce: zQIiVJ
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Remove passing coroutine objects to :func:`asyncio.wait`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47039
|
|
|
|
.. date: 2022-03-17-01-54-13
|
|
|
|
.. nonce: 0Yxv0K
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Normalize ``repr()`` of asyncio future and task objects.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 2604
|
|
|
|
.. date: 2022-03-16-18-25-19
|
|
|
|
.. nonce: jeopdL
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix bug where doctests using globals would fail when run multiple times.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45150
|
|
|
|
.. date: 2022-03-16-11-52-52
|
|
|
|
.. nonce: kYbIME
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add :func:`hashlib.file_digest` helper for efficient hashing of file object.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 34861
|
|
|
|
.. date: 2022-03-16-08-49-12
|
|
|
|
.. nonce: p8ugVg
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Made cumtime the default sorting key for cProfile
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45997
|
|
|
|
.. date: 2022-03-15-18-32-12
|
|
|
|
.. nonce: 4n2aVU
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix :class:`asyncio.Semaphore` re-aquiring FIFO order.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47022
|
|
|
|
.. date: 2022-03-15-09-29-52
|
|
|
|
.. nonce: uaEDcI
|
|
|
|
.. section: Library
|
|
|
|
|
2024-01-03 09:04:26 -04:00
|
|
|
The :mod:`!asynchat`, :mod:`!asyncore` and :mod:`!smtpd` modules have been
|
2022-04-05 16:52:24 -03:00
|
|
|
deprecated since at least Python 3.6. Their documentation and deprecation
|
|
|
|
warnings and have now been updated to note they will removed in Python 3.12
|
|
|
|
(:pep:`594`).
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43253
|
|
|
|
.. date: 2022-03-15-07-53-45
|
|
|
|
.. nonce: rjdLFj
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix a crash when closing transports where the underlying socket handle is
|
|
|
|
already invalid on the Proactor event loop.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40280
|
|
|
|
.. date: 2022-03-14-09-26-42
|
|
|
|
.. nonce: 2-k8TV
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:func:`select.select` now passes ``NULL`` to ``select`` for each empty
|
|
|
|
fdset.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47004
|
|
|
|
.. date: 2022-03-13-15-04-05
|
|
|
|
.. nonce: SyYpxd
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Apply bugfixes from importlib_metadata 4.11.3, including bugfix for
|
|
|
|
EntryPoint.extras, which was returning match objects and not the extras
|
|
|
|
strings.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46998
|
|
|
|
.. date: 2022-03-13-08-52-58
|
|
|
|
.. nonce: cHh-9O
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Allow subclassing of :class:`typing.Any`. Patch by Shantanu Jain.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46995
|
|
|
|
.. date: 2022-03-12-13-50-42
|
|
|
|
.. nonce: 2kdNDg
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Deprecate missing :meth:`asyncio.Task.set_name` for third-party task
|
|
|
|
implementations, schedule making it mandatory in Python 3.13.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46994
|
|
|
|
.. date: 2022-03-12-12-34-13
|
|
|
|
.. nonce: d7hPdz
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Accept explicit contextvars.Context in :func:`asyncio.create_task` and
|
|
|
|
:meth:`asyncio.loop.create_task`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46981
|
|
|
|
.. date: 2022-03-12-11-30-42
|
|
|
|
.. nonce: ltWCxH
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
``typing.get_args(typing.Tuple[()])`` now returns ``()`` instead of
|
|
|
|
``((),)``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46968
|
|
|
|
.. date: 2022-03-11-17-56-25
|
|
|
|
.. nonce: pPVvNo
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add ``os.sysconf_names['SC_MINSIGSTKSZ']``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46985
|
|
|
|
.. date: 2022-03-11-13-34-16
|
|
|
|
.. nonce: BgoMr2
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Upgrade pip wheel bundled with ensurepip (pip 22.0.4)
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46968
|
|
|
|
.. date: 2022-03-10-14-51-11
|
|
|
|
.. nonce: ym2QxL
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:mod:`faulthandler`: On Linux 5.14 and newer, dynamically determine size of
|
|
|
|
signal handler stack size CPython allocates using
|
|
|
|
``getauxval(AT_MINSIGSTKSZ)``. This changes allows for Python extension's
|
|
|
|
request to Linux kernel to use AMX_TILE instruction set on Sapphire Rapids
|
|
|
|
Xeon processor to succeed, unblocking use of the ISA in frameworks.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46917
|
|
|
|
.. date: 2022-03-10-14-47-16
|
|
|
|
.. nonce: s19zcy
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
The :data:`math.nan` value is now always available. Patch by Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46955
|
|
|
|
.. date: 2022-03-08-22-41-59
|
|
|
|
.. nonce: IOoonN
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Expose :class:`asyncio.base_events.Server` as :class:`asyncio.Server`. Patch
|
|
|
|
by Stefan Zabka.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 23325
|
|
|
|
.. date: 2022-03-08-11-34-06
|
|
|
|
.. nonce: 3VQnfo
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
The :mod:`signal` module no longer assumes that :const:`~signal.SIG_IGN` and
|
|
|
|
:const:`~signal.SIG_DFL` are small int singletons.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46932
|
|
|
|
.. date: 2022-03-07-20-20-34
|
|
|
|
.. nonce: xbarAs
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Update bundled libexpat to 2.4.7
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46933
|
|
|
|
.. date: 2022-03-05-21-51-31
|
|
|
|
.. nonce: 6yzWtb
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
The :mod:`pwd` module is now optional. :func:`os.path.expanduser` returns
|
|
|
|
the path when the :mod:`pwd` module is not available.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40059
|
|
|
|
.. date: 2022-02-23-01-11-08
|
|
|
|
.. nonce: Iwc9UH
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:pep:`680`, the :mod:`tomllib` module. Adds support for parsing TOML.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 464471
|
|
|
|
.. date: 2022-02-21-11-41-23
|
|
|
|
.. nonce: fL06TV
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:func:`asyncio.timeout` and :func:`asyncio.timeout_at` context managers
|
|
|
|
added. Patch by Tin Tvrtković and Andrew Svetlov.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46805
|
|
|
|
.. date: 2022-02-20-23-03-32
|
|
|
|
.. nonce: HZ8xWG
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Added raw datagram socket functions for asyncio:
|
|
|
|
:meth:`~asyncio.AbstractEventLoop.sock_sendto`,
|
|
|
|
:meth:`~asyncio.AbstractEventLoop.sock_recvfrom` and
|
|
|
|
:meth:`~asyncio.AbstractEventLoop.sock_recvfrom_into`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46644
|
|
|
|
.. date: 2022-02-05-22-14-44
|
|
|
|
.. nonce: P--1Cz
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
No longer require valid typeforms to be callable. This allows
|
|
|
|
:data:`typing.Annotated` to wrap :data:`typing.ParamSpecArgs` and
|
|
|
|
:data:`dataclasses.InitVar`. Patch by Gregory Beauregard.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46581
|
|
|
|
.. date: 2022-02-01-11-32-47
|
|
|
|
.. nonce: t7Zw65
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Brings :class:`ParamSpec` propagation for :class:`GenericAlias` in line with
|
|
|
|
:class:`Concatenate` (and others).
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45413
|
|
|
|
.. date: 2022-01-31-15-19-38
|
|
|
|
.. nonce: 1vaS0V
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Define *posix_venv* and *nt_venv* :ref:`sysconfig installation schemes
|
|
|
|
<installation_paths>` to be used for bootstrapping new virtual environments.
|
|
|
|
Add *venv* sysconfig installation scheme to get the appropriate one of the
|
|
|
|
above. The schemes are identical to the pre-existing *posix_prefix* and *nt*
|
|
|
|
install schemes. The :mod:`venv` module now uses the *venv* scheme to create
|
|
|
|
new virtual environments instead of hardcoding the paths depending only on
|
|
|
|
the platform. Downstream Python distributors customizing the *posix_prefix*
|
|
|
|
or *nt* install scheme in a way that is not compatible with the install
|
|
|
|
scheme used in virtual environments are encouraged not to customize the
|
|
|
|
*venv* schemes. When Python itself runs in a virtual environment,
|
|
|
|
:func:`sysconfig.get_default_scheme` and
|
|
|
|
:func:`sysconfig.get_preferred_scheme` with ``key="prefix"`` returns *venv*.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43224
|
|
|
|
.. date: 2022-01-30-22-05-53
|
|
|
|
.. nonce: E-eT22
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Implement support for PEP 646 in typing.py.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43224
|
|
|
|
.. date: 2022-01-30-20-32-40
|
|
|
|
.. nonce: zqrQsj
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Allow unpacking types.GenericAlias objects, e.g. ``*tuple[int, str]``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46557
|
|
|
|
.. date: 2022-01-28-01-23-25
|
|
|
|
.. nonce: XSbhyQ
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Warnings captured by the logging module are now logged without a format
|
|
|
|
string to prevent systems that group logs by the msg argument from grouping
|
|
|
|
captured warnings together.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 41370
|
|
|
|
.. date: 2022-01-27-11-54-16
|
|
|
|
.. nonce: gYxCPE
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:func:`typing.get_type_hints` now supports evaluating strings as forward
|
|
|
|
references in :ref:`PEP 585 generic aliases <types-genericalias>`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46607
|
|
|
|
.. date: 2022-01-26-18-30-34
|
|
|
|
.. nonce: xnhT4a
|
|
|
|
.. section: Library
|
|
|
|
|
2023-05-26 03:06:32 -03:00
|
|
|
Add :exc:`DeprecationWarning` to :class:`!LegacyInterpolation`, deprecated in
|
2022-04-05 16:52:24 -03:00
|
|
|
the docstring since Python 3.2. Will be removed in Python 3.13. Use
|
|
|
|
:class:`BasicInterpolation` or :class:`ExtendedInterpolation` instead.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 26120
|
|
|
|
.. date: 2022-01-25-15-45-04
|
|
|
|
.. nonce: YzrBMO
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:mod:`pydoc` now excludes __future__ imports from the module's data items.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46480
|
|
|
|
.. date: 2022-01-23-16-33-07
|
|
|
|
.. nonce: E4jHlh
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add :func:`typing.assert_type`. Patch by Jelle Zijlstra.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46421
|
|
|
|
.. date: 2022-01-18-01-29-38
|
|
|
|
.. nonce: 9LdmNr
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix a unittest issue where if the command was invoked as ``python -m
|
|
|
|
unittest`` and the filename(s) began with a dot (.), a ``ValueError`` is
|
|
|
|
returned.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46245
|
|
|
|
.. date: 2022-01-03-20-12-14
|
|
|
|
.. nonce: 3w4RlA
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add optional parameter *dir_fd* in :func:`shutil.rmtree`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 22859
|
|
|
|
.. date: 2021-12-29-19-37-49
|
|
|
|
.. nonce: AixHW7
|
|
|
|
.. section: Library
|
|
|
|
|
2024-01-02 03:37:37 -04:00
|
|
|
:meth:`!unittest.TestProgram.usageExit` is marked as deprecated,
|
|
|
|
to be removed in Python 3.13.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46170
|
|
|
|
.. date: 2021-12-26-14-45-51
|
|
|
|
.. nonce: AQ7kSM
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Improve the error message when you try to subclass an instance of
|
|
|
|
:class:`typing.NewType`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40296
|
|
|
|
.. date: 2021-12-25-14-13-14
|
|
|
|
.. nonce: p0YVGB
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix supporting generic aliases in :mod:`pydoc`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 20392
|
|
|
|
.. date: 2021-12-22-12-02-27
|
|
|
|
.. nonce: CLAFIp
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix inconsistency with uppercase file extensions in
|
|
|
|
:meth:`MimeTypes.guess_type`. Patch by Kumar Aditya.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46030
|
|
|
|
.. date: 2021-12-10-07-07-47
|
|
|
|
.. nonce: UN349J
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add ``LOCAL_CREDS``, ``LOCAL_CREDS_PERSISTENT`` and ``SCM_CREDS2`` FreeBSD
|
|
|
|
constants to the socket module.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 44439
|
|
|
|
.. date: 2021-11-08-20-27-41
|
|
|
|
.. nonce: I_8qro
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix ``.write()`` method of a member file in ``ZipFile``, when the input data
|
|
|
|
is an object that supports the buffer protocol, the file length may be
|
|
|
|
wrong.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45171
|
|
|
|
.. date: 2021-09-11-16-06-54
|
|
|
|
.. nonce: ec597j
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix handling of the ``stacklevel`` argument to logging functions in the
|
2022-09-04 10:17:26 -03:00
|
|
|
:mod:`logging` module so that it is consistent across all logging functions
|
2022-04-05 16:52:24 -03:00
|
|
|
and, as advertised, similar to the ``stacklevel`` argument used in
|
|
|
|
:meth:`~warnings.warn`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 24959
|
|
|
|
.. date: 2021-09-06-15-46-53
|
|
|
|
.. nonce: UVFgiO
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Fix bug where :mod:`unittest` sometimes drops frames from tracebacks of
|
|
|
|
exceptions raised in tests.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 44859
|
|
|
|
.. date: 2021-08-10-00-05-53
|
|
|
|
.. nonce: 9e9_3V
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Raise more accurate and :pep:`249` compatible exceptions in :mod:`sqlite3`.
|
|
|
|
|
|
|
|
* Raise :exc:`~sqlite3.InterfaceError` instead of
|
|
|
|
:exc:`~sqlite3.ProgrammingError` for ``SQLITE_MISUSE`` errors.
|
|
|
|
* Don't overwrite :exc:`BufferError` with :exc:`ValueError` when conversion to
|
|
|
|
BLOB fails.
|
|
|
|
* Raise :exc:`~sqlite3.ProgrammingError` instead of :exc:`~sqlite3.Warning` if
|
|
|
|
user tries to :meth:`~sqlite3.Cursor.execute()` more than one SQL statement.
|
|
|
|
* Raise :exc:`~sqlite3.ProgrammingError` instead of :exc:`ValueError` if an SQL
|
|
|
|
query contains null characters.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 44493
|
|
|
|
.. date: 2021-07-26-10-46-49
|
|
|
|
.. nonce: xp3CRH
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add missing terminated NUL in sockaddr_un's length
|
|
|
|
|
|
|
|
This was potentially observable when using non-abstract AF_UNIX datagram
|
|
|
|
sockets to processes written in another programming language.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 41930
|
|
|
|
.. date: 2021-06-17-00-02-58
|
|
|
|
.. nonce: JS6fsd
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add :meth:`~sqlite3.Connection.serialize` and
|
|
|
|
:meth:`~sqlite3.Connection.deserialize` support to :mod:`sqlite3`. Patch by
|
|
|
|
Erlend E. Aasland.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 33178
|
|
|
|
.. date: 2021-04-20-16-48-07
|
|
|
|
.. nonce: kSnWwb
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Added :class:`ctypes.BigEndianUnion` and :class:`ctypes.LittleEndianUnion`
|
|
|
|
classes, as originally documented in the library docs but not yet
|
|
|
|
implemented.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 43352
|
|
|
|
.. date: 2021-03-31-15-22-45
|
|
|
|
.. nonce: nSjMuE
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
Add an Barrier object in synchronization primitives of *asyncio* Lib in
|
2024-05-17 07:37:35 -03:00
|
|
|
order to be consistent with Barrier from *threading* and *multiprocessing*
|
2022-04-05 16:52:24 -03:00
|
|
|
libs*
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 35859
|
|
|
|
.. date: 2019-03-14-09-08-25
|
|
|
|
.. nonce: 8lFdLe
|
|
|
|
.. section: Library
|
|
|
|
|
|
|
|
:mod:`re` module, fix a few bugs about capturing group. In rare cases,
|
|
|
|
capturing group gets an incorrect string. Patch by Ma Lin.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45099
|
|
|
|
.. date: 2022-03-29-13-25-49
|
|
|
|
.. nonce: dagdhx
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Document internal :mod:`asyncio` API.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47126
|
|
|
|
.. date: 2022-03-26-12-20-16
|
|
|
|
.. nonce: p6_Ovm
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Update PEP URLs to :pep:`676`'s new canonical form.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47040
|
|
|
|
.. date: 2022-03-17-13-35-28
|
|
|
|
.. nonce: 4Dn48U
|
|
|
|
.. section: Documentation
|
|
|
|
|
2024-05-17 07:37:35 -03:00
|
|
|
Clarified the old Python versions compatibility note of
|
2022-04-05 16:52:24 -03:00
|
|
|
:func:`binascii.crc32` / :func:`zlib.adler32` / :func:`zlib.crc32`
|
|
|
|
functions.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46033
|
|
|
|
.. date: 2022-01-03-18-50-39
|
|
|
|
.. nonce: 7WeF0f
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Clarify ``for`` statement execution in its doc.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45790
|
|
|
|
.. date: 2021-11-12-11-03-55
|
|
|
|
.. nonce: 6yuhe8
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Adjust inaccurate phrasing in :doc:`../extending/newtypes_tutorial` about
|
|
|
|
the ``ob_base`` field and the macros used to access its contents.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 42340
|
|
|
|
.. date: 2020-11-12-21-26-31
|
|
|
|
.. nonce: apumUL
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Document that in some circumstances :exc:`KeyboardInterrupt` may cause the
|
|
|
|
code to enter an inconsistent state. Provided a sample workaround to avoid
|
|
|
|
it if needed.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 41233
|
|
|
|
.. date: 2020-07-07-22-54-51
|
|
|
|
.. nonce: lyUJ8L
|
|
|
|
.. section: Documentation
|
|
|
|
|
|
|
|
Link the errnos referenced in ``Doc/library/exceptions.rst`` to their
|
|
|
|
respective section in ``Doc/library/errno.rst``, and vice versa. Previously
|
|
|
|
this was only done for EINTR and InterruptedError. Patch by Yan "yyyyyyyan"
|
|
|
|
Orestes.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47205
|
|
|
|
.. date: 2022-04-03-14-38-21
|
|
|
|
.. nonce: hbbTnh
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
Skip test for :func:`~os.sched_getaffinity` and
|
|
|
|
:func:`~os.sched_setaffinity` error case on FreeBSD.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46126
|
|
|
|
.. date: 2022-03-26-11-41-19
|
|
|
|
.. nonce: q14Ioy
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
Restore 'descriptions' when running tests internally.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47104
|
|
|
|
.. date: 2022-03-23-22-45-51
|
|
|
|
.. nonce: _esUq8
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
Rewrite :func:`asyncio.to_thread` tests to use
|
|
|
|
:class:`unittest.IsolatedAsyncioTestCase`.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40280
|
|
|
|
.. date: 2022-03-19-10-25-04
|
|
|
|
.. nonce: wBRSel
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
The test suite is now passing on the Emscripten platform. All fork, socket,
|
|
|
|
and subprocess-based tests are skipped.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47037
|
|
|
|
.. date: 2022-03-16-21-29-30
|
|
|
|
.. nonce: xcrLpJ
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
Skip ``strftime("%4Y")`` feature test on Windows. It can cause an assertion
|
|
|
|
error in debug builds.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46587
|
|
|
|
.. date: 2022-03-14-17-10-35
|
|
|
|
.. nonce: ASDsJX
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
Skip tests if platform's ``strftime`` does not support non-portable glibc
|
|
|
|
extensions.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47015
|
|
|
|
.. date: 2022-03-13-23-43-40
|
|
|
|
.. nonce: FjmCsz
|
|
|
|
.. section: Tests
|
|
|
|
|
|
|
|
A test case for :func:`os.sendfile` is converted from deprecated
|
2024-01-03 09:04:26 -04:00
|
|
|
:mod:`!asyncore` (see :pep:`594`) to :mod:`asyncio`. Patch by Oleg Iarygin.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40280
|
|
|
|
.. date: 2022-04-02-17-52-38
|
|
|
|
.. nonce: U8Dd0H
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Add configure option :option:`--enable-wasm-dynamic-linking` to enable
|
|
|
|
``dlopen`` and MAIN_MODULE / SIDE_MODULE on ``wasm32-emscripten``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46023
|
|
|
|
.. date: 2022-04-01-16-12-53
|
|
|
|
.. nonce: 1Z1OcC
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
``makesetup`` now detects and skips all duplicated module definitions. The
|
|
|
|
first entry wins.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40280
|
|
|
|
.. date: 2022-03-24-12-12-35
|
|
|
|
.. nonce: eAQWrM
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Add SOABI ``wasm32-emscripten`` for Emscripten and ``wasm32-wasi`` for WASI
|
|
|
|
on 32bit WASM as well as ``wasm64`` counter parts.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47032
|
|
|
|
.. date: 2022-03-16-00-37-40
|
|
|
|
.. nonce: tsS9KE
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Ensure Windows install builds fail correctly with a non-zero exit code when
|
|
|
|
part of the build fails.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47024
|
|
|
|
.. date: 2022-03-15-09-28-55
|
|
|
|
.. nonce: t7-dcu
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Update OpenSSL to 1.1.1n for macOS installers and all Windows builds.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46996
|
|
|
|
.. date: 2022-03-12-18-09-31
|
|
|
|
.. nonce: SygzVz
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
The :mod:`tkinter` package now requires Tcl/Tk version 8.5.12 or newer.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46973
|
|
|
|
.. date: 2022-03-10-14-30-39
|
|
|
|
.. nonce: _LEvnc
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Add ``regen-configure`` make target to regenerate configure script with
|
|
|
|
Christian's container image ``quay.io/tiran/cpython_autoconf:269``.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46917
|
|
|
|
.. date: 2022-03-10-09-37-05
|
|
|
|
.. nonce: fry4aK
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
Building Python now requires support of IEEE 754 floating point numbers.
|
|
|
|
Patch by Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 45774
|
|
|
|
.. date: 2022-03-04-21-24-02
|
|
|
|
.. nonce: 9AhC0r
|
|
|
|
.. section: Build
|
|
|
|
|
|
|
|
``configure`` now verifies that all SQLite C APIs needed for the
|
|
|
|
:mod:`sqlite3` extension module are found.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47194
|
|
|
|
.. date: 2022-04-01-14-57-40
|
|
|
|
.. nonce: IB0XL4
|
|
|
|
.. section: Windows
|
|
|
|
|
2024-04-15 15:22:00 -03:00
|
|
|
Update ``zlib`` to v1.2.12 to resolve :cve:`2018-25032`.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47171
|
|
|
|
.. date: 2022-03-30-19-55-00
|
|
|
|
.. nonce: MbqCWn
|
|
|
|
.. section: Windows
|
|
|
|
|
|
|
|
Enables installing the :file:`py.exe` launcher on Windows ARM64.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46566
|
|
|
|
.. date: 2022-03-23-12-51-46
|
|
|
|
.. nonce: 4x4a7e
|
|
|
|
.. section: Windows
|
|
|
|
|
|
|
|
Upgraded :ref:`launcher` to support a new ``-V:company/tag`` argument for
|
|
|
|
full :pep:`514` support and to detect ARM64 installs. The ``-64`` suffix on
|
|
|
|
arguments is deprecated, but still selects any non-32-bit install. Setting
|
|
|
|
:envvar:`PYLAUNCHER_ALLOW_INSTALL` and specifying a version that is not
|
|
|
|
installed will attempt to install the requested version from the Microsoft
|
|
|
|
Store.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 47086
|
|
|
|
.. date: 2022-03-21-20-45-01
|
|
|
|
.. nonce: bIuKlF
|
|
|
|
.. section: Windows
|
|
|
|
|
|
|
|
The installer for Windows now includes documentation as loose HTML files
|
|
|
|
rather than a single compiled :file:`.chm` file.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46907
|
|
|
|
.. date: 2022-03-13-11-18-41
|
|
|
|
.. nonce: YLzxBM
|
|
|
|
.. section: Windows
|
|
|
|
|
|
|
|
Update Windows installer to use SQLite 3.38.1.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 44549
|
|
|
|
.. date: 2022-03-07-17-46-40
|
|
|
|
.. nonce: SPrGS9
|
|
|
|
.. section: Windows
|
|
|
|
|
2024-04-15 15:22:00 -03:00
|
|
|
Update bzip2 to 1.0.8 in Windows builds to mitigate :cve:`2016-3189` and
|
|
|
|
:cve:`2019-12900`.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46948
|
|
|
|
.. date: 2022-03-07-16-34-11
|
|
|
|
.. nonce: Ufd4tG
|
|
|
|
.. section: Windows
|
|
|
|
|
2024-04-15 15:22:00 -03:00
|
|
|
Prevent :cve:`2022-26488` by ensuring the Add to PATH option in the Windows
|
2022-04-05 16:52:24 -03:00
|
|
|
installer uses the correct path when being repaired.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46890
|
|
|
|
.. date: 2022-03-17-09-55-02
|
|
|
|
.. nonce: GX-3OO
|
|
|
|
.. section: macOS
|
|
|
|
|
|
|
|
Fix a regression in the setting of ``sys._base_executable`` in framework
|
|
|
|
builds, and thereby fix a regression in :mod:`venv` virtual environments
|
|
|
|
with such builds.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46907
|
|
|
|
.. date: 2022-03-13-11-11-31
|
|
|
|
.. nonce: Ql0z1E
|
|
|
|
.. section: macOS
|
|
|
|
|
|
|
|
Update macOS installer to SQLite 3.38.1.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40280
|
|
|
|
.. date: 2022-04-03-11-47-45
|
|
|
|
.. nonce: Q_IJik
|
|
|
|
.. section: Tools/Demos
|
|
|
|
|
|
|
|
Replace Emscripten's limited shell with Katie Bell's browser-ui REPL from
|
|
|
|
python-wasm project.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 40421
|
|
|
|
.. date: 2022-03-25-13-40-46
|
|
|
|
.. nonce: wJREl2
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Add ``PyFrame_GetBuiltins``, ``PyFrame_GetGenerator`` and
|
|
|
|
``PyFrame_GetGlobals`` C-API functions to access frame object attributes
|
|
|
|
safely from C code.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46850
|
|
|
|
.. date: 2022-03-22-16-59-34
|
|
|
|
.. nonce: lmEKLy
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Move the private ``_PyFrameEvalFunction`` type, and private
|
|
|
|
``_PyInterpreterState_GetEvalFrameFunc()`` and
|
|
|
|
``_PyInterpreterState_SetEvalFrameFunc()`` functions to the internal C API.
|
|
|
|
The ``_PyFrameEvalFunction`` callback function type now uses the
|
|
|
|
``_PyInterpreterFrame`` type which is part of the internal C API. Patch by
|
|
|
|
Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46850
|
|
|
|
.. date: 2022-03-22-16-48-02
|
|
|
|
.. nonce: 7M5dO7
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Move the private undocumented ``_PyEval_EvalFrameDefault()`` function to the
|
|
|
|
internal C API. The function now uses the ``_PyInterpreterFrame`` type which
|
|
|
|
is part of the internal C API. Patch by Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46850
|
|
|
|
.. date: 2022-03-21-02-26-27
|
|
|
|
.. nonce: hU3c-O
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Remove the private undocumented function ``_PyEval_CallTracing()`` from the
|
|
|
|
C API. Call the public :func:`sys.call_tracing` function instead. Patch by
|
|
|
|
Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46850
|
|
|
|
.. date: 2022-03-21-01-30-14
|
|
|
|
.. nonce: Tfxde5
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Remove the private undocumented function
|
|
|
|
``_PyEval_GetCoroutineOriginTrackingDepth()`` from the C API. Call the
|
|
|
|
public :func:`sys.get_coroutine_origin_tracking_depth` function instead.
|
|
|
|
Patch by Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46850
|
|
|
|
.. date: 2022-03-21-00-41-29
|
|
|
|
.. nonce: rOt771
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Remove the following private undocumented functions from the C API:
|
|
|
|
|
|
|
|
* ``_PyEval_GetAsyncGenFirstiter()``
|
|
|
|
* ``_PyEval_GetAsyncGenFinalizer()``
|
|
|
|
* ``_PyEval_SetAsyncGenFirstiter()``
|
|
|
|
* ``_PyEval_SetAsyncGenFinalizer()``
|
|
|
|
|
|
|
|
Call the public :func:`sys.get_asyncgen_hooks` and
|
|
|
|
:func:`sys.set_asyncgen_hooks` functions instead. Patch by Victor Stinner.
|
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46987
|
|
|
|
.. date: 2022-03-12-18-37-06
|
|
|
|
.. nonce: LWcwyN
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Remove private functions ``_PySys_GetObjectId()`` and
|
2023-09-22 15:52:57 -03:00
|
|
|
``_PySys_SetObjectId()``. Patch by Donghee Na.
|
2022-04-05 16:52:24 -03:00
|
|
|
|
|
|
|
..
|
|
|
|
|
|
|
|
.. bpo: 46906
|
|
|
|
.. date: 2022-03-03-11-12-33
|
|
|
|
.. nonce: -olyBI
|
|
|
|
.. section: C API
|
|
|
|
|
|
|
|
Add new functions to pack and unpack C double (serialize and deserialize):
|
|
|
|
:c:func:`PyFloat_Pack2`, :c:func:`PyFloat_Pack4`, :c:func:`PyFloat_Pack8`,
|
|
|
|
:c:func:`PyFloat_Unpack2`, :c:func:`PyFloat_Unpack4` and
|
|
|
|
:c:func:`PyFloat_Unpack8`. Patch by Victor Stinner.
|