mirror of https://github.com/python/cpython
2415 lines
54 KiB
ReStructuredText
2415 lines
54 KiB
ReStructuredText
|
.. date: 2024-01-02-19-52-23
|
||
|
.. gh-issue: 113659
|
||
|
.. nonce: DkmnQc
|
||
|
.. release date: 2024-01-17
|
||
|
.. section: Security
|
||
|
|
||
|
Skip ``.pth`` files with names starting with a dot or hidden file attribute.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-06-14-06-59
|
||
|
.. gh-issue: 112302
|
||
|
.. nonce: 3bl20f
|
||
|
.. section: Security
|
||
|
|
||
|
Created a Software Bill-of-Materials document and tooling for tracking
|
||
|
dependencies.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-16-54-55
|
||
|
.. gh-issue: 107901
|
||
|
.. nonce: Td3JPI
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Compiler duplicates basic blocks that have an eval breaker check, no line
|
||
|
number, and multiple predecessors.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-14-03-31
|
||
|
.. gh-issue: 107901
|
||
|
.. nonce: U65IyC
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
A jump leaving an exception handler back to normal code no longer checks the
|
||
|
eval breaker.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-01-28-25
|
||
|
.. gh-issue: 113655
|
||
|
.. nonce: Mfioxp
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Set the C recursion limit to 4000 on Windows, and 10000 on Linux/OSX. This
|
||
|
seems to be near the sweet spot to maintain safety, but not compromise
|
||
|
backwards compatibility.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-09-23-01-00
|
||
|
.. gh-issue: 113710
|
||
|
.. nonce: pe3flY
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Add typed stack effects to the interpreter DSL, along with various
|
||
|
instruction annotations.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-08-14-34-02
|
||
|
.. gh-issue: 77046
|
||
|
.. nonce: sDUh2d
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
On Windows, file descriptors wrapping Windows handles are now created non
|
||
|
inheritable by default (:pep:`446`). Patch by Zackery Spytz and Victor
|
||
|
Stinner.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-08-05-36-59
|
||
|
.. gh-issue: 113853
|
||
|
.. nonce: lm-6_a
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Guarantee that all executors make progress. This then guarantees that tier 2
|
||
|
execution always makes progress.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-05-21-28-48
|
||
|
.. gh-issue: 113753
|
||
|
.. nonce: 2HNiuq
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix an issue where the finalizer of ``PyAsyncGenASend`` objects might not be
|
||
|
called if they were allocated from a free list.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-05-00-49-14
|
||
|
.. gh-issue: 107901
|
||
|
.. nonce: 6JRrb6
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Compiler changed so that synthetic jumps which are not at loop end no longer
|
||
|
check the eval breaker.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-04-17-15-30
|
||
|
.. gh-issue: 113703
|
||
|
.. nonce: Zsk0pY
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix a regression in the :mod:`codeop` module that was causing it to
|
||
|
incorrectly identify incomplete f-strings. Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-03-12-19-37
|
||
|
.. gh-issue: 89811
|
||
|
.. nonce: cZOj6d
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Check for a valid ``tp_version_tag`` before performing bytecode
|
||
|
specializations that rely on this value being usable.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-02-17-22-57
|
||
|
.. gh-issue: 111488
|
||
|
.. nonce: EJH3Oh
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Changed error message in case of no 'in' keyword after 'for' in list
|
||
|
comprehensions
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-02-11-14-29
|
||
|
.. gh-issue: 113657
|
||
|
.. nonce: CQo9vF
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix an issue that caused important instruction pointer updates to be
|
||
|
optimized out of tier two traces.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-01-23-57-24
|
||
|
.. gh-issue: 113603
|
||
|
.. nonce: ySwovr
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fixed bug where a redundant NOP is not removed, causing an assertion to fail
|
||
|
in the compiler in debug mode.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-01-00-07-02
|
||
|
.. gh-issue: 113602
|
||
|
.. nonce: cWuTzk
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix an error that was causing the parser to try to overwrite existing errors
|
||
|
and crashing in the process. Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-31-07-46-01
|
||
|
.. gh-issue: 113486
|
||
|
.. nonce: uki19C
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
No longer issue spurious ``PY_UNWIND`` events for optimized calls to
|
||
|
classes.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-20-18-27-11
|
||
|
.. gh-issue: 113297
|
||
|
.. nonce: BZyAI_
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix segfault in the compiler on with statement with 19 context managers.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-20-08-54-54
|
||
|
.. gh-issue: 113212
|
||
|
.. nonce: 62AUlw
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Improve :py:class:`super` error messages.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-19-22-03-43
|
||
|
.. gh-issue: 111375
|
||
|
.. nonce: M9vuA6
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Only use ``NULL`` in the exception stack to indicate an exception was
|
||
|
handled. Patch by Carey Metcalfe.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-16-26-01
|
||
|
.. gh-issue: 112215
|
||
|
.. nonce: xJS6_6
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Increase the C recursion limit by a factor of 3 for non-debug builds, except
|
||
|
for webassembly and s390 platforms which are unchanged. This mitigates some
|
||
|
regressions in 3.12 with deep recursion mixing builtin (C) and Python code.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-14-20-08-35
|
||
|
.. gh-issue: 113054
|
||
|
.. nonce: e20CtM
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fixed bug where a redundant NOP is not removed, causing an assertion to fail
|
||
|
in the compiler in debug mode.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-13-11-45-53
|
||
|
.. gh-issue: 106905
|
||
|
.. nonce: 5dslTN
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Use per AST-parser state rather than global state to track recursion depth
|
||
|
within the AST parser to prevent potential race condition due to
|
||
|
simultaneous parsing.
|
||
|
|
||
|
The issue primarily showed up in 3.11 by multithreaded users of
|
||
|
:func:`ast.parse`. In 3.12 a change to when garbage collection can be
|
||
|
triggered prevented the race condition from occurring.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-12-04-53-19
|
||
|
.. gh-issue: 108866
|
||
|
.. nonce: xbJ-9a
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Change the API and contract of ``_PyExecutorObject`` to return the
|
||
|
next_instr pointer, instead of the frame, and to always execute at least one
|
||
|
instruction.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-11-19-53-32
|
||
|
.. gh-issue: 90350
|
||
|
.. nonce: -FQy3E
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Optimize builtin functions :func:`min` and :func:`max`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-11-00-50-00
|
||
|
.. gh-issue: 112943
|
||
|
.. nonce: RHNZie
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Correctly compute end column offsets for multiline tokens in the
|
||
|
:mod:`tokenize` module. Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-07-13-19-55
|
||
|
.. gh-issue: 112125
|
||
|
.. nonce: 4ADN7i
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix None.__ne__(None) returning NotImplemented instead of False
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-07-12-00-04
|
||
|
.. gh-issue: 74616
|
||
|
.. nonce: kgTGVb
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
:func:`input` now raises a ValueError when output on the terminal if the
|
||
|
prompt contains embedded null characters instead of silently truncating it.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-20-41-58
|
||
|
.. gh-issue: 112716
|
||
|
.. nonce: hOcx0Y
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix SystemError in the ``import`` statement and in ``__reduce__()`` methods
|
||
|
of builtin types when ``__builtins__`` is not a dict.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-04-23-09-07
|
||
|
.. gh-issue: 112730
|
||
|
.. nonce: BXHlFa
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Use color to highlight error locations in tracebacks. Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-19-34-51
|
||
|
.. gh-issue: 112625
|
||
|
.. nonce: QWTlwS
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fixes a bug where a bytearray object could be cleared while iterating over
|
||
|
an argument in the ``bytearray.join()`` method that could result in reading
|
||
|
memory after it was freed.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-15-29-53
|
||
|
.. gh-issue: 112660
|
||
|
.. nonce: gldBvh
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Do not clear unexpected errors during formatting error messages for
|
||
|
ImportError and AttributeError for modules.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-19-02-21
|
||
|
.. gh-issue: 105967
|
||
|
.. nonce: Puq5Cn
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Workaround a bug in Apple's macOS platform zlib library where
|
||
|
:func:`zlib.crc32` and :func:`binascii.crc32` could produce incorrect
|
||
|
results on multi-gigabyte inputs. Including when using :mod:`zipfile` on
|
||
|
zips containing large data.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-08-16-10
|
||
|
.. gh-issue: 95754
|
||
|
.. nonce: ae4gwy
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Provide a better error message when accessing invalid attributes on
|
||
|
partially initialized modules. The origin of the module being accessed is
|
||
|
now included in the message to help with the common issue of shadowing other
|
||
|
modules.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-27-18-55-30
|
||
|
.. gh-issue: 112217
|
||
|
.. nonce: SwFLMj
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Add check for the type of ``__cause__`` returned from calling the type ``T``
|
||
|
in ``raise from T``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-26-21-30-11
|
||
|
.. gh-issue: 111058
|
||
|
.. nonce: q4DqDY
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Change coro.cr_frame/gen.gi_frame to return ``None`` after the
|
||
|
coroutine/generator has been closed. This fixes a bug where
|
||
|
:func:`~inspect.getcoroutinestate` and :func:`~inspect.getgeneratorstate`
|
||
|
return the wrong state for a closed coroutine/generator.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-25-22-58-49
|
||
|
.. gh-issue: 112388
|
||
|
.. nonce: MU3cIM
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix an error that was causing the parser to try to overwrite tokenizer
|
||
|
errors. Patch by pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-25-22-39-44
|
||
|
.. gh-issue: 112387
|
||
|
.. nonce: AbBq5W
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix error positions for decoded strings with backwards tokenize errors.
|
||
|
Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-25-20-36-38
|
||
|
.. gh-issue: 99606
|
||
|
.. nonce: fDY5hK
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Make code generated for an empty f-string identical to the code of an empty
|
||
|
normal string.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-24-14-10-57
|
||
|
.. gh-issue: 112367
|
||
|
.. nonce: 9z1IDp
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Avoid undefined behaviour when using the perf trampolines by not freeing the
|
||
|
code arenas until shutdown. Patch by Pablo Galindo
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-22-13-17-54
|
||
|
.. gh-issue: 112320
|
||
|
.. nonce: EddM51
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
The Tier 2 translator now tracks the confidence level for staying "on trace"
|
||
|
(i.e. not exiting back to the Tier 1 interpreter) for branch instructions
|
||
|
based on the number of bits set in the branch "counter". Trace translation
|
||
|
ends when the confidence drops below 1/3rd.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-09-21-11-54-28
|
||
|
.. gh-issue: 109598
|
||
|
.. nonce: CRidSy
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
:c:func:`PyComplex_RealAsDouble`/:c:func:`PyComplex_ImagAsDouble` now tries
|
||
|
to convert an object to a :class:`complex` instance using its
|
||
|
``__complex__()`` method before falling back to the ``__float__()`` method.
|
||
|
Patch by Sergey B Kirpichev.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2022-07-07-05-37-53
|
||
|
.. gh-issue: 94606
|
||
|
.. nonce: hojJ54
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Fix UnicodeEncodeError when :func:`email.message.get_payload` reads a
|
||
|
message with a Unicode surrogate character and the message content is not
|
||
|
well-formed for surrogateescape encoding. Patch by Sidney Markowitz.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 21861
|
||
|
.. date: 2022-01-23-18-00-10
|
||
|
.. nonce: N8E1zw
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Use the object's actual class name in :meth:`_io.FileIO.__repr__`,
|
||
|
:meth:`_io._WindowsConsoleIO` and :meth:`_io.TextIOWrapper.__repr__`, to
|
||
|
make these methods subclass friendly.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 45369
|
||
|
.. date: 2021-10-05-05-00-16
|
||
|
.. nonce: tluk_X
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Remove LibreSSL workarounds as per :pep:`644`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 34392
|
||
|
.. date: 2018-08-13-13-25-15
|
||
|
.. nonce: 9kIlMF
|
||
|
.. section: Core and Builtins
|
||
|
|
||
|
Added :func:`sys._is_interned`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-15-12-12-54
|
||
|
.. gh-issue: 114077
|
||
|
.. nonce: KcVnfj
|
||
|
.. section: Library
|
||
|
|
||
|
Fix possible :exc:`OverflowError` in :meth:`socket.socket.sendfile` when
|
||
|
pass *count* larger than 2 GiB on 32-bit platform.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-13-14-20-31
|
||
|
.. gh-issue: 111803
|
||
|
.. nonce: llpLAw
|
||
|
.. section: Library
|
||
|
|
||
|
:mod:`plistlib` now supports loading more deeply nested lists in binary
|
||
|
format.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-13-11-34-29
|
||
|
.. gh-issue: 114014
|
||
|
.. nonce: WRHifN
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed a bug in :class:`fractions.Fraction` where an invalid string using
|
||
|
``d`` in the decimals part creates a different error compared to other
|
||
|
invalid letters/characters. Patch by Jeremiah Gabriel Pascual.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-22-22-51
|
||
|
.. gh-issue: 108364
|
||
|
.. nonce: QH7C-1
|
||
|
.. section: Library
|
||
|
|
||
|
:meth:`sqlite3.Connection.iterdump` now ensures that foreign key support is
|
||
|
disabled before dumping the database schema, if there is any foreign key
|
||
|
violation. Patch by Erlend E. Aasland and Mariusz Felisiak.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-16-58-10
|
||
|
.. gh-issue: 113971
|
||
|
.. nonce: skJZ4g
|
||
|
.. section: Library
|
||
|
|
||
|
The :class:`zipfile.ZipInfo` previously protected ``._compresslevel``
|
||
|
attribute has been made public as ``.compress_level`` with the old
|
||
|
``_compresslevel`` name remaining available as a property to retain
|
||
|
compatibility.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-10-12-03-38
|
||
|
.. gh-issue: 113877
|
||
|
.. nonce: RxKlrQ
|
||
|
.. section: Library
|
||
|
|
||
|
Fix :mod:`tkinter` method ``winfo_pathname()`` on 64-bit Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-09-18-07-08
|
||
|
.. gh-issue: 113868
|
||
|
.. nonce: DlZG2r
|
||
|
.. section: Library
|
||
|
|
||
|
Added :data:`mmap.MAP_NORESERVE`, :data:`mmap.MAP_NOEXTEND`,
|
||
|
:data:`mmap.MAP_HASSEMAPHORE`, :data:`mmap.MAP_NOCACHE`,
|
||
|
:data:`mmap.MAP_JIT`, :data:`mmap.MAP_RESILIENT_CODESIGN`,
|
||
|
:data:`mmap.MAP_RESILIENT_MEDIA`, :data:`mmap.MAP_32BIT`,
|
||
|
:data:`mmap.MAP_TRANSLATED_ALLOW_EXECUTE`, :data:`mmap.MAP_UNIX03` and
|
||
|
:data:`mmap.MAP_TPRO`. All of them are ``mmap(2)`` flags on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-09-12-19-55
|
||
|
.. gh-issue: 113848
|
||
|
.. nonce: kXoCy0
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`asyncio.TaskGroup()` and :func:`asyncio.timeout()` context managers
|
||
|
now handle :exc:`~asyncio.CancelledError` subclasses as well as exact
|
||
|
:exc:`!CancelledError`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-09-08-59-43
|
||
|
.. gh-issue: 113661
|
||
|
.. nonce: asvXSx
|
||
|
.. section: Library
|
||
|
|
||
|
unittest runner: Don't exit 5 if tests were skipped. The intention of
|
||
|
exiting 5 was to detect issues where the test suite wasn't discovered at
|
||
|
all. If we skipped tests, it was correctly discovered.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-08-19-38-42
|
||
|
.. gh-issue: 96037
|
||
|
.. nonce: Yr2Y1C
|
||
|
.. section: Library
|
||
|
|
||
|
Insert :exc:`TimeoutError` in the context of the exception that was raised
|
||
|
during exiting an expired :func:`asyncio.timeout` block.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-08-14-57-09
|
||
|
.. gh-issue: 113781
|
||
|
.. nonce: IoTnwi
|
||
|
.. section: Library
|
||
|
|
||
|
Silence unraisable AttributeError when warnings are emitted during Python
|
||
|
finalization.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-07-23-31-44
|
||
|
.. gh-issue: 113238
|
||
|
.. nonce: wFWBfW
|
||
|
.. section: Library
|
||
|
|
||
|
Add ``Anchor`` to ``importlib.resources`` (in order for the code to comply
|
||
|
with the documentation)
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-07-13-36-03
|
||
|
.. gh-issue: 111693
|
||
|
.. nonce: xN2LuL
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`asyncio.Condition.wait()` now re-raises the same
|
||
|
:exc:`CancelledError` instance that may have caused it to be interrupted.
|
||
|
Fixed race condition in :func:`asyncio.Semaphore.aquire` when interrupted
|
||
|
with a :exc:`CancelledError`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-07-11-45-56
|
||
|
.. gh-issue: 113791
|
||
|
.. nonce: XF5xSW
|
||
|
.. section: Library
|
||
|
|
||
|
Add ``CLOCK_MONOTONIC_RAW_APPROX`` and ``CLOCK_UPTIME_RAW_APPROX`` to
|
||
|
:mod:`time` on macOS. These are clocks available on macOS 10.12 or later.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-07-00-56-41
|
||
|
.. gh-issue: 112932
|
||
|
.. nonce: OfhUu7
|
||
|
.. section: Library
|
||
|
|
||
|
Restore the ability for :mod:`zipfile` to ``extractall`` from zip files with
|
||
|
a "/" directory entry in them as is commonly added to zips by some wiki or
|
||
|
bug tracker data exporters.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-05-21-52-59
|
||
|
.. gh-issue: 113568
|
||
|
.. nonce: _0FkpZ
|
||
|
.. section: Library
|
||
|
|
||
|
Raise deprecation warnings from :class:`pathlib.PurePath` and not its
|
||
|
private base class ``PurePathBase``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-05-12-42-07
|
||
|
.. gh-issue: 113594
|
||
|
.. nonce: 4t8HiR
|
||
|
.. section: Library
|
||
|
|
||
|
Fix :exc:`UnicodeEncodeError` in :mod:`email` when re-fold lines that
|
||
|
contain unknown-8bit encoded part followed by non-unknown-8bit encoded part.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-03-14-19-26
|
||
|
.. gh-issue: 113538
|
||
|
.. nonce: ahuBCo
|
||
|
.. section: Library
|
||
|
|
||
|
In :meth:`asyncio.StreamReaderProtocol.connection_made`, there is callback
|
||
|
that logs an error if the task wrapping the "connected callback" fails. This
|
||
|
callback would itself fail if the task was cancelled. Prevent this by
|
||
|
checking whether the task was cancelled first. If so, close the transport
|
||
|
but don't log an error.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-02-12-41-59
|
||
|
.. gh-issue: 113626
|
||
|
.. nonce: i1PPY_
|
||
|
.. section: Library
|
||
|
|
||
|
Add support for the *allow_code* argument in the :mod:`marshal` module.
|
||
|
Passing ``allow_code=False`` prevents serialization and de-serialization of
|
||
|
code objects which is incompatible between Python versions.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-01-13-26-02
|
||
|
.. gh-issue: 85567
|
||
|
.. nonce: K4U15m
|
||
|
.. section: Library
|
||
|
|
||
|
Fix resource warnings for unclosed files in :mod:`pickle` and
|
||
|
:mod:`pickletools` command line interfaces.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-30-20-30-05
|
||
|
.. gh-issue: 113537
|
||
|
.. nonce: v1W5_X
|
||
|
.. section: Library
|
||
|
|
||
|
Support loads ``str`` in :func:`plistlib.loads`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-29-22-29-34
|
||
|
.. gh-issue: 89850
|
||
|
.. nonce: KnxiZA
|
||
|
.. section: Library
|
||
|
|
||
|
Add default implementations of :meth:`pickle.Pickler.persistent_id` and
|
||
|
:meth:`pickle.Unpickler.persistent_load` methods in the C implementation.
|
||
|
Calling ``super().persistent_id()`` and ``super().persistent_load()`` in
|
||
|
subclasses of the C implementation of :class:`pickle.Pickler` and
|
||
|
:class:`pickle.Unpickler` classes no longer causes infinite recursion.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-29-17-57-45
|
||
|
.. gh-issue: 113569
|
||
|
.. nonce: qcRCEI
|
||
|
.. section: Library
|
||
|
|
||
|
Indicate if there were no actual calls in unittest
|
||
|
:meth:`~unittest.mock.Mock.assert_has_calls` failure.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-29-17-46-06
|
||
|
.. gh-issue: 101225
|
||
|
.. nonce: QaEyxF
|
||
|
.. section: Library
|
||
|
|
||
|
Increase the backlog for :class:`multiprocessing.connection.Listener`
|
||
|
objects created by :mod:`multiprocessing.manager` and
|
||
|
:mod:`multiprocessing.resource_sharer` to significantly reduce the risk of
|
||
|
getting a connection refused error when creating a
|
||
|
:class:`multiprocessing.connection.Connection` to them.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-29-17-30-49
|
||
|
.. gh-issue: 113568
|
||
|
.. nonce: UpWNAI
|
||
|
.. section: Library
|
||
|
|
||
|
Raise audit events from :class:`pathlib.Path` and not its private base class
|
||
|
``PathBase``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-28-14-36-20
|
||
|
.. gh-issue: 113543
|
||
|
.. nonce: 2iWkOR
|
||
|
.. section: Library
|
||
|
|
||
|
Make sure that ``webbrowser.MacOSXOSAScript`` sends ``webbrowser.open``
|
||
|
audit event.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-23-16-51-17
|
||
|
.. gh-issue: 113028
|
||
|
.. nonce: 3Jmdoj
|
||
|
.. section: Library
|
||
|
|
||
|
When a second reference to a string appears in the input to :mod:`pickle`,
|
||
|
and the Python implementation is in use, we are guaranteed that a single
|
||
|
copy gets pickled and a single object is shared when reloaded. Previously,
|
||
|
in protocol 0, when a string contained certain characters (e.g. newline) it
|
||
|
resulted in duplicate objects.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-23-16-10-07
|
||
|
.. gh-issue: 113421
|
||
|
.. nonce: w7vs08
|
||
|
.. section: Library
|
||
|
|
||
|
Fix multiprocessing logger for ``%(filename)s``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-23-13-10-42
|
||
|
.. gh-issue: 111784
|
||
|
.. nonce: Nb4L1j
|
||
|
.. section: Library
|
||
|
|
||
|
Fix segfaults in the ``_elementtree`` module. Fix first segfault during
|
||
|
deallocation of ``_elementtree.XMLParser`` instances by keeping strong
|
||
|
reference to ``pyexpat`` module in module state for capsule lifetime. Fix
|
||
|
second segfault which happens in the same deallocation process by keeping
|
||
|
strong reference to ``_elementtree`` module in ``XMLParser`` structure for
|
||
|
``_elementtree`` module lifetime.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-22-20-49-52
|
||
|
.. gh-issue: 113407
|
||
|
.. nonce: C_O13_
|
||
|
.. section: Library
|
||
|
|
||
|
Fix import of :mod:`unittest.mock` when CPython is built without docstrings.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-22-11-30-57
|
||
|
.. gh-issue: 113320
|
||
|
.. nonce: Vp5suS
|
||
|
.. section: Library
|
||
|
|
||
|
Fix regression in Python 3.12 where :class:`~typing.Protocol` classes that
|
||
|
were not marked as :func:`runtime-checkable <typing.runtime_checkable>`
|
||
|
would be unnecessarily introspected, potentially causing exceptions to be
|
||
|
raised if the protocol had problematic members. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-23-47-42
|
||
|
.. gh-issue: 53502
|
||
|
.. nonce: dercJI
|
||
|
.. section: Library
|
||
|
|
||
|
Add a new option ``aware_datetime`` in :mod:`plistlib` to loads or dumps
|
||
|
aware datetime.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-14-55-06
|
||
|
.. gh-issue: 113358
|
||
|
.. nonce: nRkiSL
|
||
|
.. section: Library
|
||
|
|
||
|
Fix rendering tracebacks with exceptions with a broken __getattr__
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-20-21-18-51
|
||
|
.. gh-issue: 113214
|
||
|
.. nonce: JcV9Mn
|
||
|
.. section: Library
|
||
|
|
||
|
Fix an ``AttributeError`` during asyncio SSL protocol aborts in SSL-over-SSL
|
||
|
scenarios.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-18-09-47-54
|
||
|
.. gh-issue: 113246
|
||
|
.. nonce: em930H
|
||
|
.. section: Library
|
||
|
|
||
|
Update bundled pip to 23.3.2.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-17-13-56-30
|
||
|
.. gh-issue: 87264
|
||
|
.. nonce: RgfHCv
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed tarfile list() method to show file type.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-17-10-22-55
|
||
|
.. gh-issue: 112182
|
||
|
.. nonce: jLWGlr
|
||
|
.. section: Library
|
||
|
|
||
|
:meth:`asyncio.futures.Future.set_exception()` now transforms
|
||
|
:exc:`StopIteration` into :exc:`RuntimeError` instead of hanging or other
|
||
|
misbehavior. Patch contributed by Jamie Phan.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-17-04-43-57
|
||
|
.. gh-issue: 113225
|
||
|
.. nonce: dhxhiZ
|
||
|
.. section: Library
|
||
|
|
||
|
Speed up :meth:`pathlib.Path.glob` by using :attr:`os.DirEntry.path` where
|
||
|
possible.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-16-23-56-42
|
||
|
.. gh-issue: 113149
|
||
|
.. nonce: 7LWgTS
|
||
|
.. section: Library
|
||
|
|
||
|
Improve error message when a JSON array or object contains a trailing comma.
|
||
|
Patch by Carson Radtke.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-16-10-58-34
|
||
|
.. gh-issue: 113117
|
||
|
.. nonce: 0zF7bH
|
||
|
.. section: Library
|
||
|
|
||
|
The :mod:`subprocess` module can now use the :func:`os.posix_spawn` function
|
||
|
with ``close_fds=True`` on platforms where
|
||
|
``posix_spawn_file_actions_addclosefrom_np`` is available. Patch by Jakub
|
||
|
Kulik.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-16-01-10-47
|
||
|
.. gh-issue: 113199
|
||
|
.. nonce: oDjnjL
|
||
|
.. section: Library
|
||
|
|
||
|
Make ``http.client.HTTPResponse.read1`` and
|
||
|
``http.client.HTTPResponse.readline`` close IO after reading all data when
|
||
|
content length is known. Patch by Illia Volochii.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-21-33-42
|
||
|
.. gh-issue: 113191
|
||
|
.. nonce: Il155b
|
||
|
.. section: Library
|
||
|
|
||
|
Add support of :func:`os.fchmod` and a file descriptor in :func:`os.chmod`
|
||
|
on Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-20-29-49
|
||
|
.. gh-issue: 113188
|
||
|
.. nonce: AvoraB
|
||
|
.. section: Library
|
||
|
|
||
|
Fix :func:`shutil.copymode` and :func:`shutil.copystat` on Windows.
|
||
|
Previously they worked differenly if *dst* is a symbolic link: they modified
|
||
|
the permission bits of *dst* itself rather than the file it points to if
|
||
|
*follow_symlinks* is true or *src* is not a symbolic link, and did not
|
||
|
modify the permission bits if *follow_symlinks* is false and *src* is a
|
||
|
symbolic link.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-18-13-59
|
||
|
.. gh-issue: 113119
|
||
|
.. nonce: al-569
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`os.posix_spawn` now accepts ``env=None``, which makes the newly
|
||
|
spawned process use the current process environment. Patch by Jakub Kulik.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-18-10-26
|
||
|
.. gh-issue: 113202
|
||
|
.. nonce: xv_Ww8
|
||
|
.. section: Library
|
||
|
|
||
|
Add a ``strict`` option to ``batched()`` in the ``itertools`` module.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-12-35-28
|
||
|
.. gh-issue: 61648
|
||
|
.. nonce: G-4pz0
|
||
|
.. section: Library
|
||
|
|
||
|
Detect line numbers of properties in doctests.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-15-09-51-41
|
||
|
.. gh-issue: 113175
|
||
|
.. nonce: RHsNwE
|
||
|
.. section: Library
|
||
|
|
||
|
Sync with importlib_metadata 7.0, including improved type annotations, fixed
|
||
|
issue with symlinked packages in ``package_distributions``, added
|
||
|
``EntryPoints.__repr__``, introduced the ``diagnose`` script, added
|
||
|
``Distribution.origin`` property, and removed deprecated ``EntryPoint``
|
||
|
access by numeric index (tuple behavior).
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-13-17-08-21
|
||
|
.. gh-issue: 59616
|
||
|
.. nonce: JNlWSs
|
||
|
.. section: Library
|
||
|
|
||
|
Add support of :func:`os.lchmod` and the *follow_symlinks* argument in
|
||
|
:func:`os.chmod` on Windows. Note that the default value of
|
||
|
*follow_symlinks* in :func:`!os.lchmod` is ``False`` on Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-12-20-15-57
|
||
|
.. gh-issue: 112559
|
||
|
.. nonce: IgXkje
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`signal.signal` and :func:`signal.getsignal` no longer call ``repr``
|
||
|
on callable handlers. :func:`asyncio.run` and :meth:`asyncio.Runner.run` no
|
||
|
longer call ``repr`` on the task results. Patch by Yilei Yang.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-12-16-32-55
|
||
|
.. gh-issue: 112962
|
||
|
.. nonce: ZZWXZn
|
||
|
.. section: Library
|
||
|
|
||
|
:mod:`dis` module functions add cache information to the
|
||
|
:class:`~dis.Instruction` instance rather than creating fake
|
||
|
:class:`~dis.Instruction` instances to represent the cache entries.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-12-05-48-17
|
||
|
.. gh-issue: 112989
|
||
|
.. nonce: ZAa_eq
|
||
|
.. section: Library
|
||
|
|
||
|
Reduce overhead to connect sockets with :mod:`asyncio` SelectorEventLoop.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-11-16-13-15
|
||
|
.. gh-issue: 112970
|
||
|
.. nonce: 87jmKP
|
||
|
.. section: Library
|
||
|
|
||
|
Use :c:func:`!closefrom` on Linux where available (e.g. glibc-2.34), rather
|
||
|
than only FreeBSD.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-11-14-12-46
|
||
|
.. gh-issue: 110190
|
||
|
.. nonce: e0iEUa
|
||
|
.. section: Library
|
||
|
|
||
|
Fix ctypes structs with array on PPC64LE platform by setting
|
||
|
``MAX_STRUCT_SIZE`` to 64 in stgdict. Patch by Diego Russo.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-08-11-17-17
|
||
|
.. gh-issue: 112540
|
||
|
.. nonce: Pm5egX
|
||
|
.. section: Library
|
||
|
|
||
|
The statistics.geometric_mean() function now returns zero for datasets
|
||
|
containing a zero. Formerly, it would raise an exception.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-07-16-55-41
|
||
|
.. gh-issue: 87286
|
||
|
.. nonce: MILC9_
|
||
|
.. section: Library
|
||
|
|
||
|
Added :const:`LOG_FTP`, :const:`LOG_NETINFO`, :const:`LOG_REMOTEAUTH`,
|
||
|
:const:`LOG_INSTALL`, :const:`LOG_RAS`, and :const:`LOG_LAUNCHD` tot the
|
||
|
:mod:`syslog` module, all of them constants on used on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-06-16-01-33
|
||
|
.. gh-issue: 112800
|
||
|
.. nonce: TNsGJ-
|
||
|
.. section: Library
|
||
|
|
||
|
Fix :mod:`asyncio` ``SubprocessTransport.close()`` not to throw
|
||
|
``PermissionError`` when used with setuid executables.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-06-14-06-14
|
||
|
.. gh-issue: 51944
|
||
|
.. nonce: -5qq_L
|
||
|
.. section: Library
|
||
|
|
||
|
Add the following constants to the :mod:`termios` module. These values are
|
||
|
present in macOS system headers: ``ALTWERASE``, ``B14400``, ``B28800``,
|
||
|
``B7200``, ``B76800``, ``CCAR_OFLOW``, ``CCTS_OFLOW``, ``CDSR_OFLOW``,
|
||
|
``CDTR_IFLOW``, ``CIGNORE``, ``CRTS_IFLOW``, ``EXTPROC``, ``IUTF8``,
|
||
|
``MDMBUF``, ``NL2``, ``NL3``, ``NOKERNINFO``, ``ONOEOT``, ``OXTABS``,
|
||
|
``VDSUSP``, ``VSTATUS``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-18-57-53
|
||
|
.. gh-issue: 79325
|
||
|
.. nonce: P2vMVK
|
||
|
.. section: Library
|
||
|
|
||
|
Fix an infinite recursion error in :func:`tempfile.TemporaryDirectory`
|
||
|
cleanup on Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-16-20-40
|
||
|
.. gh-issue: 94692
|
||
|
.. nonce: -e5C3c
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`shutil.rmtree` now only catches OSError exceptions. Previously a
|
||
|
symlink attack resistant version of ``shutil.rmtree()`` could ignore or pass
|
||
|
to the error handler arbitrary exception when invalid arguments were
|
||
|
provided.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-01-19-28
|
||
|
.. gh-issue: 112736
|
||
|
.. nonce: rdHDrU
|
||
|
.. section: Library
|
||
|
|
||
|
The use of del-safe symbols in ``subprocess`` was refactored to allow for
|
||
|
use in cross-platform build environments.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-04-21-30-34
|
||
|
.. gh-issue: 112727
|
||
|
.. nonce: jpgNRB
|
||
|
.. section: Library
|
||
|
|
||
|
Speed up :meth:`pathlib.Path.absolute`. Patch by Barney Gale.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-04-16-45-11
|
||
|
.. gh-issue: 74690
|
||
|
.. nonce: pQYP5U
|
||
|
.. section: Library
|
||
|
|
||
|
Speedup :func:`issubclass` checks against simple :func:`runtime-checkable
|
||
|
protocols <typing.runtime_checkable>` by around 6%. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-04-14-05-24
|
||
|
.. gh-issue: 74690
|
||
|
.. nonce: eODKRm
|
||
|
.. section: Library
|
||
|
|
||
|
Speedup :func:`isinstance` checks by roughly 20% for
|
||
|
:func:`runtime-checkable protocols <typing.runtime_checkable>` that only
|
||
|
have one callable member. Speedup :func:`issubclass` checks for these
|
||
|
protocols by roughly 10%. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-12-41-48
|
||
|
.. gh-issue: 112645
|
||
|
.. nonce: blMsKf
|
||
|
.. section: Library
|
||
|
|
||
|
Remove deprecation error on passing ``onerror`` to :func:`shutil.rmtree`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-11-15-53
|
||
|
.. gh-issue: 112640
|
||
|
.. nonce: -FVwP7
|
||
|
.. section: Library
|
||
|
|
||
|
Add ``kwdefaults`` parameter to :data:`types.FunctionType` to set default
|
||
|
keyword argument values.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-01-01-52
|
||
|
.. gh-issue: 112622
|
||
|
.. nonce: 1Z8cpx
|
||
|
.. section: Library
|
||
|
|
||
|
Ensure ``name`` parameter is passed to event loop in
|
||
|
:func:`asyncio.create_task`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-02-12-55-17
|
||
|
.. gh-issue: 112618
|
||
|
.. nonce: 7_FT8-
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a caching bug relating to :data:`typing.Annotated`. ``Annotated[str,
|
||
|
True]`` is no longer identical to ``Annotated[str, 1]``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-21-05-46
|
||
|
.. gh-issue: 112334
|
||
|
.. nonce: DmNXKh
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed a performance regression in 3.12's :mod:`subprocess` on Linux where it
|
||
|
would no longer use the fast-path ``vfork()`` system call when it could have
|
||
|
due to a logic bug, instead falling back to the safe but slower ``fork()``.
|
||
|
|
||
|
Also fixed a second 3.12.0 potential security bug. If a value of
|
||
|
``extra_groups=[]`` was passed to :mod:`subprocess.Popen` or related APIs,
|
||
|
the underlying ``setgroups(0, NULL)`` system call to clear the groups list
|
||
|
would not be made in the child process prior to ``exec()``.
|
||
|
|
||
|
This was identified via code inspection in the process of fixing the first
|
||
|
bug.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-18-05-09
|
||
|
.. gh-issue: 110190
|
||
|
.. nonce: 5bf-c9
|
||
|
.. section: Library
|
||
|
|
||
|
Fix ctypes structs with array on Arm platform by setting ``MAX_STRUCT_SIZE``
|
||
|
to 32 in stgdict. Patch by Diego Russo.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-16-09-59
|
||
|
.. gh-issue: 81194
|
||
|
.. nonce: FFad1c
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a crash in :func:`socket.if_indextoname` with specific value (UINT_MAX).
|
||
|
Fix an integer overflow in :func:`socket.if_indextoname` on 64-bit
|
||
|
non-Windows platforms.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-01-08-28-09
|
||
|
.. gh-issue: 112578
|
||
|
.. nonce: bfNbfi
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a spurious :exc:`RuntimeWarning` when executing the :mod:`zipfile`
|
||
|
module.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-29-10-51-41
|
||
|
.. gh-issue: 112516
|
||
|
.. nonce: rFKUKN
|
||
|
.. section: Library
|
||
|
|
||
|
Update the bundled copy of pip to version 23.3.1.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-29-02-26-32
|
||
|
.. gh-issue: 112510
|
||
|
.. nonce: j-zXGc
|
||
|
.. section: Library
|
||
|
|
||
|
Add :data:`readline.backend` for the backend readline uses (``editline`` or
|
||
|
``readline``)
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-28-20-47-39
|
||
|
.. gh-issue: 112328
|
||
|
.. nonce: Z2AxEY
|
||
|
.. section: Library
|
||
|
|
||
|
[Enum] Make ``EnumDict``, ``EnumDict.member_names``,
|
||
|
``EnumType._add_alias_`` and ``EnumType._add_value_alias_`` public.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-28-20-01-33
|
||
|
.. gh-issue: 112509
|
||
|
.. nonce: QtoKed
|
||
|
.. section: Library
|
||
|
|
||
|
Fix edge cases that could cause a key to be present in both the
|
||
|
``__required_keys__`` and ``__optional_keys__`` attributes of a
|
||
|
:class:`typing.TypedDict`. Patch by Jelle Zijlstra.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-28-02-39-30
|
||
|
.. gh-issue: 101336
|
||
|
.. nonce: ya433z
|
||
|
.. section: Library
|
||
|
|
||
|
Add ``keep_alive`` keyword parameter for
|
||
|
:meth:`AbstractEventLoop.create_server` and
|
||
|
:meth:`BaseEventLoop.create_server`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-27-12-41-23
|
||
|
.. gh-issue: 63284
|
||
|
.. nonce: q2Qi9q
|
||
|
.. section: Library
|
||
|
|
||
|
Added support for TLS-PSK (pre-shared key) mode to the :mod:`ssl` module.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-26-13-44-19
|
||
|
.. gh-issue: 112414
|
||
|
.. nonce: kx2E7S
|
||
|
.. section: Library
|
||
|
|
||
|
Fix regression in Python 3.12 where calling :func:`repr` on a module that
|
||
|
had been imported using a custom :term:`loader` could fail with
|
||
|
:exc:`AttributeError`. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-26-13-26-56
|
||
|
.. gh-issue: 112358
|
||
|
.. nonce: smhaeZ
|
||
|
.. section: Library
|
||
|
|
||
|
Revert change to :class:`struct.Struct` initialization that broke some cases
|
||
|
of subclassing.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-25-20-29-28
|
||
|
.. gh-issue: 112405
|
||
|
.. nonce: cOtzxC
|
||
|
.. section: Library
|
||
|
|
||
|
Optimize :meth:`pathlib.PurePath.relative_to`. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-24-21-00-24
|
||
|
.. gh-issue: 94722
|
||
|
.. nonce: GMIQIn
|
||
|
.. section: Library
|
||
|
|
||
|
Fix bug where comparison between instances of :class:`~doctest.DocTest`
|
||
|
fails if one of them has ``None`` as its lineno.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-24-09-27-01
|
||
|
.. gh-issue: 112361
|
||
|
.. nonce: kYtnHW
|
||
|
.. section: Library
|
||
|
|
||
|
Speed up a small handful of :mod:`pathlib` methods by removing some
|
||
|
temporary objects.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-23-17-25-27
|
||
|
.. gh-issue: 112345
|
||
|
.. nonce: FFApHx
|
||
|
.. section: Library
|
||
|
|
||
|
Improve error message when trying to call :func:`issubclass` against a
|
||
|
:class:`typing.Protocol` that has non-method members. Patch by Randolf
|
||
|
Scholz.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-23-12-37-22
|
||
|
.. gh-issue: 112137
|
||
|
.. nonce: kM46Q6
|
||
|
.. section: Library
|
||
|
|
||
|
Change :mod:`dis` output to display no-lineno as "--" instead of "None".
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-23-10-41-21
|
||
|
.. gh-issue: 112332
|
||
|
.. nonce: rhTBaa
|
||
|
.. section: Library
|
||
|
|
||
|
Deprecate the ``exc_type`` field of :class:`traceback.TracebackException`.
|
||
|
Add ``exc_type_str`` to replace it.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-22-23-08-47
|
||
|
.. gh-issue: 81620
|
||
|
.. nonce: mfZ2Wf
|
||
|
.. section: Library
|
||
|
|
||
|
Add extra tests for :func:`random.binomialvariate`
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-22-19-43-54
|
||
|
.. gh-issue: 112292
|
||
|
.. nonce: 5nDU87
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a crash in :mod:`readline` when imported from a sub interpreter. Patch
|
||
|
by Anthony Shaw
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-21-02-58-14
|
||
|
.. gh-issue: 77621
|
||
|
.. nonce: MYv5XS
|
||
|
.. section: Library
|
||
|
|
||
|
Slightly improve the import time of the :mod:`pathlib` module by deferring
|
||
|
some imports. Patch by Barney Gale.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-16-17-18-09
|
||
|
.. gh-issue: 112137
|
||
|
.. nonce: QvjGjN
|
||
|
.. section: Library
|
||
|
|
||
|
Change :mod:`dis` output to display logical labels for jump targets instead
|
||
|
of offsets.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-16-10-42-15
|
||
|
.. gh-issue: 112139
|
||
|
.. nonce: WpHosf
|
||
|
.. section: Library
|
||
|
|
||
|
Add :meth:`Signature.format` to format signatures to string with extra
|
||
|
options. And use it in :mod:`pydoc` to render more readable signatures that
|
||
|
have new lines between parameters.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-15-04-53-37
|
||
|
.. gh-issue: 112105
|
||
|
.. nonce: I3RcVN
|
||
|
.. section: Library
|
||
|
|
||
|
Make :func:`readline.set_completer_delims` work with libedit
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-15-01-36-04
|
||
|
.. gh-issue: 106922
|
||
|
.. nonce: qslOVH
|
||
|
.. section: Library
|
||
|
|
||
|
Display multiple lines with ``traceback`` when errors span multiple lines.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-09-11-07-34
|
||
|
.. gh-issue: 111874
|
||
|
.. nonce: dzYc3j
|
||
|
.. section: Library
|
||
|
|
||
|
When creating a :class:`typing.NamedTuple` class, ensure
|
||
|
:func:`~object.__set_name__` is called on all objects that define
|
||
|
``__set_name__`` and exist in the values of the ``NamedTuple`` class's class
|
||
|
dictionary. Patch by Alex Waygood.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-08-18-53-07
|
||
|
.. gh-issue: 68166
|
||
|
.. nonce: 1iTh4Y
|
||
|
.. section: Library
|
||
|
|
||
|
Add support of the "vsapi" element type in
|
||
|
:meth:`tkinter.ttk.Style.element_create`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-08-16-11-04
|
||
|
.. gh-issue: 110275
|
||
|
.. nonce: Bm6GwR
|
||
|
.. section: Library
|
||
|
|
||
|
Named tuple's methods ``_replace()`` and ``__replace__()`` now raise
|
||
|
TypeError instead of ValueError for invalid keyword arguments.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-05-20-09-27
|
||
|
.. gh-issue: 99367
|
||
|
.. nonce: HLaWKo
|
||
|
.. section: Library
|
||
|
|
||
|
Do not mangle ``sys.path[0]`` in :mod:`pdb` if safe_path is set
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-02-10-13-31
|
||
|
.. gh-issue: 111615
|
||
|
.. nonce: 3SMixi
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a regression caused by a fix to gh-93162 whereby you couldn't configure
|
||
|
a :class:`QueueHandler` without specifying handlers.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-25-16-37-13
|
||
|
.. gh-issue: 75666
|
||
|
.. nonce: BpsWut
|
||
|
.. section: Library
|
||
|
|
||
|
Fix the behavior of :mod:`tkinter` widget's ``unbind()`` method with two
|
||
|
arguments. Previously, ``widget.unbind(sequence, funcid)`` destroyed the
|
||
|
current binding for *sequence*, leaving *sequence* unbound, and deleted the
|
||
|
*funcid* command. Now it removes only *funcid* from the binding for
|
||
|
*sequence*, keeping other commands, and deletes the *funcid* command. It
|
||
|
leaves *sequence* unbound only if *funcid* was the last bound command.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-25-13-07-53
|
||
|
.. gh-issue: 67790
|
||
|
.. nonce: jMn9Ad
|
||
|
.. section: Library
|
||
|
|
||
|
Implement basic formatting support (minimum width, alignment, fill) for
|
||
|
:class:`fractions.Fraction`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-23-18-42-26
|
||
|
.. gh-issue: 111049
|
||
|
.. nonce: Ys7-o_
|
||
|
.. section: Library
|
||
|
|
||
|
Fix crash during garbage collection of the :class:`io.BytesIO` buffer
|
||
|
object.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-23-03-49-34
|
||
|
.. gh-issue: 102980
|
||
|
.. nonce: aXBd54
|
||
|
.. section: Library
|
||
|
|
||
|
Redirect the output of ``interact`` command of :mod:`pdb` to the same
|
||
|
channel as the debugger. Add tests and improve docs.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-20-15-28-08
|
||
|
.. gh-issue: 102988
|
||
|
.. nonce: dStNO7
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`email.utils.getaddresses` and :func:`email.utils.parseaddr` now
|
||
|
return ``('', '')`` 2-tuples in more situations where invalid email
|
||
|
addresses are encountered instead of potentially inaccurate values. Add
|
||
|
optional *strict* parameter to these two functions: use ``strict=False`` to
|
||
|
get the old behavior, accept malformed inputs. ``getattr(email.utils,
|
||
|
'supports_strict_parsing', False)`` can be use to check if the *strict*
|
||
|
paramater is available. Patch by Thomas Dwyer and Victor Stinner to improve
|
||
|
the CVE-2023-27043 fix.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-17-16-11-03
|
||
|
.. gh-issue: 52161
|
||
|
.. nonce: WBYyCJ
|
||
|
.. section: Library
|
||
|
|
||
|
:meth:`cmd.Cmd.do_help` now cleans docstrings with :func:`inspect.cleandoc`
|
||
|
before writing them. Patch by Filip Łapkiewicz.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-12-18-19-47
|
||
|
.. gh-issue: 82300
|
||
|
.. nonce: P8-O38
|
||
|
.. section: Library
|
||
|
|
||
|
Add ``track`` parameter to
|
||
|
:class:`multiprocessing.shared_memory.SharedMemory` that allows using shared
|
||
|
memory blocks without having to register with the POSIX resource tracker
|
||
|
that automatically releases them upon process exit.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-11-02-34-01
|
||
|
.. gh-issue: 110109
|
||
|
.. nonce: RFCmHs
|
||
|
.. section: Library
|
||
|
|
||
|
Add private ``pathlib._PurePathBase`` class: a base class for
|
||
|
:class:`pathlib.PurePath` that omits certain magic methods. It may be made
|
||
|
public (along with ``_PathBase``) in future.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-09-28-13-15-51
|
||
|
.. gh-issue: 109858
|
||
|
.. nonce: 43e2dg
|
||
|
.. section: Library
|
||
|
|
||
|
Protect :mod:`zipfile` from "quoted-overlap" zipbomb. It now raises
|
||
|
BadZipFile when try to read an entry that overlaps with other entry or
|
||
|
central directory.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-09-23-14-40-51
|
||
|
.. gh-issue: 109786
|
||
|
.. nonce: UX3pKv
|
||
|
.. section: Library
|
||
|
|
||
|
Fix possible reference leaks and crash when re-enter the ``__next__()``
|
||
|
method of :class:`itertools.pairwise`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-09-01-15-33-18
|
||
|
.. gh-issue: 91539
|
||
|
.. nonce: xoNLEI
|
||
|
.. section: Library
|
||
|
|
||
|
Small (10 - 20%) and trivial performance improvement of
|
||
|
:func:`urrlib.request.getproxies_environment`, typically useful when there
|
||
|
are many environment variables to go over.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-08-14-21-10-52
|
||
|
.. gh-issue: 103363
|
||
|
.. nonce: u64_QI
|
||
|
.. section: Library
|
||
|
|
||
|
Add *follow_symlinks* keyword-only argument to :meth:`pathlib.Path.owner`
|
||
|
and :meth:`~pathlib.Path.group`, defaulting to ``True``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-08-07-21-11-24
|
||
|
.. gh-issue: 102130
|
||
|
.. nonce: _UyI5i
|
||
|
.. section: Library
|
||
|
|
||
|
Support tab completion in :mod:`cmd` for ``editline``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-08-04-18-43-21
|
||
|
.. gh-issue: 99437
|
||
|
.. nonce: Et8hu8
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`runpy.run_path` now decodes path-like objects, making sure __file__
|
||
|
and sys.argv[0] of the module being run are always strings.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-04-29-20-49-13
|
||
|
.. gh-issue: 104003
|
||
|
.. nonce: -8Ruk2
|
||
|
.. section: Library
|
||
|
|
||
|
Add :func:`warnings.deprecated`, a decorator to mark deprecated functions to
|
||
|
static type checkers and to warn on usage of deprecated classes and
|
||
|
functions. See :pep:`702`. Patch by Jelle Zijlstra.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-04-23-11-08-02
|
||
|
.. gh-issue: 103708
|
||
|
.. nonce: Y17C7p
|
||
|
.. section: Library
|
||
|
|
||
|
Make hardcoded python name, a configurable parameter so that different
|
||
|
implementations of python can override it instead of making huge diffs in
|
||
|
sysconfig.py
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-04-09-21-05-43
|
||
|
.. gh-issue: 66515
|
||
|
.. nonce: 0DS8Ya
|
||
|
.. section: Library
|
||
|
|
||
|
:class:`mailbox.MH` now supports folders that do not contain a
|
||
|
``.mh_sequences`` file (e.g. Claws Mail IMAP-cache folders). Patch by Serhiy
|
||
|
Storchaka.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-02-08-00-43-29
|
||
|
.. gh-issue: 83162
|
||
|
.. nonce: ufdI9F
|
||
|
.. section: Library
|
||
|
|
||
|
Renamed :exc:`!re.error` to :exc:`PatternError` for clarity, and kept
|
||
|
:exc:`!re.error` for backward compatibility. Patch by Matthias Bussonnier
|
||
|
and Adam Chhina.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2022-12-01-16-57-44
|
||
|
.. gh-issue: 91133
|
||
|
.. nonce: LKMVCV
|
||
|
.. section: Library
|
||
|
|
||
|
Fix a bug in :class:`tempfile.TemporaryDirectory` cleanup, which now no
|
||
|
longer dereferences symlinks when working around file system permission
|
||
|
errors.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 43153
|
||
|
.. date: 2021-12-06-22-10-53
|
||
|
.. nonce: J7mjSy
|
||
|
.. section: Library
|
||
|
|
||
|
On Windows, ``tempfile.TemporaryDirectory`` previously masked a
|
||
|
``PermissionError`` with ``NotADirectoryError`` during directory cleanup. It
|
||
|
now correctly raises ``PermissionError`` if errors are not ignored. Patch by
|
||
|
Andrei Kulakov and Ken Jin.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 32731
|
||
|
.. date: 2021-11-23-22-22-49
|
||
|
.. nonce: kNOASr
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`getpass.getuser` now raises :exc:`OSError` for all failures rather
|
||
|
than :exc:`ImportError` on systems lacking the :mod:`pwd` module or
|
||
|
:exc:`KeyError` if the password database is empty.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 34321
|
||
|
.. date: 2021-04-15-10-41-51
|
||
|
.. nonce: 36m6_l
|
||
|
.. section: Library
|
||
|
|
||
|
:class:`mmap.mmap` now has a *trackfd* parameter on Unix; if it is
|
||
|
``False``, the file descriptor specified by *fileno* will not be duplicated.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 35332
|
||
|
.. date: 2020-12-14-09-31-13
|
||
|
.. nonce: s22wAx
|
||
|
.. section: Library
|
||
|
|
||
|
The :func:`shutil.rmtree` function now ignores errors when calling
|
||
|
:func:`os.close` when *ignore_errors* is ``True``, and :func:`os.close` no
|
||
|
longer retried after error.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 35928
|
||
|
.. date: 2020-10-03-23-47-28
|
||
|
.. nonce: E0iPAa
|
||
|
.. section: Library
|
||
|
|
||
|
:class:`io.TextIOWrapper` now correctly handles the decoding buffer after
|
||
|
``read()`` and ``write()``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 26791
|
||
|
.. date: 2020-08-06-14-43-55
|
||
|
.. nonce: KxoEfO
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`shutil.move` now moves a symlink into a directory when that directory
|
||
|
is the target of the symlink. This provides the same behavior as the mv
|
||
|
shell command. The previous behavior raised an exception. Patch by Jeffrey
|
||
|
Kintscher.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 41422
|
||
|
.. date: 2020-07-28-20-48-05
|
||
|
.. nonce: iMwnMu
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed memory leaks of :class:`pickle.Pickler` and :class:`pickle.Unpickler`
|
||
|
involving cyclic references via the internal memo mapping.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 19821
|
||
|
.. date: 2020-06-15-23-44-53
|
||
|
.. nonce: ihBk39
|
||
|
.. section: Library
|
||
|
|
||
|
The :func:`!pydoc.ispackage` function has been deprecated.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 40262
|
||
|
.. date: 2020-05-21-23-32-46
|
||
|
.. nonce: z4fQv1
|
||
|
.. section: Library
|
||
|
|
||
|
The :meth:`ssl.SSLSocket.recv_into` method no longer requires the *buffer*
|
||
|
argument to implement ``__len__`` and supports buffers with arbitrary item
|
||
|
size.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 39912
|
||
|
.. date: 2020-03-09-15-08-29
|
||
|
.. nonce: xPOBBY
|
||
|
.. section: Library
|
||
|
|
||
|
:func:`warnings.filterwarnings()` and :func:`warnings.simplefilter()` now
|
||
|
raise appropriate exceptions instead of ``AssertionError``. Patch
|
||
|
contributed by Rémi Lapeyre.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 37260
|
||
|
.. date: 2019-06-14-22-37-32
|
||
|
.. nonce: oecdIf
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed a race condition in :func:`shutil.rmtree` in which directory entries
|
||
|
removed by another process or thread while ``shutil.rmtree()`` is running
|
||
|
can cause it to raise FileNotFoundError. Patch by Jeffrey Kintscher.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 36959
|
||
|
.. date: 2019-05-18-15-50-14
|
||
|
.. nonce: ew6WZ4
|
||
|
.. section: Library
|
||
|
|
||
|
Fix some error messages for invalid ISO format string combinations in
|
||
|
``strptime()`` that referred to directives not contained in the format
|
||
|
string. Patch by Gordon P. Hemsley.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 18060
|
||
|
.. date: 2019-05-17-07-22-33
|
||
|
.. nonce: 5mqTQM
|
||
|
.. section: Library
|
||
|
|
||
|
Fixed a class inheritance issue that can cause segfaults when deriving two
|
||
|
or more levels of subclasses from a base class of Structure or Union.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 29779
|
||
|
.. date: 2019-05-08-13-14-11
|
||
|
.. nonce: jg33dp
|
||
|
.. section: Library
|
||
|
|
||
|
Add a new :envvar:`PYTHON_HISTORY` environment variable to set the location
|
||
|
of a ``.python_history`` file.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 21360
|
||
|
.. date: 2019-02-12-16-12-54
|
||
|
.. nonce: gkSSfx
|
||
|
.. section: Library
|
||
|
|
||
|
:class:`mailbox.Maildir` now ignores files with a leading dot.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-30-02-33-59
|
||
|
.. gh-issue: 111699
|
||
|
.. nonce: _O5G_y
|
||
|
.. section: Documentation
|
||
|
|
||
|
Relocate ``smtpd`` deprecation notice to its own section rather than under
|
||
|
``locale`` in What's New in Python 3.12 document
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-10-23-23-43-43
|
||
|
.. gh-issue: 110746
|
||
|
.. nonce: yg77IE
|
||
|
.. section: Documentation
|
||
|
|
||
|
Improved markup for valid options/values for methods ttk.treeview.column and
|
||
|
ttk.treeview.heading, and for Layouts.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-08-01-13-11-39
|
||
|
.. gh-issue: 95649
|
||
|
.. nonce: F4KhPS
|
||
|
.. section: Documentation
|
||
|
|
||
|
Document that the :mod:`asyncio` module contains code taken from `v0.16.0 of
|
||
|
the uvloop project <https://github.com/MagicStack/uvloop/tree/v0.16.0>`_, as
|
||
|
well as the required MIT licensing information.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-12-14-34-24
|
||
|
.. gh-issue: 111798
|
||
|
.. nonce: hd9B_-
|
||
|
.. section: Tests
|
||
|
|
||
|
Disable ``test_super_deep()`` from ``test_call`` under pydebug builds on
|
||
|
WASI; the stack depth is too small to make the test useful.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-12-13-19-12
|
||
|
.. gh-issue: 111801
|
||
|
.. nonce: 9hh9DY
|
||
|
.. section: Tests
|
||
|
|
||
|
Lower the recursion limit in ``test_isinstance`` for
|
||
|
``test_infinitely_many_bases()``. This prevents a stack overflow on a
|
||
|
pydebug build of WASI.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-12-12-45-24
|
||
|
.. gh-issue: 111802
|
||
|
.. nonce: gN41vt
|
||
|
.. section: Tests
|
||
|
|
||
|
Specify a low recursion depth for ``test_bad_getattr()`` in
|
||
|
``test.pickletester`` to avoid exhausting the stack under a pydebug build
|
||
|
for WASI.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-08-21-15-48
|
||
|
.. gh-issue: 44626
|
||
|
.. nonce: DRq-PR
|
||
|
.. section: Tests
|
||
|
|
||
|
Fix :func:`os.path.isabs` incorrectly returning ``True`` when given a path
|
||
|
that starts with exactly one (back)slash on Windows.
|
||
|
|
||
|
Fix :meth:`pathlib.PureWindowsPath.is_absolute` incorrectly returning
|
||
|
``False`` for some paths beginning with two (back)slashes.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-01-14-40-02
|
||
|
.. gh-issue: 113633
|
||
|
.. nonce: VOY5ai
|
||
|
.. section: Tests
|
||
|
|
||
|
Use module state for the _testcapi extension module.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-09-21-27-46
|
||
|
.. gh-issue: 109980
|
||
|
.. nonce: y--500
|
||
|
.. section: Tests
|
||
|
|
||
|
Fix ``test_tarfile_vs_tar`` in ``test_shutil`` for macOS, where system tar
|
||
|
can include more information in the archive than :mod:`shutil.make_archive`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-19-50-03
|
||
|
.. gh-issue: 112769
|
||
|
.. nonce: kdLJmS
|
||
|
.. section: Tests
|
||
|
|
||
|
The tests now correctly compare zlib version when
|
||
|
:const:`zlib.ZLIB_RUNTIME_VERSION` contains non-integer suffixes. For
|
||
|
example zlib-ng defines the version as ``1.3.0.zlib-ng``.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-04-15-56-11
|
||
|
.. gh-issue: 112334
|
||
|
.. nonce: FFc9Ti
|
||
|
.. section: Tests
|
||
|
|
||
|
Adds a regression test to verify that ``vfork()`` is used when expected by
|
||
|
:mod:`subprocess` on vfork enabled POSIX systems (Linux).
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-09-05-20-46-35
|
||
|
.. gh-issue: 108927
|
||
|
.. nonce: TpwWav
|
||
|
.. section: Tests
|
||
|
|
||
|
Fixed order dependence in running tests in the same process when a test that
|
||
|
has submodules (e.g. test_importlib) follows a test that imports its
|
||
|
submodule (e.g. test_importlib.util) and precedes a test (e.g. test_unittest
|
||
|
or test_compileall) that uses that submodule.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 40648
|
||
|
.. date: 2020-05-16-18-00-21
|
||
|
.. nonce: p2uPqy
|
||
|
.. section: Tests
|
||
|
|
||
|
Test modes that file can get with chmod() on Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-15-16-58-43
|
||
|
.. gh-issue: 114013
|
||
|
.. nonce: FoSeQf
|
||
|
.. section: Build
|
||
|
|
||
|
Fix ``Tools/wasm/wasi.py`` to not include the path to ``python.wasm`` as
|
||
|
part of ``HOSTRUNNER``. The environment variable is meant to specify how to
|
||
|
run the WASI host only, having ``python.wasm`` and relevant flags appended
|
||
|
to the ``HOSTRUNNER``. This fixes ``make test`` work.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-23-09-35-48
|
||
|
.. gh-issue: 113258
|
||
|
.. nonce: GlsAyH
|
||
|
.. section: Build
|
||
|
|
||
|
Changed the Windows build to write out generated frozen modules into the
|
||
|
build tree instead of the source tree.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-05-35-06
|
||
|
.. gh-issue: 112305
|
||
|
.. nonce: VfqQPx
|
||
|
.. section: Build
|
||
|
|
||
|
Fixed the ``check-clean-src`` step performed on out of tree builds to detect
|
||
|
errant ``$(srcdir)/Python/frozen_modules/*.h`` files and recommend
|
||
|
appropriate source tree cleanup steps to get a working build again.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-17-18-23-02
|
||
|
.. gh-issue: 112536
|
||
|
.. nonce: 8lr3Ep
|
||
|
.. section: Build
|
||
|
|
||
|
Add support for thread sanitizer (TSAN)
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-08-11-33-37
|
||
|
.. gh-issue: 112867
|
||
|
.. nonce: ZzDfXQ
|
||
|
.. section: Build
|
||
|
|
||
|
Fix the build for the case that WITH_PYMALLOC_RADIX_TREE=0 set.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-27-13-55-47
|
||
|
.. gh-issue: 103065
|
||
|
.. nonce: o72OiA
|
||
|
.. section: Build
|
||
|
|
||
|
Introduce ``Tools/wasm/wasi.py`` to simplify doing a WASI build.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 11102
|
||
|
.. date: 2020-05-01-23-44-31
|
||
|
.. nonce: Fw9zeS
|
||
|
.. section: Build
|
||
|
|
||
|
The :func:`os.major`, :func:`os.makedev`, and :func:`os.minor` functions are
|
||
|
now available on HP-UX v3.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 36351
|
||
|
.. date: 2020-01-11-23-49-17
|
||
|
.. nonce: ce8BBh
|
||
|
.. section: Build
|
||
|
|
||
|
Do not set ipv6type when cross-compiling.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-15-23-53-25
|
||
|
.. gh-issue: 114096
|
||
|
.. nonce: G-Myja
|
||
|
.. section: Windows
|
||
|
|
||
|
Process privileges that are activated for creating directory junctions are
|
||
|
now restored afterwards, avoiding behaviour changes in other parts of the
|
||
|
program.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-04-21-16-31
|
||
|
.. gh-issue: 111877
|
||
|
.. nonce: fR-B4c
|
||
|
.. section: Windows
|
||
|
|
||
|
:func:`os.stat` calls were returning incorrect time values for files that
|
||
|
could not be accessed directly.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-19-10-56-46
|
||
|
.. gh-issue: 111973
|
||
|
.. nonce: A9Wtsb
|
||
|
.. section: Windows
|
||
|
|
||
|
Update Windows installer to use SQLite 3.44.2.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-14-19-00-29
|
||
|
.. gh-issue: 113009
|
||
|
.. nonce: 6LNdjz
|
||
|
.. section: Windows
|
||
|
|
||
|
:mod:`multiprocessing`: On Windows, fix a race condition in
|
||
|
``Process.terminate()``: no longer set the ``returncode`` attribute to
|
||
|
always call ``WaitForSingleObject()`` in ``Process.wait()``. Previously,
|
||
|
sometimes the process was still running after ``TerminateProcess()`` even if
|
||
|
``GetExitCodeProcess()`` is not ``STILL_ACTIVE``. Patch by Victor Stinner.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-12-20-58-09
|
||
|
.. gh-issue: 86179
|
||
|
.. nonce: YYSk_6
|
||
|
.. section: Windows
|
||
|
|
||
|
Fixes path calculations when launching Python on Windows through a symlink.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-11-20-23-04
|
||
|
.. gh-issue: 71383
|
||
|
.. nonce: 9pZh6t
|
||
|
.. section: Windows
|
||
|
|
||
|
Update Tcl/Tk in Windows installer to 8.6.13 with a patch to suppress
|
||
|
incorrect ThemeChanged warnings.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-05-22-56-30
|
||
|
.. gh-issue: 111650
|
||
|
.. nonce: xlWmvM
|
||
|
.. section: Windows
|
||
|
|
||
|
Ensures the ``Py_GIL_DISABLED`` preprocessor variable is defined in
|
||
|
:file:`pyconfig.h` so that extension modules written in C are able to use
|
||
|
it.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-03-19-22-37
|
||
|
.. gh-issue: 112278
|
||
|
.. nonce: FiloCE
|
||
|
.. section: Windows
|
||
|
|
||
|
Reduce the time cost for some functions in :mod:`platform` on Windows if
|
||
|
current user has no permission to the WMI.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-08-08-01-42-14
|
||
|
.. gh-issue: 73427
|
||
|
.. nonce: WOpiNt
|
||
|
.. section: Windows
|
||
|
|
||
|
Deprecate :func:`sys._enablelegacywindowsfsencoding`. Use
|
||
|
:envvar:`PYTHONLEGACYWINDOWSFSENCODING` instead. Patch by Inada Naoki.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-03-15-23-53-45
|
||
|
.. gh-issue: 87868
|
||
|
.. nonce: 4C36oQ
|
||
|
.. section: Windows
|
||
|
|
||
|
Correctly sort and remove duplicate environment variables in
|
||
|
:py:func:`!_winapi.CreateProcess`.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 37308
|
||
|
.. date: 2019-06-16-11-27-05
|
||
|
.. nonce: Iz_NU_
|
||
|
.. section: Windows
|
||
|
|
||
|
Fix mojibake in :class:`mmap.mmap` when using a non-ASCII *tagname* argument
|
||
|
on Windows.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-02-22-25-21
|
||
|
.. gh-issue: 113666
|
||
|
.. nonce: xKZoBm
|
||
|
.. section: macOS
|
||
|
|
||
|
Add the following constants to module :mod:`stat`: ``UF_SETTABLE``,
|
||
|
``UF_TRACKED``, ``UF_DATAVAULT``, ``SF_SUPPORTED``, ``SF_SETTABLE``,
|
||
|
``SF_SYNTHETIC``, ``SF_RESTRICTED``, ``SF_FIRMLINK`` and ``SF_DATALESS``.
|
||
|
The values ``UF_SETTABLE``, ``SF_SUPPORTED``, ``SF_SETTABLE`` and
|
||
|
``SF_SYNTHETIC`` are only available on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-28-12-18-39
|
||
|
.. gh-issue: 113536
|
||
|
.. nonce: 0ythg7
|
||
|
.. section: macOS
|
||
|
|
||
|
:func:`os.waitid` is now available on macOS
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-23-22-41-07
|
||
|
.. gh-issue: 110459
|
||
|
.. nonce: NaMBJy
|
||
|
.. section: macOS
|
||
|
|
||
|
Running ``configure ... --with-openssl-rpath=X/Y/Z`` no longer fails to
|
||
|
detect OpenSSL on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-11-53-47
|
||
|
.. gh-issue: 74573
|
||
|
.. nonce: MA6Vys
|
||
|
.. section: macOS
|
||
|
|
||
|
Document that :mod:`dbm.ndbm` can silently corrupt DBM files on updates when
|
||
|
exceeding undocumented platform limits, and can crash (segmentation fault)
|
||
|
when reading such a corrupted file. (FB8919203)
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-10-20-41
|
||
|
.. gh-issue: 65701
|
||
|
.. nonce: Q2hNbN
|
||
|
.. section: macOS
|
||
|
|
||
|
The :program:`freeze` tool doesn't work with framework builds of Python.
|
||
|
Document this and bail out early when running the tool with such a build.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-21-09-41-42
|
||
|
.. gh-issue: 87277
|
||
|
.. nonce: IF6EZZ
|
||
|
.. section: macOS
|
||
|
|
||
|
webbrowser: Don't look for X11 browsers on macOS. Those are generally not
|
||
|
used and probing for them can result in starting XQuartz even if it isn't
|
||
|
used otherwise.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-19-10-50-08
|
||
|
.. gh-issue: 111973
|
||
|
.. nonce: HMHJfy
|
||
|
.. section: macOS
|
||
|
|
||
|
Update macOS installer to use SQLite 3.44.2.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-16-11-45-32
|
||
|
.. gh-issue: 108269
|
||
|
.. nonce: wVgCHF
|
||
|
.. section: macOS
|
||
|
|
||
|
Set ``CFBundleAllowMixedLocalizations`` to true in the Info.plist for the
|
||
|
framework, embedded Python.app and IDLE.app with framework installs on
|
||
|
macOS. This allows applications to pick up the user's preferred locale when
|
||
|
that's different from english.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-10-20-30-06
|
||
|
.. gh-issue: 102362
|
||
|
.. nonce: y8svbF
|
||
|
.. section: macOS
|
||
|
|
||
|
Make sure the result of :func:`sysconfig.get_plaform` includes at least a
|
||
|
major and minor versions, even if ``MACOSX_DEPLOYMENT_TARGET`` is set to
|
||
|
only a major version during build to match the format expected by pip.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-07-15-53-16
|
||
|
.. gh-issue: 110017
|
||
|
.. nonce: UMYzMR
|
||
|
.. section: macOS
|
||
|
|
||
|
Disable a signal handling stress test on macOS due to a bug in macOS
|
||
|
(FB13453490).
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-07-14-19-46
|
||
|
.. gh-issue: 110820
|
||
|
.. nonce: DIxb_F
|
||
|
.. section: macOS
|
||
|
|
||
|
Make sure the preprocessor definitions for ``ALIGNOF_MAX_ALIGN_T``,
|
||
|
``SIZEOF_LONG_DOUBLE`` and ``HAVE_GCC_ASM_FOR_X64`` are correct for
|
||
|
Universal 2 builds on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-06-12-11-13
|
||
|
.. gh-issue: 109981
|
||
|
.. nonce: mOHg10
|
||
|
.. section: macOS
|
||
|
|
||
|
Use ``/dev/fd`` on macOS to determine the number of open files in
|
||
|
``test.support.os_helper.fd_count`` to avoid a crash with "guarded" file
|
||
|
descriptors when probing for open files.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-17-02-15-33
|
||
|
.. gh-issue: 72284
|
||
|
.. nonce: cAQiYO
|
||
|
.. section: IDLE
|
||
|
|
||
|
Improve the lists of features, editor key bindings, and shell key bingings
|
||
|
in the IDLE doc.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-11-21-26-58
|
||
|
.. gh-issue: 113903
|
||
|
.. nonce: __GLlQ
|
||
|
.. section: IDLE
|
||
|
|
||
|
Fix rare failure of test.test_idle, in test_configdialog.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2024-01-05-12-24-01
|
||
|
.. gh-issue: 113729
|
||
|
.. nonce: qpluea
|
||
|
.. section: IDLE
|
||
|
|
||
|
Fix the "Help -> IDLE Doc" menu bug in 3.11.7 and 3.12.1.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-19-00-03-12
|
||
|
.. gh-issue: 113269
|
||
|
.. nonce: lrU-IC
|
||
|
.. section: IDLE
|
||
|
|
||
|
Fix test_editor hang on macOS Catalina.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-10-20-01-11
|
||
|
.. gh-issue: 112898
|
||
|
.. nonce: 98aWv2
|
||
|
.. section: IDLE
|
||
|
|
||
|
Fix processing unsaved files when quitting IDLE on macOS.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. bpo: 13586
|
||
|
.. date: 2019-12-13-12-26-56
|
||
|
.. nonce: 1grqsR
|
||
|
.. section: IDLE
|
||
|
|
||
|
Enter the selected text when opening the "Replace" dialog.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-12-02-02-08-11
|
||
|
.. gh-issue: 106560
|
||
|
.. nonce: THvuji
|
||
|
.. section: C API
|
||
|
|
||
|
Fix redundant declarations in the public C API. Declare PyBool_Type,
|
||
|
PyLong_Type and PySys_Audit() only once. Patch by Victor Stinner.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-27-09-44-16
|
||
|
.. gh-issue: 112438
|
||
|
.. nonce: GdNZiI
|
||
|
.. section: C API
|
||
|
|
||
|
Fix support of format units "es", "et", "es#", and "et#" in nested tuples in
|
||
|
:c:func:`PyArg_ParseTuple`-like functions.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-11-15-01-26-59
|
||
|
.. gh-issue: 111545
|
||
|
.. nonce: iAoFtA
|
||
|
.. section: C API
|
||
|
|
||
|
Add :c:func:`Py_HashPointer` function to hash a pointer. Patch by Victor
|
||
|
Stinner.
|
||
|
|
||
|
..
|
||
|
|
||
|
.. date: 2023-06-21-11-53-09
|
||
|
.. gh-issue: 65210
|
||
|
.. nonce: PhFRBJ
|
||
|
.. section: C API
|
||
|
|
||
|
Change the declaration of the *keywords* parameter of
|
||
|
:c:func:`PyArg_ParseTupleAndKeywords` and
|
||
|
:c:func:`PyArg_VaParseTupleAndKeywords` for better compatibility with C++.
|