]>
git.ipfire.org Git - thirdparty/Python/cpython.git/log
Sergey Miryanov [Wed, 11 Mar 2026 21:08:18 +0000 (02:08 +0500)]
GH-145247: Use _PyTuple_FromPair in Parser and Python (#145842)
Use _PyTuple_FromPair in Parser and Python
Hai Zhu [Wed, 11 Mar 2026 20:24:19 +0000 (04:24 +0800)]
gh-144540: Add _MAKE_HEAP_SAFE uop to eliminate unnecessary refcount operations in RETURN_VALUE and YIELD_VALUE (GH-144414)
Serhiy Storchaka [Wed, 11 Mar 2026 19:01:03 +0000 (21:01 +0200)]
gh-145736: Fix Tkinter tests for Tk 8.7, 9.0 and 9.1 (GH-145738)
Victor Stinner [Wed, 11 Mar 2026 16:05:09 +0000 (17:05 +0100)]
gh-141510: Raise TypeError in PyDict_SetItem() on frozendict (#145564)
If the following functions get an unexpected frozendict,
raise TypeError instead of SystemError:
* PyDict_DelItem()
* PyDict_DelItemString()
* PyDict_Merge()
* PyDict_MergeFromSeq2()
* PyDict_Pop()
* PyDict_PopString()
* PyDict_SetDefault()
* PyDict_SetDefaultRef()
* PyDict_SetItem()
* PyDict_SetItemString()
* _PyDict_SetItem_KnownHash()
* PyDict_Update()
Co-authored-by: mohsinm-dev <mohsin.mdev@gmail.com>
T. Wouters [Wed, 11 Mar 2026 14:46:16 +0000 (15:46 +0100)]
gh-142183: Cache one datachunk per tstate to prevent alloc/dealloc thrashing (#145789)
Cache one datachunk per tstate to prevent alloc/dealloc thrashing when repeatedly hitting the same call depth at exactly the wrong boundary.
---------
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Bénédikt Tran [Wed, 11 Mar 2026 14:30:09 +0000 (15:30 +0100)]
gh-139933: correctly suggest attributes for classes with a custom `__dir__` (GH-139950)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Lysandros Nikolaou [Wed, 11 Mar 2026 14:14:47 +0000 (15:14 +0100)]
gh-142518: Improve mimalloc allocator docs (#145224)
Seth Michael Larson [Wed, 11 Mar 2026 13:51:25 +0000 (08:51 -0500)]
Add GitHub team for maintaining fuzzers
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Seth Michael Larson [Wed, 11 Mar 2026 13:47:55 +0000 (08:47 -0500)]
gh-141707: Skip TarInfo DIRTYPE normalization during GNU long name handling
Co-authored-by: Eashwar Ranganathan <eashwar@eashwar.com>
Sergey B Kirpichev [Wed, 11 Mar 2026 13:25:24 +0000 (16:25 +0300)]
gh-99875: Document rounding mode for old-style formatting (#126382)
Pieter Eendebak [Wed, 11 Mar 2026 13:24:15 +0000 (14:24 +0100)]
gh-145376: Fix refleak & pointer type bug in uncommon code paths in Parser/ (GH-145684)
Thomas Kowalski [Wed, 11 Mar 2026 13:02:23 +0000 (14:02 +0100)]
gh-145492: fix regression test for defaultdict factory repr (GH-145788)
Stan Ulbrych [Wed, 11 Mar 2026 12:29:43 +0000 (12:29 +0000)]
Warn that overriding `__builtins__` for `eval` is not a security mechanism (GH-145773)
Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
Stefan Zetzsche [Wed, 11 Mar 2026 12:21:22 +0000 (12:21 +0000)]
gh-145546: unittest.util: fix `sorted_list_difference` tail deduplication (GH-145547)
* fix(unittest.util): Deduplicate tail elements in sorted_list_difference
sorted_list_difference failed to deduplicate remaining elements when one
list was exhausted, causing duplicate values in the result.
Deduplicate before extending.
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Shrey Naithani [Wed, 11 Mar 2026 12:08:48 +0000 (17:38 +0530)]
gh-145587: fix busy loop in multiprocessing.connection.wait on Windows (GH-145597)
Ensure wait() blocks for the specified timeout when object_list is empty, preventing 100% CPU usage. This aligns the Windows behavior with the Unix implementation.
Co-authored-by: AN Long <aisk@users.noreply.github.com>
Sergey B Kirpichev [Wed, 11 Mar 2026 11:39:24 +0000 (14:39 +0300)]
gh-145633: Remove support for ancient ARM platforms with mixed-endian doubles (#145634)
* Drop DOUBLE_IS_ARM_MIXED_ENDIAN_IEEE754 macro.
* Use DOUBLE_IS_BIG/LITTLE_ENDIAN_IEEE754 to detect endianness of
float/doubles.
* Drop "unknown_format" code path in PyFloat_Pack/Unpack*().
Co-authored-by: Victor Stinner <vstinner@python.org>
Sam Gross [Wed, 11 Mar 2026 11:19:32 +0000 (07:19 -0400)]
gh-145685: Avoid contention on TYPE_LOCK in super() lookups (gh-145775)
Cody Maloney [Wed, 11 Mar 2026 08:02:23 +0000 (01:02 -0700)]
gh-101100: Fix sphinx reference warnings around I/O (#139592)
Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
Thomas Kowalski [Wed, 11 Mar 2026 07:27:26 +0000 (08:27 +0100)]
gh-145713: make bytearray.resize thread-safe on free-threading (#145714)
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Hood Chatham [Wed, 11 Mar 2026 00:43:27 +0000 (01:43 +0100)]
gh-145219: Cache Emscripten build dependencies, add install-emscripten (#145664)
Modifies the Emscripten build script to allow for caching of dependencies, and
for automated installation of new EMSDK versions.
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
Pieter Eendebak [Tue, 10 Mar 2026 19:51:17 +0000 (20:51 +0100)]
gh-143050: Remove redundant decref in _PyLong_Negate (gh-143051)
Sam Gross [Tue, 10 Mar 2026 18:47:58 +0000 (14:47 -0400)]
gh-142763: Fix race in ZoneInfo cache eviction (gh-144978)
The cache may be cleared between the evaluation of the if statement and the
call to popitem.
Stan Ulbrych [Tue, 10 Mar 2026 16:57:34 +0000 (16:57 +0000)]
Fix integer overflow for formats "s" and "p" in the struct module (GH-145750)
Sam Gross [Tue, 10 Mar 2026 16:55:29 +0000 (12:55 -0400)]
gh-145010: Fix Python.h compilation with -masm=intel (#145011)
Sam Gross [Tue, 10 Mar 2026 16:47:12 +0000 (12:47 -0400)]
gh-145685: Update find_name_in_mro() to return a _PyStackRef (gh-145693)
Sergey B Kirpichev [Tue, 10 Mar 2026 16:40:51 +0000 (19:40 +0300)]
gh-144173: fix flaky test_complex.test_truediv() (#144355)
Previously, component-wise relative error bound was tested. However,
such bound can't exist already for complex multiplication as one can be
used to perform subtraction of floating-point numbers, e.g. x and y for
z0=1+1j and z1=x+yj.
```pycon
>>> x, y = 1e-9+1j, 1+1j
>>> a = x*y*y.conjugate()/2;a
(1.
0000000272292198e -09+1j)
>>> b = x*(y*y.conjugate()/2);b
(1e-09+1j)
>>> b == x
True
>>> (a.real-b.real)/math.ulp(b.real)
131672427 .0
```
Benedikt Johannes [Tue, 10 Mar 2026 16:33:56 +0000 (17:33 +0100)]
gh-145044: avoid calling `Py_DECREF` in `unsafe_object_compare` on immortal objects (#145045)
bkap123 [Tue, 10 Mar 2026 16:30:11 +0000 (12:30 -0400)]
gh-145036: Fix data race for list capacity in free-threading (#145365)
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Serhiy Storchaka [Tue, 10 Mar 2026 16:29:23 +0000 (18:29 +0200)]
gh-145743: Fix inconsistency after calling Struct.__init__() with invalid format (GH-145744)
Only set the format attribute after successful (re-)initialization.
Farhan Saif [Tue, 10 Mar 2026 16:23:39 +0000 (11:23 -0500)]
gh-125053: Document that ob_mutex must only be used via critical section API (#144599)
Add a warning in the free-threading extensions howto explaining that
PyObject.ob_mutex is reserved for the critical section API and must not
be locked directly with PyMutex_Lock, as this can cause deadlocks.
Extension authors who need their own lock should add a separate PyMutex
field to their object struct.
Also add an ob_mutex member entry under PyObject in the C API reference
(Doc/c-api/structures.rst) with a cross-reference to the howto.
Co-authored-by: Victor Stinner <vstinner@python.org>
Alexander Shadchin [Tue, 10 Mar 2026 16:02:57 +0000 (19:02 +0300)]
gh-85277: Fix building without `stropts.h` or empty `stropts.h` (#143521)
Ali Towaiji [Tue, 10 Mar 2026 15:48:41 +0000 (11:48 -0400)]
gh-145591: Move slicing note to __getitem__ (GH-145606)
Charlie Lin [Tue, 10 Mar 2026 15:21:33 +0000 (11:21 -0400)]
gh-145697: Add `.sql` and `.sqlite3` recognition in `mimetypes` (GH-145698)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Benedikt Johannes <benedikt.johannes.hofer@gmail.com>
Peter Bierma [Tue, 10 Mar 2026 14:57:13 +0000 (10:57 -0400)]
Docs: Improve the C API documentation involving threads (GH-145520)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Hugo van Kemenade [Tue, 10 Mar 2026 14:41:02 +0000 (16:41 +0200)]
Merge branch 'main' of https://github.com/python/cpython
Hugo van Kemenade [Tue, 10 Mar 2026 14:40:10 +0000 (16:40 +0200)]
Post 3.15.0a7
Adorilson Bezerra [Tue, 10 Mar 2026 14:19:24 +0000 (14:19 +0000)]
gh-106318: Add examples for str.isspace() docs (#145399)
Steve Dower [Tue, 10 Mar 2026 13:58:32 +0000 (13:58 +0000)]
gh-145035: Allows removing the _pyrepl module to completely disable the modern REPL (GH-145159)
Matt Van Horn [Tue, 10 Mar 2026 13:20:42 +0000 (06:20 -0700)]
gh-145492: Fix defaultdict __repr__ infinite recursion (GH-145659)
Co-Authored-By: Thomas Kowalski <thom.kowa@gmail.com>
Hugo van Kemenade [Tue, 10 Mar 2026 12:30:46 +0000 (14:30 +0200)]
Python 3.15.0a7
Kumar Aditya [Tue, 10 Mar 2026 12:11:12 +0000 (17:41 +0530)]
gh-142651: use `NonCallableMock._lock` for thread safety of `call_count` (#142922)
Hugo van Kemenade [Tue, 10 Mar 2026 11:38:48 +0000 (13:38 +0200)]
gh-142927: Detect system theme in flame graph like in heatmap (#144885)
Hugo van Kemenade [Tue, 10 Mar 2026 11:11:43 +0000 (13:11 +0200)]
gh-133879: Copyedit "What's new in Python 3.15" (#145737)
Sergey Miryanov [Tue, 10 Mar 2026 10:44:20 +0000 (15:44 +0500)]
GH-145247: Implement _PyTuple_FromPair() (#145325)
Implement _PyTuple_FromPair() and _PyTuple_FromPairSteal().
Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Bartosz Sławecki <bartosz@ilikepython.com>
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Pieter Eendebak [Tue, 10 Mar 2026 09:46:13 +0000 (10:46 +0100)]
gh-145376: Fix refleaks and double decref for code in Python/ (#145666)
Emma Smith [Tue, 10 Mar 2026 09:21:57 +0000 (02:21 -0700)]
gh-145607: Ensure BIG_DATA has two compressed blocks in test_bz2 (#145730)
Stan Ulbrych [Tue, 10 Mar 2026 08:56:00 +0000 (08:56 +0000)]
gh-103997: Remove incorrect statements about `-c` dedenting (gh-138624)
Hugo van Kemenade [Tue, 10 Mar 2026 08:45:07 +0000 (10:45 +0200)]
gh-145731: Fix negative timestamp during DST on Windows (GH-145728)
Hai Zhu [Tue, 10 Mar 2026 04:12:48 +0000 (12:12 +0800)]
gh-144681: Fix JIT trace builder assertion failure when conditional branch jump target coincides with fallthrough target (GH-144742)
Stan Ulbrych [Mon, 9 Mar 2026 22:51:00 +0000 (22:51 +0000)]
Vary compiler flags in `fuzz_pycompile` (#145236)
* Vary compiler flags in fuzz_pycompile
* Drop `PyCF_SOURCE_IS_UTF8`
Sam Gross [Mon, 9 Mar 2026 22:41:07 +0000 (18:41 -0400)]
gh-145685: Stop the world when updating MRO of existing types (gh-145707)
We already have a stop-the-world pause elsewhere in this code path
(type_set_bases) and this makes will make it easier to avoid contention
on the TYPE_LOCK when looking up names in the MRO hierarchy.
Also use deferred reference counting for non-immortal MROs.
Stan Ulbrych [Mon, 9 Mar 2026 19:56:41 +0000 (19:56 +0000)]
gh-145701: Fix `__classdict__` & `__conditional_annotations__` in class-scope inlined comprehensions (GH-145702)
Stan Ulbrych [Mon, 9 Mar 2026 19:43:13 +0000 (19:43 +0000)]
Remove the `distutils-sig@python.org` email in 'Installing Python Modules' (#145613)
Filipe Laíns [Mon, 9 Mar 2026 19:37:33 +0000 (19:37 +0000)]
GH-145273: don't skip missing platstdlib warning if stdlib_zip is found (#145544)
Hugo van Kemenade [Mon, 9 Mar 2026 18:23:11 +0000 (20:23 +0200)]
Docs: Update programming FAQ (#144573)
Co-authored-by: Savannah Ostrowski <savannah@python.org>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Stan Ulbrych <stan@ulbrych.org>
Petr Viktorin [Mon, 9 Mar 2026 18:18:14 +0000 (19:18 +0100)]
gh-145278: Revert "freeze encodings (partially) and linecache (#145279)" (#145689)
Stan Ulbrych [Mon, 9 Mar 2026 17:37:23 +0000 (17:37 +0000)]
gh-143055: Fix crash in AST unparser when unparsing dict comprehension unpacking (#145556)
Sam Gross [Mon, 9 Mar 2026 17:24:34 +0000 (13:24 -0400)]
gh-145615: Fix mimalloc page leak in the free-threaded build (gh-145626)
Fix three issues that caused mimalloc pages to be leaked until the
owning thread exited:
1. In _PyMem_mi_page_maybe_free(), move pages out of the full queue
when relying on QSBR to defer freeing the page. Pages in the full
queue are never searched by mi_page_queue_find_free_ex(), so a page
left there is unusable for allocations.
2. Move _PyMem_mi_page_clear_qsbr() from _mi_page_free_collect() to
_mi_page_thread_free_collect() where it only fires when all blocks
on the page are free (used == 0). The previous placement was too
broad: it cleared QSBR state whenever local_free was non-NULL, but
_mi_page_free_collect() is called from non-allocation paths (e.g.,
page visiting in mi_heap_visit_blocks) where the page is not being
reused.
3. In _PyMem_mi_page_maybe_free(), use the page's heap tld to find the
correct thread state for QSBR list insertion instead of
PyThreadState_GET(). During stop-the-world pauses, the function may
process pages belonging to other threads, so the current thread
state is not necessarily the owner of the page.
Yashraj [Mon, 9 Mar 2026 16:30:00 +0000 (22:00 +0530)]
gh-141617: clarify `concurrent.futures.ThreadPoolExecutor` deadlock example (#141620)
---------
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Maciej Olko [Mon, 9 Mar 2026 16:19:02 +0000 (12:19 -0400)]
gh-139588: Docs: fix PDF build (#145480)
Mark Shannon [Mon, 9 Mar 2026 15:21:33 +0000 (15:21 +0000)]
GH-144688: Fix refleaks in JIT when optimization fails (GH-145420)
Victor Stinner [Mon, 9 Mar 2026 14:47:02 +0000 (15:47 +0100)]
gh-141510: Optimize frozendict(frozendict) (#145592)
Return the same object unmodified if it's exactly the frozendict
type.
Optimize also PyFrozenDict_New(frozendict).
Daan De Meyer [Mon, 9 Mar 2026 14:07:23 +0000 (15:07 +0100)]
gh-145541: Fix `InvalidStateError` in `BaseSubprocessTransport._call_connection_lost()` (#145554)
Petr Viktorin [Mon, 9 Mar 2026 14:02:06 +0000 (15:02 +0100)]
gh-78773: Improve ctypes dynamic library loading docs (GH-145313)
Victor Stinner [Mon, 9 Mar 2026 13:53:52 +0000 (14:53 +0100)]
gh-145376: Fix _cursesmodule.c build on FreeBSD/macOS (#145669)
Petr Viktorin [Mon, 9 Mar 2026 13:32:28 +0000 (14:32 +0100)]
Document that PyType_GetModule returns a borrowed ref (GH-145612)
Filipe Laíns [Mon, 9 Mar 2026 13:28:00 +0000 (13:28 +0000)]
GH-145278: freeze encodings (partially) and linecache (#145279)
Pieter Eendebak [Mon, 9 Mar 2026 13:19:36 +0000 (14:19 +0100)]
gh-145376: Fix various reference leaks in Objects/ and Modules/ (#145385)
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Pieter Eendebak [Mon, 9 Mar 2026 13:17:27 +0000 (14:17 +0100)]
gh-145376: Fix various refleaks in Objects/ (#145609)
Pieter Eendebak [Mon, 9 Mar 2026 12:50:45 +0000 (13:50 +0100)]
gh-145376: Fix reference leaks in _lprof.c (#145539)
Chris Eibl [Mon, 9 Mar 2026 09:23:34 +0000 (10:23 +0100)]
Fix intermittent `test_ci_fuzz_stdlib` failures (GH-145641)
Hood Chatham [Mon, 9 Mar 2026 02:25:21 +0000 (03:25 +0100)]
gh-145219: Add Emscripten cross-build and clean configurability (#145581)
Modifies the Emscripten build script to allow for custom cross-build directory
names, and to only clean Emscripten-specific paths (optionally including the
build python).
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
James [Sun, 8 Mar 2026 22:41:47 +0000 (18:41 -0400)]
gh-145642: Docs: Avoid warning for invalid escape sequence in tutorial (#145643)
* Match tutorial output to real interpreter output
* Avoid invalid escape sequence in example
Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
---------
Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
Hugo van Kemenade [Sat, 7 Mar 2026 14:53:13 +0000 (16:53 +0200)]
Fix bug notifier for issues with no body text (#145603)
Ramin Farajpour Cami [Sat, 7 Mar 2026 13:31:45 +0000 (17:01 +0330)]
gh-145623: Fix crashes on uninitialized struct.Struct objects (gh-145624)
Pieter Eendebak [Sat, 7 Mar 2026 09:05:08 +0000 (10:05 +0100)]
gh-145376: Fix refleak in `queuemodule.c` out-of-memory path (#145543)
AN Long [Sat, 7 Mar 2026 08:14:44 +0000 (17:14 +0900)]
gh-116738: Make mmap.set_name thread-safe (#145555)
* Add critical section around mmap.set_name to make it thread-safe
* Add news entry
* Apply suggestion from @aisk
Victor Stinner [Fri, 6 Mar 2026 21:57:44 +0000 (22:57 +0100)]
gh-144175: Add PyArg_ParseArray() function (#144283)
Add PyArg_ParseArray() and PyArg_ParseArrayAndKeywords()
functions to parse arguments of functions using the METH_FASTCALL
calling convention.
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Pieter Eendebak [Fri, 6 Mar 2026 20:00:06 +0000 (21:00 +0100)]
gh-145376: Fix crashes in `md5module.c` and `hmacmodule.c` (#145422)
Fix a possible NULL pointer dereference in `md5module.c` and a double-free in `hmacmodule.c`.
Those crashes only occur in error paths taken when the interpreter fails to allocate memory.
Sam Gross [Fri, 6 Mar 2026 17:01:06 +0000 (12:01 -0500)]
gh-145566: Skip stop-the-world when reassigning `__class__` on newly created objects (gh-145567)
Andrew Barnes [Fri, 6 Mar 2026 16:10:12 +0000 (11:10 -0500)]
gh-69223: Document that add_argument() returns an Action object (#145538)
Victor Stinner [Fri, 6 Mar 2026 15:51:36 +0000 (16:51 +0100)]
gh-145548: Use VMADDR_CID_LOCAL in VSOCK socket tests (#145589)
Prefer VMADDR_CID_LOCAL instead of VMADDR_CID_ANY for bind() in the
server. Skip the test if bind() fails with EADDRNOTAVAIL.
Log vsock CID in test.pythoninfo.
Benedikt Johannes [Fri, 6 Mar 2026 12:22:21 +0000 (13:22 +0100)]
gh-144370: Disallow usage of control characters in status in wsgiref.handlers for security (#144371)
Disallow usage of control characters in status in wsgiref.handlers
to prevent HTTP header injections.
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Hugo van Kemenade [Fri, 6 Mar 2026 11:18:11 +0000 (13:18 +0200)]
Docs: `import datetime as dt` in examples (#145315)
Victor Stinner [Fri, 6 Mar 2026 09:25:09 +0000 (10:25 +0100)]
gh-141510: Use frozendict in the stdlib (#144909)
Co-authored-by: Donghee Na <donghee.na@python.org>
Victor Stinner [Fri, 6 Mar 2026 09:23:11 +0000 (10:23 +0100)]
gh-141510: Change marshal version to 6 (#145551)
Fix SliceTestCase: test also that version 4 fails with ValueError.
Hood Chatham [Fri, 6 Mar 2026 00:42:41 +0000 (01:42 +0100)]
gh-145177: Support multiple Emscripten versions for Emscripten buildbot (#145180)
Adds an `--emsdk-cache` argument to the Emscripten build script and an
emscripten_version.txt file. If the `--emsdk-cache` argument is passed, the build script
will look in `emscripten_version.txt` to get the expected emsdk version is installed in
a folder called e.g., 4.0.12 in the directory indicated by the `--emsdk-cache` argument,
and run the build with that Emscripten tooling activated.
Alex Malyshev [Thu, 5 Mar 2026 19:03:30 +0000 (14:03 -0500)]
gh-145557: Check ctypes is available in test_external_inspection (#145558)
Currently TestGetStackTrace.test_self_trace_after_ctypes_import() will fail if
the _ctypes extension is not built. Make it match test_ctypes by skipping
the test in that case.
Yash Kaushik [Thu, 5 Mar 2026 17:48:48 +0000 (23:18 +0530)]
doc: Clarify logger creation example in logging HOWTO (GH-145540)
Victor Stinner [Thu, 5 Mar 2026 16:44:58 +0000 (17:44 +0100)]
gh-141510: Complete What's New in Python 3.15 for frozendict (#145537)
Mention updated stdlib modules and built-in functions.
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Victor Stinner [Thu, 5 Mar 2026 14:26:54 +0000 (15:26 +0100)]
gh-141510: No longer accept frozendict in PyDict_Copy() (#145542)
Rename _PyDict_Copy() to anydict_copy().
Replace PyObject_IsInstance(op, &PyFrozenDict_Type) with
PyFrozenDict_Check().
Shrey Naithani [Thu, 5 Mar 2026 14:19:49 +0000 (19:49 +0530)]
gh-145417: Do not preserve SELinux context when copying venv scripts (#145454)
Co-authored-by: Miro Hrončok <miro@hroncok.cz>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Victor Stinner [Thu, 5 Mar 2026 13:14:04 +0000 (14:14 +0100)]
gh-141510: Fix frozendict.items() ^ frozendict.items() (#145535)
Add non-regression tests.
Xianpeng Shen [Thu, 5 Mar 2026 12:23:06 +0000 (14:23 +0200)]
gh-140681: Freeze pre-commit hooks and update zizmor links (#140682)
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Victor Stinner [Thu, 5 Mar 2026 11:55:28 +0000 (12:55 +0100)]
gh-145056: Accept frozendict in xml.etree (#145508)
Element and SubElement of xml.etree.ElementTree now also accept
frozendict for attrib.
Export _PyDict_CopyAsDict() function.
Victor Stinner [Thu, 5 Mar 2026 11:35:43 +0000 (12:35 +0100)]
gh-145055: Accept frozendict for globals in exec() and eval() (#145072)
Victor Stinner [Thu, 5 Mar 2026 11:33:13 +0000 (12:33 +0100)]
gh-141510: Use frozendict in the _opcode_metadata (#144910)
Enhance py_metadata_generator.py to skip duplicates.
Co-authored-by: Donghee Na <donghee.na@python.org>
Victor Stinner [Thu, 5 Mar 2026 11:32:32 +0000 (12:32 +0100)]
gh-82626: Schedule removal of bool used as file descriptor (#145469)
Victor Stinner [Thu, 5 Mar 2026 11:31:29 +0000 (12:31 +0100)]
gh-141510: Don't accept frozendict in PyDict_Watch() (#145529)
Don't accept frozendict in PyDict_Watch() and PyDict_Unwatch().
A frozendict cannot be modified, so it's not useful to watch for
modifications.
Hood Chatham [Thu, 5 Mar 2026 11:29:34 +0000 (12:29 +0100)]
gh-145335: Skip Emscripten for os.execve() test (#145528)
Emscripten's os.execve() always fails with ENOEXEC.
Co-authored-by: Victor Stinner <vstinner@python.org>