Misc/NEWS.d/3.13.0a2.rst
.. date: 2023-11-20-14-13-02 .. gh-issue: 112243 .. nonce: FKdQnr .. release date: 2023-11-22 .. section: Core and Builtins
Don't include comments in f-string debug expressions. Patch by Pablo Galindo
..
.. date: 2023-11-20-10-40-40 .. gh-issue: 112287 .. nonce: 15gWAK .. section: Core and Builtins
Slightly optimize the Tier 2 (uop) interpreter by only loading oparg and
operand when needed. Also double the trace size limit again, to 512 this
time.
..
.. date: 2023-11-19-15-57-23 .. gh-issue: 112266 .. nonce: BSJMbR .. section: Core and Builtins
Change docstrings of :attr:~object.__dict__ and
:attr:~object.__weakref__.
..
.. date: 2023-11-17-16-49-32 .. gh-issue: 111807 .. nonce: QvjP9_ .. section: Core and Builtins
Lower the max parser stack depth to 1000 under WASI debug builds.
..
.. date: 2023-11-15-20-20-51 .. gh-issue: 111798 .. nonce: cs-3t3 .. section: Core and Builtins
When Python is built in debug mode, set the C recursion limit to 500 instead of 1500. A debug build is likely built with low optimization level which implies higher stack memory usage than a release build. Patch by Victor Stinner.
..
.. date: 2023-11-15-16-14-10 .. gh-issue: 106529 .. nonce: Y48ax9 .. section: Core and Builtins
Enable translating unspecialized FOR_ITER to Tier 2.
..
.. date: 2023-11-14-22-12-11 .. gh-issue: 111916 .. nonce: ZGCayL .. section: Core and Builtins
Make hashlib related modules thread-safe without the GIL
..
.. date: 2023-11-07-12-59-02 .. gh-issue: 81137 .. nonce: qFpJCY .. section: Core and Builtins
Deprecate assignment to a function's __code__ field when the new code
object is of a mismatched type (e.g., from a generator to a plain function).
..
.. date: 2023-11-06-16-44-09 .. gh-issue: 79932 .. nonce: 2qv7uD .. section: Core and Builtins
Raise exception if :meth:frame.clear is called on a suspended frame.
..
.. date: 2023-11-05-20-59-10 .. gh-issue: 81925 .. nonce: wKHLSS .. section: Core and Builtins
Implement native thread ids for GNU KFreeBSD.
..
.. date: 2023-11-05-06-40-35 .. gh-issue: 111843 .. nonce: c045cB .. section: Core and Builtins
Use exponential backoff to reduce the number of failed tier 2 optimization attempts by over 99%.
..
.. date: 2023-11-04-13-36-51 .. gh-issue: 110829 .. nonce: Pa0CJI .. section: Core and Builtins
Joining a thread now ensures the underlying OS thread has exited. This is required for safer fork() in multi-threaded processes.
..
.. date: 2023-11-03-22-48-29 .. gh-issue: 109369 .. nonce: ELYaxJ .. section: Core and Builtins
Make sure that tier 2 traces are de-optimized if the code is instrumented
..
.. date: 2023-11-03-19-25-38 .. gh-issue: 111772 .. nonce: aRQvOn .. section: Core and Builtins
Specialize slot loads and stores for _Py_T_OBJECT as well as Py_T_OBJECT_EX
..
.. date: 2023-11-03-01-23-48 .. gh-issue: 111666 .. nonce: l8Q8G5 .. section: Core and Builtins
Speed up :meth:BaseExceptionGroup.derive,
:meth:BaseExceptionGroup.subgroup, and :meth:BaseExceptionGroup.split by
changing how they parse passed arguments.
..
.. date: 2023-11-03-01-04-55 .. gh-issue: 111654 .. nonce: scUhDO .. section: Core and Builtins
Fix runtime crash when some error happens in opcode
LOAD_FROM_DICT_OR_DEREF.
..
.. date: 2023-11-02-15-00-57 .. gh-issue: 111623 .. nonce: BZxYc8 .. section: Core and Builtins
Add support for sharing tuples between interpreters using the cross-interpreter API. Patch by Anthony Shaw.
..
.. date: 2023-11-02-14-49-19 .. gh-issue: 111354 .. nonce: gIS3f- .. section: Core and Builtins
The oparg of :opcode:YIELD_VALUE is now 1 if the instruction is part
of a yield-from or await, and 0 otherwise.
The SUSPENDED frame state is now split into SUSPENDED and
SUSPENDED_YIELD_FROM. This simplifies the code in _PyGen_yf.
..
.. date: 2023-10-31-21-33-35 .. gh-issue: 111520 .. nonce: vw-rxJ .. section: Core and Builtins
Merge the Tier 1 (bytecode) and Tier 2 (micro-ops) interpreters together,
moving the Tier 2 interpreter loop and switch into
_PyEval_EvalFrameDefault() in Python/ceval.c. The
Python/executor.c file is gone. Also the TIER_ONE and TIER_TWO
macros are now handled by the code generator.
Beware! This changes the environment variables to enable micro-ops and
their debugging to PYTHON_UOPS and PYTHON_LLTRACE.
..
.. date: 2023-10-31-14-25-21 .. gh-issue: 109181 .. nonce: 11h6Mc .. section: Core and Builtins
Speed up :class:Traceback object creation by lazily compute the line number.
Patch by Pablo Galindo
..
.. date: 2023-10-29-20-11-21 .. gh-issue: 111420 .. nonce: IUT-GK .. section: Core and Builtins
Allow type comments in parenthesized with statements
..
.. date: 2023-10-29-12-33-33 .. gh-issue: 111438 .. nonce: bHTLLl .. section: Core and Builtins
Add support for sharing floats between interpreters using the cross-interpreter API. Patch by Anthony Shaw.
..
.. date: 2023-10-29-11-35-21 .. gh-issue: 111435 .. nonce: ageUWQ .. section: Core and Builtins
Add support for sharing of True and False between interpreters using the
cross-interpreter API. Patch by Anthony Shaw.
..
.. date: 2023-10-27-19-38-33 .. gh-issue: 102388 .. nonce: vd5YUZ .. section: Core and Builtins
Fix a bug where iso2022_jp_3 and iso2022_jp_2004 codecs read out of
bounds
..
.. date: 2023-10-27-12-17-49 .. gh-issue: 111366 .. nonce: _TSknV .. section: Core and Builtins
Fix an issue in the :mod:codeop that was causing :exc:SyntaxError
exceptions raised in the presence of invalid syntax to not contain precise
error messages. Patch by Pablo Galindo
..
.. date: 2023-10-27-11-51-40 .. gh-issue: 111380 .. nonce: vgSbir .. section: Core and Builtins
Fix a bug that was causing :exc:SyntaxWarning to appear twice when parsing
if invalid syntax is encountered later. Patch by Pablo galindo
..
.. date: 2023-10-27-11-22-09 .. gh-issue: 111374 .. nonce: e9lrPZ .. section: Core and Builtins
Added a new environment variable :envvar:PYTHON_FROZEN_MODULES. It
determines whether or not frozen modules are ignored by the import
machinery, equivalent of the :option:-X frozen_modules <-X> command-line
option.
..
.. date: 2023-10-26-18-45-20 .. gh-issue: 111354 .. nonce: GrT-Wf .. section: Core and Builtins
Remove oparg from :opcode:YIELD_VALUE. Change oparg of
:opcode:RESUME to include information about the except-depth. These
changes make it possible to simplify the code in generator close.
..
.. date: 2023-10-23-22-11-09 .. gh-issue: 94438 .. nonce: y2pITu .. section: Core and Builtins
Fix a regression that prevented jumping across is None and is not None when debugging. Patch by Savannah Ostrowski.
..
.. date: 2023-10-23-15-44-47 .. gh-issue: 67224 .. nonce: S4D6CR .. section: Core and Builtins
Show source lines in tracebacks when using the -c option when running
Python. Patch by Pablo Galindo
..
.. date: 2023-10-20-23-14-06 .. gh-issue: 111123 .. nonce: jjVc3M .. section: Core and Builtins
Fix a bug where a :keyword:global declaration in an :keyword:except
block is rejected when the global is used in the :keyword:else block.
..
.. date: 2023-10-17-11-03-45 .. gh-issue: 110938 .. nonce: X3sbMb .. section: Core and Builtins
Fix error messages for indented blocks with functions and classes with generic type parameters. Patch by Pablo Galindo
..
.. date: 2023-10-16-15-51-37 .. gh-issue: 109214 .. nonce: -RGTFH .. section: Core and Builtins
Remove unnecessary instruction pointer updates before returning from frames.
..
.. date: 2023-10-16-12-12-48 .. gh-issue: 110912 .. nonce: uEJGi_ .. section: Core and Builtins
Correctly display the traceback for :exc:MemoryError exceptions using the
:mod:traceback module. Patch by Pablo Galindo
..
.. date: 2023-10-15-22-18-45 .. gh-issue: 109894 .. nonce: UAmo06 .. section: Core and Builtins
Fixed crash due to improperly initialized static :exc:MemoryError in
subinterpreter.
..
.. date: 2023-10-15-20-45-35 .. gh-issue: 110892 .. nonce: oA6eVY .. section: Core and Builtins
Return NULL for PyTrace_RETURN events caused by an exception
..
.. date: 2023-10-14-12-19-34 .. gh-issue: 110864 .. nonce: -baPDE .. section: Core and Builtins
Fix argument parsing by _PyArg_UnpackKeywordsWithVararg for functions
defining pos-or-keyword, vararg, and kw-only parameters.
..
.. date: 2023-10-13-16-55-55 .. gh-issue: 109094 .. nonce: ziL4cJ .. section: Core and Builtins
Replace prev_instr on the interpreter frame by instr_ptr which
points to the beginning of the instruction that is currently executing (or
will execute once the frame resumes).
..
.. date: 2023-10-13-09-21-29 .. gh-issue: 110805 .. nonce: vhU7A7 .. section: Core and Builtins
Allow the repl to show source code and complete tracebacks. Patch by Pablo Galindo
..
.. date: 2023-10-12-17-15-23 .. gh-issue: 110722 .. nonce: sjMwQe .. section: Core and Builtins
Add :envvar:PYTHON_PRESITE=package.module to import a module early in the
interpreter lifecycle before site.py is executed. Python needs to be
:ref:built in debug mode <debug-build> for this option to exist.
..
.. date: 2023-10-12-12-09-01 .. gh-issue: 110481 .. nonce: 3Er3it .. section: Core and Builtins
Implement biased reference counting in --disable-gil builds.
..
.. date: 2023-10-09-19-54-33 .. gh-issue: 110543 .. nonce: 1wrxO8 .. section: Core and Builtins
Fix regression in Python 3.12 where :meth:types.CodeType.replace would
produce a broken code object if called on a module or class code object that
contains a comprehension. Patch by Jelle Zijlstra.
..
.. date: 2023-09-30-17-30-11 .. gh-issue: 89519 .. nonce: hz2pZf .. section: Core and Builtins
Removed chained :class:classmethod descriptors (introduced in
:issue:19072). This can no longer be used to wrap other descriptors such
as :class:property. The core design of this feature was flawed and caused
a number of downstream problems. To "pass-through" a :class:classmethod,
consider using the :attr:!__wrapped__ attribute that was added in Python
3.10.
..
.. date: 2023-09-15-23-39-43 .. gh-issue: 103615 .. nonce: WZavly .. section: Core and Builtins
Use local events for opcode tracing
..
.. bpo: 46657 .. date: 2023-09-06-12-36-11 .. nonce: xea1T_ .. section: Core and Builtins
Add mimalloc memory allocator support.
..
.. date: 2023-08-31-11-42-16 .. gh-issue: 106718 .. nonce: _-57DA .. section: Core and Builtins
When PyConfig.stdlib_dir is explicitly set, it's now respected and won't be overridden by PyConfig.home.
..
.. date: 2023-07-20-11-41-16 .. gh-issue: 106905 .. nonce: AyZpuB .. section: Core and Builtins
Fix incorrect SystemError about AST constructor recursion depth mismatch.
..
.. date: 2022-12-27-02-51-45 .. gh-issue: 100445 .. nonce: C8f6ph .. section: Core and Builtins
Improve error message for unterminated strings with escapes.
..
.. bpo: 45759 .. date: 2021-11-10-10-40-05 .. nonce: WJoB3D .. section: Core and Builtins
Improved error messages for elif/else statements not matching any
valid statements. Patch by Jeremiah Vivian.
..
.. date: 2023-11-14-18-43-55 .. gh-issue: 111942 .. nonce: x1pnrj .. section: Library
Fix SystemError in the TextIOWrapper constructor with non-encodable "errors" argument in non-debug mode.
..
.. date: 2023-11-14-16-31-59 .. gh-issue: 111995 .. nonce: OoX8JJ .. section: Library
Added the NI_IDN constant to the :mod:socket module when present in C
at build time for use with :func:socket.getnameinfo.
..
.. date: 2023-11-11-16-42-48 .. gh-issue: 109538 .. nonce: cMG5ux .. section: Library
Issue warning message instead of having :class:RuntimeError be displayed
when event loop has already been closed at :meth:StreamWriter.__del__.
..
.. date: 2023-11-10-22-08-28 .. gh-issue: 111942 .. nonce: MDFm6v .. section: Library
Fix crashes in :meth:io.TextIOWrapper.reconfigure when pass invalid
arguments, e.g. non-string encoding.
..
.. date: 2023-11-09-12-57-43 .. gh-issue: 111460 .. nonce: TQaz9I .. section: Library
:mod:curses: restore wide character support (including
:func:curses.unget_wch and :meth:~curses.window.get_wch) on macOS, which
was unavailable due to a regression in Python 3.12.
..
.. date: 2023-11-09-10-45-56 .. gh-issue: 103791 .. nonce: sdfkja .. section: Library
:class:contextlib.suppress now supports suppressing exceptions raised as
part of a :exc:BaseExceptionGroup, in addition to the recent support for
:exc:ExceptionGroup.
..
.. date: 2023-11-08-23-32-03 .. gh-issue: 111835 .. nonce: ufFiuW .. section: Library
The :class:mmap.mmap class now has an :meth:~mmap.mmap.seekable method
that can be used when a seekable file-like object is required.
The :meth:~mmap.mmap.seek method now returns the new absolute position.
Patch by Donghee Na.
..
.. date: 2023-11-08-15-58-57 .. gh-issue: 111804 .. nonce: uAXTOL .. section: Library
Remove posix.fallocate() under WASI as the underlying posix_fallocate() is not available in WASI preview2.
..
.. date: 2023-11-08-11-50-49 .. gh-issue: 111841 .. nonce: iSqdQf .. section: Library
Fix truncating arguments on an embedded null character in :meth:os.putenv
and :meth:os.unsetenv on Windows.
..
.. date: 2023-11-08-07-42-53 .. gh-issue: 111768 .. nonce: g-WpnV .. section: Library
:func:wsgiref.util.is_hop_by_hop is now exposed correctly in __all__.
..
.. date: 2023-11-04-21-12-27 .. gh-issue: 80731 .. nonce: Wq51xg .. section: Library
Avoid executing the default function in :class:cmd.Cmd in an except block
..
.. date: 2023-11-04-10-24-25 .. gh-issue: 111541 .. nonce: x0RBI1 .. section: Library
Fix :mod:doctest for :exc:SyntaxError not-builtin subclasses.
..
.. date: 2023-11-04-01-20-23 .. gh-issue: 111719 .. nonce: fUiKBD .. section: Library
Add extra argument validation for alias command in :mod:pdb
..
.. date: 2023-11-02-12-15-46 .. gh-issue: 111482 .. nonce: FWqZIU .. section: Library
:mod:time: Make :func:time.clock_gettime and
:func:time.clock_gettime_ns functions up to 2x faster by faster calling
convention. Patch by Victor Stinner.
..
.. date: 2023-11-01-14-03-24 .. gh-issue: 110894 .. nonce: 7-wZxC .. section: Library
Call loop exception handler for exceptions in client_connected_cb of
:func:asyncio.start_server so that applications can handle it. Patch by
Kumar Aditya.
..
.. date: 2023-10-31-07-46-56 .. gh-issue: 111531 .. nonce: 6zUV_G .. section: Library
Fix reference leaks in bind_class() and bind_all() methods of
:mod:tkinter widgets.
..
.. date: 2023-10-30-14-47-23 .. gh-issue: 111246 .. nonce: QJ_ehs .. section: Library
:meth:asyncio.loop.create_unix_server will now automatically remove the
Unix socket when the server is closed.
..
.. date: 2023-10-30-08-50-46 .. gh-issue: 111356 .. nonce: Bc8LvA .. section: Library
Added :func:io.text_encoding, :data:io.DEFAULT_BUFFER_SIZE, and
:class:io.IncrementalNewlineDecoder to io.__all__.
..
.. date: 2023-10-29-03-46-27 .. gh-issue: 66425 .. nonce: FWTdDo .. section: Library
Remove the code to set the REMOTE_HOST header from wsgiref module, as it is unreachable. This header is used for performance reasons, which is not necessary in the wsgiref module.
..
.. date: 2023-10-28-22-11-11 .. gh-issue: 111429 .. nonce: mJGxuQ .. section: Library
Speed up :meth:pathlib.PurePath.relative_to and
:meth:~pathlib.PurePath.is_relative_to.
..
.. date: 2023-10-28-04-21-17 .. gh-issue: 111342 .. nonce: m8Ln1k .. section: Library
Fixed typo in :func:math.sumprod.
..
.. date: 2023-10-27-12-46-56 .. gh-issue: 68166 .. nonce: 0EbWW4 .. section: Library
Remove mention of not supported "vsapi" element type in
:meth:tkinter.ttk.Style.element_create. Add tests for element_create()
and other ttk.Style methods. Add examples for element_create() in
the documentation.
..
.. date: 2023-10-27-09-56-20 .. gh-issue: 111388 .. nonce: SlmDbC .. section: Library
Add show_group parameter to :func:traceback.format_exception_only,
which allows to format :exc:ExceptionGroup instances.
..
.. date: 2023-10-25-11-54-00 .. gh-issue: 79033 .. nonce: 5ePgFl .. section: Library
Another attempt at fixing :func:asyncio.Server.wait_closed. It now
blocks until both conditions are true: the server is closed, and there are
no more active connections. (This means that in some cases where in 3.12.0
this function would incorrectly have returned immediately, it will now
block; in particular, when there are no active connections but the server
hasn't been closed yet.)
..
.. date: 2023-10-25-11-13-35 .. gh-issue: 111259 .. nonce: z7ndeA .. section: Library
Optimize recursive wildcards in :mod:pathlib.
..
.. date: 2023-10-25-08-42-05 .. gh-issue: 111295 .. nonce: H2K4lf .. section: Library
Fix :mod:time not checking for errors when initializing.
..
.. date: 2023-10-24-12-20-46 .. gh-issue: 111253 .. nonce: HFywSK .. section: Library
Add error checking during :mod:!_socket module init.
..
.. date: 2023-10-24-12-09-46 .. gh-issue: 111251 .. nonce: urFYtn .. section: Library
Fix :mod:!_blake2 not checking for errors when initializing.
..
.. date: 2023-10-23-23-14-54 .. gh-issue: 111233 .. nonce: sCdCC0 .. section: Library
Fix :mod:select not checking for errors when initializing.
..
.. date: 2023-10-23-22-40-47 .. gh-issue: 111230 .. nonce: k3Jm84 .. section: Library
Fix :mod:ssl not checking for errors when initializing.
..
.. date: 2023-10-23-13-53-58 .. gh-issue: 111174 .. nonce: Oohmzd .. section: Library
Fix crash in :meth:io.BytesIO.getbuffer called repeatedly for empty
BytesIO.
..
.. date: 2023-10-22-21-28-05 .. gh-issue: 111187 .. nonce: _W11Ab .. section: Library
Postpone removal version for locale.getdefaultlocale() to Python 3.15.
..
.. date: 2023-10-21-13-57-06 .. gh-issue: 111159 .. nonce: GoHp7s .. section: Library
Fix :mod:doctest output comparison for exceptions with notes.
..
.. date: 2023-10-20-15-29-10 .. gh-issue: 110910 .. nonce: u2oPwX .. section: Library
Fix invalid state handling in :class:asyncio.TaskGroup and
:class:asyncio.Timeout. They now raise proper RuntimeError if they are
improperly used and are left in consistent state after this.
..
.. date: 2023-10-19-22-46-34 .. gh-issue: 111092 .. nonce: hgut12 .. section: Library
Make turtledemo run without default root enabled.
..
.. date: 2023-10-16-18-41-51 .. gh-issue: 110944 .. nonce: CmUKXo .. section: Library
Support alias and convenience vars for :mod:pdb completion
..
.. date: 2023-10-15-08-08-26 .. gh-issue: 110745 .. nonce: mxEkh0 .. section: Library
Added newline parameter to :meth:pathlib.Path.read_text. Patch by Junya
Okabe.
..
.. date: 2023-10-14-21-33-57 .. gh-issue: 84583 .. nonce: -Cmn4_ .. section: Library
Make :mod:pdb enter post-mortem mode even for :exc:SyntaxError
..
.. date: 2023-10-14-20-15-53 .. gh-issue: 80675 .. nonce: _M-cQC .. section: Library
Set f_trace_lines = True on all frames upon :func:pdb.set_trace
..
.. date: 2023-10-13-06-47-20 .. gh-issue: 110771 .. nonce: opwdlc .. section: Library
Expose the setup and cleanup portions of asyncio.run_forever() as the
standalone methods asyncio.run_forever_setup() and
asyncio.run_forever_cleanup(). This allows for tighter integration with
GUI event loops.
..
.. date: 2023-10-12-15-16-44 .. gh-issue: 110774 .. nonce: AdCb5A .. section: Library
Support setting the :class:asyncio.Runner loop_factory kwarg in
:class:unittest.IsolatedAsyncioTestCase
..
.. date: 2023-10-10-17-56-41 .. gh-issue: 110392 .. nonce: 6g6CnP .. section: Library
Fix :func:tty.setraw and :func:tty.setcbreak: previously they returned
partially modified list of the original tty attributes.
:func:tty.cfmakeraw and :func:tty.cfmakecbreak now make a copy of the
list of special characters before modifying it.
..
.. date: 2023-10-09-23-59-04 .. gh-issue: 59013 .. nonce: qPbS-G .. section: Library
Make line number of function breakpoint more precise in :mod:pdb
..
.. date: 2023-10-08-18-38-09 .. gh-issue: 88434 .. nonce: 2Q_IkG .. section: Library
Emit deprecation warning for non-integer numbers in :mod:gettext functions
and methods that consider plural forms even if the translation was not
found.
..
.. date: 2023-10-08-14-17-06 .. gh-issue: 110395 .. nonce: _tdCsV .. section: Library
Ensure that :func:select.kqueue objects correctly appear as closed in
forked children, to prevent operations on an invalid file descriptor.
..
.. date: 2023-10-02-05-23-27 .. gh-issue: 110196 .. nonce: djwt0z .. section: Library
Add __reduce__ method to :class:IPv6Address in order to keep
scope_id
..
.. date: 2023-09-25-20-05-41 .. gh-issue: 109747 .. nonce: _cRJH8 .. section: Library
Improve errors for unsupported look-behind patterns. Now re.error is raised instead of OverflowError or RuntimeError for too large width of look-behind pattern.
..
.. date: 2023-09-15-12-30-21 .. gh-issue: 109466 .. nonce: 6ah-aw .. section: Library
Add the :attr:ipaddress.IPv4Address.ipv6_mapped property, which returns the
IPv4-mapped IPv6 address.
..
.. date: 2023-09-08-12-10-10 .. gh-issue: 85098 .. nonce: DfQbeJ .. section: Library
Implement the CLI of the :mod:symtable module and improve the repr of
:class:~symtable.Symbol.
..
.. date: 2023-09-02-16-07-23 .. gh-issue: 108791 .. nonce: fBcAqh .. section: Library
Improved error handling in :mod:pdb command line interface, making it
produce more concise error messages.
..
.. date: 2023-08-30-19-10-35 .. gh-issue: 105931 .. nonce: Lpwve8 .. section: Library
Change :mod:compileall to only strip the stripdir prefix from the full
path recorded in the compiled .pyc file, when the prefix matches the
start of the full path in its entirety. When the prefix does not match, no
stripping is performed and a warning to this effect is displayed.
Previously all path components of the stripdir prefix that matched the full path were removed, while those that did not match were left alone (including ones interspersed between matching components).
..
.. date: 2023-07-29-19-00-39 .. gh-issue: 107431 .. nonce: 1GzJ2p .. section: Library
Make the DictProxy and ListProxy types in
:mod:multiprocessing.managers :ref:Generic Alias Types<types-genericalias> for [] use in typing contexts.
..
.. date: 2023-07-13-00-24-52 .. gh-issue: 72904 .. nonce: Yn5-j0 .. section: Library
Add :func:glob.translate. This function converts a pathname with
shell-style wildcards to a regular expression.
..
.. date: 2023-05-30-02-01-14 .. gh-issue: 90026 .. nonce: FyCXw8 .. section: Library
Define USE_XATTRS on Cygwin so that XATTR-related functions in the
:mod:os module become available.
..
.. date: 2023-04-26-16-37-00 .. gh-issue: 90890 .. nonce: fIag4w .. section: Library
New methods :meth:mailbox.Maildir.get_info,
:meth:mailbox.Maildir.set_info, :meth:mailbox.Maildir.get_flags,
:meth:mailbox.Maildir.set_flags, :meth:mailbox.Maildir.add_flag,
:meth:mailbox.Maildir.remove_flag. These methods speed up accessing a
message's info and/or flags and are useful when it is not necessary to
access the message's contents, as when iterating over a Maildir to find
messages with specific flags.
..
.. date: 2023-04-15-14-45-21 .. gh-issue: 102956 .. nonce: Z6qeUy .. section: Library
Fix returning of empty byte strings after seek in zipfile module
..
.. date: 2023-03-22-02-01-30 .. gh-issue: 102895 .. nonce: HiEqaZ .. section: Library
Added a parameter local_exit for :func:code.interact to prevent
exit() and quit from closing sys.stdin and raise SystemExit.
..
.. date: 2022-10-14-21-11-10 .. gh-issue: 97928 .. nonce: Pdxh1G .. section: Library
Change the behavior of :meth:tkinter.Text.count. It now always returns an
integer if one or less counting options are specified. Previously it could
return a single count as a 1-tuple, an integer (only if option "update"
was specified) or None if no items found. The result is now the same if
wantobjects is set to 0.
..
.. date: 2022-10-05-15-01-36 .. gh-issue: 96954 .. nonce: ezwkrU .. section: Library
Switch the storage of the unicode codepoint names to use a different
data-structure, a directed acyclic word graph <https://en.wikipedia.org/wiki/Deterministic_acyclic_finite_state_automaton>_.
This makes the unicodedata shared library about 440 KiB smaller. Contributed
by Carl Friedrich Bolz-Tereick using code from the PyPy project.
..
.. date: 2022-05-28-20-55-07 .. gh-issue: 73561 .. nonce: YRmAvy .. section: Library
Omit the interface scope from an IPv6 address when used as Host header by
:mod:http.client.
..
.. date: 2022-05-06-15-49-57 .. gh-issue: 86826 .. nonce: rf006W .. section: Library
:mod:zipinfo now supports the full range of values in the TZ string
determined by RFC 8536 and detects all invalid formats. Both Python and C
implementations now raise exceptions of the same type on invalid data.
..
.. date: 2023-11-17-15-20-41 .. gh-issue: 111808 .. nonce: jtIayt .. section: Tests
Make the default value of test.support.infinite_recursion() to be
conditional based on whether optimizations were used when compiling the
interpreter. This helps with platforms like WASI whose stack size is greatly
restricted in debug builds.
..
.. date: 2023-11-03-18-59-13 .. gh-issue: 110722 .. nonce: jvT1pb .. section: Tests
Gathering line coverage of standard libraries within the regression test suite is now precise, as well as much faster. Patch by Łukasz Langa.
..
.. date: 2023-10-31-22-09-25 .. gh-issue: 110367 .. nonce: UhQi44 .. section: Tests
Make regrtest --verbose3 option compatible with --huntrleaks -jN
options. The ./python -m test -j1 -R 3:3 --verbose3 command now works as
expected. Patch by Victor Stinner.
..
.. date: 2023-10-21-19-27-36 .. gh-issue: 111165 .. nonce: FU6mUk .. section: Tests
Remove no longer used functions run_unittest() and run_doctest()
from the :mod:test.support module.
..
.. date: 2023-10-21-00-10-36 .. gh-issue: 110932 .. nonce: jktjJU .. section: Tests
Fix regrtest if the SOURCE_DATE_EPOCH environment variable is defined:
use the variable value as the random seed. Patch by Victor Stinner.
..
.. date: 2023-10-17-17-54-36 .. gh-issue: 110995 .. nonce: Fx8KRD .. section: Tests
test_gdb: Fix detection of gdb built without Python scripting support. Patch by Victor Stinner.
..
.. date: 2023-10-16-13-47-24 .. gh-issue: 110918 .. nonce: aFgZK3 .. section: Tests
Test case matching patterns specified by options --match, --ignore,
--matchfile and --ignorefile are now tested in the order of
specification, and the last match determines whether the test case be run or
ignored.
..
.. date: 2023-09-15-15-00-14 .. gh-issue: 108747 .. nonce: ql0owS .. section: Tests
Add unit test for usercustomize and sitecustomize hooks from
:class:site.
..
.. date: 2023-11-15-16-56-20 .. gh-issue: 96954 .. nonce: 6FYvKn .. section: Build
Make make regen-unicodedata work for out-of-tree builds of CPython.
..
.. date: 2023-11-15-13-40-29 .. gh-issue: 112088 .. nonce: UJQxxh .. section: Build
Add Tools/build/regen-configure.sh script to regenerate the
configure with an Ubuntu container image. The
quay.io/tiran/cpython_autoconf:271 container image
(tiran/cpython_autoconf <https://github.com/tiran/cpython_autoconf>_) is
no longer used. Patch by Victor Stinner.
..
.. date: 2023-10-20-15-29-31 .. gh-issue: 111046 .. nonce: 2DxQl8 .. section: Build
For wasi-threads, memory is now exported to fix compatibility issues with some wasm runtimes.
..
.. date: 2023-10-17-03-10-40 .. gh-issue: 110828 .. nonce: 31vQ9B .. section: Build
AIX 32bit needs -latomic to build the :mod:!_testcapi extension
module.
..
.. date: 2023-10-17-01-56-11 .. gh-issue: 85283 .. nonce: V156T2 .. section: Build
The errno, md5, resource, winsound, _ctypes_test,
_multiprocessing.posixshmem, _scproxy, _stat,
_testimportmultiple and _uuid C extensions are now built with the
:ref:limited C API <limited-c-api>. Patch by Victor Stinner.
..
.. date: 2023-11-13-22-35-27 .. gh-issue: 111856 .. nonce: vEtA5z .. section: Windows
Fixes :func:~os.fstat on file systems that do not support file ID
requests. This includes FAT32 and exFAT.
..
.. date: 2023-10-25-05-01-28 .. gh-issue: 111293 .. nonce: FSsLT6 .. section: Windows
Fix :data:os.DirEntry.inode dropping higher 64 bits of a file id on some
filesystems on Windows.
..
.. date: 2023-10-19-21-46-18 .. gh-issue: 110913 .. nonce: CWlPfg .. section: Windows
WindowsConsoleIO now correctly chunks large buffers without splitting up UTF-8 sequences.
..
.. date: 2023-10-31-22-13-05 .. gh-issue: 59703 .. nonce: SML6Ag .. section: macOS
For macOS framework builds, in getpath.c use the system dladdr
function to find the path to the shared library rather than depending on
deprecated macOS APIs.
..
.. date: 2023-10-18-17-26-36 .. gh-issue: 110950 .. nonce: sonoma .. section: macOS
Update macOS installer to include an upstream Tcl/Tk fix for the Secure coding is not enabled for restorable state! warning encountered in Tkinter
on macOS 14 Sonoma.
..
.. date: 2023-10-18-01-40-36 .. gh-issue: 111015 .. nonce: NaLI2L .. section: macOS
Ensure that IDLE.app and Python Launcher.app are installed with appropriate permissions on macOS builds.
..
.. date: 2023-09-02-08-49-57 .. gh-issue: 71383 .. nonce: Ttkchg .. section: macOS
Update macOS installer to include an upstream Tcl/Tk fix for the
ttk::ThemeChanged error encountered in Tkinter.
..
.. date: 2023-08-30-16-33-57 .. gh-issue: 92603 .. nonce: ATkKVO .. section: macOS
Update macOS installer to include a fix accepted by upstream Tcl/Tk for a
crash encountered after the first :meth:tkinter.Tk instance is destroyed.
..
.. bpo: 35668 .. date: 2019-01-07-06-18-25 .. nonce: JimxP5 .. section: IDLE
Add docstrings to the IDLE debugger module. Fix two bugs: initialize
Idb.botframe (should be in Bdb); in Idb.in_rpc_code, check whether
prev_frame is None before trying to use it. Greatly expand test_debugger.
..
.. date: 2023-11-09-13-04-29 .. gh-issue: 111903 .. nonce: 7Prryr .. section: Tools/Demos
Argument Clinic now supports the @critical_section directive that
instructs Argument Clinic to generate a critical section around the function
call, which locks the self object in --disable-gil builds. Patch by
Sam Gross.
..
.. date: 2023-11-15-18-36-21 .. gh-issue: 112026 .. nonce: _Yybr5 .. section: C API
Add again the private _PyThreadState_UncheckedGet() function as an alias
to the new public :c:func:PyThreadState_GetUnchecked function. Patch by
Victor Stinner.
..
.. date: 2023-11-15-17-10-09 .. gh-issue: 112026 .. nonce: ts9yyn .. section: C API
Restore the removed _PyDict_GetItemStringWithError() function. It is
used by numpy. Patch by Victor Stinner.
..
.. date: 2023-11-15-16-07-57 .. gh-issue: 112026 .. nonce: bnr8dd .. section: C API
Restore removed private C API functions, macros and structures which have no simple replacement for now:
Patch by Victor Stinner.
..
.. date: 2023-11-13-17-57-11 .. gh-issue: 112026 .. nonce: WJLJcI .. section: C API
Add again <ctype.h> and <unistd.h> includes in Python.h, but
don't include them in the limited C API version 3.13 and newer. Patch by
Victor Stinner.
..
.. date: 2023-11-10-10-24-28 .. gh-issue: 111956 .. nonce: ImE6Cx .. section: C API
Add internal-only one-time initialization API: _PyOnceFlag and
_PyOnceFlag_CallOnce.
..
.. date: 2023-11-10-10-21-38 .. gh-issue: 111262 .. nonce: 2utB5m .. section: C API
Add :c:func:PyDict_Pop and :c:func:PyDict_PopString functions: remove a
key from a dictionary and optionally return the removed value. This is
similar to :meth:dict.pop, but without the default value and not raising
:exc:KeyError if the key missing. Patch by Stefan Behnel and Victor
Stinner.
..
.. date: 2023-11-08-20-28-03 .. gh-issue: 111863 .. nonce: RPeFAX .. section: C API
Rename Py_NOGIL to Py_GIL_DISABLED. Patch by Hugo van Kemenade.
..
.. date: 2023-11-08-18-37-19 .. gh-issue: 111138 .. nonce: 3Ypq8h .. section: C API
Add :c:func:PyList_Extend and :c:func:PyList_Clear functions: similar to
Python list.extend() and list.clear() methods. Patch by Victor
Stinner.
..
.. date: 2023-10-31-18-22-03 .. gh-issue: 108765 .. nonce: _beYv8 .. section: C API
On Windows, Python.h no longer includes the <stddef.h> standard
header file. If needed, it should now be included explicitly. Patch by
Victor Stinner.
..
.. date: 2023-10-31-14-58-17 .. gh-issue: 111569 .. nonce: _V8iu4 .. section: C API
Implement "Python Critical Sections" from :pep:703. These are macros to
help replace the GIL with per-object locks in the --disable-gil build of
CPython. The macros are no-ops in the default build.
..
.. date: 2023-10-30-18-13-01 .. gh-issue: 111506 .. nonce: EUdO22 .. section: C API
In the limited C API version 3.13, :c:func:Py_SET_REFCNT function is now
implemented as an opaque function call. Patch by Victor Stinner.
..
.. date: 2023-10-19-22-39-24 .. gh-issue: 108082 .. nonce: uJytvc .. section: C API
Add :c:func:PyErr_FormatUnraisable function.
..
.. date: 2023-10-17-10-21-59 .. gh-issue: 110964 .. nonce: OxqEjd .. section: C API
Move the undocumented private _PyArg functions and _PyArg_Parser structure
to internal C API (pycore_modsupport.h). Patch by Victor Stinner.
..
.. date: 2023-10-13-14-18-06 .. gh-issue: 110815 .. nonce: tEFLVl .. section: C API
Support non-ASCII keyword names in :c:func:PyArg_ParseTupleAndKeywords.
..
.. date: 2023-10-02-23-08-53 .. gh-issue: 109587 .. nonce: UqqnDY .. section: C API
Introduced :c:func:PyUnstable_PerfTrampoline_CompileCode,
:c:func:PyUnstable_PerfTrampoline_SetPersistAfterFork and
:c:func:PyUnstable_CopyPerfMapFile. These functions allow extension
modules to initialize trampolines eagerly, after the application is "warmed
up". This makes it possible to have perf-trampolines running in an
always-enabled fashion.
..
.. date: 2023-08-28-17-40-51 .. gh-issue: 85283 .. nonce: raFNiD .. section: C API
Add the :c:func:PySys_Audit function to the limited C API. Patch by Victor
Stinner.
..
.. date: 2023-08-28-17-34-10 .. gh-issue: 85283 .. nonce: f1zXcc .. section: C API
Add :c:func:PyMem_RawMalloc, :c:func:PyMem_RawCalloc,
:c:func:PyMem_RawRealloc and :c:func:PyMem_RawFree to the limited C API.
Patch by Victor Stinner.
..
.. date: 2023-07-12-12-14-52 .. gh-issue: 106672 .. nonce: fkRjmi .. section: C API
Functions :c:func:PyDict_GetItem, :c:func:PyDict_GetItemString,
:c:func:PyMapping_HasKey, :c:func:PyMapping_HasKeyString,
:c:func:PyObject_HasAttr, :c:func:PyObject_HasAttrString, and
:c:func:PySys_GetObject, which clear all errors occurred during calling
the function, report now them using :func:sys.unraisablehook.
..
.. date: 2023-06-08-21-12-44 .. gh-issue: 67565 .. nonce: UkK3x- .. section: C API
Remove redundant C-contiguity check in :file:getargs.c, :mod:binascii,
:mod:ssl and Argument Clinic. Patched by Stefan Krah and Furkan Onder