cpython/Misc/NEWS.d/3.14.0a2.rst

1763 lines
38 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

.. date: 2024-11-16-22-08-41
.. gh-issue: 126911
.. nonce: HchCZZ
.. release date: 2024-11-19
.. section: Windows
Update credits command output.
..
.. date: 2024-11-12-22-31-13
.. gh-issue: 118973
.. nonce: _lfxW6
.. section: Windows
Ensures the experimental free-threaded install includes the ``_tkinter``
module. The optional Tcl/Tk component must also be installed in order for
the module to work.
..
.. date: 2024-11-07-20-42-31
.. gh-issue: 126497
.. nonce: EARpd-
.. section: Windows
Fixes venv failure due to missing redirector executables in experimental
free-threaded installs.
..
.. date: 2024-10-29-20-09-52
.. gh-issue: 126074
.. nonce: 83ZzZs
.. section: Windows
Removed unnecessary DLLs from Windows embeddable package
..
.. date: 2024-10-29-19-48-03
.. gh-issue: 125315
.. nonce: jdB9qN
.. section: Windows
Avoid crashing in :mod:`platform` due to slow WMI calls on some Windows
machines.
..
.. date: 2024-10-29-09-39-06
.. gh-issue: 126084
.. nonce: 3wAL8o
.. section: Windows
Fix venvwlauncher to launch pythonw instead of python so no extra console
window is created.
..
.. date: 2024-10-23-17-24-23
.. gh-issue: 125842
.. nonce: m3EF9E
.. section: Windows
Fix a :exc:`SystemError` when :func:`sys.exit` is called with ``0xffffffff``
on Windows.
..
.. date: 2024-10-15-21-28-43
.. gh-issue: 125550
.. nonce: hmGWCP
.. section: Windows
Enable the :ref:`launcher` to detect Python 3.14 installs from the Windows
Store.
..
.. date: 2024-09-07-15-16-24
.. gh-issue: 123803
.. nonce: J9VNQU
.. section: Windows
All Windows code pages are now supported as "cpXXX" codecs on Windows.
..
.. date: 2024-11-13-22-23-36
.. gh-issue: 126807
.. nonce: vpaWuN
.. section: Tools/Demos
Fix extraction warnings in :program:`pygettext.py` caused by mistaking
function definitions for function calls.
..
.. date: 2024-10-30-13-59-07
.. gh-issue: 126167
.. nonce: j5cCWE
.. section: Tools/Demos
The iOS testbed was modified so that it can be used by third-party projects
for testing purposes.
..
.. date: 2024-11-17-16-56-48
.. gh-issue: 126909
.. nonce: 60VTxW
.. section: Tests
Fix test_os extended attribute tests to work on filesystems with 1 KiB xattr
size limit.
..
.. date: 2024-10-21-14-10-56
.. gh-issue: 125730
.. nonce: kcWbvI
.. section: Tests
Change ``make test`` to not run GUI tests by default. Use ``make ci`` to run
tests with GUI tests instead.
..
.. date: 2024-09-30-22-52-44
.. gh-issue: 124295
.. nonce: VZy5kx
.. section: Tests
Add translation tests to the :mod:`argparse` module.
..
.. date: 2024-11-13-11-09-12
.. gh-issue: 126623
.. nonce: TO7NnR
.. section: Security
Upgrade libexpat to 2.6.4
..
.. date: 2024-11-18-15-33-25
.. gh-issue: 85957
.. nonce: 8gT3B-
.. section: Library
Add missing MIME types for images with RFCs: emf, fits, g3fax, jp2, jpm,
jpx, t38, tiff-fx and wmf. Patch by Hugo van Kemenade.
..
.. date: 2024-11-17-01-14-59
.. gh-issue: 126920
.. nonce: s8-f_L
.. section: Library
Fix the ``prefix`` and ``exec_prefix`` keys from
:py:func:`sysconfig.get_config_vars` incorrectly having the same value as
:py:const:`sys.base_prefix` and :py:const:`sys.base_exec_prefix`,
respectively, inside virtual environments. They now accurately reflect
:py:const:`sys.prefix` and :py:const:`sys.exec_prefix`.
..
.. date: 2024-11-14-22-25-49
.. gh-issue: 67877
.. nonce: G9hw0w
.. section: Library
Fix memory leaks when :mod:`regular expression <re>` matching terminates
abruptly, either because of a signal or because memory allocation fails.
..
.. date: 2024-11-14-13-16-20
.. gh-issue: 125063
.. nonce: kJ-WnH
.. section: Library
:mod:`marshal` now supports :class:`slice` objects. The marshal format
version was increased to 5.
..
.. date: 2024-11-13-22-25-57
.. gh-issue: 126789
.. nonce: lKzlc7
.. section: Library
Fixed the values of :py:func:`sysconfig.get_config_vars`,
:py:func:`sysconfig.get_paths`, and their siblings when the :py:mod:`site`
initialization happens after :py:mod:`sysconfig` has built a cache for
:py:func:`sysconfig.get_config_vars`.
..
.. date: 2024-11-13-20-03-18
.. gh-issue: 126188
.. nonce: RJLKk-
.. section: Library
Update bundled pip to 24.3.1
..
.. date: 2024-11-12-21-43-12
.. gh-issue: 126766
.. nonce: oi2KJ7
.. section: Library
Fix issue where :func:`urllib.request.url2pathname` failed to discard two
leading slashes introducing an empty authority section.
..
.. date: 2024-11-11-14-52-21
.. gh-issue: 126705
.. nonce: 0W7jFW
.. section: Library
Allow :class:`os.PathLike` to be a base for Protocols.
..
.. date: 2024-11-11-13-24-22
.. gh-issue: 126699
.. nonce: ONGbMd
.. section: Library
Allow :class:`collections.abc.AsyncIterator` to be a base for Protocols.
..
.. date: 2024-11-11-13-00-21
.. gh-issue: 126654
.. nonce: 4gfP2y
.. section: Library
Fix crash when non-dict was passed to several functions in ``_interpreters``
module.
..
.. date: 2024-11-10-18-14-51
.. gh-issue: 104745
.. nonce: zAa5Ke
.. section: Library
Limit starting a patcher (from :func:`unittest.mock.patch` or
:func:`unittest.mock.patch.object`) more than once without stopping it
..
.. date: 2024-11-09-10-31-10
.. gh-issue: 126595
.. nonce: A-7MyC
.. section: Library
Fix a crash when instantiating :class:`itertools.count` with an initial
count of :data:`sys.maxsize` on debug builds. Patch by Bénédikt Tran.
..
.. date: 2024-11-08-17-05-10
.. gh-issue: 120423
.. nonce: 7rdLVV
.. section: Library
Fix issue where :func:`urllib.request.pathname2url` mishandled Windows paths
with embedded forward slashes.
..
.. date: 2024-11-08-11-06-14
.. gh-issue: 126565
.. nonce: dFFO22
.. section: Library
Improve performances of :meth:`zipfile.Path.open` for non-reading modes.
..
.. date: 2024-11-07-22-41-47
.. gh-issue: 126505
.. nonce: iztYE1
.. section: Library
Fix bugs in compiling case-insensitive :mod:`regular expressions <re>` with
character classes containing non-BMP characters: upper-case non-BMP
character did was ignored and the ASCII flag was ignored when matching a
character range whose upper bound is beyond the BMP region.
..
.. date: 2024-11-07-01-40-11
.. gh-issue: 117378
.. nonce: o9O5uM
.. section: Library
Fixed the :mod:`multiprocessing` ``"forkserver"`` start method forkserver
process to correctly inherit the parent's :data:`sys.path` during the
importing of :func:`multiprocessing.set_forkserver_preload` modules in the
same manner as :data:`sys.path` is configured in workers before executing
work items.
This bug caused some forkserver module preloading to silently fail to
preload. This manifested as a performance degration in child processes when
the ``sys.path`` was required due to additional repeated work in every
worker.
It could also have a side effect of ``""`` remaining in :data:`sys.path`
during forkserver preload imports instead of the absolute path from
:func:`os.getcwd` at multiprocessing import time used in the worker
``sys.path``.
The ``sys.path`` differences between phases in the child process could
potentially have caused preload to import incorrect things from the wrong
location. We are unaware of that actually having happened in practice.
..
.. date: 2024-11-06-23-40-28
.. gh-issue: 125679
.. nonce: Qq9xF5
.. section: Library
The :class:`multiprocessing.Lock` and :class:`multiprocessing.RLock`
``repr`` values no longer say "unknown" on macOS.
..
.. date: 2024-11-06-18-30-50
.. gh-issue: 126476
.. nonce: F1wh3c
.. section: Library
Raise :class:`calendar.IllegalMonthError` (now a subclass of
:class:`IndexError`) for :func:`calendar.month` when the input month is not
correct.
..
.. date: 2024-11-06-13-41-38
.. gh-issue: 126489
.. nonce: toaf-0
.. section: Library
The Python implementation of :mod:`pickle` no longer calls
:meth:`pickle.Pickler.persistent_id` for the result of
:meth:`!persistent_id`.
..
.. date: 2024-11-05-11-28-45
.. gh-issue: 126451
.. nonce: XJMtqz
.. section: Library
Register the :class:`contextvars.Context` type to
:class:`collections.abc.Mapping`.
..
.. date: 2024-11-05-09-54-49
.. gh-issue: 126175
.. nonce: spnjJr
.. section: Library
Add ``msg``, ``doc``, ``pos``, ``lineno`` and ``colno`` attributes to
:exc:`tomllib.TOMLDecodeError`. Deprecate instantiating with free-form
arguments.
..
.. date: 2024-11-04-22-53-09
.. gh-issue: 89416
.. nonce: YVQaas
.. section: Library
Add :rfc:`9559` MIME types for Matroska audiovisual container formats. Patch
by Hugo van Kemenade.
..
.. date: 2024-11-04-16-40-02
.. gh-issue: 126417
.. nonce: OWPqn0
.. section: Library
Register the :class:`!multiprocessing.managers.DictProxy` and
:class:`!multiprocessing.managers.ListProxy` types in
:mod:`multiprocessing.managers` to :class:`collections.abc.MutableMapping`
and :class:`collections.abc.MutableSequence`, respectively.
..
.. date: 2024-11-04-13-16-18
.. gh-issue: 126390
.. nonce: Cxvqa5
.. section: Library
Add support for returning intermixed options and non-option arguments in
order in :func:`getopt.gnu_getopt`.
..
.. date: 2024-11-03-23-25-07
.. gh-issue: 126374
.. nonce: Xu_THP
.. section: Library
Add support for options with optional arguments in the :mod:`getopt` module.
..
.. date: 2024-11-03-14-43-51
.. gh-issue: 126363
.. nonce: Xus7vU
.. section: Library
Speed up pattern parsing in :meth:`pathlib.Path.glob` by skipping creation
of a :class:`pathlib.Path` object for the pattern.
..
.. date: 2024-11-03-10-48-07
.. gh-issue: 126353
.. nonce: ChDzot
.. section: Library
:func:`asyncio.get_event_loop` now does not implicitly creates an event
loop. It now raises a :exc:`RuntimeError` if there is no set event loop.
Patch by Kumar Aditya.
..
.. date: 2024-11-03-09-42-42
.. gh-issue: 126313
.. nonce: EFP6Dl
.. section: Library
Fix an issue in :func:`curses.napms` when :func:`curses.initscr` has not yet
been called. Patch by Bénédikt Tran.
..
.. date: 2024-11-02-19-20-44
.. gh-issue: 126303
.. nonce: yVvyWB
.. section: Library
Fix pickling and copying of :class:`os.sched_param` objects.
..
.. date: 2024-11-01-14-31-41
.. gh-issue: 126138
.. nonce: yTniOG
.. section: Library
Fix a use-after-free crash on :class:`asyncio.Task` objects whose underlying
coroutine yields an object that implements an evil
:meth:`~object.__getattribute__`. Patch by Nico Posada.
..
.. date: 2024-11-01-10-35-49
.. gh-issue: 120057
.. nonce: YWy81Q
.. section: Library
Replace the ``os.environ.refresh()`` method with a new
:func:`os.reload_environ` function. Patch by Victor Stinner.
..
.. date: 2024-10-31-14-06-28
.. gh-issue: 126220
.. nonce: uJAJCU
.. section: Library
Fix crash in :class:`!cProfile.Profile` and :class:`!_lsprof.Profiler` when
their callbacks were directly called with 0 arguments.
..
.. date: 2024-10-30-23-59-36
.. gh-issue: 126212
.. nonce: _9uYjT
.. section: Library
Fix issue where :func:`urllib.request.pathname2url` and
:func:`~urllib.request.url2pathname` removed slashes from Windows DOS drive
paths and URLs.
..
.. date: 2024-10-30-23-42-44
.. gh-issue: 126223
.. nonce: k2qooc
.. section: Library
Raise a :exc:`UnicodeEncodeError` instead of a :exc:`SystemError` upon
calling :func:`!_interpreters.create` with an invalid Unicode character.
..
.. date: 2024-10-30-20-45-17
.. gh-issue: 126205
.. nonce: CHEmtx
.. section: Library
Fix issue where :func:`urllib.request.pathname2url` generated URLs beginning
with four slashes (rather than two) when given a Windows UNC path.
..
.. date: 2024-10-30-00-12-22
.. gh-issue: 126156
.. nonce: BOSqv0
.. section: Library
Improved performances of creating :py:class:`~http.cookies.Morsel` objects
by a factor of 3.8x.
..
.. date: 2024-10-29-11-45-44
.. gh-issue: 126105
.. nonce: cOL-R6
.. section: Library
Fix a crash in :mod:`ast` when the :attr:`ast.AST._fields` attribute is
deleted.
..
.. date: 2024-10-29-10-58-52
.. gh-issue: 126106
.. nonce: rlF798
.. section: Library
Fixes a possible ``NULL`` pointer dereference in :mod:`ssl`.
..
.. date: 2024-10-29-10-38-28
.. gh-issue: 126080
.. nonce: qKRBuo
.. section: Library
Fix a use-after-free crash on :class:`asyncio.Task` objects for which the
underlying event loop implements an evil :meth:`~object.__getattribute__`.
Reported by Nico-Posada. Patch by Bénédikt Tran.
..
.. date: 2024-10-29-07-24-52
.. gh-issue: 125322
.. nonce: sstOM-
.. section: Library
Correct detection of complex numbers support in libffi.
..
.. date: 2024-10-28-22-35-22
.. gh-issue: 126083
.. nonce: TuI--n
.. section: Library
Fixed a reference leak in :class:`asyncio.Task` objects when reinitializing
the same object with a non-``None`` context. Patch by Nico Posada.
..
.. date: 2024-10-28-11-33-59
.. gh-issue: 126068
.. nonce: Pdznm_
.. section: Library
Fix exceptions in the :mod:`argparse` module so that only error messages for
ArgumentError and ArgumentTypeError are now translated. ArgumentError is now
only used for command line errors, not for logical errors in the program.
TypeError is now raised instead of ValueError for some logical errors.
..
.. date: 2024-10-28-01-24-52
.. gh-issue: 125413
.. nonce: Jat5kq
.. section: Library
Add :meth:`pathlib.Path.scandir` method to efficiently fetch directory
children and their file attributes. This is a trivial wrapper of
:func:`os.scandir`.
..
.. date: 2024-10-26-12-50-48
.. gh-issue: 125984
.. nonce: d4vp5_
.. section: Library
Fix use-after-free crashes on :class:`asyncio.Future` objects for which the
underlying event loop implements an evil :meth:`~object.__getattribute__`.
Reported by Nico-Posada. Patch by Bénédikt Tran.
..
.. date: 2024-10-25-20-52-15
.. gh-issue: 125926
.. nonce: pp8rtZ
.. section: Library
Fix :func:`urllib.parse.urljoin` for base URI with undefined authority.
Although :rfc:`3986` only specify reference resolution for absolute base
URI, :func:`!urljoin` should continue to return sensible result for relative
base URI.
..
.. date: 2024-10-25-11-13-24
.. gh-issue: 125969
.. nonce: YvbrTr
.. section: Library
Fix an out-of-bounds crash when an evil :meth:`asyncio.loop.call_soon`
mutates the length of the internal callbacks list. Patch by Bénédikt Tran.
..
.. date: 2024-10-25-10-53-56
.. gh-issue: 125966
.. nonce: eOCYU_
.. section: Library
Fix a use-after-free crash in :meth:`asyncio.Future.remove_done_callback`.
Patch by Bénédikt Tran.
..
.. date: 2024-10-24-14-08-10
.. gh-issue: 125789
.. nonce: eaiAMw
.. section: Library
Fix possible crash when mutating list of callbacks returned by
:attr:`!asyncio.Future._callbacks`. It now always returns a new copy in C
implementation :mod:`!_asyncio`. Patch by Kumar Aditya.
..
.. date: 2024-10-24-13-40-20
.. gh-issue: 126916
.. nonce: MAgz6D
.. section: Library
Allow the *initial* parameter of :func:`functools.reduce` to be passed as a
keyword argument. Patch by Sayandip Dutta.
..
.. date: 2024-10-24-10-49-47
.. gh-issue: 124452
.. nonce: eqTRgx
.. section: Library
Fix an issue in :meth:`email.policy.EmailPolicy.header_source_parse` and
:meth:`email.policy.Compat32.header_source_parse` that introduced spurious
leading whitespaces into header values when the header includes a newline
character after the header name delimiter (``:``) and before the value.
..
.. date: 2024-10-23-20-44-30
.. gh-issue: 117941
.. nonce: Y9jdlW
.. section: Library
:class:`!argparse.BooleanOptionalAction` now rejects option names starting
with ``--no-``.
..
.. date: 2024-10-23-17-45-40
.. gh-issue: 125884
.. nonce: 41E_PD
.. section: Library
Fixed the bug for :mod:`pdb` where it can't set breakpoints on functions
with certain annotations.
..
.. date: 2024-10-22-13-28-00
.. gh-issue: 125355
.. nonce: zssHm_
.. section: Library
Fix several bugs in :meth:`argparse.ArgumentParser.parse_intermixed_args`.
* The parser no longer changes temporarily during parsing.
* Default values are not processed twice.
* Required mutually exclusive groups containing positional arguments are now supported.
* The missing arguments report now includes the names of all required optional and positional arguments.
* Unknown options can be intermixed with positional arguments in parse_known_intermixed_args().
..
.. date: 2024-10-21-13-52-37
.. gh-issue: 125767
.. nonce: 0kK4lX
.. section: Library
:class:`super` objects are now :mod:`pickleable <pickle>` and :mod:`copyable
<copy>`.
..
.. date: 2024-10-21-12-06-55
.. gh-issue: 124969
.. nonce: xiY8UP
.. section: Library
``locale.nl_langinfo(locale.ALT_DIGITS)`` now returns a string again. The
returned value consists of up to 100 semicolon-separated symbols.
..
.. date: 2024-10-20-00-56-44
.. gh-issue: 84850
.. nonce: p5TeUB
.. section: Library
Remove :class:`!URLopener` and :class:`!FancyURLopener` classes from
:mod:`urllib.request`. They had previously raised :exc:`DeprecationWarning`
since Python 3.3.
..
.. date: 2024-10-19-16-06-52
.. gh-issue: 125666
.. nonce: jGfdCP
.. section: Library
Avoid the exiting the interpreter if a null byte is given as input in the
new REPL.
..
.. date: 2024-10-19-13-37-37
.. gh-issue: 125710
.. nonce: FyFAAr
.. section: Library
[Enum] fix hashable<->nonhashable comparisons for member values
..
.. date: 2024-10-19-11-06-06
.. gh-issue: 125631
.. nonce: BlhVvR
.. section: Library
Restore ability to set :attr:`~pickle.Pickler.persistent_id` and
:attr:`~pickle.Unpickler.persistent_load` attributes of instances of the
:class:`!Pickler` and :class:`!Unpickler` classes in the :mod:`pickle`
module.
..
.. date: 2024-10-19-01-30-40
.. gh-issue: 125378
.. nonce: WTosxX
.. section: Library
Fixed the bug in :mod:`pdb` where after a multi-line command, an empty line
repeats the first line of the multi-line command, instead of the full
command.
..
.. date: 2024-10-18-09-51-29
.. gh-issue: 125682
.. nonce: vsj4cU
.. section: Library
Reject non-ASCII digits in the Python implementation of :func:`json.loads`
conforming to the JSON specification.
..
.. date: 2024-10-18-08-58-10
.. gh-issue: 125660
.. nonce: sDdDqO
.. section: Library
Reject invalid unicode escapes for Python implementation of
:func:`json.loads`.
..
.. date: 2024-10-17-20-36-06
.. gh-issue: 52551
.. nonce: EIVNYY
.. section: Library
Use :c:func:`!wcsftime` to implement :func:`time.strftime` on Windows.
..
.. date: 2024-10-17-16-10-29
.. gh-issue: 125259
.. nonce: oMew0c
.. section: Library
Fix the notes removal logic for errors thrown in enum initialization.
..
.. date: 2024-10-17-04-52-00
.. gh-issue: 125633
.. nonce: lMck06
.. section: Library
Add function :func:`inspect.ispackage` to determine whether an object is a
:term:`package` or not.
..
.. date: 2024-10-16-22-45-50
.. gh-issue: 125614
.. nonce: 3OEo_Q
.. section: Library
In the :data:`~annotationlib.Format.FORWARDREF` format of
:mod:`annotationlib`, fix bug where nested expressions were not returned as
:class:`annotationlib.ForwardRef` format.
..
.. date: 2024-10-16-20-32-40
.. gh-issue: 125590
.. nonce: stHzOP
.. section: Library
Allow ``FrameLocalsProxy`` to delete and pop if the key is not a fast
variable.
..
.. date: 2024-10-16-15-55-50
.. gh-issue: 125600
.. nonce: yMsJx0
.. section: Library
Only show stale code warning in :mod:`pdb` when we display source code.
..
.. date: 2024-10-16-04-50-53
.. gh-issue: 125542
.. nonce: vZJ-Ns
.. section: Library
Deprecate passing keyword-only *prefix_chars* argument to
:meth:`argparse.ArgumentParser.add_argument_group`.
..
.. date: 2024-10-15-16-50-03
.. gh-issue: 125541
.. nonce: FfhmWo
.. section: Library
Pressing :kbd:`Ctrl-C` while blocked in :meth:`threading.Lock.acquire`,
:meth:`threading.RLock.acquire`, and :meth:`threading.Thread.join` now
interrupts the function call and raises a :exc:`KeyboardInterrupt` exception
on Windows, similar to how those functions behave on macOS and Linux.
..
.. date: 2024-10-15-14-01-03
.. gh-issue: 125519
.. nonce: TqGh6a
.. section: Library
Improve traceback if :func:`importlib.reload` is called with an object that
is not a module. Patch by Alex Waygood.
..
.. date: 2024-10-14-17-29-34
.. gh-issue: 125451
.. nonce: fmP3T9
.. section: Library
Fix deadlock when :class:`concurrent.futures.ProcessPoolExecutor` shuts down
concurrently with an error when feeding a job to a worker process.
..
.. date: 2024-10-14-02-07-44
.. gh-issue: 125115
.. nonce: IOf3ON
.. section: Library
Fixed a bug in :mod:`pdb` where arguments starting with ``-`` can't be
passed to the debugged script.
..
.. date: 2024-10-13-15-04-58
.. gh-issue: 125398
.. nonce: UW7Ndv
.. section: Library
Fix the conversion of the :envvar:`!VIRTUAL_ENV` path in the activate script
in :mod:`venv` when running in Git Bash for Windows.
..
.. date: 2024-10-11-00-40-13
.. gh-issue: 125245
.. nonce: 8vReM-
.. section: Library
Fix race condition when importing :mod:`collections.abc`, which could
incorrectly return an empty module.
..
.. date: 2024-10-09-17-07-33
.. gh-issue: 52551
.. nonce: PBakSY
.. section: Library
Fix encoding issues in :func:`time.strftime`, the
:meth:`~datetime.datetime.strftime` method of the :mod:`datetime` classes
:class:`~datetime.datetime`, :class:`~datetime.date` and
:class:`~datetime.time` and formatting of these classes. Characters not
encodable in the current locale are now acceptable in the format string.
Surrogate pairs and sequence of surrogatescape-encoded bytes are no longer
recombinated. Embedded null character no longer terminates the format
string.
..
.. date: 2024-10-04-22-43-48
.. gh-issue: 124984
.. nonce: xjMv9b
.. section: Library
Fixed thread safety in :mod:`ssl` in the free-threaded build. OpenSSL
operations are now protected by a per-object lock.
..
.. date: 2024-09-28-02-03-04
.. gh-issue: 124651
.. nonce: bLBGtH
.. section: Library
Properly quote template strings in :mod:`venv` activation scripts.
..
.. date: 2024-09-27-15-42-55
.. gh-issue: 124694
.. nonce: uUy32y
.. section: Library
We've added :class:`concurrent.futures.InterpreterPoolExecutor`, which
allows you to run code in multiple isolated interpreters. This allows you
to circumvent the limitations of CPU-bound threads (due to the GIL). Patch
by Eric Snow.
This addition is unrelated to :pep:`734`.
..
.. date: 2024-09-27-13-10-17
.. gh-issue: 58032
.. nonce: 0aNAQ0
.. section: Library
Deprecate the :class:`argparse.FileType` type converter.
..
.. date: 2024-09-24-18-49-16
.. gh-issue: 99749
.. nonce: gBDJX7
.. section: Library
Adds a feature to optionally enable suggestions for argument choices and
subparser names if mistyped by the user.
..
.. date: 2024-09-24-18-16-59
.. gh-issue: 58956
.. nonce: 0wFrBR
.. section: Library
Fixed a bug in :mod:`pdb` where sometimes the breakpoint won't trigger if it
was set on a function which is already in the call stack.
..
.. date: 2024-09-17-10-38-26
.. gh-issue: 124111
.. nonce: Hd53VN
.. section: Library
The tkinter module can now be built to use either the new version 9.0.0 of
Tcl/Tk or the latest release 8.6.15 of Tcl/Tk 8. Tcl/Tk 9 includes many
improvements, both to the Tcl language and to the appearance and utility of
the graphical user interface provided by Tk.
..
.. date: 2024-09-07-13-57-49
.. gh-issue: 80958
.. nonce: fVYnqV
.. section: Library
unittest discovery supports PEP 420 namespace packages as start directory
again.
..
.. date: 2024-08-28-19-27-35
.. gh-issue: 123370
.. nonce: SPZ9Ux
.. section: Library
Fix the canvas not clearing after running turtledemo clock.
..
.. date: 2024-08-22-12-12-35
.. gh-issue: 89083
.. nonce: b6zFh0
.. section: Library
Add :func:`uuid.uuid8` for generating UUIDv8 objects as specified in
:rfc:`9562`. Patch by Bénédikt Tran
..
.. date: 2024-08-01-11-15-55
.. gh-issue: 122549
.. nonce: ztV4Kz
.. section: Library
Add :func:`platform.invalidate_caches` to invalidate cached results.
..
.. date: 2024-07-23-02-24-50
.. gh-issue: 120754
.. nonce: nHb5mG
.. section: Library
Update unbounded ``read`` calls in :mod:`zipfile` to specify an explicit
``size`` putting a limit on how much data they may read. This also updates
handling around ZIP max comment size to match the standard instead of
reading comments that are one byte too long.
..
.. date: 2024-07-02-15-56-42
.. gh-issue: 121267
.. nonce: yFBWkh
.. section: Library
Improve the performance of :mod:`tarfile` when writing files, by caching
user names and group names.
..
.. date: 2024-06-06-04-06-05
.. gh-issue: 70764
.. nonce: 6511hw
.. section: Library
Fixed an issue where :func:`inspect.getclosurevars` would incorrectly
classify an attribute name as a global variable when the name exists both as
an attribute name and a global variable.
..
.. date: 2024-06-05-19-09-36
.. gh-issue: 118289
.. nonce: moL9_d
.. section: Library
:func:`!posixpath.realpath` now raises :exc:`NotADirectoryError` when
*strict* mode is enabled and a non-directory path with a trailing slash is
supplied.
..
.. date: 2024-06-02-11-48-19
.. gh-issue: 119826
.. nonce: N1obGa
.. section: Library
Always return an absolute path for :func:`os.path.abspath` on Windows.
..
.. date: 2024-05-28-14-35-23
.. gh-issue: 97850
.. nonce: dCtjel
.. section: Library
Remove deprecated :func:`!pkgutil.get_loader` and
:func:`!pkgutil.find_loader`.
..
.. date: 2024-05-13-10-09-41
.. gh-issue: 118986
.. nonce: -r4W9h
.. section: Library
Add :data:`!socket.IPV6_RECVERR` constant (available since Linux 2.2).
..
.. date: 2024-03-16-13-38-27
.. gh-issue: 116897
.. nonce: UDQTjp
.. section: Library
Accepting objects with false values (like ``0`` and ``[]``) except empty
strings, byte-like objects and ``None`` in :mod:`urllib.parse` functions
:func:`~urllib.parse.parse_qsl` and :func:`~urllib.parse.parse_qs` is now
deprecated.
..
.. date: 2023-10-26-16-36-22
.. gh-issue: 101955
.. nonce: Ixu3IF
.. section: Library
Fix SystemError when match regular expression pattern containing some
combination of possessive quantifier, alternative and capture group.
..
.. date: 2022-10-15-10-18-20
.. gh-issue: 71936
.. nonce: MzJjc_
.. section: Library
Fix a race condition in :class:`multiprocessing.pool.Pool`.
..
.. bpo: 46128
.. date: 2021-12-19-10-47-24
.. nonce: Qv3EK1
.. section: Library
Strip :class:`unittest.IsolatedAsyncioTestCase` stack frames from reported
stacktraces.
..
.. date: 2020-05-19-01-12-47
.. gh-issue: 84852
.. nonce: FEjHJW
.. section: Library
Add MIME types for MS Embedded OpenType, OpenType Layout, TrueType, WOFF 1.0
and 2.0 fonts. Patch by Sahil Prajapati and Hugo van Kemenade.
..
.. date: 2024-11-09-19-43-10
.. gh-issue: 126622
.. nonce: YacfDc
.. section: Documentation
Added stub pages for removed modules explaining their removal, where to find
replacements, and linking to the last Python version that supported them.
Contributed by Ned Batchelder.
..
.. date: 2024-10-10-23-46-54
.. gh-issue: 125277
.. nonce: QAby09
.. section: Documentation
Require Sphinx 7.2.6 or later to build the Python documentation. Patch by
Adam Turner.
..
.. date: 2023-03-28-22-24-45
.. gh-issue: 60712
.. nonce: So5uad
.. section: Documentation
Include the :class:`object` type in the lists of documented types. Change by
Furkan Onder and Martin Panter.
..
.. date: 2024-11-13-17-18-13
.. gh-issue: 126795
.. nonce: _JBX9e
.. section: Core and Builtins
Increase the threshold for JIT code warmup. Depending on platform and
workload, this can result in performance gains of 1-9% and memory savings of
3-5%.
..
.. date: 2024-11-12-19-24-00
.. gh-issue: 126341
.. nonce: 5SdAe1
.. section: Core and Builtins
Now :exc:`ValueError` is raised instead of :exc:`SystemError` when trying to
iterate over a released :class:`memoryview` object.
..
.. date: 2024-11-11-17-02-48
.. gh-issue: 126688
.. nonce: QiOXUi
.. section: Core and Builtins
Fix a crash when calling :func:`os.fork` on some operating systems,
including SerenityOS.
..
.. date: 2024-11-09-16-10-22
.. gh-issue: 126066
.. nonce: 9zs4m4
.. section: Core and Builtins
Fix :mod:`importlib` to not write an incomplete .pyc files when a ulimit or
some other operating system mechanism is preventing the write to go through
fully.
..
.. date: 2024-11-06-16-34-11
.. gh-issue: 126222
.. nonce: 9NBfTn
.. section: Core and Builtins
Do not include count of "peek" items in ``_PyUop_num_popped``. This ensures
that the correct number of items are popped from the stack when a micro-op
exits with an error.
..
.. date: 2024-11-03-15-15-36
.. gh-issue: 126366
.. nonce: 8BBdGU
.. section: Core and Builtins
Fix crash when using ``yield from`` on an object that raises an exception in
its ``__iter__``.
..
.. date: 2024-11-02-18-01-31
.. gh-issue: 126209
.. nonce: 2ZIhrS
.. section: Core and Builtins
Fix an issue with ``skip_file_prefixes`` parameter which resulted in an
inconsistent behaviour between the C and Python implementations of
:func:`warnings.warn`. Patch by Daehee Kim.
..
.. date: 2024-11-02-14-43-46
.. gh-issue: 126312
.. nonce: LMHzLT
.. section: Core and Builtins
Fix crash during garbage collection on an object frozen by :func:`gc.freeze`
on the free-threaded build.
..
.. date: 2024-11-01-09-58-06
.. gh-issue: 103951
.. nonce: 6qduwj
.. section: Core and Builtins
Relax optimization requirements to allow fast attribute access to module
subclasses.
..
.. date: 2024-10-31-21-49-00
.. gh-issue: 126072
.. nonce: o9k8Ns
.. section: Core and Builtins
Following :gh:`126101`, for :ref:`codeobjects` like lambda, annotation and
type alias, we no longer add ``None`` to its :attr:`~codeobject.co_consts`.
..
.. date: 2024-10-30-18-16-10
.. gh-issue: 126195
.. nonce: 6ezBpr
.. section: Core and Builtins
Improve JIT performance by 1.4% on macOS Apple Silicon by using
platform-specific memory protection APIs. Patch by Diego Russo.
..
.. date: 2024-10-29-15-17-31
.. gh-issue: 126139
.. nonce: B4OQ8a
.. section: Core and Builtins
Provide better error location when attempting to use a :term:`future
statement <__future__>` with an unknown future feature.
..
.. date: 2024-10-29-10-37-39
.. gh-issue: 126072
.. nonce: XLKlxv
.. section: Core and Builtins
Add a new attribute in :attr:`~codeobject.co_flags` to indicate whether the
first item in :attr:`~codeobject.co_consts` is the docstring. If a code
object has no docstring, ``None`` will **NOT** be inserted.
..
.. date: 2024-10-28-13-18-16
.. gh-issue: 126076
.. nonce: MebZuS
.. section: Core and Builtins
Relocated objects such as ``tuple``, ``bytes`` and ``str`` objects are
properly tracked by :mod:`tracemalloc` and its associated hooks. Patch by
Pablo Galindo.
..
.. date: 2024-10-27-20-31-43
.. gh-issue: 90370
.. nonce: IP_W3a
.. section: Core and Builtins
Avoid temporary tuple creation for vararg in argument passing with Argument
Clinic generated code (if arguments either vararg or positional-only).
..
.. date: 2024-10-26-23-50-03
.. gh-issue: 126018
.. nonce: Hq-qcM
.. section: Core and Builtins
Fix a crash in :func:`sys.audit` when passing a non-string as first argument
and Python was compiled in debug mode.
..
.. date: 2024-10-26-13-32-48
.. gh-issue: 126012
.. nonce: 2KalhG
.. section: Core and Builtins
The :class:`memoryview` type now supports subscription, making it a
:term:`generic type`.
..
.. date: 2024-10-25-15-56-14
.. gh-issue: 125837
.. nonce: KlCdgD
.. section: Core and Builtins
Adds :opcode:`LOAD_SMALL_INT` and :opcode:`LOAD_CONST_IMMORTAL`
instructions. ``LOAD_SMALL_INT`` pushes a small integer equal to the
``oparg`` to the stack. ``LOAD_CONST_IMMORTAL`` does the same as
``LOAD_CONST`` but is more efficient for immortal objects. Removes
``RETURN_CONST`` instruction.
..
.. date: 2024-10-24-22-43-03
.. gh-issue: 125942
.. nonce: 3UQht1
.. section: Core and Builtins
On Android, the ``errors`` setting of :any:`sys.stdout` was changed from
``surrogateescape`` to ``backslashreplace``.
..
.. date: 2024-10-23-14-42-27
.. gh-issue: 125859
.. nonce: m3EF9E
.. section: Core and Builtins
Fix a crash in the free threading build when :func:`gc.get_objects` or
:func:`gc.get_referrers` is called during an in-progress garbage collection.
..
.. date: 2024-10-23-14-05-47
.. gh-issue: 125868
.. nonce: uLfXYB
.. section: Core and Builtins
It was possible in 3.14.0a1 only for attribute lookup to give the wrong
value. This was due to an incorrect specialization in very specific
circumstances. This is fixed in 3.14.0a2.
..
.. date: 2024-10-22-04-18-53
.. gh-issue: 125498
.. nonce: cFjPIn
.. section: Core and Builtins
The JIT has been updated to leverage Clang 19s new ``preserve_none``
attribute, which supports more platforms and is more useful than LLVM's
existing ``ghccc`` calling convention. This also removes the need to
manually patch the calling convention in LLVM IR, simplifying the JIT
compilation process.
..
.. date: 2024-10-18-16-00-10
.. gh-issue: 125703
.. nonce: QRoqMo
.. section: Core and Builtins
Correctly honour :mod:`tracemalloc` hooks in specialized ``Py_DECREF``
paths. Patch by Pablo Galindo
..
.. date: 2024-10-18-10-11-43
.. gh-issue: 125593
.. nonce: Q97m3A
.. section: Core and Builtins
Use color to highlight error locations in traceback from exception group
..
.. date: 2024-10-16-23-06-06
.. gh-issue: 125017
.. nonce: fcltj0
.. section: Core and Builtins
Fix crash on certain accesses to the ``__annotations__`` of
:class:`staticmethod` and :class:`classmethod` objects.
..
.. date: 2024-10-16-13-52-48
.. gh-issue: 125588
.. nonce: kCahyO
.. section: Core and Builtins
The Python PEG generator can now use f-strings in the grammar actions. Patch
by Pablo Galindo
..
.. date: 2024-10-16-12-12-39
.. gh-issue: 125444
.. nonce: 9tG2X6
.. section: Core and Builtins
Fix illegal instruction for older Arm architectures. Patch by Diego Russo,
testing by Ross Burton.
..
.. date: 2024-10-14-17-13-12
.. gh-issue: 118423
.. nonce: SkBoda
.. section: Core and Builtins
Add a new ``INSTRUCTION_SIZE`` macro to the cases generator which returns
the current instruction size.
..
.. date: 2024-10-09-13-53-50
.. gh-issue: 125038
.. nonce: ffSLCz
.. section: Core and Builtins
Fix crash when iterating over a generator expression after direct changes on
``gi_frame.f_locals``. Patch by Mikhail Efimov.
..
.. date: 2024-10-01-17-31-32
.. gh-issue: 124855
.. nonce: sdsv_H
.. section: Core and Builtins
Don't allow the JIT and perf support to be active at the same time. Patch by
Pablo Galindo
..
.. date: 2024-09-14-20-09-39
.. gh-issue: 123714
.. nonce: o1mbe4
.. section: Core and Builtins
Update JIT compilation to use LLVM 19
..
.. date: 2024-09-11-01-32-07
.. gh-issue: 123930
.. nonce: BkPfB6
.. section: Core and Builtins
Improve the error message when a script shadowing a module from the standard
library causes :exc:`ImportError` to be raised during a "from" import.
Similarly, improve the error message when a script shadowing a third party
module attempts to "from" import an attribute from that third party module
while still initialising.
..
.. date: 2024-06-13-19-12-49
.. gh-issue: 119793
.. nonce: FDVCDk
.. section: Core and Builtins
The :func:`map` built-in now has an optional keyword-only *strict* flag like
:func:`zip` to check that all the iterables are of equal length. Patch by
Wannes Boeykens.
..
.. date: 2024-05-12-03-10-36
.. gh-issue: 118950
.. nonce: 5Wc4vp
.. section: Core and Builtins
Fix bug where SSLProtocol.connection_lost wasn't getting called when OSError
was thrown on writing to socket.
..
.. date: 2023-12-30-00-21-45
.. gh-issue: 113570
.. nonce: _XQgsW
.. section: Core and Builtins
Fixed a bug in ``reprlib.repr`` where it incorrectly called the repr method
on shadowed Python built-in types.
..
.. date: 2024-11-07-20-24-58
.. gh-issue: 126554
.. nonce: ri12eb
.. section: C API
Fix error handling in :class:`ctypes.CDLL` objects which could result in a
crash in rare situations.
..
.. date: 2024-10-28-15-56-03
.. gh-issue: 126061
.. nonce: Py51_1
.. section: C API
Add :c:func:`PyLong_IsPositive`, :c:func:`PyLong_IsNegative` and
:c:func:`PyLong_IsZero` for checking if a :c:type:`PyLongObject` is
positive, negative, or zero, respectively.
..
.. date: 2024-10-16-19-28-23
.. gh-issue: 125608
.. nonce: gTsU2g
.. section: C API
Fix a bug where dictionary watchers (e.g., :c:func:`PyDict_Watch`) on an
object's attribute dictionary (:attr:`~object.__dict__`) were not triggered
when the object's attributes were modified.
..
.. date: 2024-09-03-13-33-33
.. gh-issue: 123619
.. nonce: HhgUUI
.. section: C API
Added the :c:func:`PyUnstable_Object_EnableDeferredRefcount` function for
enabling :pep:`703` deferred reference counting.
..
.. date: 2024-07-30-14-40-08
.. gh-issue: 121654
.. nonce: tgGeAl
.. section: C API
Add :c:func:`PyType_Freeze` function to make a type immutable. Patch by
Victor Stinner.
..
.. date: 2024-06-04-13-38-44
.. gh-issue: 120026
.. nonce: uhEvJ9
.. section: C API
The :c:macro:`!Py_HUGE_VAL` macro is :term:`soft deprecated`.
..
.. date: 2024-11-13-15-47-09
.. gh-issue: 126691
.. nonce: ni4K-b
.. section: Build
Removed the ``--with-emscripten-target`` configure flag. We unified the
``node`` and ``browser`` options and the same build can now be used,
independent of target runtime.
..
.. date: 2024-11-07-11-09-31
.. gh-issue: 123877
.. nonce: CVdd0b
.. section: Build
Use ``wasm32-wasip1`` as the target triple for WASI instead of
``wasm32-wasi``. The latter will eventually be reclaimed for WASI 1.0 while
CPython currently only supports WASI preview1.
..
.. date: 2024-11-06-11-12-04
.. gh-issue: 126458
.. nonce: 7vzHtx
.. section: Build
Disable SIMD support for HACL under WASI.
..
.. date: 2024-11-04-09-42-04
.. gh-issue: 89640
.. nonce: QBv05o
.. section: Build
Hard-code float word ordering as little endian on WASM.
..
.. date: 2024-10-31-15-37-05
.. gh-issue: 126206
.. nonce: oC6z2i
.. section: Build
``make clinic`` now runs Argument Clinic using the ``--force`` option, thus
forcefully regenerating generated code.
..
.. date: 2024-10-30-17-47-15
.. gh-issue: 126187
.. nonce: 0jFCZB
.. section: Build
Introduced ``Tools/wasm/emscripten.py`` to simplify doing Emscripten builds.
..
.. date: 2024-10-25-17-20-50
.. gh-issue: 124932
.. nonce: F-aNuS
.. section: Build
For cross builds, there is now support for having a different install
``prefix`` than the ``host_prefix`` used by ``getpath.py``. This is set to
``/`` by default for Emscripten, on other platforms the default behavior is
the same as before.
..
.. date: 2024-10-25-00-29-15
.. gh-issue: 125946
.. nonce: KPA3g0
.. section: Build
The minimum supported Android version is now 7.0 (API level 24).
..
.. date: 2024-10-24-22-14-35
.. gh-issue: 125940
.. nonce: 2wMtTA
.. section: Build
The Android build now supports `16 KB page sizes
<https://developer.android.com/guide/practices/page-sizes>`__.
..
.. date: 2024-10-16-09-37-51
.. gh-issue: 89640
.. nonce: UDsW-j
.. section: Build
Improve detection of float word ordering on Linux when link-time
optimizations are enabled.
..
.. date: 2024-10-04-17-29-23
.. gh-issue: 124928
.. nonce: FsGffe
.. section: Build
Emscripten builds now require node >= 18.
..
.. date: 2024-03-03-20-28-23
.. gh-issue: 115382
.. nonce: 97hJFE
.. section: Build
Fix cross compile failures when the host and target SOABIs match.