Commit graph

32434 commits

Author SHA1 Message Date
Miss Islington (bot)
494181e44d
[3.13] gh-93691: fix too broad source locations of with-statement instructions (GH-120125) (#123604)
gh-93691: fix too broad source locations of with-statement instructions (GH-120125)
(cherry picked from commit eca3f7762c)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2024-09-02 14:53:39 +00:00
Miss Islington (bot)
3b3a1a8e7e
[3.13] gh-101525: Skip test_gdb if the binary is relocated by BOLT. (gh-118572) (#123601)
gh-101525: Skip test_gdb if the binary is relocated by BOLT. (gh-118572)
(cherry picked from commit f95fc4de11)

Co-authored-by: Donghee Na <donghee.na@python.org>
2024-09-02 23:10:52 +09:00
Miss Islington (bot)
b76a4a5db7
[3.13] gh-116263: Do not rollover empty files in RotatingFileHandler (GH-122788) (#122814)
gh-116263: Do not rollover empty files in RotatingFileHandler (GH-122788)
(cherry picked from commit 6094c6fc2f)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 12:07:27 +00:00
Miss Islington (bot)
ed3a49ea73
[3.13] gh-121285: Remove backtracking when parsing tarfile headers (GH-121286) (#123542)
gh-121285: Remove backtracking when parsing tarfile headers (GH-121286)

* Remove backtracking when parsing tarfile headers
* Rewrite PAX header parsing to be stricter
* Optimize parsing of GNU extended sparse headers v0.0

(cherry picked from commit 34ddb64d08)

Co-authored-by: Seth Michael Larson <seth@python.org>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2024-09-02 13:19:11 +02:00
Miss Islington (bot)
ffb7abe829
[3.13] gh-123309: Add more tests for the pickletools module (GH-123355) (#123533)
gh-123309: Add more tests for the pickletools module (GH-123355)

Add tests for genops() and dis().
(cherry picked from commit e5a567b0a7)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 13:18:44 +02:00
Miss Islington (bot)
ab29053784
[3.13] gh-123431: Harmonize extension code checks in pickle (GH-123434) (#123459)
gh-123431: Harmonize extension code checks in pickle (GH-123434)

This checks are redundant in normal circumstances and can only work if
the extension registry was intentionally broken.

* The Python implementation now raises exception for the extension code
  with false boolean value.
* Simplify the C code. RuntimeError is now raised in explicit checks.
* Add many tests.
(cherry picked from commit 0c3ea30238)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 13:17:16 +02:00
Miss Islington (bot)
14a899f6f0
[3.13] gh-120226: Fix test_sendfile_close_peer_in_the_middle_of_receiving on Linux >= 6.10 (GH-120227) (#123421)
gh-120226: Fix test_sendfile_close_peer_in_the_middle_of_receiving on Linux >= 6.10 (GH-120227)

The worst case is that the kernel buffers 17 pages with a page size of 64k.
(cherry picked from commit a758424566)

Co-authored-by: Xi Ruoyao <xry111@xry111.site>
2024-09-02 13:14:03 +02:00
Miss Islington (bot)
7e8883a3f0
[3.13] gh-123270: Replaced SanitizedNames with a more surgical fix. (GH-123354) (#123410)
gh-123270: Replaced SanitizedNames with a more surgical fix. (GH-123354)

Applies changes from zipp 3.20.1 and jaraco/zippGH-124
(cherry picked from commit 2231286d78)

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
2024-09-02 13:13:18 +02:00
Miss Islington (bot)
cbcb9e1c0f
[3.13] gh-111495: Add tests for PyNumber C API (GH-111996) (#123375)
gh-111495: Add tests for PyNumber C API (GH-111996)
(cherry picked from commit 2f20f5a9bc)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
2024-09-02 13:11:06 +02:00
Miss Islington (bot)
d9e4c4b61c
[3.13] gh-123213: Fixed xml.etree.ElementTree.Element.extend and assignment to no longer hide exceptions (GH-123214) (#123257)
gh-123213: Fixed xml.etree.ElementTree.Element.extend and assignment to no longer hide exceptions (GH-123214)
(cherry picked from commit 90b6d0e0f8)

Co-authored-by: Bar Harel <bharel@barharel.com>
2024-09-02 13:10:09 +02:00
Miss Islington (bot)
4ea9c5ba78
[3.13] gh-85110: Preserve relative path in URL without netloc in urllib.parse.urlunsplit() (GH-123179) (#123187)
gh-85110: Preserve relative path in URL without netloc in urllib.parse.urlunsplit() (GH-123179)
(cherry picked from commit 90c892efea)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 13:09:17 +02:00
Miss Islington (bot)
2b4c31d87d
[3.13] gh-122981: Fix inspect.getsource() for generated classes with Python base classes (GH-123001) (#123182)
gh-122981: Fix inspect.getsource() for generated classes with Python base classes (GH-123001)

Look up __firstlineno__ only in the class' dict, without searching in
base classes.
(cherry picked from commit f88c14d412)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 13:07:08 +02:00
Serhiy Storchaka
8b6dd92db7
[3.13] gh-122688: Fix support of var-positional parameter in Argument Clinic (GH-122689) (#122852)
* Parameters after the var-positional parameter are now keyword-only
  instead of positional-or-keyword.
* Correctly calculate min_kw_only.
* Raise errors for invalid combinations of the var-positional parameter
  with "*", "/" and deprecation markers.
(cherry picked from commit 8393608dd9)
2024-09-02 13:03:04 +02:00
Miss Islington (bot)
60e4c3f710
[3.13] gh-122798: Make tests for warnings in the re module more strict (GH-122799) (#122804)
gh-122798: Make tests for warnings in the re module more strict (GH-122799)

* Test warning messages.
* Test stack level for re.compile() and re.findall().
(cherry picked from commit d2e5be1f39)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-09-02 12:59:15 +02:00
Miss Islington (bot)
f1a6d2254f
[3.13] gh-121151: argparse: Fix wrapping of long usage text of arguments inside a mutually exclusive groups (GH-121159) (#122777)
gh-121151: argparse: Fix wrapping of long usage text of arguments inside a mutually exclusive groups (GH-121159)
(cherry picked from commit 013a092975)

Co-authored-by: Ali Hamdan <ali.hamdan.dev@gmail.com>
2024-09-02 12:55:16 +02:00
Miss Islington (bot)
57ba3b0c6e
[3.13] gh-122527: Fix a crash on deallocation of PyStructSequence (GH-122577) (#122625)
gh-122527: Fix a crash on deallocation of `PyStructSequence` (GH-122577)

The `PyStructSequence` destructor would crash if it was deallocated after
its type's dictionary was cleared by the GC, because it couldn't compute
the "real size" of the instance. This could occur with relatively
straightforward code in the free-threaded build or with a reference
cycle involving the type in the default build, due to differing orders
in which `tp_clear()` was called.

Account for the non-sequence fields in `tp_basicsize` and use that,
along with `Py_SIZE()`, to compute the "real" size of a
`PyStructSequence` in the dealloc function. This avoids the accesses to
the type's dictionary during dealloc, which were unsafe.
(cherry picked from commit 4b63cd170e)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2024-09-02 12:47:18 +02:00
Alex Waygood
3455d8560a
[3.13] Fix typos in docs, error messages and comments (#122502) (#122606)
Fix typos in docs, error messages and comments (#122502)

(cherry-picked from commit 46f5a4f9e1)

Signed-off-by: jianghuyiyuan <shuangcui@live.com>
Co-authored-by: jianghuyiyuan <shuangcui@live.com>
2024-09-02 12:44:42 +02:00
Miss Islington (bot)
cfdf376e2a
[3.13] gh-91126: Docs and tests for slotted dataclasses with __init_subclass__ (GH-123342) (#123568)
gh-91126: Docs and tests for slotted dataclasses with `__init_subclass__` (GH-123342)
(cherry picked from commit 75e72822a3)

Co-authored-by: sobolevn <mail@sobolevn.me>
2024-09-01 18:19:56 +03:00
Miss Islington (bot)
ada13a82a8
[3.13] gh-122136: test_asyncio: Don't fail if the kernel buffers more data than advertised (GH-123423) (#123443)
gh-122136: test_asyncio: Don't fail if the kernel buffers more data than advertised (GH-123423)
(cherry picked from commit b379f1b26c)

Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-08-29 11:44:54 +02:00
Irit Katriel
d379a92ddc
[3.13] gh-123142: fix too wide source location of GET_ITER/GET_AITER (GH-123420). (#123435)
(cherry picked from commit 61bef6245c)
2024-08-28 18:41:22 +01:00
Miss Islington (bot)
19a1f18740
[3.13] gh-123344: Add missing ast optimizations for PEP 696 (GH-123377) (#123427)
(cherry picked from commit be083cee34)

Co-authored-by: Bogdan Romanyuk <65823030+wrongnull@users.noreply.github.com>
Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2024-08-28 14:02:34 +00:00
Miss Islington (bot)
69b104a4f1
[3.13] gh-122666: Tests for ast optimizations (GH-122667) (#123359)
(cherry picked from commit 9f9b00d52c)

Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2024-08-27 06:41:37 -07:00
Sergey B Kirpichev
ee464309a5
[3.13] gh-111495: Add tests for PyTuple C API (GH-118757) (GH-123371)
(cherry picked from commit dbc1752d41)

Co-authored-by: kalyanr <kalyan.ben10@live.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2024-08-27 12:07:17 +03:00
Malcolm Smith
350313e731
[3.13] gh-119727: Add --single-process option to regrtest (#119728) (#123010)
gh-119727: Add --single-process option to regrtest (#119728)

(cherry picked from commit 4e8aa32245)

Co-authored-by: Victor Stinner <vstinner@python.org>
2024-08-26 11:59:26 +02:00
Miss Islington (bot)
3822d7cd28
[3.13] gh-116789: Add more tests for inspect.getmembers (GH-116802) (#123129)
gh-116789: Add more tests for `inspect.getmembers` (GH-116802)
(cherry picked from commit c15bfa9a71)

Co-authored-by: sobolevn <mail@sobolevn.me>
2024-08-26 11:51:56 +02:00
Miss Islington (bot)
865bfb1530
[3.13] gh-123177: Fix prompt for wrapped lines in pyrepl (GH-123324) (#123327)
gh-123177: Fix prompt for wrapped lines in pyrepl (GH-123324)

When display lines above the cursor come from the cache, the first line
to not come from the cache may be a wrapped line, starting half way
through a logical line in the buffer. Detect and handle this case to
avoid accidentally drawing a stray prompt in the middle of a logical
line.
(cherry picked from commit 602fcf97df)

Co-authored-by: Matt Wozniski <mwozniski@bloomberg.net>
2024-08-26 02:13:36 +01:00
Miss Islington (bot)
3b7e5b640f
[3.13] gh-123228: don't leak file descriptors in pyrepl test (GH-123302) (#123313) 2024-08-25 15:17:45 +00:00
Miss Islington (bot)
391e5626e3
[3.13] gh-123067: Fix quadratic complexity in parsing "-quoted cookie values with backslashes (GH-123075) (#123103)
gh-123067: Fix quadratic complexity in parsing "-quoted cookie values with backslashes (GH-123075)

This fixes CVE-2024-7592.
(cherry picked from commit 44e458357f)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-08-24 15:36:58 -07:00
Miss Islington (bot)
31fae8c94f
[3.13] gh-123228: fix return type for _ReadlineWrapper.get_line_buffer() (GH-123281) (#123293)
gh-123228: fix return type for _ReadlineWrapper.get_line_buffer() (GH-123281)
(cherry picked from commit ca18ff2a34)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
Co-authored-by: Carl Friedrich Bolz-Tereick <cfbolz@gmx.de>
2024-08-24 16:11:17 +00:00
CF Bolz-Tereick
0955db1bd8
[3.13] gh-82378 fix sys.tracebacklimit in pyrepl, approach 2 (GH-123062) (#123252)
Make sure that pyrepl uses the same logic for sys.tracebacklimit as both
the basic repl and the standard sys.excepthook
(cherry picked from commit 63603bca35)
2024-08-23 12:59:08 +01:00
Miss Islington (bot)
95b4f9c9ad
[3.13] GH-120097: Make FrameLocalsProxy a mapping (GH-120101) (GH-120749)
Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
2024-08-23 10:26:03 +01:00
Miss Islington (bot)
fda8aec625
[3.13] gh-122546: Relax SyntaxError check when raising errors on the new REPL (GH-123233) (#123247)
gh-122546: Relax SyntaxError check when raising errors on the new REPL (GH-123233)
(cherry picked from commit 4c3f0cbeae)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
2024-08-23 00:32:11 +00:00
CF Bolz-Tereick
30eee22d3f
[3.13] gh-122478: Remove internal frames from tracebacks in REPL (GH-122528) (#123227)
Frames of methods in code and codeop modules was show with non-default
sys.excepthook.

Save correct tracebacks in sys.last_traceback and update __traceback__
attribute of sys.last_value and sys.last_exc.
(cherry picked from commit e73e7a7abd)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-08-22 23:58:05 +00:00
Sergey B Kirpichev
5271f8fead
[3.13] gh-122546: use same filename for different exceptions in new repl (GH-123217) (#123226) 2024-08-23 00:28:09 +01:00
Miss Islington (bot)
5148e03f0f
[3.13] GH-121723: Skip test_config_queue_handler_multiprocessing_context in emulated JIT CI (GH-122991)
(cherry picked from commit 7b8328b6b3)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-08-22 13:16:52 -07:00
Donghee Na
6cd67e413b
[3.13] gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH… (#123235)
[3.13] gh-123083: Fix a potential use-after-free in ``STORE_ATTR_WITH_HINT`` (gh-123092)
(cherry picked from commit 297f2e093e)
2024-08-23 01:37:26 +09:00
Irit Katriel
e4b91b7256
[3.13] gh-123142: Fix too wide source locations in tracebacks of exceptions from broken iterables in comprehensions (GH-123173). (#123209)
(cherry picked from commit ec89620e5e)
2024-08-22 10:22:39 +01:00
mpage
50a595b37f
[3.13] gh-122712: Guard against __code__ reassignment in CALL_ALLOC_AND_ENTER_INIT (GH-122713) (GH-123184) 2024-08-21 13:16:30 +01:00
Miss Islington (bot)
159db050f4
[3.13] gh-123048: Fix missing source location in pattern matching code (GH-123167) (#123169)
gh-123048: Fix missing source location in pattern matching code (GH-123167)
(cherry picked from commit bffed80230)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2024-08-20 11:13:43 +00:00
Sergey B Kirpichev
c8f4069ab1
[3.13] gh-121804: Always show error location for SyntaxError's in new repl (GH-121886) (#123148)
(cherry picked from commit 354d55eb1f)
2024-08-19 20:01:58 +01:00
Miss Islington (bot)
21399a0963
[3.13] gh-118658: Return consistent types from get_un/verified_chain in SSLObject and SSLSocket (GH-118669) (#123082)
gh-118658: Return consistent types from `get_un/verified_chain` in `SSLObject` and `SSLSocket` (GH-118669)
(cherry picked from commit 8ef358dae1)

Co-authored-by: Mateusz Nowak <nowak.mateusz@hotmail.com>
Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org>
2024-08-19 10:39:28 -05:00
Miss Islington (bot)
0a02026a08
[3.13] gh-123123: Fix display of syntax errors covering multiple lines (GH-123131) (#123147)
gh-123123: Fix display of syntax errors covering multiple lines (GH-123131)
(cherry picked from commit 48856ead6a)

Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2024-08-19 15:35:47 +00:00
Miss Islington (bot)
ff58c3cb48
[3.13] gh-123022: Fix crash with Py_Initialize in background thread (GH-123052) (#123114)
Check that the current default heap is initialized in
`_mi_os_get_aligned_hint` and `mi_os_claim_huge_pages`.

The mimalloc function `_mi_os_get_aligned_hint` assumes that there is an
initialized default heap. This is true for our main thread, but not for
background threads. The problematic code path is usually called during
initialization (i.e., `Py_Initialize`), but it may also be called if the
program allocates large amounts of memory in total.

The crash only affected the free-threaded build.
(cherry picked from commit d061ffea7b)

Co-authored-by: Sam Gross <colesbury@gmail.com>
2024-08-17 20:38:02 +00:00
Miss Islington (bot)
1f7071572e
[3.13] gh-122247: Move instruction instrumentation sanity check after tracing check (GH-122251) (GH-122812)
(cherry picked from commit 57d7c3e78f)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2024-08-16 12:01:40 +02:00
Miss Islington (bot)
cf6d14b966
[3.13] gh-116622: Add Android test script (GH-121595) (#123061)
gh-116622: Add Android test script (GH-121595)

Adds a script for running the test suite on Android emulator devices. Starting
with a fresh install of the Android Commandline tools; the script manages
installing other requirements, starting the emulator (if required), and
retrieving results from that emulator.
(cherry picked from commit f84cce6f25)

Co-authored-by: Malcolm Smith <smith@chaquo.com>
2024-08-16 16:36:46 +08:00
Miss Islington (bot)
0dd89a7f40
[3.13] gh-116622: Android logging fixes (GH-122698) (#122719)
gh-116622: Android logging fixes (GH-122698)

Modifies the handling of stdout/stderr redirection on Android to accomodate
the rate and buffer size limits imposed by Android's logging infrastructure.
(cherry picked from commit b0c48b8fd8)

Co-authored-by: Malcolm Smith <smith@chaquo.com>
2024-08-16 16:07:42 +08:00
Miss Islington (bot)
a604b2440f
[3.13] gh-123046: Fix regexp to catch cases where the module name is omitted from the weakref repr (GH-123047) (#123058)
gh-123046: Fix regexp to catch cases where the module name is omitted from the weakref repr (GH-123047)
(cherry picked from commit 786cac0c64)

Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
Co-authored-by: sobolevn <mail@sobolevn.me>
2024-08-16 07:41:49 +00:00
Miss Islington (bot)
5ac14eeea6
[3.13] gh-116608: Apply style and compatibility changes from importlib_resources. (GH-123028) (#123051)
gh-116608: Apply style and compatibility changes from importlib_metadata. (GH-123028)
(cherry picked from commit e913d2c87f)

Co-authored-by: Jason R. Coombs <jaraco@jaraco.com>
2024-08-15 19:57:07 +00:00
Miss Islington (bot)
d218810e20
[3.13] GH-85633: Fix pathlib test failures on filesystems without world-write. (GH-122883) (#122979)
GH-85633: Fix pathlib test failures on filesystems without world-write. (GH-122883)

Replace `umask(0)` with `umask(0o002)` so the created files are not
world-writable, and replace `umask(0o022)` with `umask(0o026)` to check
that permissions for 'others' can still be set.
(cherry picked from commit 5f68511522)

Co-authored-by: Barney Gale <barney.gale@gmail.com>
2024-08-13 17:39:14 +00:00
Miss Islington (bot)
55aede7342
[3.13] gh-122888: Fix crash on certain calls to str() (GH-122889) (#122947)
Fixes GH-122888
(cherry picked from commit 53ebb6232a)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2024-08-12 16:53:05 +00:00