]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
4 months agogh-132775: Clean Up Cross-Interpreter Error Handling (gh-135369)
Eric Snow [Fri, 13 Jun 2025 22:45:21 +0000 (16:45 -0600)] 
gh-132775: Clean Up Cross-Interpreter Error Handling (gh-135369)

In this refactor we:

* move some code around
* make a couple of typedefs opaque
* decouple errors from session state
* improve tracebacks for propagated exceptions

This change helps simplify several upcoming changes.

4 months agogh-135462: Fix quadratic complexity in processing special input in HTMLParser (GH...
Serhiy Storchaka [Fri, 13 Jun 2025 16:57:48 +0000 (19:57 +0300)] 
gh-135462: Fix quadratic complexity in processing special input in HTMLParser (GH-135464)

End-of-file errors are now handled according to the HTML5 specs --
comments and declarations are automatically closed, tags are ignored.

4 months agogh-106318: Add example for `str.expandtabs()` (#134525)
Blaise Pabon [Fri, 13 Jun 2025 15:44:21 +0000 (15:44 +0000)] 
gh-106318: Add example for `str.expandtabs()` (#134525)

4 months agogh-135455: Fix version and architecture detection in PC/layout script. (GH-135461)
Steve Dower [Fri, 13 Jun 2025 15:04:43 +0000 (16:04 +0100)] 
gh-135455: Fix version and architecture detection in PC/layout script. (GH-135461)

4 months agogh-134160: Split extension module init from PyModule docs; emphasize multi-phase...
Petr Viktorin [Fri, 13 Jun 2025 14:39:35 +0000 (16:39 +0200)] 
gh-134160: Split extension module init from PyModule docs; emphasize multi-phase init (GH-135126)

Document behaviour of single-phase init. Call it "legacy".

Reorganize PyModule docs.

Move PyInit_modulename docs from the tutorial to reference documentation.

Move PyMODINIT_FUNC docs from generic macros to the new page.

Add doc stubs for `PYTHON_API_VERSION` & `PYTHON_ABI_VERSION`

Remove incorrect refcounts.dat entry for `PyModuleDef_Init`.
This removes the "Return value: Borrowed reference." note.
Instead, note that the function sometimes returns a borrowed reference,
sometimes as strong one.
(IMO, it's best to not think of `PyModuleDef` as a `PyObject` at all,
and act like it can't be reference-counted.)

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
4 months agogh-135244: improve wording of `uuid8` docs about CSPRNG (#135433)
LamentXU [Fri, 13 Jun 2025 14:06:11 +0000 (22:06 +0800)] 
gh-135244: improve wording of `uuid8` docs about CSPRNG (#135433)

4 months agogh-126703: Add freelist for PyComplexObject's (gh-135233)
Sergey B Kirpichev [Fri, 13 Jun 2025 13:32:26 +0000 (16:32 +0300)] 
gh-126703: Add freelist for PyComplexObject's (gh-135233)

4 months agogh-106318: Add example for `str.endswith()` (#134523)
Blaise Pabon [Fri, 13 Jun 2025 11:54:16 +0000 (11:54 +0000)] 
gh-106318: Add example for `str.endswith()` (#134523)

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
4 months agogh-106318: Add example for `str.encode()` (#134520)
Blaise Pabon [Fri, 13 Jun 2025 11:32:07 +0000 (11:32 +0000)] 
gh-106318: Add example for `str.encode()` (#134520)

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
4 months agogh-135308: clarify math.issubnormal() description (GH-135324)
Sergey B Kirpichev [Fri, 13 Jun 2025 06:30:44 +0000 (09:30 +0300)] 
gh-135308: clarify math.issubnormal() description (GH-135324)

4 months agoGH-134273: Allow setting JIT compiler flags at build time with CFLAGS_JIT (GH134276)
Zanie Blue [Thu, 12 Jun 2025 23:11:08 +0000 (18:11 -0500)] 
GH-134273: Allow setting JIT compiler flags at build time with CFLAGS_JIT (GH134276)

4 months agoRevert "gh-135410: use a critical section around `StringIO.__next__` (#135412)" ...
Peter Bierma [Thu, 12 Jun 2025 22:32:27 +0000 (18:32 -0400)] 
Revert "gh-135410: use a critical section around `StringIO.__next__` (#135412)" (#135439)

This reverts commit e6c3039cb39e68ae9af9ddcaca341c5af8f9cf23.

4 months agogh-135429: Fix the argument mismatch in lsprof throw event (#135442)
Tian Gao [Thu, 12 Jun 2025 21:46:47 +0000 (14:46 -0700)] 
gh-135429: Fix the argument mismatch in lsprof throw event (#135442)

4 months agodoc: Remove what was essentially duplicate wording. (GH-135431)
Eric Hanchrow [Thu, 12 Jun 2025 17:47:12 +0000 (10:47 -0700)] 
doc: Remove what was essentially duplicate wording. (GH-135431)

4 months agogh-133390: Support SQL keyword completion for sqlite3 CLI (GH-133393) (GH-135292)
Petr Viktorin [Thu, 12 Jun 2025 14:28:30 +0000 (16:28 +0200)] 
gh-133390: Support SQL keyword completion for sqlite3 CLI (GH-133393) (GH-135292)

Co-authored-by: Tan Long <tanloong@foxmail.com>
4 months agogh-135410: use a critical section around `StringIO.__next__` (#135412)
Peter Bierma [Thu, 12 Jun 2025 11:11:05 +0000 (07:11 -0400)] 
gh-135410: use a critical section around `StringIO.__next__` (#135412)

4 months agogh-128627: Fix iPad detection in wasm-gc (#135388)
Gyeongjae Choi [Thu, 12 Jun 2025 04:04:13 +0000 (13:04 +0900)] 
gh-128627: Fix iPad detection in wasm-gc (#135388)

On some iPad versions, Safari reports as "macOS". Modifies the GC trampoline detection
to add a feature-based check to detect this case.

4 months agoFix presentation of dataclasses' `unsafe_hash` default value (#116532)
Victorien [Thu, 12 Jun 2025 01:30:33 +0000 (03:30 +0200)] 
Fix presentation of dataclasses' `unsafe_hash` default value (#116532)

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
4 months agogh-134939: Add the concurrent.interpreters Module (gh-133958)
Eric Snow [Wed, 11 Jun 2025 23:35:48 +0000 (17:35 -0600)] 
gh-134939: Add the concurrent.interpreters Module (gh-133958)

PEP-734 has been accepted (for 3.14).

(FTR, I'm opposed to putting this under the concurrent package, but
doing so is the SC condition under which the module can land in 3.14.)

4 months agogh-133264: Correct documentation of how Py_Main and Py_RunMain handle SystemExit...
Malcolm Smith [Wed, 11 Jun 2025 15:23:47 +0000 (16:23 +0100)] 
gh-133264: Correct documentation of how Py_Main and Py_RunMain handle SystemExit (#135337)

4 months agoGH-135379: Remove types from stack items in code generator. (GH-135384)
Mark Shannon [Wed, 11 Jun 2025 14:52:25 +0000 (15:52 +0100)] 
GH-135379: Remove types from stack items in code generator. (GH-135384)

* Make casts explicit in the instruction definitions

4 months agogh-127545: Add _Py_ALIGNED_DEF(N, T) and use it for PyObject (GH-135209)
Petr Viktorin [Wed, 11 Jun 2025 10:44:58 +0000 (12:44 +0200)] 
gh-127545: Add _Py_ALIGNED_DEF(N, T) and use it for PyObject (GH-135209)

* Replace _Py_ALIGN_AS(V) by _Py_ALIGNED_DEF(N, T)

This is now a common façade for the various `_Alignas` alternatives,
which behave in interesting ways -- see the source comment.

The new macro (and MSVC's `__declspec(align)`) should not be used
on a variable/member declaration that includes a struct declaraton.
A workaround is to separate the struct definition.
Do that for `PyASCIIObject.state`.

* Specify minimum PyGC_Head and PyObject alignment

As documented in InternalDocs/garbage_collector.md, the garbage collector
stores flags in the least significant two bits of the _gc_prev pointer
in struct PyGC_Head. Consequently, this pointer is only capable of storing
a location that's aligned to a 4-byte boundary.

Encode this requirement using _Py_ALIGNED_DEF.

This patch fixes a segfault in m68k, which was previously investigated
by Adrian Glaubitz here:
https://lists.debian.org/debian-68k/2024/11/msg00020.html
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1087600
Original patch (using the GCC-only Py_ALIGNED) by Finn Thain.

Co-authored-by: Finn Thain <fthain@linux-m68k.org>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
4 months agogh-135321: Always raise a correct exception for BINSTRING argument > 0x7fffffff in...
Justin Applegate [Wed, 11 Jun 2025 10:15:12 +0000 (06:15 -0400)] 
gh-135321: Always raise a correct exception for BINSTRING argument > 0x7fffffff in pickle (GH-135322)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
4 months agogh-135326: Test support of __index__ in random.getrandbits() (#135356)
Serhiy Storchaka [Wed, 11 Jun 2025 01:51:08 +0000 (04:51 +0300)] 
gh-135326: Test support of __index__ in random.getrandbits() (#135356)

5 months agogh-133967: Do not normalize locale name 'C.UTF-8' to 'en_US.UTF-8' (#135347)
Serhiy Storchaka [Tue, 10 Jun 2025 13:38:32 +0000 (16:38 +0300)] 
gh-133967: Do not normalize locale name 'C.UTF-8' to 'en_US.UTF-8' (#135347)

5 months agogh-130077: Properly match full soft keywords in the parser (#135317)
Pablo Galindo Salgado [Tue, 10 Jun 2025 13:19:03 +0000 (14:19 +0100)] 
gh-130077: Properly match full soft keywords in the parser (#135317)

5 months agogh-132969: Fix error/hang when shutdown(wait=False) and task exited abnormally ...
Ajay Kamdar [Tue, 10 Jun 2025 11:28:31 +0000 (07:28 -0400)] 
gh-132969:  Fix error/hang when shutdown(wait=False) and task exited abnormally (GH-133222)

When shutdown is called with wait=False, the executor thread keeps running
even after the ProcessPoolExecutor's state is reset. The executor then tries
to replenish the worker processes pool resulting in an error and a potential hang
when it comes across a worker that has died. Fixed the issue by having
_adjust_process_count() return without doing anything if the ProcessPoolExecutor's
state has been reset.

Added unit tests to validate two scenarios:
max_workers < num_tasks (exception)
max_workers > num_tasks (exception + hang)

5 months agogh-118928: Amend sqlite3 execute*() deprecation notes (#135163)
Erlend E. Aasland [Tue, 10 Jun 2025 11:24:33 +0000 (13:24 +0200)] 
gh-118928: Amend sqlite3 execute*() deprecation notes (#135163)

5 months agoDocs: fix docstring of `email.message.Message.add_header` (#134355)
Alexander Shadchin [Tue, 10 Jun 2025 10:35:37 +0000 (13:35 +0300)] 
Docs: fix docstring of `email.message.Message.add_header` (#134355)

5 months agogh-133157: remove usage of `_Py_NO_SANITIZE_UNDEFINED` in `Parser/pegen.c` (#134048)
Bénédikt Tran [Tue, 10 Jun 2025 00:08:30 +0000 (02:08 +0200)] 
gh-133157: remove usage of `_Py_NO_SANITIZE_UNDEFINED` in `Parser/pegen.c` (#134048)

5 months agoFix warnings `set but not used [-Wunused-but-set-variable]` in remote_debug.h (#135290)
Chris Eibl [Tue, 10 Jun 2025 00:05:06 +0000 (02:05 +0200)] 
Fix warnings `set but not used [-Wunused-but-set-variable]` in remote_debug.h (#135290)

5 months agoFix definition of `_Py_RemoteDebug_` symbols for static linking (#135146)
Zanie Blue [Tue, 10 Jun 2025 00:03:55 +0000 (19:03 -0500)] 
Fix definition of `_Py_RemoteDebug_` symbols for static linking (#135146)

5 months agogh-116738: Make _heapq module thread-safe (#135036)
Alper [Mon, 9 Jun 2025 17:57:29 +0000 (10:57 -0700)] 
gh-116738: Make _heapq module thread-safe (#135036)

Use critical sections to make heapq methods that update the heap thread-safe when the GIL is disabled.

---------

Co-authored-by: mpage <mpage@meta.com>
5 months agoGH-131296: Suppress clang-cl warnings in socketmodule.c (GH-131821)
Chris Eibl [Mon, 9 Jun 2025 16:38:41 +0000 (18:38 +0200)] 
GH-131296: Suppress clang-cl warnings in socketmodule.c (GH-131821)

5 months agogh-127833: Reword and expand the Notation section (GH-134443)
Petr Viktorin [Mon, 9 Jun 2025 13:50:11 +0000 (15:50 +0200)] 
gh-127833: Reword and expand the Notation section (GH-134443)

Prepare the docs for using the notation used in the `python.gram`
file. If we want to sync the two, the meta-syntax should be the same.

Link the Full Grammar docs here; keep only a few extras.

Also, remove the distinction between lexical and syntactic rules,
except for whitespace handling.
With f- and t-strings, the line between the two is blurry.

Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
Co-authored-by: Colin Marquardt <cmarqu42@gmail.com>
5 months agogh-135001: Explicitly specify the encoding parameter value of `calendar.HTMLCalendar...
Wulian233 [Mon, 9 Jun 2025 13:40:09 +0000 (21:40 +0800)] 
gh-135001: Explicitly specify the encoding parameter value of `calendar.HTMLCalendar` as 'utf-8' (#135002)

5 months agogh-133968: Update PyUnicodeWriter_WriteASCII() documentation (#135297)
Victor Stinner [Mon, 9 Jun 2025 12:47:02 +0000 (14:47 +0200)] 
gh-133968: Update PyUnicodeWriter_WriteASCII() documentation (#135297)

The function was added to Python 3.14.

5 months agoGH-135287: clang-cl PGO builds on Windows fail with `could not open '/GENPROFILE...
Chris Eibl [Mon, 9 Jun 2025 11:52:38 +0000 (13:52 +0200)] 
GH-135287: clang-cl PGO builds on Windows fail with `could not open '/GENPROFILE'` (GH-135289)

5 months agogh-131798: Optimize `_UNARY_INVERT` (GH-135222)
Noam Cohen [Mon, 9 Jun 2025 10:33:18 +0000 (13:33 +0300)] 
gh-131798: Optimize `_UNARY_INVERT` (GH-135222)

5 months agogh-131316: fix invalid `DECREF` in `_md5.md5.copy()` (#135291)
Bénédikt Tran [Mon, 9 Jun 2025 09:10:32 +0000 (11:10 +0200)] 
gh-131316: fix invalid `DECREF` in `_md5.md5.copy()` (#135291)

This amends commit 261633bd3f48607478f50d12d8025cd4bb36f6f4.

5 months agobpo-45210: Document that error indicator may be set in tp_dealloc (#28358)
Edward Z. Yang [Mon, 9 Jun 2025 08:56:32 +0000 (04:56 -0400)] 
bpo-45210: Document that error indicator may be set in tp_dealloc (#28358)

Signed-off-by: Edward Z. Yang <ezyang@fb.com>
Signed-off-by: Edward Z. Yang <ezyang@meta.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
5 months agogh-135004: rewrite and cleanup `blake2module.c` (#135006)
Bénédikt Tran [Mon, 9 Jun 2025 07:17:43 +0000 (09:17 +0200)] 
gh-135004: rewrite and cleanup `blake2module.c` (#135006)

* Cleanup imports and update module docstring.
* Simplify detection of SIMD support.
* Correctly guard `update()` cases.
* Rewrite `py_blake2b_or_s_new` and rename it to `py_blake2_new`.
* Rewrite `blake2_blake2b_copy_locked` and `py_blake2_clear`.
* Refactor computations of `digest` and `hexdigest`.
* Simplify `py_blake2b_get_name` and `py_blake2b_get_block_size`.
* Add `hacl_get_blake2_info` to extract static BLAKE-2 information.
   This new helper is used by `py_blake2b_get_digest_size`, but can
   be later used to expose `key_length` more easily.

5 months agogh-135234: improve `_hashlib` exceptions when reporting an OpenSSL function failure...
Bénédikt Tran [Mon, 9 Jun 2025 07:13:29 +0000 (09:13 +0200)] 
gh-135234: improve `_hashlib` exceptions when reporting an OpenSSL function failure (#135250)

- Refactor `get_openssl_evp_md_by_utf8name` error branches.
- Refactor `HASH.{digest,hexdigest}` computations.
- Refactor `_hashlib_HASH_copy_locked` and `locked_HMAC_CTX_copy`.

5 months agoUse f-strings in csv docs example (#135245)
Ezio Melotti [Sun, 8 Jun 2025 22:28:37 +0000 (00:28 +0200)] 
Use f-strings in csv docs example (#135245)

5 months agogh-135263: Fix typo in token.NAME documentation (#135275)
Vladyslav Lazoryk [Sun, 8 Jun 2025 19:59:26 +0000 (22:59 +0300)] 
gh-135263: Fix typo in token.NAME documentation (#135275)

5 months agogh-135276: Refresh `zipfile.Path` from zipp 3.23 (#135277)
Jason R. Coombs [Sun, 8 Jun 2025 19:20:20 +0000 (15:20 -0400)] 
gh-135276: Refresh `zipfile.Path` from zipp 3.23 (#135277)

Apply changes from zipp 3.23

5 months agoAdd compile_commands.json to .gitignore (#135111)
Alper [Sun, 8 Jun 2025 16:55:12 +0000 (09:55 -0700)] 
Add compile_commands.json to .gitignore (#135111)

5 months agoUpdate tutorial for new "Copy" button (#135007)
Stan Ulbrych [Sun, 8 Jun 2025 16:33:19 +0000 (17:33 +0100)] 
Update tutorial for new "Copy" button (#135007)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
5 months agogh-134531: refactor `_hashlib` logic for handling NIDs and EVP_MDs (#135254)
Bénédikt Tran [Sun, 8 Jun 2025 12:34:57 +0000 (14:34 +0200)] 
gh-134531: refactor `_hashlib` logic for handling NIDs and EVP_MDs (#135254)

5 months agogh-134976: document the exception type that can be raised by `s[i]` (#134977)
Yongzi Li [Sun, 8 Jun 2025 12:28:55 +0000 (20:28 +0800)] 
gh-134976: document the exception type that can be raised by `s[i]` (#134977)

5 months agogh-135244: generate UUID random Node ID with a CSPRNG as per RFC 9562, §6.10.3 (...
LamentXU [Sun, 8 Jun 2025 11:46:16 +0000 (19:46 +0800)] 
gh-135244: generate UUID random Node ID with a CSPRNG as per RFC 9562, §6.10.3 (#135226)

This aligns with the recommendations of RFC 9562, Section 6.10, paragraph 3 [1].

[1]: https://www.rfc-editor.org/rfc/rfc9562.html#section-6.10-3.

---------

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
5 months agogh-134531: fix `_hashlib` clinic directive post GH-134626 (#135249)
Bénédikt Tran [Sun, 8 Jun 2025 07:43:32 +0000 (09:43 +0200)] 
gh-134531: fix `_hashlib` clinic directive post GH-134626 (#135249)

5 months agogh-134151 Fix `TypeError` in `email.utils.decode_params` when sorting RFC 2231 contin...
Jiucheng(Oliver) [Sun, 8 Jun 2025 07:13:21 +0000 (03:13 -0400)] 
gh-134151 Fix `TypeError` in `email.utils.decode_params` when sorting RFC 2231 continuations (#134687)

- Fix sorting logic in `email.utils.decode_params` to handle None values.
- Update tests for RFC 2231 continuation sorting.

5 months agogh-133579: correctly report C curses errors in `_curses_panel` (#134629)
Bénédikt Tran [Sun, 8 Jun 2025 07:10:52 +0000 (09:10 +0200)] 
gh-133579: correctly report C curses errors in `_curses_panel` (#134629)

This is a follow-up to ee36db550076e5a9185444ffbc53eaf8157ef04c.

5 months agoGH-131798: Type-propagate string/list/tuple slices (GH-134671)
Amit Lavon [Sat, 7 Jun 2025 21:08:44 +0000 (14:08 -0700)] 
GH-131798: Type-propagate string/list/tuple slices (GH-134671)

5 months agogh-134876: Add fallback for when process_vm_readv fails with ENOSYS (#134878)
Daniel Golding [Sat, 7 Jun 2025 18:32:06 +0000 (20:32 +0200)] 
gh-134876: Add fallback for when process_vm_readv fails with ENOSYS (#134878)

5 months agoRevert "gh-133390: Support SQL keyword completion for sqlite3 CLI (#133393)" temporar...
Petr Viktorin [Sat, 7 Jun 2025 08:56:43 +0000 (10:56 +0200)] 
Revert "gh-133390: Support SQL keyword completion for sqlite3 CLI (#133393)" temporarily (GH-135232)

This reverts commit 62b3d2d443785c4ea5262edb4f9f7040440f9463,
which broke buildbots

5 months agoGH-131798: Optimize away type(x) in the JIT when the result is known (GH-135194)
Tomas R. [Fri, 6 Jun 2025 23:44:43 +0000 (01:44 +0200)] 
GH-131798: Optimize away type(x) in the JIT when the result is known (GH-135194)

5 months agoDocs: Update `PyExc_*` tables in the c-api documentation (GH-131640)
Yuki Kobayashi [Fri, 6 Jun 2025 15:51:47 +0000 (00:51 +0900)] 
Docs: Update `PyExc_*` tables in the c-api documentation (GH-131640)

Add `PyExc_BaseExceptionGroup` and `PyExc_EncodingWarning`

5 months agogh-133390: Support SQL keyword completion for sqlite3 CLI (#133393)
Tan Long [Fri, 6 Jun 2025 14:52:41 +0000 (22:52 +0800)] 
gh-133390: Support SQL keyword completion for sqlite3 CLI (#133393)

5 months agogh-57089: Note _layout_ in the bitfield docs (GH-134148)
Petr Viktorin [Fri, 6 Jun 2025 14:51:40 +0000 (16:51 +0200)] 
gh-57089: Note _layout_ in the bitfield docs (GH-134148)

Co-authored-by: Meador Inge <meadori@gmail.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
5 months agogh-134160: Use PyModuleDef.m_free in the example module xxlimited (GH-135174)
Petr Viktorin [Fri, 6 Jun 2025 14:08:58 +0000 (16:08 +0200)] 
gh-134160: Use PyModuleDef.m_free in the example module xxlimited (GH-135174)

Co-authored-by: neonene <53406459+neonene@users.noreply.github.com>
5 months agogh-134891: Add PyUnstable_Unicode_GET_CACHED_HASH (GH-134892)
Petr Viktorin [Fri, 6 Jun 2025 13:51:00 +0000 (15:51 +0200)] 
gh-134891: Add PyUnstable_Unicode_GET_CACHED_HASH (GH-134892)

5 months agofeat(docs): type fix - apply pep8 by using docstring instead of comment in the doc...
Jean-Louis GUENEGO [Fri, 6 Jun 2025 13:16:12 +0000 (15:16 +0200)] 
feat(docs): type fix - apply pep8 by using docstring instead of comment in the doc. (#135181)

Giving the right example incitates the tutorial readers to do the same in the future.

5 months agoFix versionadded directive rendering in c-api/arg.rst (#135199)
Rafael Fontenelle [Fri, 6 Jun 2025 12:23:07 +0000 (09:23 -0300)] 
Fix versionadded directive rendering in c-api/arg.rst (#135199)

5 months agogh-134036: Update test_syntax for gh-133999 (#135204)
Victor Stinner [Fri, 6 Jun 2025 12:22:14 +0000 (14:22 +0200)] 
gh-134036: Update test_syntax for gh-133999 (#135204)

5 months agogh-134993: Add os.lstat() to os.supports_dir_fd (#135188)
Victor Stinner [Fri, 6 Jun 2025 12:11:49 +0000 (14:11 +0200)] 
gh-134993: Add os.lstat() to os.supports_dir_fd (#135188)

5 months agogh-135120: Add test.support.subTests() (GH-135121)
Serhiy Storchaka [Fri, 6 Jun 2025 11:52:48 +0000 (14:52 +0300)] 
gh-135120: Add test.support.subTests() (GH-135121)

5 months agogh-134036: Improve error messages for invalid `raise` statements (#134077)
sobolevn [Fri, 6 Jun 2025 00:51:06 +0000 (03:51 +0300)] 
gh-134036: Improve error messages for invalid `raise` statements (#134077)

5 months agogh-135155: Added dependencies required for compiling the _zstd module (GH-135156)
Weipeng Hong [Fri, 6 Jun 2025 00:44:25 +0000 (08:44 +0800)] 
gh-135155: Added dependencies required for compiling the _zstd module (GH-135156)

5 months agoGH-132554: Fix tier2 `FOR_ITER` implementation and optimizations (GH-135137)
Mark Shannon [Thu, 5 Jun 2025 17:53:57 +0000 (18:53 +0100)] 
GH-132554:  Fix tier2 `FOR_ITER` implementation and optimizations (GH-135137)

5 months agogh-134155: fix AttributeError in email._header_value_parser.get_address (#134194)
Sergey Miryanov [Thu, 5 Jun 2025 17:28:11 +0000 (10:28 -0700)] 
gh-134155: fix AttributeError in email._header_value_parser.get_address (#134194)

Append the defect to defects instead of to the parse tree.

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
5 months agogh-135166: Fix exception type expected by test.test_zstd (GH-135167)
Weipeng Hong [Thu, 5 Jun 2025 16:00:07 +0000 (00:00 +0800)] 
gh-135166: Fix exception type expected by test.test_zstd (GH-135167)

5 months agogh-135161: Remove redundant NULL check for 'exc' after dereference in ceval.c (#135162)
rialbat [Thu, 5 Jun 2025 15:08:48 +0000 (18:08 +0300)] 
gh-135161: Remove redundant NULL check for 'exc' after dereference in ceval.c (#135162)

5 months agogh-134989: Fix Py_RETURN_NONE in the limited C API (GH-135165)
Victor Stinner [Thu, 5 Jun 2025 12:43:47 +0000 (14:43 +0200)] 
gh-134989: Fix Py_RETURN_NONE in the limited C API (GH-135165)

Fix Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE macros in the
limited C API 3.11 and older:
Don't treat Py_None, Py_True and Py_False as immortal.

5 months agogh-134938: Add set_pledged_input_size() to ZstdCompressor (GH-135010)
Emma Smith [Thu, 5 Jun 2025 11:31:49 +0000 (04:31 -0700)] 
gh-134938: Add set_pledged_input_size() to ZstdCompressor (GH-135010)

5 months agogh-135124: Change stdout errors in regrtest worker process (#135138)
Victor Stinner [Thu, 5 Jun 2025 09:17:03 +0000 (11:17 +0200)] 
gh-135124: Change stdout errors in regrtest worker process (#135138)

Set sys.stdout encoder error handler to backslashreplace in regrtest
workers to avoid UnicodeEncodeError when printing a traceback
or any other non-encodable character.

Move the code from the Regrtest class to setup_process().

Call setup_process() earlier, before displaying regrtest headers.

5 months agogh-131531: android.py enhancements to support cibuildwheel (#132870)
Malcolm Smith [Thu, 5 Jun 2025 05:46:16 +0000 (06:46 +0100)] 
gh-131531: android.py enhancements to support cibuildwheel (#132870)

Modifies the environment handling and execution arguments of the Android management
script to support the compilation of third-party binaries, and the use of the testbed to
invoke third-party test code.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
5 months agogh-134889: Fix handling of a few opcodes when optimizing `LOAD_FAST` (#134958)
mpage [Wed, 4 Jun 2025 23:07:58 +0000 (16:07 -0700)] 
gh-134889: Fix handling of a few opcodes when optimizing `LOAD_FAST` (#134958)

We were incorrectly handling a few opcodes that leave their operands on the stack. Treat all of these conservatively; assume that they always leave operands on the stack.

5 months agogh-135144: Add `_remote_debugging` to the MSI (legacy) Windows installers. (#135145)
T. Wouters [Wed, 4 Jun 2025 19:39:00 +0000 (21:39 +0200)] 
gh-135144: Add `_remote_debugging` to the MSI (legacy) Windows installers. (#135145)

Add _remote_debugging to the MSI (legacy) installers.

5 months agoUpdate the devcontainer image to the latest version (GH-135143)
Brett Cannon [Wed, 4 Jun 2025 17:06:10 +0000 (10:06 -0700)] 
Update the devcontainer image to the latest version (GH-135143)

Fixes an issue where the WASI tools were being incorrectly installed under the ARM image.

5 months agogh-129876: Update IDLE News3.txt to May 2025 (#135139)
Terry Jan Reedy [Wed, 4 Jun 2025 15:26:19 +0000 (11:26 -0400)] 
gh-129876: Update IDLE News3.txt to May 2025 (#135139)

5 months agogh-134989: Implement PyObject_DelAttr() as a macro in the limited C API (GH-135021)
Victor Stinner [Wed, 4 Jun 2025 13:07:52 +0000 (15:07 +0200)] 
gh-134989: Implement PyObject_DelAttr() as a macro in the limited C API (GH-135021)

5 months agogh-126483: disable warnings filters mutation in concurrent test (GH-132694)
Thomas Grainger [Wed, 4 Jun 2025 13:00:25 +0000 (14:00 +0100)] 
gh-126483: disable warnings filters mutation in concurrent test (GH-132694)

The `test_ssl_in_multiple_threads` test failed because `test_check_hostname_idn()`
modified the global warnings filters via `warnings_helper.check_no_resource_warning()`.
Only check for warnings when the context aware warnings feature is enabled, which makes
the warnings filter context-local and thread-safe.

5 months agogh-135074: Fix exception messages in test.support module (GH-135076)
Daniel Hollas [Wed, 4 Jun 2025 12:58:34 +0000 (13:58 +0100)] 
gh-135074: Fix exception messages in test.support module (GH-135076)

5 months agogh-135108: Fix utmp.h inclusion in posixmodule.c on NetBSD (GH-135109)
Furkan Onder [Wed, 4 Jun 2025 12:51:18 +0000 (15:51 +0300)] 
gh-135108: Fix utmp.h inclusion in posixmodule.c on NetBSD (GH-135109)

5 months agoUse a more clear example for the PEP 758 what's new section (#135118)
Pablo Galindo Salgado [Wed, 4 Jun 2025 09:23:08 +0000 (10:23 +0100)] 
Use a more clear example for the PEP 758 what's new section (#135118)

5 months agogh-135099: Only wait on `_PyOS_SigintEvent()` in main thread (GH-135100)
Sam Gross [Wed, 4 Jun 2025 07:35:56 +0000 (03:35 -0400)] 
gh-135099: Only wait on `_PyOS_SigintEvent()` in main thread (GH-135100)

On Windows, the `_PyOS_SigintEvent()` event handle is used to interrupt
the main thread when Ctrl-C is pressed. Previously, we also waited on
the event from other threads, but ignored the result. However, this can
race with interpreter shutdown because the main thread closes the handle
in `_PySignal_Fini` and threads may still be running and using mutexes
during interpreter shtudown.

Only use `_PyOS_SigintEvent()` in the main thread in parking_lot.c, like
we do in other places in the CPython codebase.

5 months agogh-135103: Remove an unused local variable in Lib/code.py (GH-135104)
Christian Veenhuis [Wed, 4 Jun 2025 04:57:31 +0000 (06:57 +0200)] 
gh-135103: Remove an unused local variable in Lib/code.py (GH-135104)

remove unused local variable

5 months agogh-135101: When choosing the default simulator device, don't use `simctl --set testin...
Joe Rickerby [Wed, 4 Jun 2025 00:31:43 +0000 (01:31 +0100)] 
gh-135101: When choosing the default simulator device, don't use `simctl --set testing` (#135102)

On a fresh Xcode install (including some CI provider configurations), there is
no pre-existing testing set that can be used to identify simulator models. Use
the default device set to detect available models instead. Live testing
simulators are still created in the testing set.

5 months agogh-127081: use `getlogin_r` if available (gh-132751)
Duane Griffin [Tue, 3 Jun 2025 17:28:58 +0000 (05:28 +1200)] 
gh-127081: use `getlogin_r` if available (gh-132751)

The `getlogin` function is not thread-safe: replace with `getlogin_r` where
available.

5 months agogh-134248 test_getallocatedblocks pre-check to ignore immortalized strings (#134871)
tpburns [Tue, 3 Jun 2025 16:00:25 +0000 (12:00 -0400)] 
gh-134248 test_getallocatedblocks pre-check to ignore immortalized strings (#134871)

When sanity checking against gettotalrefcount(), we exclude the blocks for
immortalized strings since their references are not tracked/reported. This
now matches refleak.py's book-keeping using the same functions.

5 months agogh-135034: Normalize link targets in tarfile, add `os.path.realpath(strict='allow_mis...
Łukasz Langa [Tue, 3 Jun 2025 10:42:11 +0000 (12:42 +0200)] 
gh-135034: Normalize link targets in tarfile, add `os.path.realpath(strict='allow_missing')` (#135037)

Addresses CVEs 2024-12718, 2025-4138, 2025-4330, and 2025-4517.

Signed-off-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Seth Michael Larson <seth@python.org>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
5 months agogh-131884: Fix incorrect formatting in json.dumps() when using indent and skipkeys...
Roei Ben Artzi [Tue, 3 Jun 2025 07:40:25 +0000 (10:40 +0300)] 
gh-131884: Fix incorrect formatting in json.dumps() when using indent and skipkeys=True (GH-132200)

5 months agogh-128605: Add branch protections for x86_64 in asm_trampoline.S (#128606)
stratakis [Tue, 3 Jun 2025 07:09:43 +0000 (09:09 +0200)] 
gh-128605: Add branch protections for x86_64 in asm_trampoline.S (#128606)

Apply Intel Control-flow Technology for x86-64 on asm_trampoline.S.

Required for mitigation against return-oriented programming (ROP)
and Call or Jump Oriented Programming (COP/JOP) attacks.

Manual application is required for the assembly files.

See also: https://sourceware.org/annobin/annobin.html/Test-cf-protection.html

5 months agogh-135028: Increase parser MAXSTACK for nested parenthesis (#135031)
Victor Stinner [Tue, 3 Jun 2025 06:40:45 +0000 (08:40 +0200)] 
gh-135028: Increase parser MAXSTACK for nested parenthesis (#135031)

5 months agogh-134875: Fix mimallc build error for the old compilers (gh-134994)
Donghee Na [Mon, 2 Jun 2025 23:40:40 +0000 (08:40 +0900)] 
gh-134875: Fix mimallc build error for the old compilers (gh-134994)

5 months agogh-134830: Fix reference in `Doc/extending/windows.rst` (GH-134831)
Stan Ulbrych [Mon, 2 Jun 2025 22:08:20 +0000 (23:08 +0100)] 
gh-134830: Fix reference in `Doc/extending/windows.rst` (GH-134831)

Co-authored-by: Miro Hrončok <miro@hroncok.cz>
5 months agogh-132813: Improve error messages for incorrect types and values of csv.Dialog attrib...
Serhiy Storchaka [Mon, 2 Jun 2025 20:35:41 +0000 (23:35 +0300)] 
gh-132813: Improve error messages for incorrect types and values of csv.Dialog attributes (GH-133241)

Make them similar to PyArg_Parse error messages, mention None as
a possible value, show a wrong type and the string length.

5 months agogh-74232: Add a note about roundtrip of non-float numerics in CSV (GH-134963)
Serhiy Storchaka [Mon, 2 Jun 2025 20:31:06 +0000 (23:31 +0300)] 
gh-74232: Add a note about roundtrip of non-float numerics in CSV (GH-134963)