Commit graph

129081 commits

Author SHA1 Message Date
Miss Islington (bot)
bb78ec8fa8
[3.14] gh-148274: properly handle result from PyObject_VisitManagedDict (GH-148275) (#148295)
gh-148274: properly handle result from `PyObject_VisitManagedDict` (GH-148275)
(cherry picked from commit ee2775cfae)

Co-authored-by: Max Bachmann <kontakt@maxbachmann.de>
2026-04-09 13:49:09 +00:00
Miss Islington (bot)
571c337a5d
[3.14] gh-106318: Add example for str.swapcase() method (GH-144575) (#148296)
Co-authored-by: Adorilson Bezerra <adorilson@gmail.com>
2026-04-09 13:39:39 +00:00
Miss Islington (bot)
88fc1e6003
[3.14] gh-148250: Mention str subclasses in PyUnicodeWriter_WriteStr() doc (GH-148251) (#148293)
gh-148250: Mention str subclasses in PyUnicodeWriter_WriteStr() doc (GH-148251)
(cherry picked from commit 8c524503cd)

Co-authored-by: Victor Stinner <vstinner@python.org>
2026-04-09 11:59:06 +00:00
Miss Islington (bot)
d31a16e662
[3.14] gh-146646: Document that glob functions suppress OSError (GH-147996) (#148288)
gh-146646: Document that glob functions suppress OSError (GH-147996)
(cherry picked from commit 8000a9de3c)

Co-authored-by: WYSIATI <chester.lee.cold@gmail.com>
2026-04-09 11:00:23 +00:00
Miss Islington (bot)
f46a17b19f
[3.14] gh-70039: smtplib: store the server name in ._host in .connect() (GH-115259) (#148273)
Original patch by gigaplastik, extended with a few more tests.

Addresses gh-70039 and bpo-25852: failure of starttls if connect is called explicitly.
(cherry picked from commit 442f83a5ea)

Co-authored-by: nmartensen <nis.martensen@web.de>
2026-04-08 18:14:15 -04:00
Miss Islington (bot)
a84e2dba24
[3.14] Minor edit: Four space indent in example (gh-148264) (gh-148265) 2026-04-08 17:55:20 +00:00
Miss Islington (bot)
5df7652859
[3.14] gh-146458: Fix REPL height and width tracking on resize (GH-146459) (#148232)
gh-146458: Fix REPL height and width tracking on resize (GH-146459)
(cherry picked from commit 0b20bff386)

Co-authored-by: Gabriel Volles Marinho <147559808+GabrielvMarinho@users.noreply.github.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2026-04-07 21:37:46 +00:00
Hugo van Kemenade
3da4e0910c Post 3.14.4 2026-04-07 20:46:24 +03:00
Hugo van Kemenade
23116f998f Python 3.14.4 2026-04-07 16:13:20 +03:00
Hugo van Kemenade
383c2919b1
[3.14] GH-146128: Remove the buggy AArch64 "33rx" relocation (GH-146263) (#148198)
Co-authored-by: Brandt Bucher <brandt@python.org>
2026-04-07 14:05:47 +03:00
Miss Islington (bot)
d786d59a8f
[3.14] gh-146121: Clarify security model of pkgutil.getdata (GH-148197) (GH-148206)
(cherry picked from commit cf59bf7647)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-07 12:48:29 +02:00
Gregory P. Smith
25369a8c78
[3.14] gh-144503: Pass sys.argv to forkserver as real argv elements (GH-148194) (#148195)
Avoid embedding the parent's sys.argv into the forkserver -c command
string via repr().  When sys.argv is large (e.g. thousands of file
paths from a pre-commit hook), the resulting single argument could
exceed the OS per-argument length limit (MAX_ARG_STRLEN on Linux,
typically 128 KiB), causing posix_spawn to fail and the parent to
observe a BrokenPipeError.

Instead, append the argv entries as separate command-line arguments
after -c; the forkserver child reads them back as sys.argv[1:].  This
cannot exceed any limit the parent itself did not already satisfy.

Regression introduced by gh-143706 / 298d5440eb.
(cherry picked from commit 5e9d90b615)
2026-04-07 06:19:32 +00:00
Miss Islington (bot)
8f59d40244
[3.14] gh-137586: Open external osascript program with absolute path (GH-137584) (#148173)
Co-authored-by: Fionn <1897918+fionn@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-07 03:35:12 +00:00
Miss Islington (bot)
07158b605d
[3.14] gh-146613: Fix re-entrant use-after-free in itertools._grouper (GH-147962) (#148010)
gh-146613: Fix re-entrant use-after-free in `itertools._grouper` (GH-147962)
(cherry picked from commit fc7a188fe7)

Co-authored-by: Ma Yukun <68433685+TheSkyC@users.noreply.github.com>
2026-04-06 18:23:08 +03:00
Miss Islington (bot)
40a0a94700
[3.14] gh-148157: Check for _PyPegen_add_type_comment_to_arg fail in _PyPegen_name_default_pair (GH-148158) (#148162)
(cherry picked from commit 1795fccfbc)

Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-06 12:22:33 +00:00
Miss Islington (bot)
90ae9381ea
[3.14] Docs: Update "Installing Python modules" (GH-146249) (#148159)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-06 11:28:07 +00:00
Miss Islington (bot)
bf6bd15156
[3.14] gh-144418: Increase Android testbed emulator RAM to 4 GB (GH-148054) (#148150)
Pre-create the Android emulator image so that the the configuration can be
modified to use 4GB of RAM.
(cherry picked from commit a95ee3a21d)

Co-authored-by: Malcolm Smith <smith@chaquo.com>
2026-04-06 14:09:14 +08:00
Miss Islington (bot)
636946f413
[3.14] gh-148144: Initialize visited on copied interpreter frames (GH-148143) (#148147)
gh-148144: Initialize visited on copied interpreter frames (GH-148143)

_PyFrame_Copy() copied interpreter frames into generator and
frame-object storage without initializing the visited byte. Incremental
GC later reads frame->visited in mark_stacks() on non-start passes, so
copied frames could expose an uninitialized value once they became live
on a thread stack again.

Reset visited when copying a frame so copied frames start with defined
GC bookkeeping state. Preserve lltrace in Py_DEBUG builds.
(cherry picked from commit fbfc6ccb0a)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2026-04-05 23:49:47 +00:00
Miss Islington (bot)
e99b801aeb
[3.14] gh-145098: Use macos-15-intel instead of unstable macos-26-intel in {jit,tail-call}.yml (GH-148126) (#148135)
Co-authored-by: Stan Ulbrych <stan@python.org>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-05 23:07:16 +03:00
Miss Islington (bot)
9bc5bc5618
[3.14] gh-94632: document the subprocess need for extra_groups=() with user= (GH-148129) (#148130)
gh-94632: document the subprocess need for extra_groups=() with user= (GH-148129)
(cherry picked from commit a1cf4430ed)

Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com>
2026-04-05 18:13:29 +00:00
Ezio Melotti
f74e2ee2d3
[3.14] Add permissions: {} to all reusable workflows (#148114) (#148115)
Add `permissions: {}` to all reusable workflows (#148114)

Add permissions: {} to all reusable workflows

(cherry picked from commit 1f36a510a2)
2026-04-05 01:46:39 +02:00
Miss Islington (bot)
26c57c05d3
[3.14] Docs: Standardize documentation authors (GH-148102) (#148104)
(cherry picked from commit 75be902a13)

Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-04 19:11:45 +01:00
Miss Islington (bot)
3530d32bb7
[3.14] Docs: Fix a typo in the 'Non-ASCII characters in names' section (GH-148043) (#148099)
(cherry picked from commit b1d2d9829c)

Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-04 16:51:39 +00:00
Miss Islington (bot)
8040b20473
[3.14] Regex HOWTO: invalid string literals result in SyntaxWarning (GH-148092) (#148097)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-04 16:19:38 +00:00
Miss Islington (bot)
64207c930b
[3.14] gh-145883: Fix two heap-buffer-overflows in _zoneinfo (GH-145885) (#148087)
(cherry picked from commit fe9befc1ca)

Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-04 17:13:13 +01:00
Miss Islington (bot)
61c919cf1b
[3.14] gh-148074: Fix typeobject.c missing error return (GH-148075) (#148095)
gh-148074: Fix `typeobject.c` missing error return (GH-148075)
(cherry picked from commit c398490fbf)

Co-authored-by: Wulian233 <1055917385@qq.com>
2026-04-04 16:01:34 +00:00
Miss Islington (bot)
58756bf0db
[3.14] gh-145098: Use macos-15-intel instead of unstable macos-26-intel (GH-148038) (#148076)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-04 10:02:44 +00:00
Miss Islington (bot)
1c3e3fbcfb
[3.14] gh-143394: Skip pyrepl test_no_newline() basic REPL if readline is missing (GH-147973) (#148005)
gh-143394: Skip pyrepl test_no_newline() basic REPL if readline is missing (GH-147973)
(cherry picked from commit 97babb8ef7)

Co-authored-by: Victor Stinner <vstinner@python.org>
2026-04-04 08:38:43 +00:00
Miss Islington (bot)
83ee46c4c9
[3.14] gh-146450: Normalise feature set of Android build script with other platform build scripts (GH-146451) (#148065)
Allows for cleaning a subset of targets, customization of the download cache and
cross-build directories, and modifies the build command to allow 'all', 'build'
and 'hosts' targets.
(cherry picked from commit b8470deb5d)

Co-authored-by: Russell Keith-Magee <russell@keith-magee.com>
2026-04-04 12:27:49 +08:00
Russell Keith-Magee
ab3d37fab6
[3.14] gh-146541: Allow building the Android testbed for 32-bit targets (GH-146542) (#148064)
Allows building the Android testbed for 32-bit targets, adding the target triplets
`arm-linux-androideabi` and `i686-linux-android`.
(cherry picked from commit 848bbe9ff2)

Co-authored-by: Robert Kirkman <31490854+robertkirkman@users.noreply.github.com>
Co-authored-by: Malcolm Smith <smith@chaquo.com>
2026-04-04 03:58:20 +00:00
Miss Islington (bot)
f4c9bc899b
[3.14] gh-126676: Expand argparse docs for type=bool with warning and alternatives (GH-146435) (#148048)
gh-126676: Expand argparse docs for type=bool with warning and alternatives (GH-146435)
(cherry picked from commit 80d0a85d96)

Co-authored-by: Joshua Swanson <22283299+joshuaswanson@users.noreply.github.com>
Co-authored-by: joshuaswanson <joshuaswanson@users.noreply.github.com>
Co-authored-by: Savannah Ostrowski <savannah@python.org>
2026-04-03 12:10:19 -07:00
Miss Islington (bot)
594b5a05dc
[3.14] gh-143930: Tweak the exception message and increase test coverage (GH-146476) (GH-148042)
(cherry picked from commit 3681d47a44)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2026-04-03 18:28:52 +02:00
Miss Islington (bot)
242ededffd
[3.14] gh-125895: Fix static asset location for sphinx-notfound-page (GH-147984) (#148040)
(cherry picked from commit 80ab6d958a)

Co-authored-by: Stan Ulbrych <stan@python.org>
2026-04-03 16:40:12 +01:00
Miss Islington (bot)
3d49e490e2
[3.14] gh-148022: Add threat model to remote debugging docs (GH-148024) (#148039)
gh-148022: Add threat model to remote debugging docs (GH-148024)

The remote debugging protocol has been generating spurious
vulnerability reports from automated scanners that pattern-match
on "remote access" and "memory operations" without understanding
the privilege model. This section documents the security boundaries
so reporters can self-triage before submitting.

The threat model clarifies three points: attaching requires the
same OS-level privileges as GDB (ptrace, task_for_pid, or
SeDebugPrivilege), crashes caused by reading corrupted target
process memory are not security issues, and a compromised target
process is out of scope. A subsection explains when operators
should use PYTHON_DISABLE_REMOTE_DEBUG for defence-in-depth.
(cherry picked from commit edab6860a7)

Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2026-04-03 14:34:36 +00:00
Miss Islington (bot)
6996c8303b
[3.14] gh-146907: Clarify ABI compatibility between debug and release builds (GH-146925) (GH-147971)
(cherry picked from commit 03f3b9ade9)

Co-authored-by: konsti <konstin@mailbox.org>
2026-04-03 10:02:36 +02:00
Miss Islington (bot)
dbba26dabe
[3.14] gh-142533: Document CRLF injection vulnerabilities in http.server doc (GH-143395) (#148020)
gh-142533: Document CRLF injection vulnerabilities in http.server doc (GH-143395)
(cherry picked from commit 617f4cc1c2)

Co-authored-by: Tadej Magajna <tmagajna@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2026-04-02 21:32:48 +00:00
William Woodruff
ea9ecc8955
[3.14] gh-146488: hash-pin all action references (gh-146489) (#147983) 2026-04-02 09:30:01 +00:00
sunmy2019
b406d85603
[3.14] gh-146615: Fix format specifiers in extension modules (GH-146617) (#147704)
Fix format specifier in parse_task_name() for long result.
2026-04-01 15:12:44 +02:00
Sam Gross
6ea4f842fb
[3.14] gh-144438: Fix false sharing between QSBR and tlbc_index (gh-144554) (#144923)
Align the QSBR thread state array to a 64-byte cache line boundary
and add padding at the end of _PyThreadStateImpl. Depending on heap
layout, the QSBR array could end up sharing a cache line with a
thread's tlbc_index, causing QSBR quiescent state updates to contend
with reads of tlbc_index in RESUME_CHECK. This is sensitive to
earlier allocations during interpreter init and can appear or
disappear with seemingly unrelated changes.

Either change alone is sufficient to fix the specific issue, but both
are worthwhile to avoid similar problems in the future.

(cherry picked from commit 6577d870b0)
2026-03-31 19:20:24 +00:00
Miss Islington (bot)
25b48b84b8
[3.14] gh-143050: Correct PyLong_FromString() to use _PyLong_Negate() (GH-145901) (#147331)
gh-143050: Correct PyLong_FromString() to use _PyLong_Negate() (GH-145901)

The long_from_string_base() might return a small integer, when the
_pylong.py is used to do conversion.  Hence, we must be careful here to
not smash it "small int" bit by using the _PyLong_FlipSign().
(cherry picked from commit db5936c5b8)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2026-03-31 16:14:12 +02:00
Miss Islington (bot)
e387bac1a4
[3.14] gh-126835: Fix _PY_IS_SMALL_INT() macro (GH-146631) (#147187)
gh-126835: Fix _PY_IS_SMALL_INT() macro (GH-146631)
(cherry picked from commit adf2c47911)

Co-authored-by: Victor Stinner <vstinner@python.org>
2026-03-31 13:27:11 +00:00
Miss Islington (bot)
2d1515dc21
[3.14] gh-145563: Add thread-safety annotation for PyCapsule C-API (GH-146612) (#146659)
gh-145563: Add thread-safety annotation for PyCapsule C-API (GH-146612)
(cherry picked from commit 67354b2925)

Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
2026-03-31 17:05:49 +05:30
Serhiy Storchaka
58c7259133
[3.14] gh-146615: Fix format specifiers in extension modules (GH-146617) (GH-146652)
(cherry picked from commit 1c396e1821)

Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2026-03-31 10:07:09 +00:00
Miss Islington (bot)
e5ec90e021
[3.14] gh-146615: Fix format specifiers in Objects/ directory (GH-146620) (GH-146651)
(cherry picked from commit bbf7fb2c15)

Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2026-03-31 09:17:58 +00:00
Miss Islington (bot)
3866c2947b
[3.14] gh-146615: Fix format specifiers in test cextensions (GH-146618) (GH-146649)
(cherry picked from commit b7055533ab)

Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2026-03-31 08:31:05 +00:00
Miss Islington (bot)
9ac758e6a4
[3.14] gh-146615: Fix format specifiers in Python/ directory (GH-146619) (GH-146650)
(cherry picked from commit dcb260eff2)

Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2026-03-31 08:25:07 +00:00
Miss Islington (bot)
ed557e6a5f
[3.14] gh-146615: Fix crash in __get__() for METH_METHOD descriptors with invalid type argument (GH-146634) (GH-146647)
(cherry picked from commit 72d29ea363)

Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2026-03-31 08:20:00 +00:00
Miss Islington (bot)
99f333de7f
[3.14] gh-146376: Reduce timeout in Emscripten GHA workflow (GH-146378) (#146645)
gh-146376: Reduce timeout in Emscripten GHA workflow (GH-146378)
(cherry picked from commit 70d1b08a4b)

Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
2026-03-30 21:03:46 +00:00
Miss Islington (bot)
3c434f7f0f
[3.14] gh-146250: Fix memory leak in re-initialization of SyntaxError (GH-146251) (#146517)
Co-authored-by: Brij Kapadia <97006829+bkap123@users.noreply.github.com>
2026-03-30 16:14:58 +00:00
Miss Islington (bot)
ec1148556f
[3.14] gh-146416: Emscripten: Improve standard stream handling in node_entry.mjs (GH-146417) (#146630)
gh-146416: Emscripten: Improve standard stream handling in node_entry.mjs (GH-146417)
(cherry picked from commit 6857de625f)

Co-authored-by: Hood Chatham <roberthoodchatham@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2026-03-30 12:18:19 +00:00