]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
5 months agogh-142664: fix `PyObject_Hash` invokation post GH-143217 (#143223)
Bénédikt Tran [Sat, 27 Dec 2025 14:30:09 +0000 (14:30 +0000)] 
gh-142664: fix `PyObject_Hash` invokation post GH-143217 (#143223)

5 months agogh-131591: Do not free page caches that weren't allocated (#143205)
Pablo Galindo Salgado [Sat, 27 Dec 2025 13:38:11 +0000 (13:38 +0000)] 
gh-131591: Do not free page caches that weren't allocated (#143205)

5 months agogh-142664: fix UAF in `memoryview.__hash__` via re-entrant data's `__hash__` (#143217)
Bénédikt Tran [Sat, 27 Dec 2025 13:12:03 +0000 (13:12 +0000)] 
gh-142664: fix UAF in `memoryview.__hash__` via re-entrant data's `__hash__` (#143217)

5 months agogh-138122: fix AC warnings in `Modules/_remote_debugging/module.c` (#143218)
Bénédikt Tran [Sat, 27 Dec 2025 12:57:03 +0000 (12:57 +0000)] 
gh-138122: fix AC warnings in `Modules/_remote_debugging/module.c` (#143218)

5 months agogh-143195: fix UAF in `{bytearray,memoryview}.hex(sep)` via re-entrant `sep.__len__...
Bénédikt Tran [Sat, 27 Dec 2025 12:32:52 +0000 (12:32 +0000)] 
gh-143195: fix UAF in `{bytearray,memoryview}.hex(sep)` via re-entrant `sep.__len__` (#143209)

5 months agono-issue: Fix override value in os.rst (gh-123522)
Rafael Fontenelle [Sat, 27 Dec 2025 10:48:01 +0000 (07:48 -0300)] 
no-issue: Fix override value in os.rst (gh-123522)

5 months agogh-63016: Add flags parameter on mmap.flush (#139553)
AN Long [Sat, 27 Dec 2025 10:33:56 +0000 (19:33 +0900)] 
gh-63016: Add flags parameter on mmap.flush (#139553)

Co-authored-by: Victor Stinner <vstinner@python.org>
5 months agoFix typos in docs (#143193)
SYan212 [Sat, 27 Dec 2025 07:52:28 +0000 (07:52 +0000)] 
Fix typos in docs (#143193)

5 months agogh-143181: Fix 'overriden' -> 'overridden' in c-api/module.rst (#143182)
Duane Hilton [Sat, 27 Dec 2025 07:23:57 +0000 (00:23 -0700)] 
gh-143181: Fix 'overriden' -> 'overridden' in c-api/module.rst (#143182)

* Doc: Fix typo 'overriden' -> 'overridden' in c-api/module.rst

* Fix 'overriden' -> 'overridden' in tests

5 months agogh-140739: Fix missing exception on allocation failure in BinaryWriter (#143204)
Pablo Galindo Salgado [Sat, 27 Dec 2025 01:39:21 +0000 (01:39 +0000)] 
gh-140739: Fix missing exception on allocation failure in BinaryWriter (#143204)

5 months agogh-143040: Exit taychon live mode gracefully and display profiled script errors ...
Marta Gómez Macías [Sat, 27 Dec 2025 00:36:15 +0000 (01:36 +0100)] 
gh-143040: Exit taychon live mode gracefully and display profiled script errors (#143101)

5 months agogh-134584: Eliminate redundant refcounting from `IS_OP` (GH-143171)
Hai Zhu [Fri, 26 Dec 2025 20:30:02 +0000 (04:30 +0800)] 
gh-134584: Eliminate redundant refcounting from `IS_OP` (GH-143171)

Eliminate redundant refcounting from IS_OP

5 months agogh-134584: Eliminate redundant refcounting from `_COMPARE_OP_X` (GH-143186)
Hai Zhu [Fri, 26 Dec 2025 16:12:28 +0000 (00:12 +0800)] 
gh-134584: Eliminate redundant refcounting from `_COMPARE_OP_X` (GH-143186)

5 months agogh-140739: Fix crashes from corrupted remote memory (#143190)
Pablo Galindo Salgado [Fri, 26 Dec 2025 16:06:48 +0000 (16:06 +0000)] 
gh-140739: Fix crashes from corrupted remote memory (#143190)

5 months agoRemove redundant pycore_optimizer.h includes (#143184)
Yongtao Huang [Fri, 26 Dec 2025 11:11:11 +0000 (19:11 +0800)] 
Remove redundant pycore_optimizer.h includes (#143184)

`pycore_optimizer.h` was included redundantly in
Objects/frameobject.c and Python/instrumentation.c.
Both includes are unnecessary and can be safely removed.
No functional change.

Signed-off-by: Yongtao Huang <yongtaoh2022@gmail.com>
5 months agogh-138122: Remove default duration for statistical profiling (#143174)
László Kiss Kollár [Thu, 25 Dec 2025 19:21:16 +0000 (19:21 +0000)] 
gh-138122: Remove default duration for statistical profiling (#143174)

Co-authored-by: Pablo Galindo Salgado <pablogsal@gmail.com>
5 months agogh-142927: Tachyon: Fix contrast ratio in top panel (#142936)
Hugo van Kemenade [Thu, 25 Dec 2025 18:28:13 +0000 (20:28 +0200)] 
gh-142927: Tachyon: Fix contrast ratio in top panel (#142936)

5 months agogh-138122: Convert GIL/GC/exception stats from tiles to progress bars (#143177)
ivonastojanovic [Thu, 25 Dec 2025 18:22:54 +0000 (19:22 +0100)] 
gh-138122: Convert GIL/GC/exception stats from tiles to progress bars (#143177)

5 months agogh-143164: Fix incorrect error message for ctypes bitfield overflow (GH-143165)
Yongtao Huang [Thu, 25 Dec 2025 17:08:43 +0000 (01:08 +0800)] 
gh-143164: Fix incorrect error message for ctypes bitfield overflow (GH-143165)

Signed-off-by: Yongtao Huang <yongtaoh2022@gmail.com>
5 months agogh-142975: During GC, mark frozen objects with a merged zero refcount for destruction...
Peter Bierma [Thu, 25 Dec 2025 16:31:41 +0000 (11:31 -0500)] 
gh-142975: During GC, mark frozen objects with a merged zero refcount for destruction (GH-143156)

5 months agogh-143145: Fix possible reference leak in ctypes _build_result() (GH-143131)
Yongtao Huang [Thu, 25 Dec 2025 14:24:25 +0000 (22:24 +0800)] 
gh-143145: Fix possible reference leak in ctypes _build_result() (GH-143131)

The result tuple was leaked if __ctypes_from_outparam__() failed for any item.

Signed-off-by: Yongtao Huang <yongtaoh2022@gmail.com>
5 months agogh-143103: Added pad parameter to base64.z85encode() (GH-143106)
Hauke D [Thu, 25 Dec 2025 11:34:44 +0000 (12:34 +0100)] 
gh-143103: Added pad parameter to base64.z85encode() (GH-143106)

This makes it analogous to a85encode() and b85encode() and allows the
user to more easily meet the Z85 specification, which requires input
lengths to be a multiple of 4.

5 months agogh-143004: Fix possible use-after-free in collections.Counter.update() (GH-143044)
kaushal trivedi [Thu, 25 Dec 2025 09:13:39 +0000 (14:43 +0530)] 
gh-143004: Fix possible use-after-free in collections.Counter.update() (GH-143044)

This happened when the Counter was mutated when incrementing
the value for an existing key.

5 months agogh-143092: Make CALL_LIST_APPEND and BINARY_OP_INPLACE_ADD_UNICODE normal instruction...
Ken Jin [Wed, 24 Dec 2025 22:03:00 +0000 (06:03 +0800)] 
gh-143092: Make CALL_LIST_APPEND and BINARY_OP_INPLACE_ADD_UNICODE normal instructions (GH-143124)

These super instructions need many special cases in the interpreter, specializer, and JIT. It's best we convert them to normal instructions.

5 months agogh-120321: Fix TSan reported races on gi_frame_state (gh-143128)
Sam Gross [Wed, 24 Dec 2025 21:10:43 +0000 (16:10 -0500)] 
gh-120321: Fix TSan reported races on gi_frame_state (gh-143128)

5 months agoMove News for gh-142560 to Core and Builtins (GH-143154)
Cody Maloney [Wed, 24 Dec 2025 19:03:10 +0000 (11:03 -0800)] 
Move News for gh-142560 to Core and Builtins (GH-143154)

5 months agogh-142517: Fix typo in news item. (#143150)
R. David Murray [Wed, 24 Dec 2025 18:14:23 +0000 (13:14 -0500)] 
gh-142517: Fix typo in news item. (#143150)

5 months agogh-143135: Fix sys.flags.inspect when PYTHONINSPECT=0 (GH-143136)
Stan Ulbrych [Wed, 24 Dec 2025 17:56:59 +0000 (17:56 +0000)] 
gh-143135: Fix sys.flags.inspect when PYTHONINSPECT=0 (GH-143136)

5 months agogh-140717: Add `exc_text` to LogRecord attributes table (GH-140718)
Tom Kuson [Wed, 24 Dec 2025 17:30:20 +0000 (17:30 +0000)] 
gh-140717: Add `exc_text` to LogRecord attributes table (GH-140718)

5 months agogh-138122: Extend binary profiling format with full source location and opcode (...
Pablo Galindo Salgado [Wed, 24 Dec 2025 16:15:11 +0000 (16:15 +0000)] 
gh-138122: Extend binary profiling format with full source location and opcode (#143088)

Co-authored-by: Stan Ulbrych <stan@ulbrych.org>
5 months agoCorrectly fold unknown-8bit originating from encoded words. (#142517)
R. David Murray [Wed, 24 Dec 2025 14:14:39 +0000 (09:14 -0500)] 
Correctly fold unknown-8bit originating from encoded words. (#142517)

The unknown-8bit trick was designed to deal with unknown bytes in an
ASCII message, and it works fine for that.  However, I also tried to
extend it to handle bytes that can't be decoded using the charset
specified in an encoded word, and there it fails because there can be
other non-ASCII characters that were *successfully* decoded.  The fix is
simple: do the unknown-8bit encoding using the utf-8 codec.  This is
especially appropriate since anyone trying to do recovery on an unknown
byte string will probably attempt utf-8 first.

5 months agogh-138122: Replace --interval with --sampling-rate (#143085)
László Kiss Kollár [Wed, 24 Dec 2025 13:46:33 +0000 (13:46 +0000)] 
gh-138122: Replace --interval with --sampling-rate (#143085)

5 months agogh-143100: Fix memcpy data race in setobject.c (gh-143127)
Sam Gross [Wed, 24 Dec 2025 13:02:19 +0000 (08:02 -0500)] 
gh-143100: Fix memcpy data race in setobject.c (gh-143127)

5 months agogh-143121: Skip test that leak threads under TSan (gh-143125)
Sam Gross [Wed, 24 Dec 2025 13:02:02 +0000 (08:02 -0500)] 
gh-143121: Skip test that leak threads under TSan (gh-143125)

5 months agogh-142145: Avoid timing measurements in quadratic behavior test (gh-143105)
Sam Gross [Wed, 24 Dec 2025 13:01:45 +0000 (08:01 -0500)] 
gh-142145: Avoid timing measurements in quadratic behavior test (gh-143105)

Count the number of Element attribute accesses as a proxy for work done.
With double the amount of work, a ratio of 2.0 indicates linear scaling
and 4.0 quadratic scaling. Use 3.2 as an intermediate threshold.

5 months agogh-136186: Fix flaky tests in test_external_inspection (#143110)
Pablo Galindo Salgado [Wed, 24 Dec 2025 12:38:17 +0000 (12:38 +0000)] 
gh-136186: Fix flaky tests in test_external_inspection (#143110)

5 months agoJIT: Move executor to a register (#143072)
Diego Russo [Wed, 24 Dec 2025 09:44:16 +0000 (09:44 +0000)] 
JIT: Move executor to a register (#143072)

5 months agogh-143108: Don't instrument faulthandler.c for TSan (#143109)
Sam Gross [Wed, 24 Dec 2025 01:12:55 +0000 (20:12 -0500)] 
gh-143108: Don't instrument faulthandler.c for TSan (#143109)

The dumping of tracebacks has data races and that's okay (it's best
effort).

5 months agogh-134584: Eliminate redundant refcounting from `_BINARY_OP_SUBSCR_TUPLE_INT` (GH...
Hai Zhu [Tue, 23 Dec 2025 21:47:12 +0000 (05:47 +0800)] 
gh-134584: Eliminate redundant refcounting from `_BINARY_OP_SUBSCR_TUPLE_INT` (GH-143094)

5 months agogh-143100: Add temporary suppression for set_swap_bodies (gh-143114)
Sam Gross [Tue, 23 Dec 2025 20:52:59 +0000 (15:52 -0500)] 
gh-143100: Add temporary suppression for set_swap_bodies (gh-143114)

5 months agogh-109263: Start process from spawn context in multiprocessing no longer have side...
AN Long [Tue, 23 Dec 2025 19:28:32 +0000 (04:28 +0900)] 
gh-109263: Start process from spawn context in multiprocessing no longer have side effect (GH-135813)

5 months agoJIT: don't leak shim memory when shutting down the interpreter (#142984)
Diego Russo [Tue, 23 Dec 2025 17:50:00 +0000 (17:50 +0000)] 
JIT: don't leak shim memory when shutting down the interpreter (#142984)

5 months agoGH-143026: Fix assertion error in executor management. (GH-143104)
Mark Shannon [Tue, 23 Dec 2025 17:19:34 +0000 (17:19 +0000)] 
GH-143026: Fix assertion error in executor management. (GH-143104)

5 months agogh-134584: Eliminate redundant refcounting from `_CALL_TYPE_1` (GH-135818)
Tomas R. [Tue, 23 Dec 2025 17:01:10 +0000 (18:01 +0100)] 
gh-134584: Eliminate redundant refcounting from `_CALL_TYPE_1` (GH-135818)

5 months agogh-134584: Add another contributor to whats new 3.15 (GH-143107)
Ken Jin [Tue, 23 Dec 2025 16:47:46 +0000 (00:47 +0800)] 
gh-134584: Add another contributor to whats new 3.15 (GH-143107)

Add another contributor to whats new 3.15

5 months agoUpdate pre-commit with zizmor and Ruff fixes (#143095)
Hugo van Kemenade [Tue, 23 Dec 2025 15:51:02 +0000 (17:51 +0200)] 
Update pre-commit with zizmor and Ruff fixes (#143095)

5 months agogh-130796: Undeprecate locale.getdefaultlocale() (#143069)
Victor Stinner [Tue, 23 Dec 2025 15:31:10 +0000 (16:31 +0100)] 
gh-130796: Undeprecate locale.getdefaultlocale() (#143069)

5 months agogh-142448: Disable JIT tracing when monitoring is enabled (GH-142842)
Ken Jin [Tue, 23 Dec 2025 11:27:23 +0000 (19:27 +0800)] 
gh-142448: Disable JIT tracing when monitoring is enabled (GH-142842)

5 months agogh-142368: Fix transient error handling in inspection tests (#143093)
Pablo Galindo Salgado [Tue, 23 Dec 2025 11:01:32 +0000 (11:01 +0000)] 
gh-142368: Fix transient error handling in inspection tests (#143093)

5 months agogh-138122: Add blocking mode for accurate stack traces in Tachyon (#142998)
Pablo Galindo Salgado [Tue, 23 Dec 2025 10:49:47 +0000 (10:49 +0000)] 
gh-138122: Add blocking mode for accurate stack traces in Tachyon (#142998)

5 months agogh-84232: Fix `pydoc` docs.python.org link generation (#139995)
Stan Ulbrych [Tue, 23 Dec 2025 08:29:58 +0000 (08:29 +0000)] 
gh-84232: Fix `pydoc` docs.python.org link generation (#139995)

Co-authored-by: Éric <merwok@netwok.org>
5 months agogh-122431: Correct the non-negative error message in `readline.append_history_file...
Zheng Yu [Tue, 23 Dec 2025 04:35:23 +0000 (22:35 -0600)] 
gh-122431: Correct the non-negative error message in `readline.append_history_file` (GH-143075)

"positive" -> "non-negative", since zero is included.

5 months agogh-134584: Eliminate redundant refcounting from `_LOAD_ATTR_WITH_HINT` (GH-143062)
Hai Zhu [Tue, 23 Dec 2025 00:28:08 +0000 (08:28 +0800)] 
gh-134584: Eliminate redundant refcounting from `_LOAD_ATTR_WITH_HINT` (GH-143062)

Eliminate redundant refcounting from _LOAD_ATTR_WITH_HINT

5 months agogh-138122: Allow tachyon to write and read binary output (#142730)
Pablo Galindo Salgado [Mon, 22 Dec 2025 23:57:20 +0000 (23:57 +0000)] 
gh-138122: Allow tachyon to write and read binary output (#142730)

5 months agogh-139922: Add tail call for MSVC for whats new in 3.15 (GH-143087)
Ken Jin [Mon, 22 Dec 2025 23:56:26 +0000 (07:56 +0800)] 
gh-139922: Add tail call for MSVC for whats new in 3.15 (GH-143087)

5 months agoGH-139922: Tail calling for MSVC (VS 2026) (GH-143068)
Chris Eibl [Mon, 22 Dec 2025 23:01:34 +0000 (00:01 +0100)] 
GH-139922: Tail calling for MSVC (VS 2026) (GH-143068)

Co-authored-by: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com>
Co-authored-by: Brandt Bucher <brandt@python.org>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
5 months agogh-139109: Add terminator to JIT code when halting due to invalid dependencies ...
Ken Jin [Mon, 22 Dec 2025 20:54:47 +0000 (04:54 +0800)] 
gh-139109: Add terminator to JIT code when  halting due to invalid dependencies (#143033)

* Add terminator to JIT code when  halting due to invalid dependencies

* 📜🤖 Added by blurb_it.

---------

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
5 months agogh-89152: Note truth testing exception in `stdtypes.rst` (#137640)
Stan Ulbrych [Mon, 22 Dec 2025 19:36:44 +0000 (19:36 +0000)] 
gh-89152: Note truth testing exception in `stdtypes.rst` (#137640)

Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
5 months agogh-143010: Prevent a TOCTOU issue by only calling open once (#143011)
AZero13 [Mon, 22 Dec 2025 17:48:11 +0000 (12:48 -0500)] 
gh-143010: Prevent a TOCTOU issue by only calling open once (#143011)

* gh-143010: Prevent a TOCTOU issue by gh-143010: Prevent a TOCTOU issue by only calling open once

RDM: per  AZero13's research the 'x' option did not exist when this code was written,  This
modernization can thus drop the fd trick in _create_carefully and just use open with 'x' to achieve the same goal more securely.

Co-authored-by: sobolevn <mail@sobolevn.me>
5 months agoGH-142513: fix missing return in executor_clear (GH-143073)
Chris Eibl [Mon, 22 Dec 2025 17:10:52 +0000 (18:10 +0100)] 
GH-142513: fix missing return in executor_clear (GH-143073)

fix missing return in executor_clear

5 months agogh-129069: fix more thread safety issues in `list` (#143019)
Kumar Aditya [Mon, 22 Dec 2025 16:15:28 +0000 (21:45 +0530)] 
gh-129069: fix more thread safety issues in `list` (#143019)

5 months agogh-143057: avoid locking in `tracemalloc` C-APIs when it is not enabled (#143065)
Kumar Aditya [Mon, 22 Dec 2025 15:38:07 +0000 (21:08 +0530)] 
gh-143057: avoid locking in `tracemalloc` C-APIs when it is not enabled (#143065)

5 months agogh-142476: Fix Windows crashing with JIT (GH-143021)
Ken Jin [Mon, 22 Dec 2025 14:57:13 +0000 (22:57 +0800)] 
gh-142476: Fix Windows crashing with JIT (GH-143021)

Fix Windows crashing with JIT

5 months agogh-142927: Tachyon: Comma separate thousands and fix singular/plurals (#142934)
Hugo van Kemenade [Mon, 22 Dec 2025 14:15:57 +0000 (16:15 +0200)] 
gh-142927: Tachyon: Comma separate thousands and fix singular/plurals (#142934)

5 months agoRemove unreachable code in mmapmodule error path on Windows (GH-143063)
Yongtao Huang [Mon, 22 Dec 2025 10:16:50 +0000 (18:16 +0800)] 
Remove unreachable code in mmapmodule error path on Windows (GH-143063)

mmapmodule: remove unreachable code in Windows error path

Remove an unreachable `return NULL` after `PyErr_SetFromWindowsErr()` in
the Windows mmap resize error path.

Signed-off-by: Yongtao Huang <yongtaoh2022@gmail.com>
5 months agogh-143046: Make asyncio REPL respect the `-q` flag (quiet mode) (#143047)
Bartosz Sławecki [Mon, 22 Dec 2025 07:05:15 +0000 (08:05 +0100)] 
gh-143046: Make asyncio REPL respect the `-q` flag (quiet mode) (#143047)

5 months agogh-80744: do not read .pdbrc twice when cwd == $home (#136816)
saucoide [Sun, 21 Dec 2025 16:58:07 +0000 (17:58 +0100)] 
gh-80744: do not read .pdbrc twice when cwd == $home (#136816)

5 months agogh-70647: Better promote how to safely parse yearless dates in datetime. (GH-116179)
Gregory P. Smith [Sun, 21 Dec 2025 06:47:40 +0000 (22:47 -0800)] 
gh-70647: Better promote how to safely parse yearless dates in datetime. (GH-116179)

* gh-70647: Better promote how to safely parse yearless dates in datetime.

Every four years people encounter this because it just isn't obvious.
This moves the footnote up to a note with a code example.

We'd love to change the default year value for datetime but doing
that could have other consequences for existing code.  This documented
workaround *always* works.

* doctest code within note is bad, dedent.

* Update to match the error message.

* remove no longer referenced footnote

* ignore the warning in the doctest

* use Petr's suggestion for the docs to hide the warning processing

* cover date.strptime (3.14) as well

5 months agogh-142145: relax the no-longer-quadratic test timing (#143030)
Gregory P. Smith [Sat, 20 Dec 2025 23:42:06 +0000 (15:42 -0800)] 
gh-142145: relax the no-longer-quadratic test timing (#143030)

* gh-142145: relax the no-longer-quadratic test timing

* require cpu resource

5 months agogh-122581: Use parser mutex in default build for subinterpreters (gh-142959)
Sam Gross [Sat, 20 Dec 2025 20:37:31 +0000 (15:37 -0500)] 
gh-122581: Use parser mutex in default build for subinterpreters (gh-142959)

5 months agogh-120321: Avoid `-Wunreachable-code` warning on Clang (gh-143022)
Sam Gross [Sat, 20 Dec 2025 19:42:12 +0000 (14:42 -0500)] 
gh-120321: Avoid `-Wunreachable-code` warning on Clang (gh-143022)

5 months agogh-142834: pdb commands command should use last available breakpoint (#142835)
Hai Zhu [Sat, 20 Dec 2025 17:27:34 +0000 (01:27 +0800)] 
gh-142834:  pdb commands command should use last available breakpoint (#142835)

5 months agogh-143012: use `Py_ssize_t` cast for `PyBytes_FromStringAndSize` (#143013)
AZero13 [Sat, 20 Dec 2025 07:37:10 +0000 (02:37 -0500)] 
gh-143012: use `Py_ssize_t` cast for `PyBytes_FromStringAndSize` (#143013)

5 months agogh-142927: Tachyon: Start with user's default light/dark theme (#142987)
Hugo van Kemenade [Sat, 20 Dec 2025 01:36:09 +0000 (03:36 +0200)] 
gh-142927: Tachyon: Start with user's default light/dark theme (#142987)

5 months agogh-129069: Fix listobject.c data races due to memmove (gh-142957)
Sam Gross [Fri, 19 Dec 2025 23:06:47 +0000 (18:06 -0500)] 
gh-129069: Fix listobject.c data races due to memmove (gh-142957)

The use of memmove and _Py_memory_repeat were not thread-safe in the
free threading build in some cases. In theory, memmove and
_Py_memory_repeat can copy byte-by-byte instead of pointer-by-pointer,
so concurrent readers could see uninitialized data or tearing.

Additionally, we should be using "release" (or stronger) ordering to be
compliant with the C11 memory model when copying objects within a list.

5 months agogh-120321: Fix TSan reported race in gen_clear_frame (gh-142995)
Sam Gross [Fri, 19 Dec 2025 22:33:49 +0000 (17:33 -0500)] 
gh-120321: Fix TSan reported race in gen_clear_frame (gh-142995)

TSan treats compare-exchanges that fail as if they are writes
so there is a false positive with the read of gi_frame_state in
gen_close.

5 months agogh-120321: Make gi_frame_state transitions atomic in FT build (gh-142599)
Sam Gross [Fri, 19 Dec 2025 19:10:37 +0000 (14:10 -0500)] 
gh-120321: Make gi_frame_state transitions atomic in FT build (gh-142599)

This makes generator frame state transitions atomic in the free
threading build, which avoids segfaults when trying to execute
a generator from multiple threads concurrently.

There are still a few operations that aren't thread-safe and may crash
if performed concurrently on the same generator/coroutine:

 * Accessing gi_yieldfrom/cr_await/ag_await
 * Accessing gi_frame/cr_frame/ag_frame
 * Async generator operations

5 months agogh-142476: fix memory leak when creating JIT executors (GH-142492)
Shamil [Fri, 19 Dec 2025 19:07:11 +0000 (22:07 +0300)] 
gh-142476: fix memory leak when creating JIT executors (GH-142492)

5 months agogh-134584: JIT: Borrow references for immortal promoted globals (GH-142921)
Ken Jin [Fri, 19 Dec 2025 19:06:34 +0000 (03:06 +0800)] 
gh-134584: JIT: Borrow references for immortal promoted globals (GH-142921)

JIT: Borrow references for immortal promoted globals

5 months agogh-142776: Ensure fp file descriptor is closed on all code paths in import.c (GH...
stratakis [Fri, 19 Dec 2025 18:14:52 +0000 (19:14 +0100)] 
gh-142776: Ensure fp file descriptor is closed on all code paths in import.c (GH-142777)

5 months agogh-142961: Fix constant folding len(tuple) in JIT (GH-142963)
Ken Jin [Fri, 19 Dec 2025 17:43:36 +0000 (01:43 +0800)] 
gh-142961: Fix constant folding len(tuple) in JIT (GH-142963)

5 months agogh-134160: Start "Extending and embedding" with a Diataxis-style tutorial (GH-142314)
Petr Viktorin [Fri, 19 Dec 2025 16:48:34 +0000 (17:48 +0100)] 
gh-134160: Start "Extending and embedding" with a Diataxis-style tutorial (GH-142314)

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Éric <merwok@netwok.org>
Co-authored-by: Daniele Nicolodi <daniele@grinta.net>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
5 months agoJIT: Rename trampoline.c to shim.c (#142974)
Diego Russo [Fri, 19 Dec 2025 14:39:41 +0000 (14:39 +0000)] 
JIT: Rename trampoline.c to shim.c (#142974)

5 months agogh-136282: Configparser: create unnamed sections via mapping protocol access (GH...
Rogdham [Fri, 19 Dec 2025 12:44:03 +0000 (13:44 +0100)] 
gh-136282: Configparser: create unnamed sections via mapping protocol access (GH-136313)

5 months agogh-142527: Docs: Clarify that random.seed() discards the sign of an integer input...
Andrej [Fri, 19 Dec 2025 08:29:35 +0000 (00:29 -0800)] 
gh-142527: Docs: Clarify that random.seed() discards the sign of an integer input (#142483)

If *a* is an integer, the sign of *a* is discarded in the C source code. Clarify this behavior to prevent foot guns, where a common use case might naively assume that flipping the sign will produce different sequences (e.g. for a train/test split of a synthetic data generator in machine learning).

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
5 months agogh-142560: prevent use-after-free in search-like methods by exporting buffer in bytea...
wangxiaolei [Fri, 19 Dec 2025 08:02:23 +0000 (16:02 +0800)] 
gh-142560: prevent use-after-free in search-like methods by exporting buffer in bytearray (#142938)

5 months agoGH-134584: Remove redundant refcount for `BINARY_OP_SUBSCR_STR_INT` (#142844)
Savannah Ostrowski [Thu, 18 Dec 2025 21:29:54 +0000 (13:29 -0800)] 
GH-134584: Remove redundant refcount for `BINARY_OP_SUBSCR_STR_INT` (#142844)

5 months agogh-118342: [Enum] update docs (GH-137290)
Ethan Furman [Thu, 18 Dec 2025 18:31:37 +0000 (10:31 -0800)] 
gh-118342: [Enum] update docs (GH-137290)

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
5 months agogh-134584: Eliminate redundant refcounting from _BINARY_OP_SUBSCR_LIST_INT (GH-142926)
LloydZ [Thu, 18 Dec 2025 18:25:36 +0000 (02:25 +0800)] 
gh-134584: Eliminate redundant refcounting from _BINARY_OP_SUBSCR_LIST_INT (GH-142926)

5 months agogh-129068: Make range iterators thread-safe (gh-142886)
Sam Gross [Thu, 18 Dec 2025 18:11:51 +0000 (13:11 -0500)] 
gh-129068: Make range iterators thread-safe (gh-142886)

Now that we specialize range iteration in the interpreter for the common
case where the iterator has only one reference, there's not a
significant performance cost to making the iteration thread-safe.

5 months agogh-142890: remove unnecessary interp parameter from dict functions and `_PyDict_Notif...
Kumar Aditya [Thu, 18 Dec 2025 17:18:56 +0000 (22:48 +0530)] 
gh-142890: remove unnecessary interp parameter from dict functions and `_PyDict_NotifyEvent` (#142923)

5 months agogh-142681: Move NormalizationTest-3.2.0.txt to more safe place. (GH-142935)
Serhiy Storchaka [Thu, 18 Dec 2025 17:04:28 +0000 (19:04 +0200)] 
gh-142681: Move NormalizationTest-3.2.0.txt to more safe place. (GH-142935)

5 months agoGH-142513: Reimplement executor management (GH-142931)
Mark Shannon [Thu, 18 Dec 2025 16:43:44 +0000 (16:43 +0000)] 
GH-142513: Reimplement executor management (GH-142931)

* Invalidating an executor does not cause arbitrary code to run
* Executors are only freed at safe points

5 months agogh-142419: Add mmap.set_name method for user custom annotation (gh-142480)
Donghee Na [Thu, 18 Dec 2025 14:33:49 +0000 (23:33 +0900)] 
gh-142419: Add mmap.set_name method for user custom annotation (gh-142480)

5 months agogh-76007: Deprecate `VERSION` in `xml.etree.ElementTree` & `version` in `xml.sax...
Hugo van Kemenade [Thu, 18 Dec 2025 14:22:23 +0000 (16:22 +0200)] 
gh-76007: Deprecate `VERSION` in `xml.etree.ElementTree` & `version` in `xml.sax.expatreader` & `xml.sax.handler` (#142898)

5 months agoFix typo in `format_string` docstring (GH-136742)
Max R [Thu, 18 Dec 2025 13:43:19 +0000 (08:43 -0500)] 
Fix typo in `format_string` docstring (GH-136742)

5 months agogh-142784: make the asyncio REPL call `loop.close()` at exit (#142785)
Bartosz Sławecki [Thu, 18 Dec 2025 13:00:12 +0000 (14:00 +0100)] 
gh-142784: make the asyncio REPL call `loop.close()` at exit (#142785)

5 months agogh-124098: Fix incorrect inclusion of handler methods without protocol prefix in...
MonadChains [Thu, 18 Dec 2025 12:50:05 +0000 (13:50 +0100)] 
gh-124098: Fix incorrect inclusion of handler methods without protocol prefix in OpenerDirector (GH-136873)

5 months agogh-134584: Remove redundant refcount from _BINARY_OP_ADD_UNICODE (gh-142825)
Donghee Na [Thu, 18 Dec 2025 12:33:18 +0000 (21:33 +0900)] 
gh-134584: Remove redundant refcount from _BINARY_OP_ADD_UNICODE (gh-142825)

5 months agogh-137063: Document that ast node types replaced by Constant are no longer available...
James [Thu, 18 Dec 2025 12:17:42 +0000 (07:17 -0500)] 
gh-137063: Document that ast node types replaced by Constant are no longer available (#137064)