Commit graph

127508 commits

Author SHA1 Message Date
Tomas R.
bb9596fcfa
Add tomasr8 as a codeowner for AST, gettext and the Tier 2 optimizer (#135727) 2025-06-19 20:55:13 +01:00
Bénédikt Tran
c765683398
gh-135561: ensure that the GIL is held when handling an HACL* error in _hmac (#135562) 2025-06-19 17:27:19 +00:00
sobolevn
9c3c02019c
gh-135709: Fix two compile warnings on WASM buildbot (#135712) 2025-06-19 18:46:40 +03:00
Rafael Fontenelle
754190287e
Docs: Add missing lines between regex and text (GH-134505) 2025-06-19 11:01:29 -04:00
Andrii Hrimov
7cc8949692
gh-135273: Unify ZoneInfo.from_file signatures (#135274)
Align `ZoneInfo.from_file` pure-Python signature with Argument Clinic signature.
2025-06-19 16:47:35 +02:00
Ken Jin
0243260284
gh-135379: Move PyLong_CheckCompact to private header and rename it (GH-135707) 2025-06-19 13:09:09 +00:00
Rafael Fontenelle
ff639af8ee
Docs: Emphasize parameter name in pkgutil.iter_importers (GH-135597) 2025-06-19 08:56:43 -04:00
Ken Jin
1b969f6d57
gh-135379: Add back const cast to _PyLong_IsCompact (GH-135706) 2025-06-19 13:54:21 +02:00
Stan Ulbrych
13efe3f599
gh-133934: Mention special commands in sqlite3 .help message (GH-135224) 2025-06-19 13:47:29 +02:00
Stan Ulbrych
ecd83e02b1
gh-133439: Fix the error message in the sqlite3 CLI (GH-133807)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-06-19 13:46:33 +02:00
Mark Shannon
9731dd2c8d
GH-135379: Specialize int operations for compact ints only (GH-135668) 2025-06-19 11:10:29 +01:00
Victor Stinner
5c25c884b9
gh-126112: Fix test_os.TimerfdTests: use 10 ms resolution (#135681)
Use 10 ms for CLOCK_RES instead of 100 ms to tolerate slow buildbots.
2025-06-19 11:40:40 +02:00
Petr Viktorin
7a20c72cb6
gh-111758: Run UBSan in GitHub Actions (GH-135578)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-06-19 11:36:56 +02:00
Petr Viktorin
140731ff67
Document that PyType_GetModuleByDef returns a borrowed reference (GH-135666) 2025-06-19 09:00:41 +02:00
Eric Snow
725da50520
gh-133485: Use interpreters.Interpreter in InterpreterPoolExecutor (gh-133957)
Most importantly, this resolves the issues with functions and types defined in __main__.
It also expands the number of supported objects and simplifies the implementation.
2025-06-18 17:57:14 -06:00
Peter Bierma
15f2bac02c
gh-135450: Remove assertion in _PyCode_CheckNoExternalState (gh-135466)
The assertion reflected a misunderstanding of situations where "hidden" variables might exist,
namely generator expressions and comprehensions.
2025-06-18 17:31:23 -06:00
alexey semenyuk
e9b647dd30
gh-134538: Add link to shutil.rmtree example in function docs (GH-135540) 2025-06-18 22:10:20 +01:00
Sam Gross
17ac3933c3
gh-135641: Fix flaky test_capi.test_lock_two_threads test case (gh-135642)
The mutex may have the `_Py_HAS_PARKED` bit set.
2025-06-18 14:24:05 -04:00
Yuki Kobayashi
46c60e0d0b
Docs: Fix markups for emphasis (GH-135598)
The word emphasis character `_` is not supported as sphinx markup, so changed to `*`.
2025-06-18 13:32:43 -04:00
Kumar Aditya
4dea6b48cc
gh-135639: fix test_cycle test (#135662) 2025-06-18 22:11:35 +05:30
Serhiy Storchaka
c55512311b
gh-135376: Fix and improve test_random (GH-135377)
* Remove duplicated code. Tests for Random and SystemRandom now share
  the code.
* Move implementation agnostic tests that was only run for SystemRandom,
  so they are now run for Random too.
* Add tests for __index__() support.
* Add tests for randint().
2025-06-18 18:26:01 +03:00
Petr Viktorin
21f3d15534
gh-135676: lexical analysis: Improve section on Numeric literals (GH-134850) 2025-06-18 16:34:18 +02:00
Victorien
343719d98e
gh-135646: Raise consistent NameError exceptions in ForwardRef.evaluate() (#135663) 2025-06-18 13:00:55 +00:00
Duane Griffin
9877d191f4
gh-135335: flush stdout/stderr in forkserver after preloading modules (#135338)
If a preloaded module writes to stdout or stderr, and the stream is buffered,
child processes will inherit the buffered data after forking. Attempt to
prevent this by flushing the streams after preload.

Co-authored-by: Mikhail Efimov <efimov.mikhail@gmail.com>
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-06-18 14:17:02 +02:00
Stan Ulbrych
5f6ab92465
gh-133390: Document SQLITE_KEYWORDS (GH-135659) 2025-06-18 12:56:49 +02:00
Russell Keith-Magee
1c7efaf58a
gh-134632: Add iOS/Android test skip for C API check for headers. (#135656)
iOS and Android don't ship headers in the testbed, so we can't test for their existence.
2025-06-18 14:21:14 +08:00
Hood Chatham
01c80b2650
gh-127146: Enable large files on Emscripten (#135635)
Large files have been fully supported by Emscripten for a long time.
2025-06-18 04:34:30 +00:00
Victorien
504ae606e1
gh-119180: Only fetch globals and locals if necessary in annotationlib.get_annotations() (#135644) 2025-06-17 20:29:13 -07:00
Hood Chatham
e4ccd46bf7
gh-127146: Emscripten: Fix pathlib glob_dotdot test (#135624)
The Emscripten path resolver uses the same mechanism for resolving `..`
at a file system root as for resolving symlinks. This is because
roots don't store their mountpoints. If the parent of a node is itself,
it is a root but it might be a mountpoint in some other file system.

If a path has enough `..`'s at the root, it will return ELOOP.
Enough turns out to be 49.
2025-06-18 11:20:43 +08:00
Hood Chatham
ce58afb400
gh-127146: Emscripten: Fix test failure due to missing os.link (#135626)
Check for existence of os.link, rather than assuming it exists.
2025-06-18 03:19:23 +00:00
Hood Chatham
2a49c54ab2
gh-127146: Emscripten: Skip test_url2pathname_resolve_host (#135634)
Emscripten currently `gethostbyname_r()` returns an incorrect
IP address for `localhost`. Will be resolved by upstream PR:
https://github.com/emscripten-core/emscripten/pull/24593
2025-06-18 10:59:01 +08:00
Hood Chatham
28c71ee4b2
gh-127146: Allow ignored keys to be missing in test_sysconfig (#135622)
Fixes the test on Emscripten where userbase can be missing.
2025-06-18 10:51:46 +08:00
Vladyslav Lazoryk
7117002591
gh-135627: Remove documentation for LOAD_CONST_IMMORTAL opcode (GH-135632)
Remove documentation for LOAD_CONST_IMMORTAL opcode
2025-06-18 10:39:41 +08:00
Donghee Na
52be7f445e
gh-133931: Introduce _PyObject_XSetRefDelayed to replace Py_XSETREF (gh-134377) 2025-06-18 08:36:02 +09:00
Kumar Aditya
cb39410111
Initial internal asyncio docs (#135469)
Currently focused on `_asynciomodule.c` but could also receive updates about internals of the Python package.
2025-06-17 12:21:41 -07:00
Eric Snow
269e19e0a7
gh-132775: Fix Interpreter.call() __main__ Visibility (gh-135595)
As noted in the new tests, there are a few situations we must carefully accommodate
for functions that get pickled during interp.call().  We do so by running the script
from the main interpreter's __main__ module in a hidden module in the other
interpreter.  That hidden module is used as the function __globals__.
2025-06-17 13:16:59 -06:00
Ken Jin
fba5dded6d
gh-134584: Decref elimination for float ops in the JIT (GH-134588)
This PR adds a PyJitRef API to the JIT's optimizer that mimics the _PyStackRef API. This allows it to track references and their stack lifetimes properly. Thus opening up the doorway to refcount elimination in the JIT.
2025-06-17 23:25:53 +08:00
Mark Shannon
8dd8b5c2f0
GH-135379: Support limited scalar replacement for replicated uops in the JIT code generator. (GH-135563)
* Use it to support efficient specializations of COPY and SWAP in the JIT.
2025-06-17 13:43:09 +01:00
PuQing
a9e66a7c50
gh-132815: Add support for JUMP_BACKWARD in specialization stats (#135606) 2025-06-17 14:11:09 +02:00
Emma Smith
acc20a83f4
gh-134262: Catch both URLError and ConnectionError in retries (#135365) 2025-06-17 14:51:23 +03:00
Michał Górny
0d582def34
gh-134632: Fix build-details.json to use INCLUDEPY path (#134633)
* gh-134632: Fix `build-details.json` to use `INCLUDEPY` path

Fix ``build-details.json`` generation to use ``INCLUDEPY``, in order to
reference the ``pythonX.Y`` subdirectory of the include directory, as
required in :pep:`739`, instead of the top-level include directory.

* test_build_details: Add tests for the c_api section

* test_build_details: Expect pkgconfig for CPython unconditionally
2025-06-17 08:05:04 +00:00
Hugo van Kemenade
c51f241c97
gh-123299: Add PEP 779 to What's New in Python 3.14 (#135555) 2025-06-17 09:02:35 +03:00
PuQing
5b3a826888
gh-135489: Show verbose output for failing tests during PGO profiling step with --enable-optimizations (#135512) 2025-06-17 01:06:48 -04:00
Ned Deily
7c685894cd
gh-119132: Update 'Using Python on macOS' documentation. (#135591)
Remove `experimental` qualification for free-threading in the document text. Note that images included in the document will be updated later in the release cycle.
2025-06-16 19:35:59 -04:00
Eric Snow
a450a0ddec
gh-135443: Sometimes Fall Back to __main__.__dict__ For Globals (gh-135491)
For several builtin functions, we now fall back to __main__.__dict__ for the globals
when there is no current frame and _PyInterpreterState_IsRunningMain() returns
true.  This allows those functions to be run with Interpreter.call().

The affected builtins:

* exec()
* eval()
* globals()
* locals()
* vars()
* dir()

We take a similar approach with "stateless" functions, which don't use any
global variables.
2025-06-16 17:34:19 -06:00
Hood Chatham
68b7e1a667
gh-128627: Emscripten: Add missing semicolon in ios detection code (#135590) 2025-06-16 23:17:17 +00:00
Peter Bierma
730133a0ac
Add Peter Bierma as a codeowner for the object and runtime lifecycle (#135588) 2025-06-17 00:03:53 +01:00
Hugo van Kemenade
21bac3aecd
Use replacements to update versions in "Using Python on macOS" (#130400) 2025-06-16 18:07:25 -04:00
Sam Gross
d8994b0a77
gh-132617: Fix dict.update() mutation check (gh-134815)
Use `ma_used` instead of `ma_keys->dk_nentries` for modification check
so that we only check if the dictionary is modified, not if new keys are
added to a different dictionary that shared the same keys object.
2025-06-16 12:55:20 -04:00
sobolevn
4c15505071
gh-135513: Fix unused variable warning in crossinterp.c (#135514) 2025-06-16 18:12:20 +02:00