]>
git.ipfire.org Git - thirdparty/Python/cpython.git/log
Miss Islington (bot) [Wed, 13 Aug 2025 10:39:50 +0000 (12:39 +0200)]
[3.14] gh-137450: macOS installer shell path management improvements (GH-137451) (#137453)
Co-authored-by: Ned Deily <nad@python.org>
Ned Deily [Wed, 13 Aug 2025 10:37:01 +0000 (06:37 -0400)]
[3.14] GH-134291: Support older macOS deployment targets for JIT builds (GH-137211) (#137701)
Co-authored-by: Brandt Bucher <brandtbucher@microsoft.com>
Hugo van Kemenade [Wed, 13 Aug 2025 09:39:14 +0000 (12:39 +0300)]
[3.14] gh-137242: Add Android CI job (GH-137186) (#137683)
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
Miss Islington (bot) [Tue, 12 Aug 2025 14:29:57 +0000 (16:29 +0200)]
[3.14] gh-137400: Fix a crash when disabling profiling across all threads (gh-137471) (#137648)
Co-authored-by: Sam Gross <colesbury@gmail.com>
Miss Islington (bot) [Tue, 12 Aug 2025 14:17:26 +0000 (16:17 +0200)]
[3.14] gh-135228: When @dataclass(slots=True) replaces a dataclass, make the original class collectible (take 2) (GH-137047) (#137666)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Miss Islington (bot) [Tue, 12 Aug 2025 12:47:28 +0000 (14:47 +0200)]
[3.14] GH-137426: Remove code deprecation of `importlib.abc.ResourceLoader` (GH-137567) (#137654)
Co-authored-by: Brett Cannon <brett@python.org>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Petr Viktorin [Tue, 12 Aug 2025 12:18:20 +0000 (14:18 +0200)]
[3.14] gh-137288: Update version in magic number log (GH-137665) (#137667)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Irit Katriel [Tue, 12 Aug 2025 09:56:37 +0000 (10:56 +0100)]
[3.14] gh-137288: Fix bug where boolean expressions are not associated with the correct exception handler (GH-137310). (#137427)
Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Miss Islington (bot) [Mon, 11 Aug 2025 14:07:19 +0000 (16:07 +0200)]
[3.14] gh-137200: support frame lineno setter with `BRANCH_LEFT` and `BRANCH_RIGHT` events (GH-137229) (#137280)
Co-authored-by: Xuanteng Huang <44627253+xuantengh@users.noreply.github.com>
Miss Islington (bot) [Mon, 11 Aug 2025 08:21:45 +0000 (10:21 +0200)]
[3.14] Update pre-commit hooks (GH-137591) (#137621)
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Sun, 10 Aug 2025 13:55:29 +0000 (15:55 +0200)]
[3.14] gh-131338: Disable computed stack limit checks on non-glibc linux (GH-134336) (#137175)
Co-authored-by: R. David Murray <rdmurray@bitdance.com>
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Co-authored-by: Victor Stinner <vstinner@python.org>
Miss Islington (bot) [Sun, 10 Aug 2025 13:52:30 +0000 (15:52 +0200)]
[3.14] gh-119711: describe `create_datagram_endpoint`'s behavior in asyncio when `local_addr` is `None` (GH-136913) (#137164)
Co-authored-by: AN Long <aisk@users.noreply.github.com>
Miss Islington (bot) [Sat, 9 Aug 2025 03:31:29 +0000 (05:31 +0200)]
[3.14] gh-137499: Fixed dead link to NIST website (GH-137500) (#137502)
gh-137499: Fixed dead link to NIST website (GH-137500)
(cherry picked from commit
3c1471d971ea2759d9de76e22230cd71cf4b7a07 )
Co-authored-by: tobiasjcat <70606111+tobiasjcat@users.noreply.github.com>
Miss Islington (bot) [Fri, 8 Aug 2025 16:05:29 +0000 (18:05 +0200)]
[3.14] gh-136155: Docs: check for EPUB fatal errors in CI (GH-134074) (#137539)
Co-authored-by: Maciej Olko <maciej.olko@affirm.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Fri, 8 Aug 2025 15:13:22 +0000 (17:13 +0200)]
[3.14] gh-137282: Fix `TypeError` in tab completion and `dir()` of `concurrent.futures` (GH-137214) (#137284)
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
Miss Islington (bot) [Fri, 8 Aug 2025 15:04:10 +0000 (17:04 +0200)]
[3.14] gh-137308: Replace a single docstring with `pass` in `-OO` mode (GH-137318) (#137322)
Co-authored-by: sobolevn <mail@sobolevn.me>
Miss Islington (bot) [Fri, 8 Aug 2025 14:36:21 +0000 (16:36 +0200)]
[3.14] gh-137412: fix `default_builtin_hashes` values in `test_hashlib.py` (GH-137413) (#137534)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Miss Islington (bot) [Fri, 8 Aug 2025 14:31:32 +0000 (16:31 +0200)]
[3.14] [Doc] Remove unnecessary quotes from typing module (GH-137207) (#137541)
Co-authored-by: Adorilson Bezerra <adorilson@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Hugo van Kemenade [Thu, 7 Aug 2025 16:06:09 +0000 (19:06 +0300)]
[3.14] gh-123299: Backport typo fixes in What's New in Python 3.14 (#137525)
Miss Islington (bot) [Thu, 7 Aug 2025 15:38:15 +0000 (17:38 +0200)]
[3.14] gh-132983: Use ``Py_UNREACHABLE`` in ``_zstd_load_impl()`` (GH-137320) (#137360)
Co-authored-by: Rogdham <3994389+Rogdham@users.noreply.github.com>
Miss Islington (bot) [Wed, 6 Aug 2025 15:39:52 +0000 (17:39 +0200)]
[3.14] Doc: remove unused images (GH-137323) (#137324)
Co-authored-by: Inada Naoki <songofacandy@gmail.com>
Miss Islington (bot) [Wed, 6 Aug 2025 12:45:54 +0000 (14:45 +0200)]
[3.14] gh-137134: Update SQLite to 3.50.4 for binary releases (GH-137135) (#137436)
Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Ned Deily <nad@python.org>
Miss Islington (bot) [Wed, 6 Aug 2025 11:58:52 +0000 (13:58 +0200)]
[3.14] Docs: add dunder and walrus to the glossary (GH-137430) (#137434)
Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
Miss Islington (bot) [Tue, 5 Aug 2025 20:38:48 +0000 (22:38 +0200)]
[3.14] GH-136155: Use ``sphinxext-opengraph`` v0.12.0 (GH-137393) (#137431)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Tue, 5 Aug 2025 17:34:47 +0000 (19:34 +0200)]
[3.14] gh-137194: Fix requires_debug_ranges when _testcpi doesn't exist (GH-137195) (#137274)
Co-authored-by: Jeong, YunWon <69878+youknowone@users.noreply.github.com>
Miss Islington (bot) [Mon, 4 Aug 2025 13:01:39 +0000 (15:01 +0200)]
[3.14] gh-130522: Fix unraisable TypeError in threading at interpreter shutdown (GH-131537) (#137105)
Co-authored-by: Tyler Kennedy <tk@tkte.ch>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Miss Islington (bot) [Mon, 4 Aug 2025 10:34:16 +0000 (12:34 +0200)]
[3.14] Remove Alex Waygood as a codeowner for pre-commit config (GH-137372) (#137373)
Remove Alex Waygood as a codeowner for pre-commit config (GH-137372)
(cherry picked from commit
a46ed665ff382a4c5cdd214a6a8ac0bcc60a03dd )
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Miss Islington (bot) [Mon, 4 Aug 2025 05:29:30 +0000 (07:29 +0200)]
[3.14] gh-137257: Upgrade bundled pip to 25.2 (GH-137258) (#137361)
gh-137257: Upgrade bundled pip to 25.2 (GH-137258)
(cherry picked from commit
506542b5966073203f0da71a487de24e596b7979 )
Co-authored-by: Richard Si <sichard26@gmail.com>
Miss Islington (bot) [Sun, 3 Aug 2025 19:37:49 +0000 (21:37 +0200)]
[3.14] gh-132983: Fix docstrings in ``ZstdDict`` (GH-137321) (#137343)
Co-authored-by: Rogdham <3994389+Rogdham@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Sun, 3 Aug 2025 18:39:19 +0000 (20:39 +0200)]
[3.14] GH-136155: Use ``sphinxext-opengraph`` v0.11.0 (GH-137348) (#137349)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Serhiy Storchaka [Sun, 3 Aug 2025 18:26:16 +0000 (21:26 +0300)]
[3.14] gh-137341: Remove more word duplications (GH-137342) (#137346)
Miss Islington (bot) [Sun, 3 Aug 2025 16:36:58 +0000 (18:36 +0200)]
[3.14] gh-137314: Fix incorrect treatment of format specs in raw fstrings (GH-137328) (#137344)
gh-137314: Fix incorrect treatment of format specs in raw fstrings (GH-137328)
(cherry picked from commit
0153d82a5ab0c6ac16c046bdd4438ea11b58d59d )
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Miss Islington (bot) [Thu, 31 Jul 2025 04:07:44 +0000 (06:07 +0200)]
[3.14] gh-119180: Refer to `annotationlib.get_annotations()` in `typing.get_type_hints()` documentation (GH-137247) (#137263)
gh-119180: Refer to `annotationlib.get_annotations()` in `typing.get_type_hints()` documentation (GH-137247)
(cherry picked from commit
5e2f0b976a762dd0efe1cca4c7b5aaa2ed809578 )
Co-authored-by: Victorien <65306057+Viicos@users.noreply.github.com>
Miss Islington (bot) [Wed, 30 Jul 2025 19:43:53 +0000 (21:43 +0200)]
[3.14] gh-136992: Add "None" as valid `SameSite` value as per RFC 6265bis (GH-137040) (#137140)
Co-authored-by: Iqra Khan <iqraakhan2519@gmail.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Miss Islington (bot) [Wed, 30 Jul 2025 19:01:10 +0000 (21:01 +0200)]
[3.14] GH-116738: document thread-safety of bisect (GH-136555) (#137221)
Co-authored-by: Neil Schemenauer <nas-github@arctrix.com>
Miss Islington (bot) [Tue, 29 Jul 2025 20:10:39 +0000 (22:10 +0200)]
[3.14] gh-136976: Emscripten: Add _decimal and libmpdec (GH-136997) (#137066)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Zachary Ware <zach@python.org>
Miss Islington (bot) [Tue, 29 Jul 2025 20:09:47 +0000 (22:09 +0200)]
[3.14] gh-124621: Emscripten: Add smoke test for using pyrepl in Chrome (GH-137004) (#137067)
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Zachary Ware <zach@python.org>
Miss Islington (bot) [Tue, 29 Jul 2025 06:53:34 +0000 (08:53 +0200)]
[3.14] Add a What's New entry for Emscripten (GH-137035) (#137192)
Add a What's New entry for Emscripten (GH-137035)
(cherry picked from commit
d7e12a362a2a4a4b7d52a343ab5940be2cbcc909 )
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Miss Islington (bot) [Mon, 28 Jul 2025 19:48:58 +0000 (21:48 +0200)]
[3.14] gh-132898: Add a note in `multiprocessing.Process` docs about creating a process in a REPL (GH-137118) (#137154)
Co-authored-by: Duprat <yduprat@gmail.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Miss Islington (bot) [Mon, 28 Jul 2025 19:43:15 +0000 (21:43 +0200)]
[3.14] GH-137059: `url2pathname()`: fix support for drive letter in netloc (GH-137060) (#137144)
Co-authored-by: Barney Gale <barney.gale@gmail.com>
Miss Islington (bot) [Mon, 28 Jul 2025 19:40:56 +0000 (21:40 +0200)]
[3.14] gh-130577: tarfile now validates archives to ensure member offsets are non-negative (GH-137027) (#137169)
Co-authored-by: Alexander Urieles <aeurielesn@users.noreply.github.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Miss Islington (bot) [Mon, 28 Jul 2025 19:39:44 +0000 (21:39 +0200)]
[3.14] gh-136870: fix data races in instrumentation of bytecode (GH-136994) (#137082)
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Co-authored-by: Zachary Ware <zach@python.org>
Miss Islington (bot) [Sun, 27 Jul 2025 06:54:41 +0000 (08:54 +0200)]
[3.14] Link to plaintext for "show source" links (GH-137131) (#137132)
Link to plaintext for "show source" links (GH-137131)
(cherry picked from commit
9cbf46d9920c269fe736ed689236d00223545f73 )
Co-authored-by: ryan-duve <ryan-duve@users.noreply.github.com>
Miss Islington (bot) [Sat, 26 Jul 2025 17:28:40 +0000 (19:28 +0200)]
[3.14] gh-131038: Use text=True in subprocesses in test_perf_profiler (GH-137117) (#137124)
Miss Islington (bot) [Fri, 25 Jul 2025 16:08:28 +0000 (18:08 +0200)]
[3.14] gh-137090: Remove redundant statement in ``Doc/library/concurrent.interpreters.rst`` (GH-137091) (#137108)
gh-137090: Remove redundant statement in ``Doc/library/concurrent.interpreters.rst`` (GH-137091)
(cherry picked from commit
1e69cd1634e4f0f8c375be85d11925bd12deef23 )
Co-authored-by: soolabettu <17737361+soolabettu@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Fri, 25 Jul 2025 09:30:11 +0000 (11:30 +0200)]
[3.14] gh-132983: Add missing references to Zstandard in shutil docstrings (GH-136617) (#137052)
Co-authored-by: Rogdham <3994389+Rogdham@users.noreply.github.com>
Co-authored-by: Zachary Ware <zach@python.org>
Miss Islington (bot) [Thu, 24 Jul 2025 21:36:11 +0000 (23:36 +0200)]
[3.14] Exclude _testclinic_depr.c.h from c-analyzer (GH-137086) (#137089)
Exclude _testclinic_depr.c.h from c-analyzer (GH-137086)
_testclinic.c mocks out PY_VERSION_HEX to 3.8 before including
_testclinic_depr.c.h to avoid the errors the preprocessor would
otherwise throw due to the deprecation feature it is testing.
(cherry picked from commit
d5e75c07682864e9d265e11f5e4730147e7d4842 )
Co-authored-by: Zachary Ware <zach@python.org>
Miss Islington (bot) [Wed, 23 Jul 2025 20:48:11 +0000 (22:48 +0200)]
[3.14] GH-136975: Emend a spelling error (algorthm -> algorithm) (GH-136999) (#137003)
GH-136975: Emend a spelling error (algorthm -> algorithm) (GH-136999)
(cherry picked from commit
b6d324224474c54061a6aaeace50bc5666dc1779 )
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Wed, 23 Jul 2025 17:45:55 +0000 (19:45 +0200)]
[3.14] gh-137043: mention `PyList_GET_ITEM` as unsafe borrowed API in free-threading docs (GH-137042) (#137045)
Co-authored-by: Guido Imperiale <crusaderky@gmail.com>
Miss Islington (bot) [Wed, 23 Jul 2025 16:23:25 +0000 (18:23 +0200)]
[3.14] gh-135676: Lexical analysis: Reword String literals and related sections (GH-135942) (#137048)
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Blaise Pabon <blaise@gmail.com>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Hugo van Kemenade [Tue, 22 Jul 2025 18:54:14 +0000 (21:54 +0300)]
Post 3.14.0rc1
Hugo van Kemenade [Tue, 22 Jul 2025 16:42:27 +0000 (19:42 +0300)]
Python 3.14.0rc1
Jelle Zijlstra [Tue, 22 Jul 2025 16:23:53 +0000 (09:23 -0700)]
[3.14] Revert "[3.14] gh-135228: When @dataclass(slots=True) replaces… (#137013)
Miss Islington (bot) [Tue, 22 Jul 2025 16:21:19 +0000 (18:21 +0200)]
[3.14] Fix tables in 'Using on Windows' for the text writer (GH-137012) (#137015)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Serhiy Storchaka [Tue, 22 Jul 2025 16:16:31 +0000 (19:16 +0300)]
[3.14] Revert "gh-112068: C API: Add support of nullable arguments in PyArg_Parse (GH-121303)" (GH-136991) (#137006)
Miss Islington (bot) [Tue, 22 Jul 2025 16:15:27 +0000 (18:15 +0200)]
[3.14] Fix code example in `annotationlib` documentation (GH-136972) (#137002)
Co-authored-by: Victorien <65306057+Viicos@users.noreply.github.com>
Łukasz Langa [Tue, 22 Jul 2025 13:04:11 +0000 (15:04 +0200)]
[3.14] gh-124621: Emscripten: Support pyrepl in browser (GH-136931) (GH-136988)
Basic support for pyrepl in Emscripten. Limitations:
* requires JSPI
* no signal handling implemented
As followup work, it would be nice to implement a webworker variant
for when JSPI is not available and proper signal handling.
Because it requires JSPI, it doesn't work in Safari. Firefox requires
setting an experimental flag. All the Chromiums have full support since
May. Until we make it work without JSPI, let's keep the original web_example
around.
(cherry picked from commit
c933a6bb329bb97bc7e448388dad1b74f7ca4baa )
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Éric <merwok@netwok.org>
Miss Islington (bot) [Tue, 22 Jul 2025 12:18:23 +0000 (14:18 +0200)]
[3.14] gh-133742: Fix test_sysconfig and test_build_details for relocated directories (GH-136987) (#136990)
gh-133742: Fix test_sysconfig and test_build_details for relocated directories (GH-136987)
(cherry picked from commit
aafbdb5df5439adc1106ced068cf87683ae68b9e )
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 11:52:34 +0000 (13:52 +0200)]
[3.14] gh-118350: Fix support of elements "textarea" and "title" in HTMLParser (GH-135310) (GH-136984)
(cherry picked from commit
4d02f31cdd45d81b95540d9076222b709d4f2335 )
Co-authored-by: Timon Viola <44016238+timonviola@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Miss Islington (bot) [Tue, 22 Jul 2025 11:25:35 +0000 (13:25 +0200)]
[3.14] gh-136251: Improvements to WASM demo REPL (GH-136252) (GH-136977)
(cherry picked from commit
d1d526afe7ce62c787b150652a2ba136cb949d74 )
Co-authored-by: adam j hartz <adam@smatz.net>
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 10:32:00 +0000 (12:32 +0200)]
[3.14] gh-132661: Document t-strings and `templatelib` (GH-135229) (#136974)
Co-authored-by: Dave Peck <davepeck@gmail.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Loïc Simon <loic.pano@gmail.com>
Co-authored-by: pauleveritt <pauleveritt@me.com>
Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 09:51:02 +0000 (11:51 +0200)]
[3.14] gh-124621: Emscripten: Add support for async input devices (GH-136822) (GH-136935)
This is useful for implementing proper `input()`. It requires the
JavaScript engine to support the wasm JSPI spec which is now stage 4.
It is supported on Chrome since version 137 and on Firefox and node
behind a flag.
We override the `__wasi_fd_read()` syscall with our own variant that
checks for a readAsync operation. If it has it, we use our own async
variant of `fd_read()`, otherwise we use the original `fd_read()`.
We also add a variant of `FS.createDevice()` called
`FS.createAsyncInputDevice()`.
Finally, if JSPI is available, we wrap the `main()` symbol with
`WebAssembly.promising()` so that we can stack switch from `fd_read()`.
If JSPI is not available, attempting to read from an AsyncInputDevice
will raise an `OSError`.
(cherry picked from commit
7ae4749d064bd49b0dd96172fee20c1f1678d9e9 )
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Hugo van Kemenade [Tue, 22 Jul 2025 09:48:08 +0000 (12:48 +0300)]
[3.14] gh-134009: Expose `PyMutex_IsLocked` in the public C API (gh-134365) (#136971)
Co-authored-by: Sam Gross <colesbury@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 09:44:59 +0000 (11:44 +0200)]
[3.14] gh-133296: Publicly expose critical section API that accepts PyMutex (gh-135899) (#136969)
Co-authored-by: Nathan Goldbaum <nathan.goldbaum@gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Miss Islington (bot) [Tue, 22 Jul 2025 08:32:09 +0000 (10:32 +0200)]
[3.14] gh-136859: Improve `StrEnum` docs (GH-136864) (#136936)
Co-authored-by: Nacho Caballero <nachocab@gmail.com>
Co-authored-by: Nacho Caballero <nacho.caballero@astrazeneca.com>
Co-authored-by: Antonio Spadaro <ilovelinux@users.noreply.github.com>
Miss Islington (bot) [Tue, 22 Jul 2025 08:29:40 +0000 (10:29 +0200)]
[3.14] gh-135468: Improve ``BaseHandler.http_error_default()`` parameter descriptions (GH-136797) (#136825)
Co-authored-by: Valerio Gianella <49408327+valeriogianella@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Hugo van Kemenade [Tue, 22 Jul 2025 08:29:17 +0000 (11:29 +0300)]
[3.14] Fix 3 typos in "Next" News items (GH-136892) (#136967)
Co-authored-by: Cornelius Roemer <cornelius.roemer@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 08:15:50 +0000 (10:15 +0200)]
[3.14] gh-131531: Android test fixes (GH-136845) (#136962)
Modifies the test runner script to no longer export the the HOST environment
variable, and to allow for tests that produce no Python output (output from the
Android console is still expected and required). These changes stem from
knowledge gained during developing a PR for Android support in cibuildwheel.
(cherry picked from commit
149bddcc216a398d71ec9497e9bf3ec03d6f2914 )
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Miss Islington (bot) [Tue, 22 Jul 2025 05:08:15 +0000 (07:08 +0200)]
[3.14] gh-135228: When @dataclass(slots=True) replaces a dataclass, make the original class collectible (GH-136893) (#136960)
gh-135228: When @dataclass(slots=True) replaces a dataclass, make the original class collectible (GH-136893)
An interesting hack, but more localized in scope than GH-135230.
This may be a breaking change if people intentionally keep the original class around
when using `@dataclass(slots=True)`, and then use `__dict__` or `__weakref__` on the
original class.
(cherry picked from commit
46cbdf967ada11b0286060488b61635fd6a2bb23 )
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
Miss Islington (bot) [Tue, 22 Jul 2025 03:35:41 +0000 (05:35 +0200)]
[3.14] gh-136170: Revert adding `ZipFile.data_offset` (GH-136950) (#136955)
gh-136170: Revert adding `ZipFile.data_offset` (GH-136950)
* Revert "gh-84481: Make ZipFile.data_offset more robust (GH-132178)"
This reverts commit
6cd1d6c6b142697fb72f422b7b448c27ebc30534 .
* Revert "gh-84481: Add ZipFile.data_offset attribute (GH-132165)"
This reverts commit
0788948dcb980c7648b29ca363390b696d7f188f .
---------
(cherry picked from commit
6bf1c0ab3497b1b193812654bcdfd0c11b4192d8 )
Co-authored-by: Emma Smith <emma@emmatyping.dev>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
Miss Islington (bot) [Tue, 22 Jul 2025 00:22:57 +0000 (02:22 +0200)]
[3.14] gh-133600: Move config.site-wasm32-emscripten into the emscripten folder (GH-136934) (#136956)
Reorganises the large Emscripten-specific file into the Emscripten folder.
(cherry picked from commit
bbe589f93ccaf32eb95fd9d1f8f3dc9a536e8db1 )
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 23:23:05 +0000 (01:23 +0200)]
[3.14] gh-136421: Load `_datetime` static types during interpreter initialization (GH-136583) (GH-136943)
gh-136421: Load `_datetime` static types during interpreter initialization (GH-136583)
`_datetime` is a special module, because it's the only non-builtin C extension that contains static types. As such, it would initialize static types in the module's execution function, which can run concurrently. Since static type initialization is not thread-safe, this caused crashes. This fixes it by moving the initialization of `_datetime`'s static types to interpreter startup (where all other static types are initialized), which is already properly protected through other locks.
(cherry picked from commit
a10960699a2b3e4e62896331c4f9cfd162ebf440 )
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 21:01:14 +0000 (23:01 +0200)]
[3.14] gh-136870: fix data race in `PyThreadState_Clear` on `sys_tracing_threads` (GH-136951) (#136953)
gh-136870: fix data race in `PyThreadState_Clear` on `sys_tracing_threads` (GH-136951)
In free-threading, multiple threads can be cleared concurrently as such the modifications on `sys_tracing_threads` should be done while holding the profile lock, otherwise it can race with other threads setting up profiling.
(cherry picked from commit
f183996eb77fd2d5662c62667298c292c943ebf5 )
Co-authored-by: Kumar Aditya <kumaraditya@python.org>
Serhiy Storchaka [Mon, 21 Jul 2025 18:34:24 +0000 (21:34 +0300)]
[3.14] gh-135661: Fix parsing attributes with whitespaces around the "=" separator in HTMLParser (GH-136908) (#136927)
Miss Islington (bot) [Mon, 21 Jul 2025 18:29:22 +0000 (20:29 +0200)]
[3.14] gh-136437: Document `os.path.dirname` as accepting only pos-only (GH-136946) (#136947)
gh-136437: Document `os.path.dirname` as accepting only pos-only (GH-136946)
(cherry picked from commit
322442945084ea9055f86a17fa5096b11ba5b344 )
Co-authored-by: sobolevn <mail@sobolevn.me>
Miss Islington (bot) [Mon, 21 Jul 2025 18:08:07 +0000 (20:08 +0200)]
[3.14] GH-136874: `url2pathname()`: discard query and fragment components (GH-136875) (#136942)
GH-136874: `url2pathname()`: discard query and fragment components (GH-136875)
In `urllib.request.url2pathname()`, ignore any query or fragment components
in the given URL.
(cherry picked from commit
80b2d60a51cfd824d025eb8b3ec500acce5c010c )
Co-authored-by: Barney Gale <barney.gale@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 18:07:56 +0000 (20:07 +0200)]
[3.14] gh-136437: Document some `os.path` functions as requiring pos-only (GH-136812) (#136944)
gh-136437: Document some `os.path` functions as requiring pos-only (GH-136812)
(cherry picked from commit
b5428bb0e786f5b67c6077472c0068cadd0b5ea9 )
Co-authored-by: sobolevn <mail@sobolevn.me>
Miss Islington (bot) [Mon, 21 Jul 2025 16:58:27 +0000 (18:58 +0200)]
[3.14] Pedantic rewording of why relative importing doesn't work in main modules (GH-136846) (#136940)
Pedantic rewording of why relative importing doesn't work in main modules (GH-136846)
Pedantically reword the section about relative imports and main modules.
(cherry picked from commit
4b68289ca6954b8d135e2ee2344e67fae38239fd )
Co-authored-by: Josh Cannon <joshdcannon@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 16:04:13 +0000 (18:04 +0200)]
[3.14] gh-135621: Simplify TermInfo (GH-136916) (#136925)
Lysandros Nikolaou [Mon, 21 Jul 2025 15:34:54 +0000 (17:34 +0200)]
[3.14] gh-132661: Disallow `Template`/`str` concatenation after PEP 750 spec update (#135996) (#136901)
Co-authored-by: Dave Peck <davepeck@gmail.com>
Co-authored-by: sobolevn <mail@sobolevn.me>
Miss Islington (bot) [Mon, 21 Jul 2025 12:29:51 +0000 (14:29 +0200)]
[3.14] gh-121028: Soft-deprecate sys.api_version (GH-136463) (GH-136928)
(cherry picked from commit
658599c15d13ee3a5cb56c3d9fccaa195465d4b5 )
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 11:02:41 +0000 (13:02 +0200)]
[3.14] gh-135621: Remove dependency on curses from PyREPL (GH-136758) (GH-136915)
(cherry picked from commit
09dfb50f1b7c23bc48d86bd579671761bb8ca48b )
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Miss Islington (bot) [Mon, 21 Jul 2025 09:58:57 +0000 (11:58 +0200)]
[3.14] gh-136852: Emscripten: Add PYTHON_NODE_VERSION environment variable (GH-136853) (GH-136907)
To choose the node version we use. Together with:
https://github.com/python/buildmaster-config/pull/614
closes GH-136852.
(cherry picked from commit
aec7f5f8b2e8b5e02869cdb4e1f8a9ef87c9f953 )
Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Miss Islington (bot) [Mon, 21 Jul 2025 09:23:33 +0000 (11:23 +0200)]
[3.14] gh-134411: assert `PyLong_FromLong(x) != NULL` when `x` is known to be small (GH-134415) (#136910)
gh-134411: assert `PyLong_FromLong(x) != NULL` when `x` is known to be small (GH-134415)
Since `PyLong_From Long(PY_MONITORING_DEBUGGER_ID)` falls to `small_int` case and can't return `NULL`. Added `assert`s for extra confidence.
https://github.com/python/cpython/issues/134411#issuecomment-
2897653868
(cherry picked from commit
cf19b6435d02dd7be11b84a44f4a8a9f1a935b15 )
Co-authored-by: Sergey Muraviov <smurav@mail.ru>
Miss Islington (bot) [Mon, 21 Jul 2025 09:04:39 +0000 (11:04 +0200)]
[3.14] gh-136882: Update stale link in the basic logging tutorial. (GH-136885) (#136905)
Co-authored-by: Vinay Sajip <vinay_sajip@yahoo.co.uk>
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Miss Islington (bot) [Mon, 21 Jul 2025 08:29:52 +0000 (10:29 +0200)]
[3.14] gh-136428: amend UUIDv8 performance improvements (GH-136903) (#136904)
gh-136428: amend UUIDv8 performance improvements (GH-136903)
UUIDv8 has been added in Python 3.14.0a2 and its construction time
has been improved in Python 3.14.0a4, but since those changes will
not be visible when comparing the latest Python 3.13 and 3.14 together,
we do not document them on the What's New page to avoid confusion.
(cherry picked from commit
5798348a0739ccf46f690f5fa1443080ec5de310 )
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Miss Islington (bot) [Mon, 21 Jul 2025 00:00:19 +0000 (02:00 +0200)]
[3.14] gh-136470: Correct InterpreterPoolExecutor's default thread name (GH-136472) (GH-136889)
gh-136470: Correct InterpreterPoolExecutor's default thread name (GH-136472)
The OS thread name is now correctly prefixed with `InterpreterPoolExecutor` instead of `ThreadPoolExecutor`.
(cherry picked from commit
246be21de1e2a51d757c747902108dfec13e0605 )
Co-authored-by: AN Long <aisk@users.noreply.github.com>
Miss Islington (bot) [Sun, 20 Jul 2025 22:22:53 +0000 (00:22 +0200)]
[3.14] GH-130645: Default to color help in argparse (GH-136809) (#136886)
GH-130645: Default to color help in argparse (GH-136809)
(cherry picked from commit
acbe896cb12d6a92e6150fff22921756f6928035 )
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
Miss Islington (bot) [Sun, 20 Jul 2025 20:28:28 +0000 (22:28 +0200)]
[3.14] GH-111758: Merge TSan and UBSan reusable GHA workflows (GH-136820) (#136883)
Co-authored-by: 🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Miss Islington (bot) [Sun, 20 Jul 2025 13:16:19 +0000 (15:16 +0200)]
[3.14] gh-86608: Improve and restructure tarfile examples (GH-121771) (#136866)
gh-86608: Improve and restructure tarfile examples (GH-121771)
Add an example on how to write a tarfile to stdout; general improvements.
(cherry picked from commit
cc81b4e501138b5793d419c81c3a2859a17207a7 )
Co-authored-by: Dominic H <dom@dominic.sk>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Sun, 20 Jul 2025 12:32:58 +0000 (14:32 +0200)]
[3.14] gh-130655: gettext: Add fallback testcase (GH-136857) (#136862)
gh-130655: gettext: Add fallback testcase (GH-136857)
(cherry picked from commit
c6e6fe92cd8b90d546652764e3eaf1631da16f8f )
Co-authored-by: Dominic H <dom@dominic.sk>
Miss Islington (bot) [Sun, 20 Jul 2025 12:13:48 +0000 (14:13 +0200)]
[3.14] gh-136854: Exit on error in `make venv` (GH-136856) (#136860)
Co-authored-by: Nacho Caballero <nachocab@gmail.com>
Co-authored-by: Nacho Caballero <nacho.caballero@astrazeneca.com>
Olga Pustovalova [Sun, 20 Jul 2025 11:51:59 +0000 (13:51 +0200)]
[3.14] gh-136438: Make sure `test_remote_pdb` pass with all optimization levels (GH-136788) (GH-136855)
(cherry picked from commit
588d9fb84ae014502811ec8580411ea0df7200fe )
Miss Islington (bot) [Sun, 20 Jul 2025 11:28:17 +0000 (13:28 +0200)]
[3.14] gh-108362: Retarget incremental GC changes to 3.14 (GH-125453) (#136851)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Miss Islington (bot) [Sun, 20 Jul 2025 08:55:06 +0000 (10:55 +0200)]
[3.14] Doc/c-api/memory.rst: extend --without-pymalloc doc with ASan information (GH-136790) (GH-136798)
Extend the documentation for disabling pymalloc with the `--without-pymalloc` flag regarding why it is worth to use it when enabling AddressSanitizer for Python build (which is done, e.g., in CPython's CI builds).
I have tested the CPython latest main build with both ASan and pymalloc enabled and it seems to work just fine. I did run the `python -m test` suite which didn't uncover any ASan crashes (though, it detected some memory leaks, which I believe are irrelevant here).
I have discussed ASan and this flag with @encukou on the CPython Core sprint on EuroPython 2025. We initially thought that the `--without-pymalloc` flag is needed for ASan builds due to the fact pymalloc must hit the begining of page when determining if the memory to be freed comes from pymalloc or was allocated by the system malloc. In other words, we thought, that ASan would crash CPython during free of big objects (allocated by system malloc). It may be that this was the case in the past, but it is not the case anymore as the `address_in_range` function used by pymalloc is annotated to be skipped from the ASan instrumentation.
(cherry picked from commit
d19bb4471331ca2cb87b86e4c904bc9a2bafb044 )
Co-authored-by: Disconnect3d <dominik.b.czarnota@gmail.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Miss Islington (bot) [Sat, 19 Jul 2025 18:00:15 +0000 (20:00 +0200)]
[3.14] gh-136764: improve comment in enum.verify.__call__ (GH-136774) (GH-136841)
gh-136764: improve comment in enum.verify.__call__ (GH-136774)
(cherry picked from commit
6a1c93af806d0ca5d3fb86cd183d00013bbf28d1 )
Co-authored-by: Saurav Singh <sauravsinghshakya@yahoo.com>
Miss Islington (bot) [Sat, 19 Jul 2025 17:36:31 +0000 (19:36 +0200)]
[3.14] gh-136839: Refactor simple dict.update calls (GH-136811) (#136840)
gh-136839: Refactor simple dict.update calls (GH-136811)
Refactor simple dict.update calls
This commit refactors simple `dict.update({key: value})` calls which can
be done via `dict[key] = value` instead.
I found those cases with the [semgrep](https://semgrep.dev/) tool:
```
$ semgrep --lang python --pattern '$DICT.update({$A: ...})'
┌─────────────────┐
│ 5 Code Findings │
└─────────────────┘
Lib/dataclasses.py
1268┆ slots.update({slot: doc})
Lib/multiprocessing/resource_tracker.py
50┆ _CLEANUP_FUNCS.update({
51┆ 'semaphore': _multiprocessing.sem_unlink,
52┆ })
⋮┆----------------------------------------
53┆ _CLEANUP_FUNCS.update({
54┆ 'shared_memory': _posixshmem.shm_unlink,
55┆ })
Lib/tkinter/scrolledtext.py
26┆ kw.update({'yscrollcommand': self.vbar.set})
Lib/xmlrpc/server.py
242┆ self.funcs.update({'system.multicall' : self.system_multicall})
```
(cherry picked from commit
69ea1b3a8f45fec46add3272ad47f14ff5321ae8 )
Co-authored-by: Disconnect3d <dominik.b.czarnota@gmail.com>
Miss Islington (bot) [Sat, 19 Jul 2025 14:50:30 +0000 (16:50 +0200)]
[3.14] gh-136752: Clarify documentation for ``IPv{N}Address.is_reserved`` (GH-136794) (#136827)
gh-136752: Clarify documentation for ``IPv{N}Address.is_reserved`` (GH-136794)
(cherry picked from commit
6293d8a1a648a498b7ac899631b74fa25c71c1ac )
Co-authored-by: Matthieu Lienart <50069805+mlnrt@users.noreply.github.com>
Co-authored-by: Matthieu Lienart <matthieu.lienart@axians.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Sat, 19 Jul 2025 14:28:52 +0000 (16:28 +0200)]
[3.14] gh-54732: Make argparse error caused by empty rows in option files explicit (GH-136795) (#136818)
gh-54732: Make argparse error caused by empty rows in option files explicit (GH-136795)
(cherry picked from commit
8ffc3ef01e83ffe629c6107082677de4d23974d5 )
Co-authored-by: jdunter <2ve@mailbox.org>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Miss Islington (bot) [Sat, 19 Jul 2025 13:56:40 +0000 (15:56 +0200)]
[3.14] gh-136801: Fix PyREPL syntax highlightning on match cases after multi-line case (GH-136804) (GH-136813)
(cherry picked from commit
3a648445337098abf22c7faa296389dab597797c )
Co-authored-by: Olga Matoula <olgamatoula@gmail.com>