Commit graph

50808 commits

Author SHA1 Message Date
Miss Islington (bot)
be8255ad8c
[3.12] gh-109207: Fix SystemError when printing symtable entry object. (GH-109225) (#109227)
gh-109207: Fix SystemError when printing symtable entry object. (GH-109225)
(cherry picked from commit 4297499696)

Co-authored-by: δΊ‘line <31395137+yunline@users.noreply.github.com>
2023-10-02 16:55:41 +02:00
Miss Islington (bot)
9207c870be
[3.12] gh-88943: Improve syntax error for non-ASCII character that follows a numerical literal (GH-109081) (#109090)
gh-88943: Improve syntax error for non-ASCII character that follows a numerical literal (GH-109081)

It now points on the invalid non-ASCII character, not on the valid numerical literal.
(cherry picked from commit b2729e93e9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-10-02 16:54:16 +02:00
Thomas Wouters
a4f186ad49 Merge branch '3.12' of https://github.com/python/cpython into 3.12 2023-10-02 16:44:26 +02:00
Miss Islington (bot)
62d9ae414f
[3.12] gh-109496: Skip test_capi.test_decref_freed_object() on ASAN (GH-109573) (#109578)
Co-authored-by: Victor Stinner <vstinner@python.org>
2023-10-02 15:09:35 +01:00
Thomas Wouters
0fb18b02c8 Python 3.12.0 2023-10-02 13:48:14 +02:00
Miss Islington (bot)
bb35fc3706
[3.12] gh-107888: Fix test_mmap.test_access_parameter() on macOS 14 (GH-109928) (#109929)
gh-107888: Fix test_mmap.test_access_parameter() on macOS 14 (GH-109928)
(cherry picked from commit 9dbfe2dc8e)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-10-02 12:09:54 +02:00
Miss Islington (bot)
69a9f47125
[3.12] gh-110045: Update symtable module for PEP 695 (GH-110066) (#110070)
gh-110045: Update symtable module for PEP 695 (GH-110066)
(cherry picked from commit 7dc2c5093e)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-09-29 08:10:22 +02:00
Miss Islington (bot)
538f505a37
[3.12] gh-109823: Adjust labels in compiler when removing an empty basic block which is a jump target (GH-109839) (#109865)
gh-109823: Adjust labels in compiler when removing an empty basic block which is a jump target (GH-109839)
(cherry picked from commit d73c12b88c)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2023-09-26 02:37:52 +02:00
Miss Islington (bot)
633bd6e428
[3.12] gh-109719: Fix missing jump target labels when compiler reorders cold/warm blocks (GH-109734) (#109749)
gh-109719: Fix missing jump target labels when compiler reorders cold/warm blocks (GH-109734)
(cherry picked from commit 7c55399172)

Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2023-09-24 13:51:30 +02:00
Irit Katriel
107e14820a
[3.12] gh-109627: duplicated small exit blocks need to be assigned jump target labels (#109630) (#109632)
gh-109627: duplicated smalll exit blocks need to be assigned jump target labels (#109630)

(cherry picked from commit 9ccf0545ef)
2023-09-22 15:27:29 +02:00
Thomas Wouters
b973ab3c3b Python 3.12.0rc3 2023-09-18 21:48:09 +02:00
Miss Islington (bot)
74a7f5d2da
[3.12] gh-109496: Detect Py_DECREF() after dealloc in debug mode (GH-109539) (#109545)
gh-109496: Detect Py_DECREF() after dealloc in debug mode (GH-109539)

On a Python built in debug mode, Py_DECREF() now calls
_Py_NegativeRefcount() if the object is a dangling pointer to
deallocated memory: memory filled with 0xDD "dead byte" by the debug
hook on memory allocators. The fix is to check the reference count
*before* checking for _Py_IsImmortal().

Add test_decref_freed_object() to test_capi.test_misc.
(cherry picked from commit 0bb0d88e2d)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-18 17:39:27 +00:00
Miss Islington (bot)
9412a874a7
[3.12] gh-109371: Fix monitoring with instruction events set (gh-109385) (#109542)
gh-109371: Fix monitoring with instruction events set (gh-109385)
(cherry picked from commit 412f5e85d6)

Co-authored-by: Tian Gao <gaogaotiantian@hotmail.com>
2023-09-18 17:40:51 +02:00
Miss Islington (bot)
2401b980da
[3.12] gh-108843: fix ast.unparse for f-string with many quotes (GH-108981) (#109541)
gh-108843: fix ast.unparse for f-string with many quotes (GH-108981)
(cherry picked from commit 23f9f6f464)

Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2023-09-18 14:44:13 +00:00
Miss Islington (bot)
f6fc831aa9
[3.12] gh-102251: Disable non-rerunnable test in test_import (GH-106013) (#109540)
gh-102251: Disable non-rerunnable test in test_import (GH-106013)
(cherry picked from commit 4849a80dd1)

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2023-09-18 14:31:01 +00:00
Gregory P. Smith
52bbb224ba
[3.12] gh-109096: Silence test_httpservers fork + threads DeprecationWarning on CGI support (#109471)
[3.12] gh-109096: Silence test_httpservers fork + threads DeprecationWarning on CGI support.

We're not fixing CGIHTTPRequestHandler as it is deprecated in 3.13 to go
away in 3.15.  This just removes noise from our test suite when warnings
are rightfully enabled.

If the long pre-existing fork+threading mix here ever causes anyone
deadlocks as is possible, disabling the test entirely on that platform
makes sense rather than attempting to fix
http.server.CGIHTTPRequestHandler or refactor to not use a threaded
server in the test.
2023-09-17 22:49:42 +02:00
Miss Islington (bot)
35c633d245
[3.12] gh-109219: propagate free vars through type param scopes (GH-109377) (#109410)
gh-109219: propagate free vars through type param scopes (GH-109377)
(cherry picked from commit 909adb5092)

Co-authored-by: Carl Meyer <carl@oddbird.net>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-09-15 00:42:39 +02:00
Miss Islington (bot)
52a9c5760c
[3.12] gh-109396: Fix test_socket.test_hmac_sha1() in FIPS mode (GH-109423) (#109426)
gh-109396: Fix test_socket.test_hmac_sha1() in FIPS mode (GH-109423)

Use a longer key: FIPS mode requires at least of at least 112 bits.
The previous key was only 32 bits.
(cherry picked from commit e091b9f20f)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-15 00:41:33 +02:00
Irit Katriel
3eae45f94d
[3.12] gh-105658: fix excess trace events for except block ending with a conditional block (#109384) (#109411)
gh-105658: fix excess trace events for except block ending with a conditional block (#109384)

(cherry picked from commit 4a54074a0f)
2023-09-15 00:41:03 +02:00
Miss Islington (bot)
5c7e8c3b72
[3.12] gh-109341: Fix crash on compiling invalid AST including TypeAlias (GH-109349) (#109381)
gh-109341: Fix crash on compiling invalid AST including TypeAlias (GH-109349)
(cherry picked from commit 987b4bc087)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-09-15 00:40:19 +02:00
Miss Islington (bot)
36d6ba08d0
[3.12] gh-60283: Check for redefined test names in CI (GH-109161) (#109365)
* gh-60283: Check for redefined test names in CI (GH-109161)
(cherry picked from commit 3cb9a8edca)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>

* Update exclude list for 3.12

* Explicitly exclude files which failed to lint/parse

* Sort to avoid future merge conflicts

---------

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-09-15 00:38:54 +02:00
Miss Islington (bot)
c30d5df74c
[3.12] gh-104736: Fix test_gdb tests on ppc64le with clang (GH-109360) (#109361)
gh-104736: Fix test_gdb tests on ppc64le with clang (GH-109360)

Fix test_gdb on Python built with LLVM clang 16 on Linux ppc64le (ex:
Fedora 38). Search patterns in gdb "bt" command output to detect
when gdb fails to retrieve the traceback. For example, skip a test if
"Backtrace stopped: frame did not save the PC" is found.
(cherry picked from commit 44d9a71ea2)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-13 12:37:10 +02:00
Miss Islington (bot)
3d8e4d7d0c
[3.12] gh-109357: Fix test_monitoring.test_gh108976() (GH-109358) (#109359)
gh-109357: Fix test_monitoring.test_gh108976() (GH-109358)

The test now calls free_tool_id() so it can be run multiple times in
the same process. For example, the following command no longer fails:

    python -m test test_monitoring -R 3:3
(cherry picked from commit 388d91cd47)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-13 12:36:30 +02:00
Pablo Galindo Salgado
21f4e6d6cb
[3.12] gh-109114: Relax the check for invalid lambdas inside f-strings to avoid false positives (GH-109121). (#109155)
(cherry picked from commit 5bda2f637e)

Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
2023-09-12 15:52:25 +00:00
Miss Islington (bot)
8208657f3d
[3.12] gh-109118: Disallow nested scopes within PEP 695 scopes within classes (GH-109196) (#109297)
gh-109118: Disallow nested scopes within PEP 695 scopes within classes (GH-109196)

Fixes GH-109118. Fixes GH-109194.

(cherry picked from commit b88d9e75f6)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Carl Meyer <carl@oddbird.net>
2023-09-12 16:31:26 +02:00
Miss Islington (bot)
7479a7aca2
[3.12] gh-109295: Fix test_os.test_access_denied() for TEMP=cwd (GH-109299) (#109304)
gh-109295: Fix test_os.test_access_denied() for TEMP=cwd (GH-109299)

Fix test_os.test_access_denied() when the TEMP environment variable
is equal to the current working directory. Run the test using a
different filename, since self.fname already exists in this case.
(cherry picked from commit 7dedfd36dc)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-12 16:23:03 +02:00
Miss Islington (bot)
8acfb42ea3
[3.12] gh-109295: Clean up multiprocessing in test_asyncio and test_compileall (GH-109298) (#109301)
gh-109295: Clean up multiprocessing in test_asyncio and test_compileall (GH-109298)

test_asyncio and test_compileall now clean up multiprocessing by
calling multiprocessing _cleanup_tests(): explicitly clean up
resources and stop background processes like the resource tracker.
(cherry picked from commit 09ea4b8706)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-12 16:22:43 +02:00
Miss Islington (bot)
2004e12d8d
[3.12] gh-109195: fix source location for super load before LOAD_SUPER_ATTR (GH-109289) (#109291)
gh-109195: fix source location for super load before LOAD_SUPER_ATTR (GH-109289)
(cherry picked from commit ceeb4173ae)

Co-authored-by: Carl Meyer <carl@oddbird.net>
2023-09-12 16:20:41 +02:00
Miss Islington (bot)
33ee98b217
[3.12] gh-90805: Make sure test_functools works with and without _functoolsmodule (GH-108644) (#109275)
gh-90805: Make sure test_functools works with and without _functoolsmodule (GH-108644)
(cherry picked from commit baa6dc8e38)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-09-12 16:17:05 +02:00
Miss Islington (bot)
5305cdc39b
[3.12] gh-109182: Fix and improve tests for gh-108654 (GH-109189) (#109271)
gh-109182: Fix and improve tests for gh-108654 (GH-109189)
(cherry picked from commit c0f488b88f)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-12 16:15:40 +02:00
Mark Shannon
3efe7bc65f
[3.12] GH-108976. Keep monitoring data structures valid during de-optimization during callback. (GH-109131) (#109268)
GH-108976. Keep monitoring data structures valid during de-optimization during callback. (GH-109131)
2023-09-12 16:14:49 +02:00
Miss Islington (bot)
5e917a0b09
[3.12] Test DocTestFinder directly instead of calling support.run_doctest() (GH-108917) (#109259)
Test DocTestFinder directly instead of calling support.run_doctest() (GH-108917)
(cherry picked from commit 0abc935086)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-12 16:13:45 +02:00
Miss Islington (bot)
df64210ad0
[3.12] gh-109230: test_pyexpat no longer depends on the current directory (GH-109233) (#109241)
gh-109230: test_pyexpat no longer depends on the current directory (GH-109233)

Fix test_pyexpat.test_exception(): it can now be run from a directory
different than Python source code directory. Before, the test failed
in this case.

Skip the test if Modules/pyexpat.c source is not available. Skip also
the test on Python implementations other than CPython.
(cherry picked from commit e55aab9578)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-12 16:03:47 +02:00
Miss Islington (bot)
b3613815d4
[3.12] gh-109237: Fix test_site for non-ASCII working directory (GH-109238) (#109239)
gh-109237: Fix test_site for non-ASCII working directory (GH-109238)

Fix test_site.test_underpth_basic() when the working directory
contains at least one non-ASCII character: encode the "._pth" file to
UTF-8 and enable the UTF-8 Mode to use UTF-8 for the child process
stdout.
(cherry picked from commit cbb3a6f8ad)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-12 16:03:18 +02:00
Miss Islington (bot)
888bcf49c0
[3.12] Fix an ironic typo in a code comment. (gh-109186) (#109188)
Fix an ironic typo in a code comment. (gh-109186)
(cherry picked from commit 75cd86599b)

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
2023-09-12 16:00:13 +02:00
Jelle Zijlstra
acde502e8a
[3.12] gh-109118: Fix runtime crash when NameError happens in PEP 695 function (GH-109123) (#109173)
* gh-109118: Fix runtime crash when NameError happens in PEP 695 function (#109123)

(cherry picked from commit 17f994174d)

* [3.12] gh-109118: Fix runtime crash when NameError happens in PEP 695 function (GH-109123).
(cherry picked from commit 17f994174d)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-09-12 15:59:09 +02:00
Miss Islington (bot)
c76f4b97dc
[3.12] GH-109067: fix randomly failing test_async_gen_asyncio_gc_aclose_09 test (GH-109142) (#109149)
GH-109067: fix randomly failing `test_async_gen_asyncio_gc_aclose_09` test (GH-109142)

Use `asyncio.sleep(0)` instead of short sleeps.
(cherry picked from commit ccd48623d4)

Co-authored-by: Kumar Aditya <kumaraditya@python.org>
2023-09-12 15:56:02 +02:00
Miss Islington (bot)
ca848bbf78
[3.12] gh-109022: [Enum] require names=() to create empty enum type (GH-109048) (#109122)
gh-109022: [Enum] require `names=()` to create empty enum type (GH-109048)

add guard so that ``Enum('bar')`` raises a TypeError instead of
creating a new enum class called `bar`.  To create the new but
empty class, use:

    huh = Enum('bar', names=())
(cherry picked from commit c74e440168)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2023-09-12 15:53:16 +02:00
Miss Islington (bot)
d533ab17ec
[3.12] gh-108732: include comprehension locals in frame.f_locals (GH-109026) (#109097)
gh-108732: include comprehension locals in frame.f_locals (GH-109026)
(cherry picked from commit f2584eade3)

Co-authored-by: Carl Meyer <carl@oddbird.net>
Co-authored-by: Radislav Chugunov <52372310+chgnrdv@users.noreply.github.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2023-09-12 15:50:29 +02:00
Miss Islington (bot)
af83d1e821
[3.12] gh-106922: Fix error location for constructs with spaces and parentheses (GH-108959) (#109147)
Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
2023-09-08 17:04:28 +00:00
Miss Islington (bot)
a1ba0e531c
[3.12] gh-103186: Suppress RuntimeWarning about unclosed async iterator in test_sys_settrace (GH-109075) (#109138)
gh-103186: Suppress RuntimeWarning about unclosed async iterator in test_sys_settrace (GH-109075)
(cherry picked from commit d485551c9d)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-08 17:56:11 +02:00
Miss Islington (bot)
68ba35eecb
[3.12] gh-68403: Fix test_coverage in test_trace (GH-108910) (#109104)
gh-68403: Fix test_coverage in test_trace (GH-108910)

Its behavior no longer affected by test running options such as -m.
(cherry picked from commit 7e1a7abb98)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-08 15:25:18 +02:00
Miss Islington (bot)
41ff5b0674
[3.12] gh-75743: Restore test_timeout.testConnectTimeout() (GH-109087) (#109103)
gh-75743: Restore test_timeout.testConnectTimeout() (GH-109087)

This un-skips this test now that pythontest.net implements appropriate firewall
rules for it.
(cherry picked from commit 1829a3c9a3)

Co-authored-by: Ee Durbin <ewdurbin@gmail.com>
2023-09-08 15:24:55 +02:00
Miss Islington (bot)
02e51f86d8
[3.12] gh-103186: Remove debug print in test_sys_settrace (GH-109077) (#109084)
gh-103186: Remove debug print in test_sys_settrace (GH-109077)
(cherry picked from commit e4bb0026b9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-08 15:22:19 +02:00
Miss Islington (bot)
29404b6d25
[3.12] gh-103186: Suppress and assert expected RuntimeWarnings in test_sys_settrace (GH-103244) (#109066)
gh-103186: Suppress and assert expected RuntimeWarnings in test_sys_settrace (GH-103244)

Caused as a result of frame manipulation where locals are never assigned / initialised.
(cherry picked from commit 3e53ac9903)

Co-authored-by: Ijtaba Hussain <ijtabahussain@live.com>
2023-09-08 15:21:38 +02:00
Miss Islington (bot)
8c9f5f714e
[3.12] test.pythoninfo logs freedesktop_os_release() (GH-109057) (#109064)
test.pythoninfo logs freedesktop_os_release() (GH-109057)
(cherry picked from commit babdced23f)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-08 15:20:05 +02:00
Miss Islington (bot)
55d7e8fef1
[3.12] gh-108851: Fix tomllib recursion tests (GH-108853) (#109012)
gh-108851: Fix tomllib recursion tests (GH-108853)

* Add get_recursion_available() and get_recursion_depth() functions
  to the test.support module.
* Change infinite_recursion() default max_depth from 75 to 100.
* Fix test_tomllib recursion tests for WASI buildbots: reduce the
  recursion limit and compute the maximum nested array/dict depending
  on the current available recursion limit.
* test.pythoninfo logs sys.getrecursionlimit().
* Enhance test_sys tests on sys.getrecursionlimit()
  and sys.setrecursionlimit().
(cherry picked from commit 8ff1142578)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-08 15:18:02 +02:00
Miss Islington (bot)
038b0a9cb0
[3.12] gh-89392: Use unittest test runner for doctests in test_getopt (GH-108916) (#108919)
gh-89392: Use unittest test runner for doctests in test_getopt (GH-108916)
(cherry picked from commit f980cc19b9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-08 15:17:14 +02:00
Miss Islington (bot)
da02508a0e
[3.12] gh-89392: Use normal unittest runner in test_type_cache (GH-108911) (#108913)
gh-89392: Use normal unittest runner in test_type_cache (GH-108911)
(cherry picked from commit eaabaac7c0)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-08 15:16:55 +02:00
Miss Islington (bot)
4b749ba470
[3.12] gh-91960: Skip test_gdb if gdb cannot retrive Python frames (GH-108999) (#109010)
gh-91960: Skip test_gdb if gdb cannot retrive Python frames (GH-108999)

Skip test_gdb if gdb is unable to retrieve Python frame objects: if a
frame is "<optimized out>". When Python is built with "clang -Og",
gdb can fail to retrive the 'frame' parameter of
_PyEval_EvalFrameDefault(). In this case, tests like py_bt() are
likely to fail. Without getting access to Python frames,
python-gdb.py is mostly clueless on retrieving the Python traceback.
Moreover, test_gdb is no longer skipped on macOS if Python is built
with Clang.
(cherry picked from commit fbce43a251)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-08 15:16:16 +02:00