Commit Graph
124514 Commits
Author SHA1 Message Date
469f69d4e2 [3.13] gh-135878: Fix crash in types.SimpleNamespace.__repr__ (GH-135889) (#135895)
gh-135878: Fix crash in `types.SimpleNamespace.__repr__` (GH-135889)
(cherry picked from commit b3ab94acd3)

Co-authored-by: sobolevn <[email protected]>
Co-authored-by: Peter Bierma <[email protected]>
2025-06-24 16:59:29 +00:00
86d1821ef1 [3.13] gh-135487: fix reprlib.Repr.repr_int when given very large integers (GH-135506) (#135886)
gh-135487: fix `reprlib.Repr.repr_int` when given very large integers (GH-135506)
(cherry picked from commit e5f03b94b6)

Co-authored-by: Bénédikt Tran <[email protected]>
2025-06-24 12:00:14 +00:00
Victor StinnerandGitHub a27398d5b3 [3.13] gh-135494: Fix python -m test --pgo -x test_re (#135713) (#135881)
gh-135494: Fix python -m test --pgo -x test_re (#135713)

Fix regrtest to support excluding tests from --pgo tests.

(cherry picked from commit 15c6d63fe6)
2025-06-24 10:49:31 +00:00
028d56fd78 [3.13] Bump mypy to 1.16.1 (GH-135720) (#135849)
Co-authored-by: sobolevn <[email protected]>
2025-06-24 10:20:55 +03:00
980d6cc0c8 [3.13] Docs: Use arguments to replace args in argparse.rst (GH-135510) (GH-135867)
Docs: Use `arguments` to replace `args` in `argparse.rst` (GH-135510)
(cherry picked from commit caad163b69)

Co-authored-by: Yongzi Li <[email protected]>
2025-06-23 22:59:17 +00:00
Eric SnowandGitHub 666795ae34 [3.13] gh-135698: Fix Cross-interpreter Queue.full() With Negative/Default max_size (gh-135778)
We weren't handling non-positive maxsize values (including the default) properly
in Queue.full().  This change fixes that and adjusts an associated assert.

(cherry picked from commit c5ea8e8, AKA gh-135724)
2025-06-23 19:38:41 +00:00
3e81d56a1b [3.13] gh-134986: Catch PermissionError when trying to call perf in tests (GH-134987) (#135842)
gh-134986: Catch PermissionError when trying to call perf in tests (GH-134987)

Using Ubuntu 24.04 on the Windows Subsystem for Linux, perf will raise a
`PermissionError` instead of `FileNotFoundError`. This commit modifies
the tests to catch that.
(cherry picked from commit 6ab842fce5)

Co-authored-by: Emma Smith <[email protected]>
2025-06-23 10:51:51 +00:00
b79e64b67d [3.13] patchcheck: use URL paths to identify upstream remote (GH-135806) (#135809)
Co-authored-by: Kattni <[email protected]>
2025-06-23 12:57:03 +03:00
6e0ad71a29 [3.13] gh-135815: skip netrc security checks if os.getuid is missing (GH-135816) (#135826)
gh-135815: skip `netrc` security checks if `os.getuid` is missing (GH-135816)
(cherry picked from commit b57b619e34)

Co-authored-by: Bénédikt Tran <[email protected]>
2025-06-22 20:12:20 +00:00
4eab9da960 [3.13] gh-135756: Fix nonexistent parameter in tkinter docs (GH-135770) (#135777)
gh-135756: Fix nonexistent parameter in tkinter docs (GH-135770)

Remove nonexistent color parameter from tkinter.commondialog.Dialog.show() method documentation.
(cherry picked from commit 4ddf505d99)

Co-authored-by: Marcell Perger <[email protected]>
2025-06-20 23:35:39 +00:00
c6e26ef881 [3.13] Docs: Document PyExceptionClass functions in the C API (GH-135697) (GH-135758)
Docs: Document `PyExceptionClass` functions in the C API (GH-135697)

* Docs: Document `PyExceptionClass_Name`

`PyExceptionClass_Name` is an undocumented function in the limited API.

* Document `PyExceptionClass_Check`
(cherry picked from commit 59963e866a)

Co-authored-by: Yuki Kobayashi <[email protected]>
2025-06-20 14:03:10 +00:00
a8c3af080a [3.13] gh-135273: Unify ZoneInfo.from_file signatures (GH-135274) (#135715)
gh-135273: Unify `ZoneInfo.from_file` signatures (GH-135274)

Align `ZoneInfo.from_file` pure-Python signature with Argument Clinic signature.
(cherry picked from commit 7cc8949692)

Co-authored-by: Andrii Hrimov <[email protected]>
2025-06-19 15:10:54 +00:00
2537188f95 [3.13] Docs: Add missing lines between regex and text (GH-134505) (GH-135719)
Docs: Add missing lines between regex and text (GH-134505)
(cherry picked from commit 754190287e)

Co-authored-by: Rafael Fontenelle <[email protected]>
2025-06-19 15:07:40 +00:00
af48f39a44 [3.13] Docs: Emphasize parameter name in pkgutil.iter_importers (GH-135597) (GH-135711)
Docs: Emphasize parameter name in `pkgutil.iter_importers` (GH-135597)
(cherry picked from commit ff639af8ee)

Co-authored-by: Rafael Fontenelle <[email protected]>
2025-06-19 13:04:46 +00:00
55a34a1d16 [3.13] gh-126112: Fix test_os.TimerfdTests: use 10 ms resolution (GH-135681) (#135705)
gh-126112: Fix test_os.TimerfdTests: use 10 ms resolution (GH-135681)

Use 10 ms for CLOCK_RES instead of 100 ms to tolerate slow buildbots.
(cherry picked from commit 5c25c884b9)

Co-authored-by: Victor Stinner <[email protected]>
2025-06-19 10:04:48 +00:00
773ca09caa [3.13] Document that PyType_GetModuleByDef returns a borrowed reference (GH-135666) (GH-135702)
(cherry picked from commit 140731ff67)

Co-authored-by: Petr Viktorin <[email protected]>
2025-06-19 09:18:00 +02:00
7e783e5574 gh-134538: Add link to shutil.rmtree example in function docs (GH-135540)
(cherry picked from commit e9b647dd30)

Co-authored-by: alexey semenyuk <[email protected]>
2025-06-18 21:17:42 +00:00
3bfb7da3d7 [3.13] gh-135641: Fix flaky test_capi.test_lock_two_threads test case (gh-135642) (gh-135688)
The mutex may have the `_Py_HAS_PARKED` bit set.
(cherry picked from commit 17ac3933c3)

Co-authored-by: Sam Gross <[email protected]>
2025-06-18 18:47:59 +00:00
dfe0e30c80 [3.13] Docs: Fix markups for emphasis (GH-135598) (GH-135686)
Docs: Fix markups for emphasis (GH-135598)

The word emphasis character `_` is not supported as sphinx markup, so changed to `*`.
(cherry picked from commit 46c60e0d0b)

Co-authored-by: Yuki Kobayashi <[email protected]>
2025-06-18 17:44:43 +00:00
a0a1aa3125 [3.13] gh-135335: flush stdout/stderr in forkserver after preloading modules (GH-135338) (#135671)
gh-135335: flush stdout/stderr in forkserver after preloading modules (GH-135338)

If a preloaded module writes to stdout or stderr, and the stream is buffered,
child processes will inherit the buffered data after forking. Attempt to
prevent this by flushing the streams after preload.
(cherry picked from commit 9877d191f4)

Co-authored-by: Duane Griffin <[email protected]>
Co-authored-by: Mikhail Efimov <[email protected]>
Co-authored-by: Victor Stinner <[email protected]>
2025-06-18 12:40:21 +00:00
28a70a59e4 [3.13] gh-135489: Show verbose output for failing tests during PGO profiling step with --enable-optimizations (#135600)
Co-authored-by: PuQing <[email protected]>
2025-06-17 01:47:27 -04:00
be1ca79f33 [3.13] Use replacements to update versions in "Using Python on macOS" (GH-130400) (#135587)
(cherry picked from commit 21bac3aecd)

Co-authored-by: Hugo van Kemenade <[email protected]>
2025-06-16 18:17:21 -04:00
Sam GrossandGitHub f33a5e891a [3.13] gh-132617: Fix dict.update() mutation check (gh-134815) (gh-135582)
Use `ma_used` instead of `ma_keys->dk_nentries` for modification check
so that we only check if the dictionary is modified, not if new keys are
added to a different dictionary that shared the same keys object.
(cherry picked from commit d8994b0a77)
2025-06-16 17:30:52 +00:00
404e8aa9f3 [3.13] gh-132969: Fix error/hang when shutdown(wait=False) and task exited abnormally (GH-133222) (GH-135343)
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)
(cherry picked from commit 598aa7cc98)

Co-authored-by: Ajay Kamdar <[email protected]>
2025-06-16 14:08:03 +02:00
3bd2818664 [3.13] gh-67022: Document bytes/str inconsistency in email.header.decode_header() and suggest email.headerregistry.HeaderRegistry as a sane alternative (GH-92900) (#135549)
gh-67022: Document bytes/str inconsistency in email.header.decode_header() and suggest email.headerregistry.HeaderRegistry as a sane alternative (GH-92900)

* gh-67022: Document bytes/str inconsistency in email.header.decode_header()

This function's possible return types have been surprising and error-prone
for the entirety of its Python 3.x history. It can return either:

1. `typing.List[typing.Tuple[bytes, typing.Optional[str]]]` of length >1
2. or `typing.List[typing.Tuple[str, None]]`, of length exactly 1

This means that any user of this function must be prepared to accept either
`bytes` or `str` for the first member of the 2-tuples it returns, which is a
very surprising behavior in Python 3.x, particularly given that the second
member of the tuple is supposed to represent the charset/encoding of the
first member.

This patch documents the behavior of this function, and adds test cases
to demonstrate it.

As discussed in bpo-22833, this cannot be changed in a backwards-compatible
way, and some users of this function depend precisely on the existing
behavior.

Add warnings about obsolescence of 'email.header.decode_header' and 'email.header.make_header' functions.

Recommend use of `email.headerregistry.HeaderRegistry` instead, as suggested
in https://github.com/python/cpython/pull/92900#discussion_r1112472177
(cherry picked from commit 60181f4ed0)

Co-authored-by: Dan Lenski <[email protected]>
2025-06-15 16:02:43 -04:00
a80d47ecb1 [3.13] gh-135171: Update documentation for the generator expression (GH-135351) (GH-135525)
gh-135171: Update documentation for the generator expression (GH-135351)

* gh-135171: Update documentation for the generator expression

Document that the iterator for the leftmost "for" clause is created
immediately.

* Update Doc/reference/expressions.rst



---------
(cherry picked from commit 8979d3afe3)

Co-authored-by: Serhiy Storchaka <[email protected]>
Co-authored-by: Brian Skinn <[email protected]>
2025-06-15 00:38:52 +00:00
15340775f8 [3.13] gh-135497: fix MAXLOGNAME detection in configure.ac (GH-135508) (#135517)
gh-135497: fix `MAXLOGNAME` detection in `configure.ac` (GH-135508)
(cherry picked from commit 2e15a50851)

Co-authored-by: Caleb Xu <[email protected]>
2025-06-14 16:49:13 +00:00
GiGaGonandGitHub a43cf1074a [3.13] gh-135496: Fix f string exclamation mark error typo (GH-135495) (#135501) 2025-06-14 11:00:14 +03:00
Mikhail EfimovandGitHub e753a7c5f0 [3.13] gh-125723: Fix crash with f_locals when generator frame outlive their generator (GH-135453)
Backport of 8e20e42cc6 from GH-126956

Closes GH-125723
2025-06-14 04:08:03 +10:00
Tan LongandGitHub 22cf289539 [3.13] gh-133439: Fix dot commands with trailing spaces are mistaken for multi-line sqlite statements in the sqlite3 command-line interface (GH-133440) (GH-133765)
(cherry picked from commit ebd4881db2)
2025-06-13 20:40:24 +03:00
4455cbabf9 [3.13] gh-135462: Fix quadratic complexity in processing special input in HTMLParser (GH-135464) (GH-135482)
End-of-file errors are now handled according to the HTML5 specs --
comments and declarations are automatically closed, tags are ignored.
(cherry picked from commit 6eb6c5dbfb)

Co-authored-by: Serhiy Storchaka <[email protected]>
2025-06-13 17:20:30 +00:00
Miss Islington (bot)andGitHub bea67a1d60 [3.13] doc: Remove what was essentially duplicate wording. (GH-135431) (GH-135441)
(cherry picked from commit f273fd77d7)
2025-06-13 17:53:52 +01:00
6b9672c2bd [3.13] gh-106318: Add example for str.expandtabs() (GH-134525) (#135477)
Co-authored-by: Blaise Pabon <[email protected]>
2025-06-13 15:50:53 +00:00
0430135aac gh-135455: Fix version and architecture detection in PC/layout script. (GH-135461)
(cherry picked from commit afc5ab6cce)

Co-authored-by: Steve Dower <[email protected]>
2025-06-13 15:28:02 +00:00
c260ed15d1 [3.13] gh-106318: Add example for str.endswith() (GH-134523) (#135460)
gh-106318: Add example for `str.endswith()` (GH-134523)
(cherry picked from commit eed827ed09)

Co-authored-by: Blaise Pabon <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
2025-06-13 15:13:59 +03:00
db408a484c [3.13] gh-106318: Add example for str.encode() (GH-134520) (#135458)
Co-authored-by: Blaise Pabon <[email protected]>
Co-authored-by: Hugo van Kemenade <[email protected]>
2025-06-13 14:46:14 +03:00
9a10b734f1 [3.13] Fix presentation of dataclasses' unsafe_hash default value (GH-116532) (#135417)
Fix presentation of dataclasses' `unsafe_hash` default value (GH-116532)

(cherry picked from commit 71f5fafdfb)

Co-authored-by: Victorien <[email protected]>
Co-authored-by: Adam Turner <[email protected]>
2025-06-12 01:37:30 +00:00
Thomas Wouters 8d07562849 Post 3.13.5 2025-06-11 23:32:50 +02:00
Thomas Wouters 6cb20a219a Python 3.13.5 v3.13.5 2025-06-11 17:36:57 +02:00
d24d925ab7 [3.13] gh-133264: Correct documentation of how Py_Main and Py_RunMain handle SystemExit (GH-135337) (#135395)
gh-133264: Correct documentation of how Py_Main and Py_RunMain handle SystemExit (GH-135337)
(cherry picked from commit b706ff003c)

Co-authored-by: Malcolm Smith <[email protected]>
2025-06-11 17:32:42 +02:00
T. WoutersandGitHub 6ae51582a1 [3.13] GH-135171: Roll back all fixes for GH-127682 as they are not suitable for 3.13 (#135390) 2025-06-11 16:57:35 +02:00
5f5b173cc7 [3.13] gh-132415: Update vendored setuptools in `Lib/test/wheeldata` (GH-132887) (#135391)
(cherry picked from commit c9f3f5b4ed)

Co-authored-by: Adam Turner <[email protected]>
2025-06-11 14:55:14 +00:00
690198891a [3.13] Docs: Add note to tutorial clarifying scope (GH-134534) (#134535)
Co-authored-by: Kattni <[email protected]>
2025-06-11 16:13:37 +02:00
871adc8e9f [3.13] gh-135321: Always raise a correct exception for BINSTRING argument > 0x7fffffff in pickle (GH-135322) (GH-135383)
(cherry picked from commit 2b8b4774d2)

Co-authored-by: Justin Applegate <[email protected]>
Co-authored-by: Serhiy Storchaka <[email protected]>
2025-06-11 14:00:59 +03:00
stratakisandGitHub 65192572d2 [3.13] gh-128605: Add branch protections for x86_64 in asm_trampoline.S (#128606) (#135353)
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
2025-06-11 12:09:20 +02:00
ffeaeaf660 [3.13] gh-133967: Do not normalize locale name 'C.UTF-8' to 'en_US.UTF-8' (GH-135347) (GH-135350)
(cherry picked from commit 0f866cbfef)

Co-authored-by: Serhiy Storchaka <[email protected]>
2025-06-11 12:43:38 +03:00
Serhiy StorchakaandGitHub 37027ab535 [3.13] gh-135326: Restore support of __index__ in random.getrandbits() (#135332) 2025-06-10 12:41:10 +02:00
Bénédikt TranandGitHub dd7ffdbbff [3.13] gh-133157: fix UBSan failures in Parser/pegen.c (GH-134048) (#135334)
[3.13] gh-133157: fix UBSan failures in `Parser/pegen.c` (GH-134048)
(cherry picked from commit 754e7c9b51)
2025-06-10 09:12:41 +00:00
Miss Islington (bot)andGitHub 857647fa67 [3.13] Heavily comment Python/perf_jit_trampoline.c to improve maintainability (GH-134527) (#135300) 2025-06-09 22:09:37 +01:00
8c28241f0d [3.13] Use f-strings in csv docs example (GH-135245) (#135286)
Use f-strings in csv docs example (GH-135245)
(cherry picked from commit 2677dd017a)

Co-authored-by: Ezio Melotti <[email protected]>
2025-06-09 06:41:03 +00:00