]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
4 weeks 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)

4 weeks 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)

4 weeks 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)

4 weeks 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)

4 weeks 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>
4 weeks agoFix typos in docs (#143193)
SYan212 [Sat, 27 Dec 2025 07:52:28 +0000 (07:52 +0000)] 
Fix typos in docs (#143193)

4 weeks 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

4 weeks 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)

4 weeks 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)

4 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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 weeks 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)

6 weeks 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>
6 weeks 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)

6 weeks 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)

6 weeks 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>
6 weeks 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)

6 weeks 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)

6 weeks 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>
6 weeks 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)

6 weeks 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.

6 weeks 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)

6 weeks 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)

6 weeks 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

6 weeks 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)

6 weeks 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)

6 weeks 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)

6 weeks 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)

6 weeks 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)

6 weeks 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)

6 weeks 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)

6 weeks agogh-138122: Improve bytecode panel (#142910)
ivonastojanovic [Thu, 18 Dec 2025 11:43:39 +0000 (11:43 +0000)] 
gh-138122: Improve bytecode panel (#142910)

The bytecode panel appears when a user generates a heatmap with
--opcodes and clicks the button to unfold a line and display the
bytecode instructions. Currently, an empty space appears on the
left where the line number, self, and total columns are displayed.
This area should instead extend those columns, rather than leaving
a gap.

6 weeks agogh-139757: Treat call specially in JIT assembly backend optimizer on x86-64 and AArch...
Ken Jin [Wed, 17 Dec 2025 22:47:47 +0000 (06:47 +0800)] 
gh-139757: Treat call specially in JIT assembly backend optimizer on x86-64 and AArch64 (GH-142907)

Co-authored-by: Savannah Ostrowski <savannah@python.org>