Commit graph

32082 commits

Author SHA1 Message Date
Tian Gao
e91ef13861
gh-122029: Log call events in sys.setprofile when it's a method with c function (GH-122072)
Log call events in sys.setprofile when it is a method with a C function.
2024-07-23 15:25:26 -07:00
Eric Snow
41a91bd67f
gh-122199: Skip test_slot_wrappers When Checking For Refleaks (gh-122200) 2024-07-23 21:19:17 +00:00
Jelle Zijlstra
7b7b90d1ce
gh-119180: Add annotationlib module to support PEP 649 (#119891)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-07-23 21:16:50 +00:00
Sam Gross
64e221d7ad
gh-117657: Skip tests that use threads after fork (#122194)
These tests fail when run under thread sanitizer due to the use of fork
and threads.
2024-07-23 16:30:49 -04:00
Eric Snow
33d32faa58
gh-117482: Expand Tests for Slot Wrappers of Inherited Slots of Static Builtin Types (gh-122192) 2024-07-23 19:57:26 +00:00
Serhiy Storchaka
4606eff0aa
gh-122129: Improve support of method descriptors and wrappers in the help title (GH-122157) 2024-07-23 20:45:21 +03:00
Serhiy Storchaka
e6b25e9a09
gh-122163: Add notes for JSON serialization errors (GH-122165)
This allows to identify the source of the error.
2024-07-23 20:02:54 +03:00
Sam Gross
2c1b1e7a07
gh-121973: Fix flaky test_pyrepl tests (GH-122140)
This fixes the flakiness in:
* test_inspect_keeps_globals_from_inspected_file
* test_inspect_keeps_globals_from_inspected_module

The output already includes newlines. Adding newlines for every entry in
the output list introduces non-determinism because it added '\n' in
places where stdout is flushed or some buffer becomes full.

The regex also needed to be updated because pyrepl includes control
characters -- the visible output on each line doesn't immediately follow
a newline character.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2024-07-23 15:17:13 +02:00
Mark Shannon
624bda7638
GH-122155: Fix cases generator to correctly compute 'peek' offset for error handling (GH-122158) 2024-07-23 14:12:06 +01:00
Russell Keith-Magee
1bcc9eb862
gh-121832: Skip subinterpreter static type check on iOS to restore test suite. (GH-122150) 2024-07-23 11:17:50 +01:00
Sebastian Rittau
375c9f6dfb
gh-122088: Copy the coroutine status of the underlying callable in @warnings.deprecated (#122086)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-07-23 10:59:28 +01:00
Jelle Zijlstra
2762c6cc5e
gh-121637: Syntax error for optimized-away incorrect await (#121656)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-07-22 14:12:43 -07:00
Serhiy Storchaka
69f2dc5c06
Refactor test_capi.test_long (GH-122113)
Share common code for tests for PyLong_As*() functions.

Co-authored-by: Victor Stinner <vstinner@python.org>
2024-07-22 21:43:00 +03:00
HarryLHW
2408a8a22b
gh-121795: Improve performance of set membership testing from set arguments (#121796) 2024-07-22 10:05:23 -05:00
Bradley Reynolds
97668192f7
Remove now unused function from itertools tests (#122100) 2024-07-22 10:03:20 -05:00
Bénédikt Tran
c09d4c4a26
gh-119698: deprecate `symtable.Class.get_methods` (#121902) 2024-07-22 07:04:17 -07:00
Łukasz Langa
cad11a2bdc
gh-111051: [tests] Wait a second to support filesystems with low-resolution mtime (GH-121959) 2024-07-22 13:03:07 +02:00
Kirill Podoprigora
5901d92739
gh-122096: Remove accidentally left debugging prints (#122097) 2024-07-21 20:48:39 +01:00
Barney Gale
c4c7097e64
GH-73991: Support preserving metadata in pathlib.Path.copytree() (#121438)
Add *preserve_metadata* keyword-only argument to `pathlib.Path.copytree()`,
defaulting to false. When set to true, we copy timestamps, permissions,
extended attributes and flags where available, like `shutil.copystat()`.
2024-07-20 23:32:52 +01:00
Barney Gale
094375b9b7
GH-73991: Add pathlib.Path.rmtree() (#119060)
Add a `Path.rmtree()` method that removes an entire directory tree, like
`shutil.rmtree()`. The signature of the optional *on_error* argument
matches the `Path.walk()` argument of the same name, but differs from the
*onexc* and *onerror* arguments to `shutil.rmtree()`. Consistency within
pathlib is probably more important.

In the private pathlib ABCs, we add an implementation based on `walk()`.

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2024-07-20 20:14:13 +00:00
Sam Gross
a09e215abf
gh-121988: Fix test hang when pyrepl is not available (#121990)
Also explicitly fail the test if we timeout while waiting for output so
that this failure mode is caught earlier.
2024-07-20 16:04:14 +02:00
Pablo Galindo Salgado
2009e25e26
gh-122026: Fix identification of mismatched parentheses inside f-strings (#122028) 2024-07-19 19:08:08 +02:00
Karolina Surma
186b4d8ea2
gh-122014: Account for abi_thread in test_sysconfig.test_user_similar (gh-122017) 2024-07-19 16:48:20 +00:00
Serhiy Storchaka
1a0c7b9ba4
gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907) 2024-07-19 08:06:02 +00:00
Serhiy Storchaka
c8d2630995
gh-82017: Support as_integer_ratio() in the Fraction constructor (GH-120271)
Any objects that have the as_integer_ratio() method (e.g. numpy.float128)
can now be converted to a fraction.
2024-07-19 08:06:53 +03:00
Tian Gao
1ab1778283
gh-120289: Disallow disable() and clear() in external timer to prevent use-after-free (#120297) 2024-07-18 12:47:22 -07:00
Matthieu Caneill
cecaceea31
gh-120930: Remove extra blank occuring in wrapped encoded words in email headers (GH-121747) 2024-07-18 14:48:05 +02:00
Gregor
1056f2bc20
gh-121657: Additional yield from error test using lambda (GH-121722) 2024-07-18 14:29:03 +02:00
Mark Shannon
3eacfc1a4d
GH-121784: Generate an error during code gen if a variable is marked unused, but is used and thus cached in a prior uop. (#121788)
* Reject uop definitions that declare values as 'unused' that are already cached by prior uops

* Track which variables are defined and only load from memory when needed

* Support explicit `flush` in macro definitions. 

* Make sure stack is flushed in where needed.
2024-07-18 12:49:24 +01:00
Mark Shannon
169324c27a
GH-120024: Use pointer for stack pointer (GH-121923) 2024-07-18 12:47:21 +01:00
Jelle Zijlstra
63ddd28cf3
gh-121921: Make bogus_code_obj.py crash the interpreter (#121922) 2024-07-18 04:02:08 -04:00
Łukasz Langa
19cbf8fd63
gh-120678: Guard against stdin.fileno() being unavailable (#121924) 2024-07-17 16:05:34 +00:00
Alex Waygood
ac07451116
gh-120678: pyrepl: Include globals from modules passed with -i (GH-120904)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2024-07-17 16:18:42 +02:00
Bénédikt Tran
6682d91678
gh-119698: fix a special case in symtable.Class.get_methods (#121802) 2024-07-17 06:27:35 -07:00
Petr Viktorin
cffad5c6ef
gh-121863: Immortalize names in code objects to avoid crash (GH-121903) 2024-07-17 11:31:28 +02:00
Victor Stinner
bfdbeac355
gh-121849: Fix PyUnicodeWriter_WriteSubstring() crash if len=0 (#121896)
Do nothing if start=end.
2024-07-17 10:26:05 +02:00
Michael
dc9cc91f76
Fix Several Typos in Readme & Tests (#121559) 2024-07-17 00:24:35 -07:00
sobolevn
f6c7d8d79c
gh-121842: Improve coverage of PyBytes_FromStringAndSize (#121843) 2024-07-17 10:00:07 +03:00
Tian Gao
e65cb4c6f0
gh-118934: Make PyEval_GetLocals return borrowed reference (#119769)
Co-authored-by: Alyssa Coghlan <ncoghlan@gmail.com>
2024-07-16 12:17:47 -07:00
Sam Gross
162b41f577
gh-121860: Fix crash when materializing managed dict (#121866)
The object's inline values may be marked invalid if the materialized
dict was already initialized and then deleted.
2024-07-16 14:58:36 -04:00
Pablo Galindo Salgado
c46d64e0ef
gh-121130: Fix f-string format specifiers with debug expressions (#121150) 2024-07-16 19:57:22 +01:00
Andreas Stocker
8f2532168b
gh-59022: Added tests for pkgutil.extend_path (#59022) (GH-121673)
This adds tests for the documented behaviour of `pkgutil.extend_path`
regarding different argument types as well as for `*.pkg` files.
2024-07-16 17:14:26 +02:00
Petr Viktorin
263c7e611b
gh-121160: Add some tests for readline.set_history_length (GH-121326) 2024-07-16 16:09:08 +02:00
Lysandros Nikolaou
8549559f38
gh-120317: Lock around global state in the tokenize module (#120318)
Co-authored-by: Pablo Galindo <pablogsal@gmail.com>
2024-07-16 11:35:57 +02:00
saucoide
7d111dac16
gh-121610: pyrepl - handle extending blocks when multi-statement blocks are pasted (GH-121757)
console.compile with the "single" param throws an exception when
there are multiple statements, never allowing to adding newlines
to a pasted code block (gh-121610)

This add a few extra checks to allow extending when in an indented
block, and tests for a few examples

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2024-07-16 01:33:57 +02:00
Sam Gross
4134261ab8
gh-121605: Fix test hang when pyrepl is not available (GH-121820)
The fallback repl does not support "exit" without parentheses, so the
test would hang until the timeout expired.
2024-07-16 00:50:16 +02:00
Milan Oberkirch
e5c7216f37
gh-121790: Fix interactive console initialization (#121793)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2024-07-16 00:24:18 +02:00
Sam Gross
82a4dac9f6
gh-117657: Skip tests that fork with threads under TSan (#121599)
This avoids messages like:

  ThreadSanitizer: starting new threads after multi-threaded fork is not
  supported. Dying (set die_after_fork=0 to override)
2024-07-15 16:43:51 -04:00
Eric Snow
8b209fd4f8
gh-76785: Expand How Interpreter Channels Handle Interpreter Finalization (gh-121805)
See 6b98b274b6 for an explanation of the problem and solution.  Here I've applied the solution to channels.
2024-07-15 19:43:59 +00:00
Sergey B Kirpichev
fd085a411e
gh-121359: make clean environment (no PYTHON* vars) for test_pyrepl.TestMain (GH-121672)
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2024-07-15 21:21:49 +02:00