diff options
101 files changed, 1094 insertions, 220 deletions
diff --git a/Doc/library/base64.rst b/Doc/library/base64.rst index c07a536..4876117 100644 --- a/Doc/library/base64.rst +++ b/Doc/library/base64.rst @@ -68,7 +68,7 @@ POST request. May assert or raise a :exc:`ValueError` if the length of *altchars* is not 2. Raises a :exc:`TypeError` if *altchars* is not a :term:`bytes-like object`. - .. versionchanged:: next + .. versionchanged:: 3.15 Added the *wrapcol* parameter. @@ -285,7 +285,7 @@ Refer to the documentation of the individual functions for more information. .. versionadded:: 3.13 - .. versionchanged:: next + .. versionchanged:: 3.15 The *pad* parameter was added. diff --git a/Doc/library/binascii.rst b/Doc/library/binascii.rst index d467a71..eaf7557 100644 --- a/Doc/library/binascii.rst +++ b/Doc/library/binascii.rst @@ -82,7 +82,7 @@ The :mod:`binascii` module defines the following functions: .. versionchanged:: 3.6 Added the *newline* parameter. - .. versionchanged:: next + .. versionchanged:: 3.15 Added the *wrapcol* parameter. diff --git a/Doc/library/mmap.rst b/Doc/library/mmap.rst index ae4a7fc..774d05f 100644 --- a/Doc/library/mmap.rst +++ b/Doc/library/mmap.rst @@ -241,7 +241,7 @@ To map anonymous memory, -1 should be passed as the fileno along with the length specified alone, and the flush operation will extend from *offset* to the end of the mmap. - .. versionchanged:: next + .. versionchanged:: 3.15 Added *flags* parameter to control synchronization behavior. @@ -488,4 +488,4 @@ MS_* Constants * :data:`MS_INVALIDATE` - Invalidate cached data: invalidates other mappings of the same file so they can see the changes. - .. versionadded:: next + .. versionadded:: 3.15 diff --git a/Doc/library/os.rst b/Doc/library/os.rst index c766aa4..31c0964 100644 --- a/Doc/library/os.rst +++ b/Doc/library/os.rst @@ -1562,7 +1562,7 @@ or `the MSDN <https://msdn.microsoft.com/en-us/library/z0kc8e3z.aspx>`_ on Windo .. availability:: Linux >= 6.11 - .. versionadded:: next + .. versionadded:: 3.15 .. function:: ptsname(fd, /) diff --git a/Doc/library/unicodedata.rst b/Doc/library/unicodedata.rst index 8ae0a92..838744c 100644 --- a/Doc/library/unicodedata.rst +++ b/Doc/library/unicodedata.rst @@ -188,14 +188,14 @@ following functions: Returns the Grapheme_Cluster_Break property assigned to the character. - .. versionadded:: next + .. versionadded:: 3.15 .. function:: indic_conjunct_break(chr, /) Returns the Indic_Conjunct_Break property assigned to the character. - .. versionadded:: next + .. versionadded:: 3.15 .. function:: extended_pictographic(chr, /) @@ -203,7 +203,7 @@ following functions: Returns ``True`` if the character has the Extended_Pictographic property, ``False`` otherwise. - .. versionadded:: next + .. versionadded:: 3.15 .. function:: normalize(form, unistr, /) @@ -262,7 +262,7 @@ following functions: Standard Annex #29, `"Unicode Text Segmentation" <https://www.unicode.org/reports/tr29/>`_. - .. versionadded:: next + .. versionadded:: 3.15 In addition, the module exposes the following constant: diff --git a/Include/patchlevel.h b/Include/patchlevel.h index 47c3cf5..bdfa38d 100644 --- a/Include/patchlevel.h +++ b/Include/patchlevel.h @@ -24,10 +24,10 @@ #define PY_MINOR_VERSION 15 #define PY_MICRO_VERSION 0 #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA -#define PY_RELEASE_SERIAL 4 +#define PY_RELEASE_SERIAL 5 /* Version as a string */ -#define PY_VERSION "3.15.0a4+" +#define PY_VERSION "3.15.0a5" /*--end constants--*/ diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py index c290f95..e2d3a51 100644 --- a/Lib/pydoc_data/topics.py +++ b/Lib/pydoc_data/topics.py @@ -1,4 +1,4 @@ -# Autogenerated by Sphinx on Tue Jan 13 12:26:49 2026 +# Autogenerated by Sphinx on Wed Jan 14 16:41:25 2026 # as part of the release process. topics = { @@ -867,7 +867,8 @@ Notes on using *__slots__*: * "TypeError" will be raised if *__slots__* other than *__dict__* and *__weakref__* are defined for a class derived from a ""variable- - length" built-in type" such as "int", "bytes", and "tuple". + length" built-in type" such as "int", "bytes", and "type", except + "tuple". * Any non-string *iterable* may be assigned to *__slots__*. @@ -889,7 +890,8 @@ Notes on using *__slots__*: attribute will be an empty iterator. Changed in version 3.15: Allowed defining the *__dict__* and -*__weakref__* *__slots__* for any class. +*__weakref__* *__slots__* for any class. Allowed defining any +*__slots__* for a class derived from "tuple". ''', 'attribute-references': r'''Attribute references ******************** @@ -9011,7 +9013,8 @@ Notes on using *__slots__*: * "TypeError" will be raised if *__slots__* other than *__dict__* and *__weakref__* are defined for a class derived from a ""variable- - length" built-in type" such as "int", "bytes", and "tuple". + length" built-in type" such as "int", "bytes", and "type", except + "tuple". * Any non-string *iterable* may be assigned to *__slots__*. @@ -9033,7 +9036,8 @@ Notes on using *__slots__*: attribute will be an empty iterator. Changed in version 3.15: Allowed defining the *__dict__* and -*__weakref__* *__slots__* for any class. +*__weakref__* *__slots__* for any class. Allowed defining any +*__slots__* for a class derived from "tuple". Customizing class creation @@ -10062,7 +10066,12 @@ str.casefold() it is intended to remove all case distinctions in a string. For example, the German lowercase letter "'ß'" is equivalent to ""ss"". Since it is already lowercase, "lower()" would do nothing to "'ß'"; - "casefold()" converts it to ""ss"". + "casefold()" converts it to ""ss"". For example: + + >>> 'straße'.lower() + 'straße' + >>> 'straße'.casefold() + 'strasse' The casefolding algorithm is described in section 3.13.3 ‘Default Case Folding’ of the Unicode Standard. @@ -10251,7 +10260,16 @@ str.format_map(mapping, /) str.index(sub[, start[, end]]) Like "find()", but raise "ValueError" when the substring is not - found. + found. For example: + + >>> 'spam, spam, spam'.index('eggs') + Traceback (most recent call last): + File "<python-input-0>", line 1, in <module> + 'spam, spam, spam'.index('eggs') + ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^ + ValueError: substring not found + + See also "rindex()". str.isalnum() @@ -10380,6 +10398,13 @@ str.isprintable() plus the ASCII space 0x20. Nonprintable characters are those in group Separator or Other (Z or C), except the ASCII space. + For example: + + >>> ''.isprintable(), ' '.isprintable() + (True, True) + >>> '\t'.isprintable(), '\n'.isprintable() + (False, False) + str.isspace() Return "True" if there are only whitespace characters in the string @@ -10459,7 +10484,10 @@ str.ljust(width, fillchar=' ', /) str.lower() Return a copy of the string with all the cased characters [4] - converted to lowercase. + converted to lowercase. For example: + + >>> 'Lower Method Example'.lower() + 'lower method example' The lowercasing algorithm used is described in section 3.13.2 ‘Default Case Conversion’ of the Unicode Standard. @@ -10523,6 +10551,8 @@ str.removeprefix(prefix, /) Added in version 3.9. + See also "removesuffix()" and "startswith()". + str.removesuffix(suffix, /) If the string ends with the *suffix* string and that *suffix* is @@ -10536,12 +10566,19 @@ str.removesuffix(suffix, /) Added in version 3.9. + See also "removeprefix()" and "endswith()". + str.replace(old, new, /, count=-1) Return a copy of the string with all occurrences of substring *old* replaced by *new*. If *count* is given, only the first *count* occurrences are replaced. If *count* is not specified or "-1", then - all occurrences are replaced. + all occurrences are replaced. For example: + + >>> 'spam, spam, spam'.replace('spam', 'eggs') + 'eggs, eggs, eggs' + >>> 'spam, spam, spam'.replace('spam', 'eggs', 1) + 'eggs, spam, spam' Changed in version 3.13: *count* is now supported as a keyword argument. @@ -10551,7 +10588,14 @@ str.rfind(sub[, start[, end]]) Return the highest index in the string where substring *sub* is found, such that *sub* is contained within "s[start:end]". Optional arguments *start* and *end* are interpreted as in slice - notation. Return "-1" on failure. + notation. Return "-1" on failure. For example: + + >>> 'spam, spam, spam'.rfind('sp') + 12 + >>> 'spam, spam, spam'.rfind('sp', 0, 10) + 6 + + See also "find()" and "rindex()". str.rindex(sub[, start[, end]]) @@ -13009,6 +13053,10 @@ Slice objects Slice objects are used to represent slices for "__getitem__()" methods. They are also created by the built-in "slice()" function. +Added in version 3.15: The "slice()" type now supports subscription. +For example, "slice[float]" may be used in type annotations to +indicate a slice containing "float" objects. + Special read-only attributes: "start" is the lower bound; "stop" is the upper bound; "step" is the step value; each is "None" if omitted. These attributes can have any type. @@ -13624,10 +13672,17 @@ Notes: note that "-0" is still "0". 4. The slice of *s* from *i* to *j* is defined as the sequence of - items with index *k* such that "i <= k < j". If *i* or *j* is - greater than "len(s)", use "len(s)". If *i* is omitted or "None", - use "0". If *j* is omitted or "None", use "len(s)". If *i* is - greater than or equal to *j*, the slice is empty. + items with index *k* such that "i <= k < j". + + * If *i* is omitted or "None", use "0". + + * If *j* is omitted or "None", use "len(s)". + + * If *i* or *j* is less than "-len(s)", use "0". + + * If *i* or *j* is greater than "len(s)", use "len(s)". + + * If *i* is greater than or equal to *j*, the slice is empty. 5. The slice of *s* from *i* to *j* with step *k* is defined as the sequence of items with index "x = i + n*k" such that "0 <= n < @@ -13892,6 +13947,76 @@ class list(iterable=(), /) empty for the duration, and raises "ValueError" if it can detect that the list has been mutated during a sort. +Thread safety: Reading a single element from a "list" is *atomic*: + + lst[i] # list.__getitem__ + +The following methods traverse the list and use *atomic* reads of each +item to perform their function. That means that they may return +results affected by concurrent modifications: + + item in lst + lst.index(item) + lst.count(item) + +All of the above methods/operations are also lock-free. They do not +block concurrent modifications. Other operations that hold a lock will +not block these from observing intermediate states.All other +operations from here on block using the per-object lock.Writing a +single item via "lst[i] = x" is safe to call from multiple threads and +will not corrupt the list.The following operations return new objects +and appear *atomic* to other threads: + + lst1 + lst2 # concatenates two lists into a new list + x * lst # repeats lst x times into a new list + lst.copy() # returns a shallow copy of the list + +Methods that only operate on a single elements with no shifting +required are *atomic*: + + lst.append(x) # append to the end of the list, no shifting required + lst.pop() # pop element from the end of the list, no shifting required + +The "clear()" method is also *atomic*. Other threads cannot observe +elements being removed.The "sort()" method is not *atomic*. Other +threads cannot observe intermediate states during sorting, but the +list appears empty for the duration of the sort.The following +operations may allow lock-free operations to observe intermediate +states since they modify multiple elements in place: + + lst.insert(idx, item) # shifts elements + lst.pop(idx) # idx not at the end of the list, shifts elements + lst *= x # copies elements in place + +The "remove()" method may allow concurrent modifications since element +comparison may execute arbitrary Python code (via +"__eq__()")."extend()" is safe to call from multiple threads. +However, its guarantees depend on the iterable passed to it. If it is +a "list", a "tuple", a "set", a "frozenset", a "dict" or a dictionary +view object (but not their subclasses), the "extend" operation is safe +from concurrent modifications to the iterable. Otherwise, an iterator +is created which can be concurrently modified by another thread. The +same applies to inplace concatenation of a list with other iterables +when using "lst += iterable".Similarly, assigning to a list slice with +"lst[i:j] = iterable" is safe to call from multiple threads, but +"iterable" is only locked when it is also a "list" (but not its +subclasses).Operations that involve multiple accesses, as well as +iteration, are never atomic. For example: + + # NOT atomic: read-modify-write + lst[i] = lst[i] + 1 + + # NOT atomic: check-then-act + if lst: + item = lst.pop() + + # NOT thread-safe: iteration while modifying + for item in lst: + process(item) # another thread may modify lst + +Consider external synchronization when sharing "list" instances across +threads. See Python support for free threading for more information. + Tuples ====== diff --git a/Misc/NEWS.d/3.15.0a5.rst b/Misc/NEWS.d/3.15.0a5.rst new file mode 100644 index 0000000..85b733b --- /dev/null +++ b/Misc/NEWS.d/3.15.0a5.rst @@ -0,0 +1,942 @@ +.. date: 2025-12-25-00-38-20 +.. gh-issue: 143082 +.. nonce: CYUeux +.. release date: 2026-01-14 +.. section: Windows + +Fix :mod:`pdb` arrow key history not working when ``stdin`` is +``sys.stdin``. + +.. + +.. date: 2025-09-14-13-35-44 +.. gh-issue: 128067 +.. nonce: BGdP_A +.. section: Windows + +Fix a bug in PyREPL on Windows where output without a trailing newline was +overwritten by the next prompt. + +.. + +.. date: 2026-01-02-11-44-56 +.. gh-issue: 142095 +.. nonce: 4ssgnM +.. section: Tools/Demos + +Make gdb 'py-bt' command use frame from thread local state when available. +Patch by Sam Gross and Victor Stinner. + +.. + +.. date: 2026-01-09-13-52-10 +.. gh-issue: 143460 +.. nonce: _nW2jt +.. section: Tests + +Skip tests relying on infinite recusion if stack size is unlimited. + +.. + +.. date: 2026-01-08-11-50-06 +.. gh-issue: 143553 +.. nonce: KyyNTt +.. section: Tests + +Add support for parametrized resources, such as ``-u xpickle=2.7``. + +.. + +.. bpo: 31391 +.. date: 2020-09-29-23-14-01 +.. nonce: IZr2P8 +.. section: Tests + +Forward-port test_xpickle from Python 2 to Python 3 and add the resource +back to test's command line. + +.. + +.. date: 2026-01-12-07-17-38 +.. gh-issue: 143706 +.. nonce: sysArgv +.. section: Library + +Fix :mod:`multiprocessing` forkserver so that :data:`sys.argv` is correctly +set before ``__main__`` is preloaded. Previously, :data:`sys.argv` was empty +during main module import in forkserver child processes. This fixes a +regression introduced in 3.13.8 and 3.14.1. Root caused by Aaron Wieczorek, +test provided by Thomas Watson, thanks! + +.. + +.. date: 2026-01-10-16-42-47 +.. gh-issue: 143638 +.. nonce: du5G7d +.. section: Library + +Forbid reentrant calls of the :class:`pickle.Pickler` and +:class:`pickle.Unpickler` methods for the C implementation. Previously, this +could cause crash or data corruption, now concurrent calls of methods of the +same object raise :exc:`RuntimeError`. + +.. + +.. date: 2026-01-10-15-40-57 +.. gh-issue: 143658 +.. nonce: Ox6pE5 +.. section: Library + +:mod:`importlib.metadata`: Use :meth:`str.translate` to improve performance +of :meth:`!importlib.metadata.Prepared.normalize`. Patch by Hugo van +Kemenade and Henry Schreiner. + +.. + +.. date: 2026-01-10-10-04-08 +.. gh-issue: 78724 +.. nonce: xkXfxX +.. section: Library + +Raise :exc:`RuntimeError`'s when user attempts to call methods on +half-initialized :class:`~struct.Struct` objects, For example, created by +``Struct.__new__(Struct)``. Patch by Sergey B Kirpichev. + +.. + +.. date: 2026-01-09-17-50-26 +.. gh-issue: 143196 +.. nonce: WxKxzU +.. section: Library + +Fix crash when the internal encoder object returned by undocumented function +:func:`!json.encoder.c_make_encoder` was called with non-zero second +(*_current_indent_level*) argument. + +.. + +.. date: 2026-01-09-13-07-22 +.. gh-issue: 143191 +.. nonce: PPR_vW +.. section: Library + +:func:`_thread.stack_size` now raises :exc:`ValueError` if the stack size is +too small. Patch by Victor Stinner. + +.. + +.. date: 2026-01-08-14-53-46 +.. gh-issue: 143547 +.. nonce: wHBVlr +.. section: Library + +Fix :func:`sys.unraisablehook` when the hook raises an exception and changes +:func:`sys.unraisablehook`: hold a strong reference to the old hook. Patch +by Victor Stinner. + +.. + +.. date: 2026-01-08-13-41-58 +.. gh-issue: 139686 +.. nonce: S_nzkl +.. section: Library + +Revert 0a97941245f1dda6d838f9aaf0512104e5253929 and +57db12514ac686f0a752ec8fe1c08b6daa0c6219 which made importlib.reload a no-op +for lazy modules; caused Buildbot failures. + +.. + +.. date: 2026-01-07-15-49-06 +.. gh-issue: 143517 +.. nonce: FP5KgL +.. section: Library + +:func:`annotationlib.get_annotations` no longer raises a :exc:`SyntaxError` +when evaluating a stringified starred annotation that starts with one or +more whitespace characters followed by a ``*``. Patch by Bartosz Sławecki. + +.. + +.. date: 2026-01-06-12-00-00 +.. gh-issue: 143474 +.. nonce: cQM4VA +.. section: Library + +Add :data:`os.RWF_ATOMIC` constant for Linux 6.11+. + +.. + +.. date: 2026-01-05-12-20-42 +.. gh-issue: 143445 +.. nonce: rgxnbL +.. section: Library + +Speed up :func:`copy.deepcopy` by 1.04x. + +.. + +.. date: 2026-01-03-19-41-36 +.. gh-issue: 143378 +.. nonce: 29AvE7 +.. section: Library + +Fix use-after-free crashes when a :class:`~io.BytesIO` object is +concurrently mutated during :meth:`~io.RawIOBase.write` or +:meth:`~io.IOBase.writelines`. + +.. + +.. date: 2026-01-02-17-26-33 +.. gh-issue: 143368 +.. nonce: m3EF9E +.. section: Library + +Fix endless retry loop in :mod:`profiling.sampling` blocking mode when +threads cannot be seized due to ``EPERM``. Such threads are now skipped +instead of causing repeated error messages. Patch by Pablo Galindo. + +.. + +.. date: 2026-01-02-12-55-52 +.. gh-issue: 143346 +.. nonce: iTekce +.. section: Library + +Fix incorrect wrapping of the Base64 data in :class:`!plistlib._PlistWriter` +when the indent contains a mix of tabs and spaces. + +.. + +.. date: 2026-01-02-09-32-43 +.. gh-issue: 140025 +.. nonce: zOX58_ +.. section: Library + +:mod:`queue`: Fix :meth:`!SimpleQueue.__sizeof__` computation. + +.. + +.. date: 2026-01-01-11-21-57 +.. gh-issue: 143310 +.. nonce: 8rxtH3 +.. section: Library + +:mod:`tkinter`: fix a crash when a Python :class:`list` is mutated during +the conversion to a Tcl object (e.g., when setting a Tcl variable). Patch by +Bénédikt Tran. + +.. + +.. date: 2025-12-31-20-43-02 +.. gh-issue: 143309 +.. nonce: cdFxdH +.. section: Library + +Fix a crash in :func:`os.execve` on non-Windows platforms when given a +custom environment mapping which is then mutated during parsing. Patch by +Bénédikt Tran. + +.. + +.. date: 2025-12-31-17-38-33 +.. gh-issue: 143308 +.. nonce: lY8UCR +.. section: Library + +:mod:`pickle`: fix use-after-free crashes when a +:class:`~pickle.PickleBuffer` is concurrently mutated by a custom buffer +callback during pickling. Patch by Bénédikt Tran and Aaron Wieczorek. + +.. + +.. date: 2025-12-29-21-12-12 +.. gh-issue: 142939 +.. nonce: OyQQr5 +.. section: Library + +Performance optimisations for :func:`difflib.get_close_matches` + +.. + +.. date: 2025-12-29-00-42-26 +.. gh-issue: 124951 +.. nonce: OsC5K4 +.. section: Library + +The base64 implementation behind the :mod:`binascii`, :mod:`base64`, and +related codec has been optimized for modern pipelined CPU architectures and +now performs 2-3x faster across all platforms. + +.. + +.. date: 2025-12-28-20-28-05 +.. gh-issue: 143237 +.. nonce: q1ymuA +.. section: Library + +Fix support of named pipes in the rotating :mod:`logging` handlers. + +.. + +.. date: 2025-12-28-14-41-02 +.. gh-issue: 143249 +.. nonce: K4vEp4 +.. section: Library + +Fix possible buffer leaks in Windows overlapped I/O on error handling. + +.. + +.. date: 2025-12-28-13-49-06 +.. gh-issue: 143241 +.. nonce: 5H4b8d +.. section: Library + +:mod:`zoneinfo`: fix infinite loop in :meth:`ZoneInfo.from_file +<zoneinfo.ZoneInfo.from_file>` when parsing a malformed TZif file. Patch by +Fatih Celik. + +.. + +.. date: 2025-12-28-13-12-40 +.. gh-issue: 142830 +.. nonce: uEyd6r +.. section: Library + +:mod:`sqlite3`: fix use-after-free crashes when the connection's callbacks +are mutated during a callback execution. Patch by Bénédikt Tran. + +.. + +.. date: 2025-12-27-15-41-27 +.. gh-issue: 143200 +.. nonce: 2hEUAl +.. section: Library + +:mod:`xml.etree.ElementTree`: fix use-after-free crashes in +:meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods of +:class:`~xml.etree.ElementTree.Element` when the element is concurrently +mutated. Patch by Bénédikt Tran. + +.. + +.. date: 2025-12-27-13-47-59 +.. gh-issue: 143214 +.. nonce: gf6nZK +.. section: Library + +Add the *wrapcol* parameter in :func:`binascii.b2a_base64` and +:func:`base64.b64encode`. + +.. + +.. date: 2025-12-27-00-14-56 +.. gh-issue: 142195 +.. nonce: UgBEo5 +.. section: Library + +Updated timeout evaluation logic in :mod:`subprocess` to be compatible with +deterministic environments like Shadow where time moves exactly as +requested. + +.. + +.. date: 2025-12-26-14-51-50 +.. gh-issue: 140739 +.. nonce: BAbZTo +.. section: Library + +Fix several crashes due to reading invalid memory in the new Tachyon +sampling profiler. Patch by Pablo Galindo. + +.. + +.. date: 2025-12-25-08-58-55 +.. gh-issue: 142164 +.. nonce: XrFztf +.. section: Library + +Fix the ctypes bitfield overflow error message to report the correct offset +and size calculation. + +.. + +.. date: 2025-12-24-14-18-52 +.. gh-issue: 143145 +.. nonce: eXLw8D +.. section: Library + +Fixed a possible reference leak in ctypes when constructing results with +multiple output parameters on error. + +.. + +.. date: 2025-12-23-17-07-22 +.. gh-issue: 143103 +.. nonce: LRjXEW +.. section: Library + +Add padding support to :func:`base64.z85encode` via the ``pad`` parameter. + +.. + +.. date: 2025-12-23-11-43-05 +.. gh-issue: 130796 +.. nonce: TkzUGx +.. section: Library + +Undeprecate the :func:`locale.getdefaultlocale` function. Patch by Victor +Stinner. + +.. + +.. date: 2025-12-22-18-25-54 +.. gh-issue: 74902 +.. nonce: HqrWUV +.. section: Library + +Add the :func:`~unicodedata.iter_graphemes` function in the +:mod:`unicodedata` module to iterate over grapheme clusters according to +rules defined in `Unicode Standard Annex #29, "Unicode Text Segmentation" +<https://www.unicode.org/reports/tr29/>`_. Add +:func:`~unicodedata.grapheme_cluster_break`, +:func:`~unicodedata.indic_conjunct_break` and +:func:`~unicodedata.extended_pictographic` functions to get the properties +of the character which are related to the above algorithm. + +.. + +.. date: 2025-12-22-00-00-00 +.. gh-issue: 143004 +.. nonce: uaf-counter +.. section: Library + +Fix a potential use-after-free in :meth:`collections.Counter.update` when +user code mutates the Counter during an update. + +.. + +.. date: 2025-12-21-17-24-29 +.. gh-issue: 140648 +.. nonce: i8dca6 +.. section: Library + +The :mod:`asyncio` REPL now respects the :option:`-I` flag (isolated mode). +Previously, it would load and execute :envvar:`PYTHONSTARTUP` even if the +flag was set. Contributed by Bartosz Sławecki. + +.. + +.. date: 2025-12-20-10-21-23 +.. gh-issue: 142991 +.. nonce: jYHD9E +.. section: Library + +Fixed socket operations such as recvfrom() and sendto() for FreeBSD +divert(4) socket. + +.. + +.. date: 2025-12-19-12-38-01 +.. gh-issue: 116738 +.. nonce: iMt3Ol +.. section: Library + +Make the attributes in :mod:`lzma` thread-safe on the :term:`free threaded +<free threading>` build. + +.. + +.. date: 2025-12-18-22-58-46 +.. gh-issue: 142950 +.. nonce: EJ8w-T +.. section: Library + +Fix regression in :mod:`argparse` where format specifiers in help strings +raised :exc:`ValueError`. + +.. + +.. date: 2025-12-17-20-18-17 +.. gh-issue: 142881 +.. nonce: 5IizIQ +.. section: Library + +Fix concurrent and reentrant call of :func:`atexit.unregister`. + +.. + +.. date: 2025-12-12-08-51-29 +.. gh-issue: 142615 +.. nonce: GoJ6el +.. section: Library + +Fix possible crashes when initializing :class:`asyncio.Task` or +:class:`asyncio.Future` multiple times. These classes can now be initialized +only once and any subsequent initialization attempt will raise a +RuntimeError. Patch by Kumar Aditya. + +.. + +.. date: 2025-12-10-10-00-06 +.. gh-issue: 142517 +.. nonce: fG4hbe +.. section: Library + +The non-``compat32`` :mod:`email` policies now correctly handle refolding +encoded words that contain bytes that can not be decoded in their specified +character set. Previously this resulted in an encoding exception during +folding. + +.. + +.. date: 2025-12-06-19-49-20 +.. gh-issue: 138122 +.. nonce: m3EF9E +.. section: Library + +The Tachyon profiler's live TUI now integrates with the experimental +:mod:`!_colorize` theming system. Users can customize colors via +:func:`!_colorize.set_theme` (experimental API, subject to change). A +:class:`!LiveProfilerLight` theme is provided for light terminal +backgrounds. Patch by Pablo Galindo. + +.. + +.. date: 2025-12-05-17-22-25 +.. gh-issue: 142306 +.. nonce: Gj3_1m +.. section: Library + +Improve errors for :meth:`Element.remove +<xml.etree.ElementTree.Element.remove>`. + +.. + +.. date: 2025-10-04-20-48-02 +.. gh-issue: 63016 +.. nonce: EC9QN_ +.. section: Library + +Add a ``flags`` parameter to :meth:`mmap.mmap.flush` to control +synchronization behavior. + +.. + +.. date: 2025-09-23-16-41-21 +.. gh-issue: 139262 +.. nonce: RO0E98 +.. section: Library + +Some keystrokes can be swallowed in the new ``PyREPL`` on Windows, +especially when used together with the ALT key. Fix by Chris Eibl. + +.. + +.. date: 2025-09-14-22-26-50 +.. gh-issue: 138897 +.. nonce: vnUb_L +.. section: Library + +Improved :data:`license`/:data:`copyright`/:data:`credits` display in the +:term:`REPL`: now uses a pager. + +.. + +.. date: 2025-08-17-00-28-50 +.. gh-issue: 135852 +.. nonce: lQqOjQ +.. section: Library + +Add :func:`!_winapi.RegisterEventSource`, +:func:`!_winapi.DeregisterEventSource` and :func:`!_winapi.ReportEvent`. +Using these functions in :class:`~logging.handlers.NTEventLogHandler` to +replace :mod:`!pywin32`. + +.. + +.. date: 2025-06-22-18-57-19 +.. gh-issue: 109263 +.. nonce: f92V95 +.. section: Library + +Starting a process from spawn context in :mod:`multiprocessing` no longer +sets the start method globally. + +.. + +.. date: 2025-04-19-17-34-11 +.. gh-issue: 132715 +.. nonce: XXl47F +.. section: Library + +Skip writing objects during marshalling once a failure has occurred. + +.. + +.. date: 2025-10-30-19-28-42 +.. gh-issue: 140806 +.. nonce: RBT9YH +.. section: Documentation + +Add documentation for :func:`enum.bin`. + +.. + +.. date: 2026-01-12-22-49-36 +.. gh-issue: 134584 +.. nonce: guDlsj +.. section: Core and Builtins + +Eliminate redundant refcounting from ``_CONTAINS_OP``, ``_CONTAINS_OP_SET`` +and ``_CONTAINS_OP_DICT``. + +.. + +.. date: 2026-01-10-17-13-04 +.. gh-issue: 143604 +.. nonce: BygbVT +.. section: Core and Builtins + +Fix a reference counting issue in the JIT tracer where the current executor +could be prematurely freed during tracing. + +.. + +.. date: 2026-01-06-12-30-03 +.. gh-issue: 143469 +.. nonce: vHVhEY +.. section: Core and Builtins + +Enable :opcode:`!LOAD_ATTR_MODULE` specialization even if +:func:`!__getattr__` is defined in module. + +.. + +.. date: 2026-01-04-23-53-42 +.. gh-issue: 134584 +.. nonce: CNrxI_ +.. section: Core and Builtins + +Eliminate redundant refcounting from ``TO_BOOL_STR``. + +.. + +.. date: 2026-01-04-16-56-17 +.. gh-issue: 143377 +.. nonce: YJqMCa +.. section: Core and Builtins + +Fix a crash in :func:`!_interpreters.capture_exception` when the exception +is incorrectly formatted. Patch by Bénédikt Tran. + +.. + +.. date: 2026-01-04-11-08-20 +.. gh-issue: 139757 +.. nonce: AR6LG0 +.. section: Core and Builtins + +Add ``BINARY_OP_SUBSCR_USTR_INT`` to specialize reading an ASCII character +from any string. Patch by Chris Eibl. + +.. + +.. date: 2026-01-03-15-44-51 +.. gh-issue: 141504 +.. nonce: sbnJlM +.. section: Core and Builtins + +Factor out tracing and optimization heuristics into a single object. Patch +by Donghee Na. + +.. + +.. date: 2026-01-03-14-47-49 +.. gh-issue: 142982 +.. nonce: 0lAtc7 +.. section: Core and Builtins + +Specialize :opcode:`CALL_FUNCTION_EX` for Python and non-Python callables. + +.. + +.. date: 2026-01-03-14-02-11 +.. gh-issue: 136924 +.. nonce: UMgdPn +.. section: Core and Builtins + +The interactive help mode in the :term:`REPL` no longer incorrectly syntax +highlights text input as Python code. Contributed by Olga Matoula. + +.. + +.. date: 2026-01-02-22-35-12 +.. gh-issue: 139757 +.. nonce: v5LRew +.. section: Core and Builtins + +Fix unintended bytecode specialization for non-ascii string. Patch by +Donghee Na, Ken Jin and Chris Eibl. + +.. + +.. date: 2026-01-02-17-11-16 +.. gh-issue: 143361 +.. nonce: YDnvdC +.. section: Core and Builtins + +Add ``PY_VECTORCALL_ARGUMENTS_OFFSET`` to +``_Py_CallBuiltinClass_StackRefSteal`` to avoid redundant allocations + +.. + +.. date: 2026-01-01-23-41-50 +.. gh-issue: 131798 +.. nonce: QUqDdK +.. section: Core and Builtins + +The JIT optimizer now understands more generator instructions. + +.. + +.. date: 2026-01-01-17-01-24 +.. gh-issue: 134584 +.. nonce: nis8LC +.. section: Core and Builtins + +Eliminate redundant refcounting from ``_LOAD_ATTR_SLOT``. + +.. + +.. date: 2025-12-30-06-48-48 +.. gh-issue: 143189 +.. nonce: in_sv2 +.. section: Core and Builtins + +Fix crash when inserting a non-:class:`str` key into a split table +dictionary when the key matches an existing key in the split table but has +no corresponding value in the dict. + +.. + +.. date: 2025-12-27-23-57-43 +.. gh-issue: 143228 +.. nonce: m3EF9E +.. section: Core and Builtins + +Fix use-after-free in perf trampoline when toggling profiling while threads +are running or during interpreter finalization with daemon threads active. +The fix uses reference counting to ensure trampolines are not freed while +any code object could still reference them. Pach by Pablo Galindo + +.. + +.. date: 2025-12-27-13-18-12 +.. gh-issue: 142664 +.. nonce: peeEDV +.. section: Core and Builtins + +Fix a use-after-free crash in :meth:`memoryview.__hash__ <object.__hash__>` +when the ``__hash__`` method of the referenced object mutates that object or +the view. Patch by Bénédikt Tran. + +.. + +.. date: 2025-12-27-12-25-06 +.. gh-issue: 142557 +.. nonce: KWOc8b +.. section: Core and Builtins + +Fix a use-after-free crash in :ref:`bytearray.__mod__ <bytes-formatting>` +when the :class:`!bytearray` is mutated while formatting the ``%``-style +arguments. Patch by Bénédikt Tran. + +.. + +.. date: 2025-12-27-10-14-26 +.. gh-issue: 143195 +.. nonce: MNldfr +.. section: Core and Builtins + +Fix use-after-free crashes in :meth:`bytearray.hex` and +:meth:`memoryview.hex` when the separator's :meth:`~object.__len__` mutates +the original object. Patch by Bénédikt Tran. + +.. + +.. date: 2025-12-26-11-00-44 +.. gh-issue: 143183 +.. nonce: rhxzZr +.. section: Core and Builtins + +Fix a bug in the JIT when dealing with unsupported control-flow or +operations. + +.. + +.. date: 2025-12-24-13-44-24 +.. gh-issue: 142975 +.. nonce: 8C4vIP +.. section: Core and Builtins + +Fix crash after unfreezing all objects tracked by the garbage collector on +the :term:`free threaded <free threading>` build. + +.. + +.. date: 2025-12-24-11-39-59 +.. gh-issue: 143135 +.. nonce: 3d5ovx +.. section: Core and Builtins + +Set :data:`sys.flags.inspect` to ``1`` when :envvar:`PYTHONINSPECT` is +``0``. Previously, it was set to ``0`` in this case. + +.. + +.. date: 2025-12-23-23-36-41 +.. gh-issue: 143123 +.. nonce: -51gt_ +.. section: Core and Builtins + +Protect the JIT against recursive tracing. + +.. + +.. date: 2025-12-23-23-06-11 +.. gh-issue: 143092 +.. nonce: 6MISbb +.. section: Core and Builtins + +Fix a crash in the JIT when dealing with ``list.append(x)`` style code. + +.. + +.. date: 2025-12-23-00-13-02 +.. gh-issue: 143003 +.. nonce: 92g5qW +.. section: Core and Builtins + +Fix an overflow of the shared empty buffer in :meth:`bytearray.extend` when +``__length_hint__()`` returns 0 for non-empty iterator. + +.. + +.. date: 2025-12-22-22-37-53 +.. gh-issue: 143006 +.. nonce: ZBQwbN +.. section: Core and Builtins + +Fix a possible assertion error when comparing negative non-integer ``float`` +and ``int`` with the same number of bits in the integer part. + +.. + +.. date: 2025-12-22-16-22-02 +.. gh-issue: 116738 +.. nonce: caQuq_ +.. section: Core and Builtins + +Fix thread safety of :func:`contextvars.Context.run`. + +.. + +.. date: 2025-12-17-19-45-10 +.. gh-issue: 142829 +.. nonce: ICtLXy +.. section: Core and Builtins + +Fix a use-after-free crash in :class:`contextvars.Context` comparison when a +custom ``__eq__`` method modifies the context via +:meth:`~contextvars.ContextVar.set`. + +.. + +.. date: 2025-12-17-10-12-09 +.. gh-issue: 142863 +.. nonce: ZW2ZF8 +.. section: Core and Builtins + +Generate optimized bytecode when calling :class:`list` or :class:`set` with +generator expression. + +.. + +.. date: 2025-11-19-20-42-21 +.. gh-issue: 41779 +.. nonce: Psz9Vo +.. section: Core and Builtins + +Allowed defining any :ref:`__slots__ <slots>` for a class derived from +:class:`tuple` (including classes created by +:func:`collections.namedtuple`). + +.. + +.. date: 2025-09-30-21-59-56 +.. gh-issue: 69605 +.. nonce: qcmGF3 +.. section: Core and Builtins + +Fix edge-cases around already imported modules in the :term:`REPL` +auto-completion of imports. + +.. + +.. date: 2025-09-06-08-29-08 +.. gh-issue: 138568 +.. nonce: iZlalC +.. section: Core and Builtins + +Adjusted the built-in :func:`help` function so that empty inputs are ignored +in interactive mode. + +.. + +.. date: 2025-08-10-12-46-36 +.. gh-issue: 131798 +.. nonce: 5ys0H_ +.. section: Core and Builtins + +Remove bounds check when indexing into tuples with a constant index. + +.. + +.. date: 2025-06-23-20-54-15 +.. gh-issue: 134584 +.. nonce: ZNcziF +.. section: Core and Builtins + +Eliminate redundant refcounting from ``_CALL_TYPE_1``. Patch by Tomas Roun + +.. + +.. date: 2025-04-04-20-38-29 +.. gh-issue: 132108 +.. nonce: UwZIQy +.. section: Core and Builtins + +Speed up :meth:`int.from_bytes` when passed object supports :ref:`buffer +protocol <bufferobjects>`, like :class:`bytearray` by ~1.2x. + +.. + +.. date: 2024-12-29-21-33-08 +.. gh-issue: 128334 +.. nonce: 3c5Nou +.. section: Core and Builtins + +Make the :class:`slice` class subscriptable at runtime to be consistent with +typing implementation. + +.. + +.. date: 2025-11-17-17-46-16 +.. gh-issue: 141671 +.. nonce: cVXNW5 +.. section: C API + +:c:macro:`PyMODINIT_FUNC` (and the new :c:macro:`PyMODEXPORT_FUNC`) now adds +a linkage declaration (``__declspec(dllexport)``) on Windows. diff --git a/Misc/NEWS.d/next/C_API/2025-11-17-17-46-16.gh-issue-141671.cVXNW5.rst b/Misc/NEWS.d/next/C_API/2025-11-17-17-46-16.gh-issue-141671.cVXNW5.rst deleted file mode 100644 index 304a6a5..0000000 --- a/Misc/NEWS.d/next/C_API/2025-11-17-17-46-16.gh-issue-141671.cVXNW5.rst +++ /dev/null @@ -1,2 +0,0 @@ -:c:macro:`PyMODINIT_FUNC` (and the new :c:macro:`PyMODEXPORT_FUNC`) now adds -a linkage declaration (``__declspec(dllexport)``) on Windows. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-12-29-21-33-08.gh-issue-128334.3c5Nou.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-12-29-21-33-08.gh-issue-128334.3c5Nou.rst deleted file mode 100644 index 2908db8..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2024-12-29-21-33-08.gh-issue-128334.3c5Nou.rst +++ /dev/null @@ -1 +0,0 @@ -Make the :class:`slice` class subscriptable at runtime to be consistent with typing implementation. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-04-04-20-38-29.gh-issue-132108.UwZIQy.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-04-04-20-38-29.gh-issue-132108.UwZIQy.rst deleted file mode 100644 index 8c2d947..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-04-04-20-38-29.gh-issue-132108.UwZIQy.rst +++ /dev/null @@ -1,2 +0,0 @@ -Speed up :meth:`int.from_bytes` when passed object supports :ref:`buffer -protocol <bufferobjects>`, like :class:`bytearray` by ~1.2x. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-06-23-20-54-15.gh-issue-134584.ZNcziF.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-06-23-20-54-15.gh-issue-134584.ZNcziF.rst deleted file mode 100644 index 520690b..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-06-23-20-54-15.gh-issue-134584.ZNcziF.rst +++ /dev/null @@ -1 +0,0 @@ -Eliminate redundant refcounting from ``_CALL_TYPE_1``. Patch by Tomas Roun diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-08-10-12-46-36.gh-issue-131798.5ys0H_.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-08-10-12-46-36.gh-issue-131798.5ys0H_.rst deleted file mode 100644 index 5a04d14..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-08-10-12-46-36.gh-issue-131798.5ys0H_.rst +++ /dev/null @@ -1 +0,0 @@ -Remove bounds check when indexing into tuples with a constant index. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-09-06-08-29-08.gh-issue-138568.iZlalC.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-09-06-08-29-08.gh-issue-138568.iZlalC.rst deleted file mode 100644 index 8a91631..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-09-06-08-29-08.gh-issue-138568.iZlalC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Adjusted the built-in :func:`help` function so that empty inputs are ignored in -interactive mode. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-09-30-21-59-56.gh-issue-69605.qcmGF3.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-09-30-21-59-56.gh-issue-69605.qcmGF3.rst deleted file mode 100644 index 56d74d2..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-09-30-21-59-56.gh-issue-69605.qcmGF3.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix edge-cases around already imported modules in the :term:`REPL` -auto-completion of imports. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-11-19-20-42-21.gh-issue-41779.Psz9Vo.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-11-19-20-42-21.gh-issue-41779.Psz9Vo.rst deleted file mode 100644 index 16e5468..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-11-19-20-42-21.gh-issue-41779.Psz9Vo.rst +++ /dev/null @@ -1,3 +0,0 @@ -Allowed defining any :ref:`__slots__ <slots>` for a class derived from -:class:`tuple` (including classes created by -:func:`collections.namedtuple`). diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-10-12-09.gh-issue-142863.ZW2ZF8.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-10-12-09.gh-issue-142863.ZW2ZF8.rst deleted file mode 100644 index 90c8f32..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-10-12-09.gh-issue-142863.ZW2ZF8.rst +++ /dev/null @@ -1 +0,0 @@ -Generate optimized bytecode when calling :class:`list` or :class:`set` with generator expression. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-19-45-10.gh-issue-142829.ICtLXy.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-19-45-10.gh-issue-142829.ICtLXy.rst deleted file mode 100644 index b850030..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-17-19-45-10.gh-issue-142829.ICtLXy.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a use-after-free crash in :class:`contextvars.Context` comparison when a -custom ``__eq__`` method modifies the context via -:meth:`~contextvars.ContextVar.set`. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-16-22-02.gh-issue-116738.caQuq_.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-16-22-02.gh-issue-116738.caQuq_.rst deleted file mode 100644 index 9fa2039..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-16-22-02.gh-issue-116738.caQuq_.rst +++ /dev/null @@ -1 +0,0 @@ -Fix thread safety of :func:`contextvars.Context.run`. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-22-37-53.gh-issue-143006.ZBQwbN.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-22-37-53.gh-issue-143006.ZBQwbN.rst deleted file mode 100644 index f256203..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-22-22-37-53.gh-issue-143006.ZBQwbN.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a possible assertion error when comparing negative non-integer ``float`` -and ``int`` with the same number of bits in the integer part. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-00-13-02.gh-issue-143003.92g5qW.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-00-13-02.gh-issue-143003.92g5qW.rst deleted file mode 100644 index 30df3c5..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-00-13-02.gh-issue-143003.92g5qW.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix an overflow of the shared empty buffer in :meth:`bytearray.extend` when -``__length_hint__()`` returns 0 for non-empty iterator. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-06-11.gh-issue-143092.6MISbb.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-06-11.gh-issue-143092.6MISbb.rst deleted file mode 100644 index dddfc56..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-06-11.gh-issue-143092.6MISbb.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a crash in the JIT when dealing with ``list.append(x)`` style code. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-36-41.gh-issue-143123.-51gt_.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-36-41.gh-issue-143123.-51gt_.rst deleted file mode 100644 index 04523bd..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-23-23-36-41.gh-issue-143123.-51gt_.rst +++ /dev/null @@ -1 +0,0 @@ -Protect the JIT against recursive tracing. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-11-39-59.gh-issue-143135.3d5ovx.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-11-39-59.gh-issue-143135.3d5ovx.rst deleted file mode 100644 index 2ff08b4..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-11-39-59.gh-issue-143135.3d5ovx.rst +++ /dev/null @@ -1,2 +0,0 @@ -Set :data:`sys.flags.inspect` to ``1`` when :envvar:`PYTHONINSPECT` is ``0``. -Previously, it was set to ``0`` in this case. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-13-44-24.gh-issue-142975.8C4vIP.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-13-44-24.gh-issue-142975.8C4vIP.rst deleted file mode 100644 index 9d7f57e..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-24-13-44-24.gh-issue-142975.8C4vIP.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix crash after unfreezing all objects tracked by the garbage collector on -the :term:`free threaded <free threading>` build. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-26-11-00-44.gh-issue-143183.rhxzZr.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-26-11-00-44.gh-issue-143183.rhxzZr.rst deleted file mode 100644 index bee2eb6..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-26-11-00-44.gh-issue-143183.rhxzZr.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a bug in the JIT when dealing with unsupported control-flow or operations. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-10-14-26.gh-issue-143195.MNldfr.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-10-14-26.gh-issue-143195.MNldfr.rst deleted file mode 100644 index 66dc5e2..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-10-14-26.gh-issue-143195.MNldfr.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix use-after-free crashes in :meth:`bytearray.hex` and :meth:`memoryview.hex` -when the separator's :meth:`~object.__len__` mutates the original object. -Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-12-25-06.gh-issue-142557.KWOc8b.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-12-25-06.gh-issue-142557.KWOc8b.rst deleted file mode 100644 index b7f7a58..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-12-25-06.gh-issue-142557.KWOc8b.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a use-after-free crash in :ref:`bytearray.__mod__ <bytes-formatting>` when -the :class:`!bytearray` is mutated while formatting the ``%``-style arguments. -Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-13-18-12.gh-issue-142664.peeEDV.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-13-18-12.gh-issue-142664.peeEDV.rst deleted file mode 100644 index 39c2183..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-13-18-12.gh-issue-142664.peeEDV.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a use-after-free crash in :meth:`memoryview.__hash__ <object.__hash__>` -when the ``__hash__`` method of the referenced object mutates that object or -the view. Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-23-57-43.gh-issue-143228.m3EF9E.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-23-57-43.gh-issue-143228.m3EF9E.rst deleted file mode 100644 index 893bc29..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-27-23-57-43.gh-issue-143228.m3EF9E.rst +++ /dev/null @@ -1,4 +0,0 @@ -Fix use-after-free in perf trampoline when toggling profiling while -threads are running or during interpreter finalization with daemon threads -active. The fix uses reference counting to ensure trampolines are not freed -while any code object could still reference them. Pach by Pablo Galindo diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-30-06-48-48.gh-issue-143189.in_sv2.rst b/Misc/NEWS.d/next/Core_and_Builtins/2025-12-30-06-48-48.gh-issue-143189.in_sv2.rst deleted file mode 100644 index 706b9de..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2025-12-30-06-48-48.gh-issue-143189.in_sv2.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix crash when inserting a non-:class:`str` key into a split table -dictionary when the key matches an existing key in the split table -but has no corresponding value in the dict. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-17-01-24.gh-issue-134584.nis8LC.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-17-01-24.gh-issue-134584.nis8LC.rst deleted file mode 100644 index ac5a2b6..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-17-01-24.gh-issue-134584.nis8LC.rst +++ /dev/null @@ -1 +0,0 @@ -Eliminate redundant refcounting from ``_LOAD_ATTR_SLOT``. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-23-41-50.gh-issue-131798.QUqDdK.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-23-41-50.gh-issue-131798.QUqDdK.rst deleted file mode 100644 index 528eb70..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-01-23-41-50.gh-issue-131798.QUqDdK.rst +++ /dev/null @@ -1 +0,0 @@ -The JIT optimizer now understands more generator instructions. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-17-11-16.gh-issue-143361.YDnvdC.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-17-11-16.gh-issue-143361.YDnvdC.rst deleted file mode 100644 index df4e3b6..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-17-11-16.gh-issue-143361.YDnvdC.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``PY_VECTORCALL_ARGUMENTS_OFFSET`` to ``_Py_CallBuiltinClass_StackRefSteal`` to -avoid redundant allocations diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-22-35-12.gh-issue-139757.v5LRew.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-22-35-12.gh-issue-139757.v5LRew.rst deleted file mode 100644 index ef1a4e4..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-02-22-35-12.gh-issue-139757.v5LRew.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix unintended bytecode specialization for non-ascii string. -Patch by Donghee Na, Ken Jin and Chris Eibl. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-02-11.gh-issue-136924.UMgdPn.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-02-11.gh-issue-136924.UMgdPn.rst deleted file mode 100644 index b147b05..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-02-11.gh-issue-136924.UMgdPn.rst +++ /dev/null @@ -1,2 +0,0 @@ -The interactive help mode in the :term:`REPL` no longer incorrectly syntax -highlights text input as Python code. Contributed by Olga Matoula. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-47-49.gh-issue-142982.0lAtc7.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-47-49.gh-issue-142982.0lAtc7.rst deleted file mode 100644 index cb4c237..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-14-47-49.gh-issue-142982.0lAtc7.rst +++ /dev/null @@ -1 +0,0 @@ -Specialize :opcode:`CALL_FUNCTION_EX` for Python and non-Python callables. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-15-44-51.gh-issue-141504.sbnJlM.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-15-44-51.gh-issue-141504.sbnJlM.rst deleted file mode 100644 index 627a2db..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-03-15-44-51.gh-issue-141504.sbnJlM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Factor out tracing and optimization heuristics into a single object. -Patch by Donghee Na. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-11-08-20.gh-issue-139757.AR6LG0.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-11-08-20.gh-issue-139757.AR6LG0.rst deleted file mode 100644 index 089b6ef..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-11-08-20.gh-issue-139757.AR6LG0.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add ``BINARY_OP_SUBSCR_USTR_INT`` to specialize reading an ASCII character -from any string. Patch by Chris Eibl. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-16-56-17.gh-issue-143377.YJqMCa.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-16-56-17.gh-issue-143377.YJqMCa.rst deleted file mode 100644 index fc58554..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-16-56-17.gh-issue-143377.YJqMCa.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a crash in :func:`!_interpreters.capture_exception` when -the exception is incorrectly formatted. Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-23-53-42.gh-issue-134584.CNrxI_.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-23-53-42.gh-issue-134584.CNrxI_.rst deleted file mode 100644 index cc59971..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-04-23-53-42.gh-issue-134584.CNrxI_.rst +++ /dev/null @@ -1 +0,0 @@ -Eliminate redundant refcounting from ``TO_BOOL_STR``. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-06-12-30-03.gh-issue-143469.vHVhEY.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-06-12-30-03.gh-issue-143469.vHVhEY.rst deleted file mode 100644 index 9bac544..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-06-12-30-03.gh-issue-143469.vHVhEY.rst +++ /dev/null @@ -1 +0,0 @@ -Enable :opcode:`!LOAD_ATTR_MODULE` specialization even if :func:`!__getattr__` is defined in module. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-10-17-13-04.gh-issue-143604.BygbVT.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-10-17-13-04.gh-issue-143604.BygbVT.rst deleted file mode 100644 index 391186b..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-10-17-13-04.gh-issue-143604.BygbVT.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a reference counting issue in the JIT tracer where the current executor -could be prematurely freed during tracing. diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-12-22-49-36.gh-issue-134584.guDlsj.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-01-12-22-49-36.gh-issue-134584.guDlsj.rst deleted file mode 100644 index 712ddd3..0000000 --- a/Misc/NEWS.d/next/Core_and_Builtins/2026-01-12-22-49-36.gh-issue-134584.guDlsj.rst +++ /dev/null @@ -1,2 +0,0 @@ -Eliminate redundant refcounting from ``_CONTAINS_OP``, ``_CONTAINS_OP_SET`` -and ``_CONTAINS_OP_DICT``. diff --git a/Misc/NEWS.d/next/Documentation/2025-10-30-19-28-42.gh-issue-140806.RBT9YH.rst b/Misc/NEWS.d/next/Documentation/2025-10-30-19-28-42.gh-issue-140806.RBT9YH.rst deleted file mode 100644 index 82bdf05..0000000 --- a/Misc/NEWS.d/next/Documentation/2025-10-30-19-28-42.gh-issue-140806.RBT9YH.rst +++ /dev/null @@ -1 +0,0 @@ -Add documentation for :func:`enum.bin`. diff --git a/Misc/NEWS.d/next/Library/2025-04-19-17-34-11.gh-issue-132715.XXl47F.rst b/Misc/NEWS.d/next/Library/2025-04-19-17-34-11.gh-issue-132715.XXl47F.rst deleted file mode 100644 index 191b4f1..0000000 --- a/Misc/NEWS.d/next/Library/2025-04-19-17-34-11.gh-issue-132715.XXl47F.rst +++ /dev/null @@ -1 +0,0 @@ -Skip writing objects during marshalling once a failure has occurred. diff --git a/Misc/NEWS.d/next/Library/2025-06-22-18-57-19.gh-issue-109263.f92V95.rst b/Misc/NEWS.d/next/Library/2025-06-22-18-57-19.gh-issue-109263.f92V95.rst deleted file mode 100644 index 6b96b5b..0000000 --- a/Misc/NEWS.d/next/Library/2025-06-22-18-57-19.gh-issue-109263.f92V95.rst +++ /dev/null @@ -1,2 +0,0 @@ -Starting a process from spawn context in :mod:`multiprocessing` no longer -sets the start method globally. diff --git a/Misc/NEWS.d/next/Library/2025-08-17-00-28-50.gh-issue-135852.lQqOjQ.rst b/Misc/NEWS.d/next/Library/2025-08-17-00-28-50.gh-issue-135852.lQqOjQ.rst deleted file mode 100644 index 7527cac..0000000 --- a/Misc/NEWS.d/next/Library/2025-08-17-00-28-50.gh-issue-135852.lQqOjQ.rst +++ /dev/null @@ -1,4 +0,0 @@ -Add :func:`!_winapi.RegisterEventSource`, -:func:`!_winapi.DeregisterEventSource` and :func:`!_winapi.ReportEvent`. -Using these functions in :class:`~logging.handlers.NTEventLogHandler` -to replace :mod:`!pywin32`. diff --git a/Misc/NEWS.d/next/Library/2025-09-14-22-26-50.gh-issue-138897.vnUb_L.rst b/Misc/NEWS.d/next/Library/2025-09-14-22-26-50.gh-issue-138897.vnUb_L.rst deleted file mode 100644 index 779c886..0000000 --- a/Misc/NEWS.d/next/Library/2025-09-14-22-26-50.gh-issue-138897.vnUb_L.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improved :data:`license`/:data:`copyright`/:data:`credits` display in the -:term:`REPL`: now uses a pager. diff --git a/Misc/NEWS.d/next/Library/2025-09-23-16-41-21.gh-issue-139262.RO0E98.rst b/Misc/NEWS.d/next/Library/2025-09-23-16-41-21.gh-issue-139262.RO0E98.rst deleted file mode 100644 index 628fa0e..0000000 --- a/Misc/NEWS.d/next/Library/2025-09-23-16-41-21.gh-issue-139262.RO0E98.rst +++ /dev/null @@ -1,2 +0,0 @@ -Some keystrokes can be swallowed in the new ``PyREPL`` on Windows, -especially when used together with the ALT key. Fix by Chris Eibl. diff --git a/Misc/NEWS.d/next/Library/2025-10-04-20-48-02.gh-issue-63016.EC9QN_.rst b/Misc/NEWS.d/next/Library/2025-10-04-20-48-02.gh-issue-63016.EC9QN_.rst deleted file mode 100644 index a0aee6c..0000000 --- a/Misc/NEWS.d/next/Library/2025-10-04-20-48-02.gh-issue-63016.EC9QN_.rst +++ /dev/null @@ -1 +0,0 @@ -Add a ``flags`` parameter to :meth:`mmap.mmap.flush` to control synchronization behavior. diff --git a/Misc/NEWS.d/next/Library/2025-12-05-17-22-25.gh-issue-142306.Gj3_1m.rst b/Misc/NEWS.d/next/Library/2025-12-05-17-22-25.gh-issue-142306.Gj3_1m.rst deleted file mode 100644 index ac39490..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-05-17-22-25.gh-issue-142306.Gj3_1m.rst +++ /dev/null @@ -1,2 +0,0 @@ -Improve errors for :meth:`Element.remove -<xml.etree.ElementTree.Element.remove>`. diff --git a/Misc/NEWS.d/next/Library/2025-12-06-19-49-20.gh-issue-138122.m3EF9E.rst b/Misc/NEWS.d/next/Library/2025-12-06-19-49-20.gh-issue-138122.m3EF9E.rst deleted file mode 100644 index f4e0248..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-06-19-49-20.gh-issue-138122.m3EF9E.rst +++ /dev/null @@ -1,5 +0,0 @@ -The Tachyon profiler's live TUI now integrates with the experimental -:mod:`!_colorize` theming system. Users can customize colors via -:func:`!_colorize.set_theme` (experimental API, subject to change). -A :class:`!LiveProfilerLight` theme is provided for light terminal backgrounds. -Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2025-12-10-10-00-06.gh-issue-142517.fG4hbe.rst b/Misc/NEWS.d/next/Library/2025-12-10-10-00-06.gh-issue-142517.fG4hbe.rst deleted file mode 100644 index d58e532..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-10-10-00-06.gh-issue-142517.fG4hbe.rst +++ /dev/null @@ -1,4 +0,0 @@ -The non-``compat32`` :mod:`email` policies now correctly handle refolding -encoded words that contain bytes that can not be decoded in their specified -character set. Previously this resulted in an encoding exception during -folding. diff --git a/Misc/NEWS.d/next/Library/2025-12-12-08-51-29.gh-issue-142615.GoJ6el.rst b/Misc/NEWS.d/next/Library/2025-12-12-08-51-29.gh-issue-142615.GoJ6el.rst deleted file mode 100644 index 3413f9a..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-12-08-51-29.gh-issue-142615.GoJ6el.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix possible crashes when initializing :class:`asyncio.Task` or :class:`asyncio.Future` multiple times.
-These classes can now be initialized only once and any subsequent initialization attempt will raise a RuntimeError.
-Patch by Kumar Aditya. diff --git a/Misc/NEWS.d/next/Library/2025-12-17-20-18-17.gh-issue-142881.5IizIQ.rst b/Misc/NEWS.d/next/Library/2025-12-17-20-18-17.gh-issue-142881.5IizIQ.rst deleted file mode 100644 index 02f22d3..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-17-20-18-17.gh-issue-142881.5IizIQ.rst +++ /dev/null @@ -1 +0,0 @@ -Fix concurrent and reentrant call of :func:`atexit.unregister`. diff --git a/Misc/NEWS.d/next/Library/2025-12-18-22-58-46.gh-issue-142950.EJ8w-T.rst b/Misc/NEWS.d/next/Library/2025-12-18-22-58-46.gh-issue-142950.EJ8w-T.rst deleted file mode 100644 index 219930c..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-18-22-58-46.gh-issue-142950.EJ8w-T.rst +++ /dev/null @@ -1 +0,0 @@ -Fix regression in :mod:`argparse` where format specifiers in help strings raised :exc:`ValueError`. diff --git a/Misc/NEWS.d/next/Library/2025-12-19-12-38-01.gh-issue-116738.iMt3Ol.rst b/Misc/NEWS.d/next/Library/2025-12-19-12-38-01.gh-issue-116738.iMt3Ol.rst deleted file mode 100644 index 5d697a5..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-19-12-38-01.gh-issue-116738.iMt3Ol.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make the attributes in :mod:`lzma` thread-safe on the :term:`free threaded -<free threading>` build. diff --git a/Misc/NEWS.d/next/Library/2025-12-20-10-21-23.gh-issue-142991.jYHD9E.rst b/Misc/NEWS.d/next/Library/2025-12-20-10-21-23.gh-issue-142991.jYHD9E.rst deleted file mode 100644 index 2c76bb4..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-20-10-21-23.gh-issue-142991.jYHD9E.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed socket operations such as recvfrom() and sendto() for FreeBSD -divert(4) socket. diff --git a/Misc/NEWS.d/next/Library/2025-12-21-17-24-29.gh-issue-140648.i8dca6.rst b/Misc/NEWS.d/next/Library/2025-12-21-17-24-29.gh-issue-140648.i8dca6.rst deleted file mode 100644 index 9e56f09..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-21-17-24-29.gh-issue-140648.i8dca6.rst +++ /dev/null @@ -1,3 +0,0 @@ -The :mod:`asyncio` REPL now respects the :option:`-I` flag (isolated mode). -Previously, it would load and execute :envvar:`PYTHONSTARTUP` even if the -flag was set. Contributed by Bartosz Sławecki. diff --git a/Misc/NEWS.d/next/Library/2025-12-22-00-00-00.gh-issue-143004.uaf-counter.rst b/Misc/NEWS.d/next/Library/2025-12-22-00-00-00.gh-issue-143004.uaf-counter.rst deleted file mode 100644 index 278066e..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-22-00-00-00.gh-issue-143004.uaf-counter.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix a potential use-after-free in :meth:`collections.Counter.update` when user code -mutates the Counter during an update. diff --git a/Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst b/Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst deleted file mode 100644 index e3922b2..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-22-18-25-54.gh-issue-74902.HqrWUV.rst +++ /dev/null @@ -1,8 +0,0 @@ -Add the :func:`~unicodedata.iter_graphemes` function in the -:mod:`unicodedata` module to iterate over grapheme clusters according to -rules defined in `Unicode Standard Annex #29, "Unicode Text Segmentation" -<https://www.unicode.org/reports/tr29/>`_. Add -:func:`~unicodedata.grapheme_cluster_break`, -:func:`~unicodedata.indic_conjunct_break` and -:func:`~unicodedata.extended_pictographic` functions to get the properties -of the character which are related to the above algorithm. diff --git a/Misc/NEWS.d/next/Library/2025-12-23-11-43-05.gh-issue-130796.TkzUGx.rst b/Misc/NEWS.d/next/Library/2025-12-23-11-43-05.gh-issue-130796.TkzUGx.rst deleted file mode 100644 index a078561..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-23-11-43-05.gh-issue-130796.TkzUGx.rst +++ /dev/null @@ -1,2 +0,0 @@ -Undeprecate the :func:`locale.getdefaultlocale` function. -Patch by Victor Stinner. diff --git a/Misc/NEWS.d/next/Library/2025-12-23-17-07-22.gh-issue-143103.LRjXEW.rst b/Misc/NEWS.d/next/Library/2025-12-23-17-07-22.gh-issue-143103.LRjXEW.rst deleted file mode 100644 index b00c037..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-23-17-07-22.gh-issue-143103.LRjXEW.rst +++ /dev/null @@ -1 +0,0 @@ -Add padding support to :func:`base64.z85encode` via the ``pad`` parameter. diff --git a/Misc/NEWS.d/next/Library/2025-12-24-14-18-52.gh-issue-143145.eXLw8D.rst b/Misc/NEWS.d/next/Library/2025-12-24-14-18-52.gh-issue-143145.eXLw8D.rst deleted file mode 100644 index 2aff109..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-24-14-18-52.gh-issue-143145.eXLw8D.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed a possible reference leak in ctypes when constructing results with multiple output parameters on error. diff --git a/Misc/NEWS.d/next/Library/2025-12-25-08-58-55.gh-issue-142164.XrFztf.rst b/Misc/NEWS.d/next/Library/2025-12-25-08-58-55.gh-issue-142164.XrFztf.rst deleted file mode 100644 index e75270b..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-25-08-58-55.gh-issue-142164.XrFztf.rst +++ /dev/null @@ -1 +0,0 @@ -Fix the ctypes bitfield overflow error message to report the correct offset and size calculation. diff --git a/Misc/NEWS.d/next/Library/2025-12-26-14-51-50.gh-issue-140739.BAbZTo.rst b/Misc/NEWS.d/next/Library/2025-12-26-14-51-50.gh-issue-140739.BAbZTo.rst deleted file mode 100644 index ae93cbb..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-26-14-51-50.gh-issue-140739.BAbZTo.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix several crashes due to reading invalid memory in the new Tachyon -sampling profiler. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2025-12-27-00-14-56.gh-issue-142195.UgBEo5.rst b/Misc/NEWS.d/next/Library/2025-12-27-00-14-56.gh-issue-142195.UgBEo5.rst deleted file mode 100644 index b2b1ffe..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-27-00-14-56.gh-issue-142195.UgBEo5.rst +++ /dev/null @@ -1 +0,0 @@ -Updated timeout evaluation logic in :mod:`subprocess` to be compatible with deterministic environments like Shadow where time moves exactly as requested. diff --git a/Misc/NEWS.d/next/Library/2025-12-27-13-47-59.gh-issue-143214.gf6nZK.rst b/Misc/NEWS.d/next/Library/2025-12-27-13-47-59.gh-issue-143214.gf6nZK.rst deleted file mode 100644 index 0936c4d..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-27-13-47-59.gh-issue-143214.gf6nZK.rst +++ /dev/null @@ -1,2 +0,0 @@ -Add the *wrapcol* parameter in :func:`binascii.b2a_base64` and -:func:`base64.b64encode`. diff --git a/Misc/NEWS.d/next/Library/2025-12-27-15-41-27.gh-issue-143200.2hEUAl.rst b/Misc/NEWS.d/next/Library/2025-12-27-15-41-27.gh-issue-143200.2hEUAl.rst deleted file mode 100644 index 8b24dec..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-27-15-41-27.gh-issue-143200.2hEUAl.rst +++ /dev/null @@ -1,4 +0,0 @@ -:mod:`xml.etree.ElementTree`: fix use-after-free crashes in -:meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods of -:class:`~xml.etree.ElementTree.Element` when the element is concurrently -mutated. Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Library/2025-12-28-13-12-40.gh-issue-142830.uEyd6r.rst b/Misc/NEWS.d/next/Library/2025-12-28-13-12-40.gh-issue-142830.uEyd6r.rst deleted file mode 100644 index 246979e..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-28-13-12-40.gh-issue-142830.uEyd6r.rst +++ /dev/null @@ -1,2 +0,0 @@ -:mod:`sqlite3`: fix use-after-free crashes when the connection's callbacks -are mutated during a callback execution. Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Library/2025-12-28-13-49-06.gh-issue-143241.5H4b8d.rst b/Misc/NEWS.d/next/Library/2025-12-28-13-49-06.gh-issue-143241.5H4b8d.rst deleted file mode 100644 index 7170a06..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-28-13-49-06.gh-issue-143241.5H4b8d.rst +++ /dev/null @@ -1,2 +0,0 @@ -:mod:`zoneinfo`: fix infinite loop in :meth:`ZoneInfo.from_file -<zoneinfo.ZoneInfo.from_file>` when parsing a malformed TZif file. Patch by Fatih Celik. diff --git a/Misc/NEWS.d/next/Library/2025-12-28-14-41-02.gh-issue-143249.K4vEp4.rst b/Misc/NEWS.d/next/Library/2025-12-28-14-41-02.gh-issue-143249.K4vEp4.rst deleted file mode 100644 index d50d9e3..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-28-14-41-02.gh-issue-143249.K4vEp4.rst +++ /dev/null @@ -1 +0,0 @@ -Fix possible buffer leaks in Windows overlapped I/O on error handling. diff --git a/Misc/NEWS.d/next/Library/2025-12-28-20-28-05.gh-issue-143237.q1ymuA.rst b/Misc/NEWS.d/next/Library/2025-12-28-20-28-05.gh-issue-143237.q1ymuA.rst deleted file mode 100644 index 131bebc..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-28-20-28-05.gh-issue-143237.q1ymuA.rst +++ /dev/null @@ -1 +0,0 @@ -Fix support of named pipes in the rotating :mod:`logging` handlers. diff --git a/Misc/NEWS.d/next/Library/2025-12-29-00-42-26.gh-issue-124951.OsC5K4.rst b/Misc/NEWS.d/next/Library/2025-12-29-00-42-26.gh-issue-124951.OsC5K4.rst deleted file mode 100644 index 10c7f86..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-29-00-42-26.gh-issue-124951.OsC5K4.rst +++ /dev/null @@ -1,3 +0,0 @@ -The base64 implementation behind the :mod:`binascii`, :mod:`base64`, and -related codec has been optimized for modern pipelined CPU architectures and -now performs 2-3x faster across all platforms. diff --git a/Misc/NEWS.d/next/Library/2025-12-29-21-12-12.gh-issue-142939.OyQQr5.rst b/Misc/NEWS.d/next/Library/2025-12-29-21-12-12.gh-issue-142939.OyQQr5.rst deleted file mode 100644 index 65523f0..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-29-21-12-12.gh-issue-142939.OyQQr5.rst +++ /dev/null @@ -1 +0,0 @@ -Performance optimisations for :func:`difflib.get_close_matches` diff --git a/Misc/NEWS.d/next/Library/2025-12-31-17-38-33.gh-issue-143308.lY8UCR.rst b/Misc/NEWS.d/next/Library/2025-12-31-17-38-33.gh-issue-143308.lY8UCR.rst deleted file mode 100644 index 5db43b3..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-31-17-38-33.gh-issue-143308.lY8UCR.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`pickle`: fix use-after-free crashes when a :class:`~pickle.PickleBuffer` -is concurrently mutated by a custom buffer callback during pickling. -Patch by Bénédikt Tran and Aaron Wieczorek. diff --git a/Misc/NEWS.d/next/Library/2025-12-31-20-43-02.gh-issue-143309.cdFxdH.rst b/Misc/NEWS.d/next/Library/2025-12-31-20-43-02.gh-issue-143309.cdFxdH.rst deleted file mode 100644 index 5f30ed3..0000000 --- a/Misc/NEWS.d/next/Library/2025-12-31-20-43-02.gh-issue-143309.cdFxdH.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix a crash in :func:`os.execve` on non-Windows platforms when -given a custom environment mapping which is then mutated during -parsing. Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Library/2026-01-01-11-21-57.gh-issue-143310.8rxtH3.rst b/Misc/NEWS.d/next/Library/2026-01-01-11-21-57.gh-issue-143310.8rxtH3.rst deleted file mode 100644 index 32d4862..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-01-11-21-57.gh-issue-143310.8rxtH3.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`tkinter`: fix a crash when a Python :class:`list` is mutated during -the conversion to a Tcl object (e.g., when setting a Tcl variable). -Patch by Bénédikt Tran. diff --git a/Misc/NEWS.d/next/Library/2026-01-02-09-32-43.gh-issue-140025.zOX58_.rst b/Misc/NEWS.d/next/Library/2026-01-02-09-32-43.gh-issue-140025.zOX58_.rst deleted file mode 100644 index cb5458f..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-02-09-32-43.gh-issue-140025.zOX58_.rst +++ /dev/null @@ -1 +0,0 @@ -:mod:`queue`: Fix :meth:`!SimpleQueue.__sizeof__` computation. diff --git a/Misc/NEWS.d/next/Library/2026-01-02-12-55-52.gh-issue-143346.iTekce.rst b/Misc/NEWS.d/next/Library/2026-01-02-12-55-52.gh-issue-143346.iTekce.rst deleted file mode 100644 index 93c45ee..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-02-12-55-52.gh-issue-143346.iTekce.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fix incorrect wrapping of the Base64 data in :class:`!plistlib._PlistWriter` -when the indent contains a mix of tabs and spaces. diff --git a/Misc/NEWS.d/next/Library/2026-01-02-17-26-33.gh-issue-143368.m3EF9E.rst b/Misc/NEWS.d/next/Library/2026-01-02-17-26-33.gh-issue-143368.m3EF9E.rst deleted file mode 100644 index 4c07e45..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-02-17-26-33.gh-issue-143368.m3EF9E.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix endless retry loop in :mod:`profiling.sampling` blocking mode when -threads cannot be seized due to ``EPERM``. Such threads are now skipped -instead of causing repeated error messages. Patch by Pablo Galindo. diff --git a/Misc/NEWS.d/next/Library/2026-01-03-19-41-36.gh-issue-143378.29AvE7.rst b/Misc/NEWS.d/next/Library/2026-01-03-19-41-36.gh-issue-143378.29AvE7.rst deleted file mode 100644 index 57bbb4d..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-03-19-41-36.gh-issue-143378.29AvE7.rst +++ /dev/null @@ -1 +0,0 @@ -Fix use-after-free crashes when a :class:`~io.BytesIO` object is concurrently mutated during :meth:`~io.RawIOBase.write` or :meth:`~io.IOBase.writelines`. diff --git a/Misc/NEWS.d/next/Library/2026-01-05-12-20-42.gh-issue-143445.rgxnbL.rst b/Misc/NEWS.d/next/Library/2026-01-05-12-20-42.gh-issue-143445.rgxnbL.rst deleted file mode 100644 index f5dea2e..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-05-12-20-42.gh-issue-143445.rgxnbL.rst +++ /dev/null @@ -1 +0,0 @@ -Speed up :func:`copy.deepcopy` by 1.04x. diff --git a/Misc/NEWS.d/next/Library/2026-01-06-12-00-00.gh-issue-143474.cQM4VA.rst b/Misc/NEWS.d/next/Library/2026-01-06-12-00-00.gh-issue-143474.cQM4VA.rst deleted file mode 100644 index b3aa69f..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-06-12-00-00.gh-issue-143474.cQM4VA.rst +++ /dev/null @@ -1 +0,0 @@ -Add :data:`os.RWF_ATOMIC` constant for Linux 6.11+. diff --git a/Misc/NEWS.d/next/Library/2026-01-07-15-49-06.gh-issue-143517.FP5KgL.rst b/Misc/NEWS.d/next/Library/2026-01-07-15-49-06.gh-issue-143517.FP5KgL.rst deleted file mode 100644 index a9936b5..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-07-15-49-06.gh-issue-143517.FP5KgL.rst +++ /dev/null @@ -1,4 +0,0 @@ -:func:`annotationlib.get_annotations` no longer raises a :exc:`SyntaxError` -when evaluating a stringified starred annotation that starts with one -or more whitespace characters followed by a ``*``. -Patch by Bartosz Sławecki. diff --git a/Misc/NEWS.d/next/Library/2026-01-08-13-41-58.gh-issue-139686.S_nzkl.rst b/Misc/NEWS.d/next/Library/2026-01-08-13-41-58.gh-issue-139686.S_nzkl.rst deleted file mode 100644 index 6d21a48..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-08-13-41-58.gh-issue-139686.S_nzkl.rst +++ /dev/null @@ -1,3 +0,0 @@ -Revert 0a97941245f1dda6d838f9aaf0512104e5253929 and -57db12514ac686f0a752ec8fe1c08b6daa0c6219 which made importlib.reload a no-op -for lazy modules; caused Buildbot failures. diff --git a/Misc/NEWS.d/next/Library/2026-01-08-14-53-46.gh-issue-143547.wHBVlr.rst b/Misc/NEWS.d/next/Library/2026-01-08-14-53-46.gh-issue-143547.wHBVlr.rst deleted file mode 100644 index 934570b..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-08-14-53-46.gh-issue-143547.wHBVlr.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix :func:`sys.unraisablehook` when the hook raises an exception and changes -:func:`sys.unraisablehook`: hold a strong reference to the old hook. Patch -by Victor Stinner. diff --git a/Misc/NEWS.d/next/Library/2026-01-09-13-07-22.gh-issue-143191.PPR_vW.rst b/Misc/NEWS.d/next/Library/2026-01-09-13-07-22.gh-issue-143191.PPR_vW.rst deleted file mode 100644 index 507b583..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-09-13-07-22.gh-issue-143191.PPR_vW.rst +++ /dev/null @@ -1,2 +0,0 @@ -:func:`_thread.stack_size` now raises :exc:`ValueError` if the stack size is -too small. Patch by Victor Stinner. diff --git a/Misc/NEWS.d/next/Library/2026-01-09-17-50-26.gh-issue-143196.WxKxzU.rst b/Misc/NEWS.d/next/Library/2026-01-09-17-50-26.gh-issue-143196.WxKxzU.rst deleted file mode 100644 index 9143cf2..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-09-17-50-26.gh-issue-143196.WxKxzU.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fix crash when the internal encoder object returned by undocumented function -:func:`!json.encoder.c_make_encoder` was called with non-zero second -(*_current_indent_level*) argument. diff --git a/Misc/NEWS.d/next/Library/2026-01-10-10-04-08.gh-issue-78724.xkXfxX.rst b/Misc/NEWS.d/next/Library/2026-01-10-10-04-08.gh-issue-78724.xkXfxX.rst deleted file mode 100644 index 8a4bec4..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-10-10-04-08.gh-issue-78724.xkXfxX.rst +++ /dev/null @@ -1,3 +0,0 @@ -Raise :exc:`RuntimeError`'s when user attempts to call methods on -half-initialized :class:`~struct.Struct` objects, For example, created by -``Struct.__new__(Struct)``. Patch by Sergey B Kirpichev. diff --git a/Misc/NEWS.d/next/Library/2026-01-10-15-40-57.gh-issue-143658.Ox6pE5.rst b/Misc/NEWS.d/next/Library/2026-01-10-15-40-57.gh-issue-143658.Ox6pE5.rst deleted file mode 100644 index 1d22709..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-10-15-40-57.gh-issue-143658.Ox6pE5.rst +++ /dev/null @@ -1,3 +0,0 @@ -:mod:`importlib.metadata`: Use :meth:`str.translate` to improve performance of -:meth:`!importlib.metadata.Prepared.normalize`. Patch by Hugo van Kemenade and -Henry Schreiner. diff --git a/Misc/NEWS.d/next/Library/2026-01-10-16-42-47.gh-issue-143638.du5G7d.rst b/Misc/NEWS.d/next/Library/2026-01-10-16-42-47.gh-issue-143638.du5G7d.rst deleted file mode 100644 index fd71db9..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-10-16-42-47.gh-issue-143638.du5G7d.rst +++ /dev/null @@ -1,4 +0,0 @@ -Forbid reentrant calls of the :class:`pickle.Pickler` and -:class:`pickle.Unpickler` methods for the C implementation. Previously, this -could cause crash or data corruption, now concurrent calls of methods of the -same object raise :exc:`RuntimeError`. diff --git a/Misc/NEWS.d/next/Library/2026-01-12-07-17-38.gh-issue-143706.sysArgv.rst b/Misc/NEWS.d/next/Library/2026-01-12-07-17-38.gh-issue-143706.sysArgv.rst deleted file mode 100644 index 5bdefbb..0000000 --- a/Misc/NEWS.d/next/Library/2026-01-12-07-17-38.gh-issue-143706.sysArgv.rst +++ /dev/null @@ -1,5 +0,0 @@ -Fix :mod:`multiprocessing` forkserver so that :data:`sys.argv` is correctly -set before ``__main__`` is preloaded. Previously, :data:`sys.argv` was empty -during main module import in forkserver child processes. This fixes a -regression introduced in 3.13.8 and 3.14.1. Root caused by Aaron Wieczorek, -test provided by Thomas Watson, thanks! diff --git a/Misc/NEWS.d/next/Tests/2020-09-29-23-14-01.bpo-31391.IZr2P8.rst b/Misc/NEWS.d/next/Tests/2020-09-29-23-14-01.bpo-31391.IZr2P8.rst deleted file mode 100644 index 60b7fdc..0000000 --- a/Misc/NEWS.d/next/Tests/2020-09-29-23-14-01.bpo-31391.IZr2P8.rst +++ /dev/null @@ -1,2 +0,0 @@ -Forward-port test_xpickle from Python 2 to Python 3 and add the resource -back to test's command line. diff --git a/Misc/NEWS.d/next/Tests/2026-01-08-11-50-06.gh-issue-143553.KyyNTt.rst b/Misc/NEWS.d/next/Tests/2026-01-08-11-50-06.gh-issue-143553.KyyNTt.rst deleted file mode 100644 index e950905..0000000 --- a/Misc/NEWS.d/next/Tests/2026-01-08-11-50-06.gh-issue-143553.KyyNTt.rst +++ /dev/null @@ -1 +0,0 @@ -Add support for parametrized resources, such as ``-u xpickle=2.7``. diff --git a/Misc/NEWS.d/next/Tests/2026-01-09-13-52-10.gh-issue-143460._nW2jt.rst b/Misc/NEWS.d/next/Tests/2026-01-09-13-52-10.gh-issue-143460._nW2jt.rst deleted file mode 100644 index b0df991..0000000 --- a/Misc/NEWS.d/next/Tests/2026-01-09-13-52-10.gh-issue-143460._nW2jt.rst +++ /dev/null @@ -1 +0,0 @@ -Skip tests relying on infinite recusion if stack size is unlimited. diff --git a/Misc/NEWS.d/next/Tools-Demos/2026-01-02-11-44-56.gh-issue-142095.4ssgnM.rst b/Misc/NEWS.d/next/Tools-Demos/2026-01-02-11-44-56.gh-issue-142095.4ssgnM.rst deleted file mode 100644 index 196b27d..0000000 --- a/Misc/NEWS.d/next/Tools-Demos/2026-01-02-11-44-56.gh-issue-142095.4ssgnM.rst +++ /dev/null @@ -1,2 +0,0 @@ -Make gdb 'py-bt' command use frame from thread local state when available. -Patch by Sam Gross and Victor Stinner. diff --git a/Misc/NEWS.d/next/Windows/2025-09-14-13-35-44.gh-issue-128067.BGdP_A.rst b/Misc/NEWS.d/next/Windows/2025-09-14-13-35-44.gh-issue-128067.BGdP_A.rst deleted file mode 100644 index f68cda2..0000000 --- a/Misc/NEWS.d/next/Windows/2025-09-14-13-35-44.gh-issue-128067.BGdP_A.rst +++ /dev/null @@ -1 +0,0 @@ -Fix a bug in PyREPL on Windows where output without a trailing newline was overwritten by the next prompt. diff --git a/Misc/NEWS.d/next/Windows/2025-12-25-00-38-20.gh-issue-143082.CYUeux.rst b/Misc/NEWS.d/next/Windows/2025-12-25-00-38-20.gh-issue-143082.CYUeux.rst deleted file mode 100644 index 0652c4c..0000000 --- a/Misc/NEWS.d/next/Windows/2025-12-25-00-38-20.gh-issue-143082.CYUeux.rst +++ /dev/null @@ -1 +0,0 @@ -Fix :mod:`pdb` arrow key history not working when ``stdin`` is ``sys.stdin``. @@ -1,4 +1,4 @@ -This is Python version 3.15.0 alpha 4 +This is Python version 3.15.0 alpha 5 ===================================== .. image:: https://github.com/python/cpython/actions/workflows/build.yml/badge.svg?branch=main&event=push |
