]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
19 months agogh-116780: Fix `test_inspect` in `-OO` mode (#116788)
Nikita Sobolev [Thu, 14 Mar 2024 10:16:18 +0000 (13:16 +0300)] 
gh-116780: Fix `test_inspect` in `-OO` mode (#116788)

19 months agogh-90300: Fix undocumented envvars in the Python CLI help (GH-116765)
Serhiy Storchaka [Thu, 14 Mar 2024 10:09:19 +0000 (12:09 +0200)] 
gh-90300: Fix undocumented envvars in the Python CLI help (GH-116765)

19 months agogh-113308: Remove some internal parts of `uuid` module (#115934)
Nikita Sobolev [Thu, 14 Mar 2024 10:01:41 +0000 (13:01 +0300)] 
gh-113308: Remove some internal parts of `uuid` module (#115934)

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
19 months agogh-116785: Fix direct invocation of `test_inspect` (#116787)
Nikita Sobolev [Thu, 14 Mar 2024 09:55:54 +0000 (12:55 +0300)] 
gh-116785: Fix direct invocation of `test_inspect` (#116787)

19 months agogh-116646: Add limited C API support to AC fildes converter (#116769)
Victor Stinner [Thu, 14 Mar 2024 09:28:58 +0000 (10:28 +0100)] 
gh-116646: Add limited C API support to AC fildes converter (#116769)

Add tests on the "fildes" converter to _testclinic_limited.

19 months agogh-113317, AC: Move warn() and fail() to libclinic.errors (#116770)
Victor Stinner [Thu, 14 Mar 2024 08:07:01 +0000 (09:07 +0100)] 
gh-113317, AC: Move warn() and fail() to libclinic.errors (#116770)

19 months agoGH-114736: Use WASI SDK 21 (GH-116771)
Brett Cannon [Thu, 14 Mar 2024 01:45:33 +0000 (18:45 -0700)] 
GH-114736: Use WASI SDK 21 (GH-116771)

19 months agoGH-115983: skip building shared modules for testing under WASI (GH-116528)
Brett Cannon [Wed, 13 Mar 2024 23:25:50 +0000 (16:25 -0700)] 
GH-115983: skip building shared modules for testing under WASI (GH-116528)

19 months agoDocs: PyUnstable_Long_IsCompact() docs now mention PyLong_AsNativeBytes() (#116634)
Sergey B Kirpichev [Wed, 13 Mar 2024 23:01:13 +0000 (02:01 +0300)] 
Docs: PyUnstable_Long_IsCompact() docs now mention PyLong_AsNativeBytes() (#116634)

19 months agoDocs: fix spelling of the word 'transferring' (#116641)
guangwu [Wed, 13 Mar 2024 22:53:32 +0000 (06:53 +0800)] 
Docs: fix spelling of the word 'transferring' (#116641)

19 months agogh-116760: Fix pystats for trace attempts (GH-116761)
Michael Droettboom [Wed, 13 Mar 2024 22:13:33 +0000 (18:13 -0400)] 
gh-116760: Fix pystats for trace attempts (GH-116761)

There are now at least two bytecodes that may attempt to optimize,
JUMP_BACK, and more recently, COLD_EXIT.

Only the JUMP_BACK was counting the attempt in the stats.
This moves that counter to uop_optimize itself so it should
always happen no matter where it is called from.

19 months agogh-90300: Document equivalent -X options for envvars in the Python CLI help (GH-116756)
Serhiy Storchaka [Wed, 13 Mar 2024 20:59:16 +0000 (22:59 +0200)] 
gh-90300: Document equivalent -X options for envvars in the Python CLI help (GH-116756)

19 months agoGH-115979: update test_importlib to work under WASI SDK 21 (GH-116754)
Brett Cannon [Wed, 13 Mar 2024 20:24:28 +0000 (13:24 -0700)] 
GH-115979: update test_importlib to work under WASI SDK 21 (GH-116754)

19 months agoBetter presentation order for recipes. (gh-116755)
Raymond Hettinger [Wed, 13 Mar 2024 20:02:56 +0000 (15:02 -0500)] 
Better presentation order for recipes. (gh-116755)

19 months agogh-90300: Sort the -X options and some envvars in the Python CLI help (GH-116739)
Serhiy Storchaka [Wed, 13 Mar 2024 19:15:44 +0000 (21:15 +0200)] 
gh-90300: Sort the -X options and some envvars in the Python CLI help (GH-116739)

19 months agogh-116631: Fix race condition in `test_shutdown_immediate_put_join` (#116670)
Sam Gross [Wed, 13 Mar 2024 18:56:28 +0000 (14:56 -0400)] 
gh-116631: Fix race condition in `test_shutdown_immediate_put_join` (#116670)

The test case had a race condition: if `q.task_done()` was executed
after `shutdown(immediate=True)`, then it would raise an exception
because the immediate shutdown already emptied the queue. This happened
rarely with the GIL (due to the switching interval), but frequently in
the free-threaded build.

19 months agogh-100746: Improve `test_named_expressions.py` (#116713)
Nikita Sobolev [Wed, 13 Mar 2024 18:12:40 +0000 (21:12 +0300)] 
gh-100746: Improve `test_named_expressions.py` (#116713)

19 months agogh-98731: Improvements to the logging documentation (GH-101618)
Nir Friedman [Wed, 13 Mar 2024 15:58:30 +0000 (11:58 -0400)] 
gh-98731: Improvements to the logging documentation (GH-101618)

Co-authored-by: Vinay Sajip <vinay_sajip@yahoo.co.uk>
19 months agogh-116604: Fix test_gc on free-threaded build (#116662)
Sam Gross [Wed, 13 Mar 2024 13:27:36 +0000 (09:27 -0400)] 
gh-116604: Fix test_gc on free-threaded build (#116662)

The free-threaded GC only does full collections, so it uses a threshold that
is a maximum of a fixed value (default 2000) and proportional to the number of
live objects. If there were many live objects after the previous collection,
then the threshold may be larger than 10,000 causing
`test_indirect_calls_with_gc_disabled` to fail.

This manually sets the threshold to `(1000, 0, 0)` for the test. The `0`
disables the proportional scaling.

19 months ago[doc]: Update cookbook recipe for Qt6. (GH-116719)
Vinay Sajip [Wed, 13 Mar 2024 13:22:47 +0000 (13:22 +0000)] 
[doc]: Update cookbook recipe for Qt6. (GH-116719)

19 months agogh-110918: Fix side effects of regrtest test_match_tests() (#116718)
Victor Stinner [Wed, 13 Mar 2024 13:20:33 +0000 (14:20 +0100)] 
gh-110918: Fix side effects of regrtest test_match_tests() (#116718)

test_match_tests now saves and restores patterns.

Add get_match_tests() function to libregrtest.filter.

Previously, running test_regrtest multiple times in a row only ran
tests once: "./python -m test test_regrtest -R 3:3.

19 months agogh-90300: Fix cmdline.rst (GH-116721)
Serhiy Storchaka [Wed, 13 Mar 2024 13:03:13 +0000 (15:03 +0200)] 
gh-90300: Fix cmdline.rst (GH-116721)

* Fix the description of the "-b" option.
* Add references to environment variables for "-s" and "-X dev" options.

19 months agogh-115419: Change default sym to not_null (GH-116562)
Ken Jin [Wed, 13 Mar 2024 12:57:48 +0000 (20:57 +0800)] 
gh-115419: Change default sym to not_null (GH-116562)

19 months agogh-116714: Handle errors correctly in `PyFloat_GetInfo` (#116715)
Nikita Sobolev [Wed, 13 Mar 2024 12:38:03 +0000 (15:38 +0300)] 
gh-116714: Handle errors correctly in `PyFloat_GetInfo` (#116715)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
19 months agogh-116401: Fix blocking os.fwalk() and shutil.rmtree() on opening a named pipe (GH...
Serhiy Storchaka [Wed, 13 Mar 2024 09:40:28 +0000 (11:40 +0200)] 
gh-116401: Fix blocking os.fwalk() and shutil.rmtree() on opening a named pipe (GH-116421)

19 months agogh-116626: Emit `CALL` events for all `INSTRUMENTED_CALL_FUNCTION_EX` (GH-116627)
Tian Gao [Wed, 13 Mar 2024 08:28:01 +0000 (01:28 -0700)] 
gh-116626: Emit `CALL` events for all `INSTRUMENTED_CALL_FUNCTION_EX` (GH-116627)

19 months agogh-96471: Add ShutDown to queue.py '__all__' (#116699)
Laurie O [Wed, 13 Mar 2024 07:21:30 +0000 (17:21 +1000)] 
gh-96471: Add ShutDown to queue.py '__all__' (#116699)

19 months agoModernize roundrobin() recipe and improve variable names (gh-116710)
Raymond Hettinger [Wed, 13 Mar 2024 07:12:30 +0000 (02:12 -0500)] 
Modernize roundrobin() recipe and improve variable names (gh-116710)

19 months agogh-116491: Improve `test_win32_ver` (#116506)
Nikita Sobolev [Wed, 13 Mar 2024 06:46:48 +0000 (09:46 +0300)] 
gh-116491: Improve `test_win32_ver` (#116506)

19 months agogh-115264: Fix `test_functools` with `-00` mode (#115276)
Nikita Sobolev [Wed, 13 Mar 2024 06:41:37 +0000 (09:41 +0300)] 
gh-115264: Fix `test_functools` with `-00` mode (#115276)

19 months agogh-111307: Update design FAQ 'switch' entry (#115899)
Terry Jan Reedy [Wed, 13 Mar 2024 05:30:39 +0000 (01:30 -0400)] 
gh-111307: Update design FAQ 'switch' entry (#115899)

19 months agoDocs: fix broken links (#116651)
Mariusz Felisiak [Wed, 13 Mar 2024 04:19:33 +0000 (05:19 +0100)] 
Docs: fix broken links (#116651)

19 months agoMinor clarity improvement for the iter_index() recipe. Also add value subsequence...
Raymond Hettinger [Wed, 13 Mar 2024 02:33:42 +0000 (21:33 -0500)] 
Minor clarity improvement for the iter_index() recipe. Also add value subsequence tests. (gh-116696)

19 months agoGH-116554: Relax list.sort()'s notion of "descending" runs (#116578)
Tim Peters [Wed, 13 Mar 2024 00:59:42 +0000 (19:59 -0500)] 
GH-116554: Relax list.sort()'s notion of "descending" runs (#116578)

* GH-116554: Relax list.sort()'s notion of "descending" run

Rewrote `count_run()` so that sub-runs of equal elements no longer end a descending run. Both ascending and descending runs can have arbitrarily many sub-runs of arbitrarily many equal elements now. This is tricky, because we only use ``<`` comparisons, so checking for equality doesn't come "for free". Surprisingly, it turned out there's a very cheap (one comparison) way to determine whether an ascending run consisted of all-equal elements. That sealed the deal.

In addition, after a descending run is reversed in-place, we now go on to see whether it can be extended by an ascending run that just happens to be adjacent. This succeeds in finding at least one additional element to append about half the time, and so appears to more than repay its cost (the savings come from getting to skip a binary search, when a short run is artificially forced to length MIINRUN later, for each new element `count_run()` can add to the initial run).

While these have been in the back of my mind for years, a question on StackOverflow pushed it to action:

https://stackoverflow.com/questions/78108792/

They were wondering why it took about 4x longer to sort a list like:

[999_999, 999_999, ..., 2, 2, 1, 1, 0, 0]

than "similar" lists. Of course that runs very much faster after this patch.

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
19 months agogh-116682: stdout may be empty in test_cancel_futures_wait_false (#116683)
Sam Gross [Wed, 13 Mar 2024 00:11:58 +0000 (20:11 -0400)] 
gh-116682: stdout may be empty in test_cancel_futures_wait_false (#116683)

If the `shutdown()` call happens before the worker thread starts executing
the task, then nothing will be printed to stdout.

19 months agoMerge branch 'main' of https://github.com/python/cpython
Thomas Wouters [Tue, 12 Mar 2024 23:46:31 +0000 (00:46 +0100)] 
Merge branch 'main' of https://github.com/python/cpython

19 months agoPost 3.13.0a5
Thomas Wouters [Tue, 12 Mar 2024 23:46:17 +0000 (00:46 +0100)] 
Post 3.13.0a5

19 months agoGH-116098: Remove dead frame object creation code (GH-116687)
Tian Gao [Tue, 12 Mar 2024 23:35:28 +0000 (16:35 -0700)] 
GH-116098: Remove dead frame object creation code (GH-116687)

19 months agoAdd `typing.NamedTuple` in glossary section for named tuples (#108327)
Tushar Sadhwani [Tue, 12 Mar 2024 22:46:42 +0000 (04:16 +0530)] 
Add `typing.NamedTuple` in glossary section for named tuples (#108327)

19 months agogh-116621: Set manual critical section for list.extend (gh-116657)
Donghee Na [Tue, 12 Mar 2024 22:28:23 +0000 (07:28 +0900)] 
gh-116621: Set manual critical section for list.extend (gh-116657)

19 months agoBeef-up tests for the itertool docs. (gh-116679)
Raymond Hettinger [Tue, 12 Mar 2024 22:19:58 +0000 (17:19 -0500)] 
Beef-up tests for the itertool docs. (gh-116679)

19 months agogh-89547: typing.rst: Add note about change in behavior with ClassVar/Final (#116686)
Jelle Zijlstra [Tue, 12 Mar 2024 22:17:53 +0000 (15:17 -0700)] 
gh-89547: typing.rst: Add note about change in behavior with ClassVar/Final (#116686)

19 months agogh-116307: Proper fix for 'mod' leaking across importlib tests (#116680)
Jason R. Coombs [Tue, 12 Mar 2024 21:36:21 +0000 (17:36 -0400)] 
gh-116307: Proper fix for 'mod' leaking across importlib tests (#116680)

gh-116307: Create a new import helper 'isolated modules' and use that instead of 'Clean Import' to ensure that tests from importlib_resources don't leave modules in sys.modules.

19 months agoPython 3.13.0a5 v3.13.0a5
Thomas Wouters [Tue, 12 Mar 2024 17:34:05 +0000 (18:34 +0100)] 
Python 3.13.0a5

19 months agoCI: Process stale issues twice per day (#116636)
Hugo van Kemenade [Tue, 12 Mar 2024 17:49:26 +0000 (19:49 +0200)] 
CI: Process stale issues twice per day (#116636)

19 months agogh-116656: Fix test_capi test_py_config_isoloated_per_interpreter() (#116658)
Victor Stinner [Tue, 12 Mar 2024 17:31:35 +0000 (18:31 +0100)] 
gh-116656: Fix test_capi test_py_config_isoloated_per_interpreter() (#116658)

Don't parse argv when setting the configuration, to avoid SystemExit if parsing argv fails.

19 months agogh-116604: Check for `gcstate->enabled` in _Py_RunGC in free-threaded build (#116663)
Sam Gross [Tue, 12 Mar 2024 17:12:02 +0000 (13:12 -0400)] 
gh-116604: Check for `gcstate->enabled` in _Py_RunGC in free-threaded build (#116663)

This isn't strictly necessary because the implementation of `gc_should_collect`
already checks `gcstate->enabled` in the free-threaded build, but it seems
like a good idea until the common pieces of gc.c and gc_free_threading.c are
refactored out.

19 months agogh-116127: PEP-705: Add `ReadOnly` support for `TypedDict` (#116350)
Nikita Sobolev [Tue, 12 Mar 2024 14:49:39 +0000 (17:49 +0300)] 
gh-116127: PEP-705: Add `ReadOnly` support for `TypedDict` (#116350)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
19 months agoFix code comment regarding DK_ENTRIES (GH-113960)
Matthias Diener [Tue, 12 Mar 2024 14:05:30 +0000 (09:05 -0500)] 
Fix code comment regarding DK_ENTRIES (GH-113960)

fix code comment regarding dict entries

19 months agogh-116616: Use relaxed atomic ops to access socket module defaulttimeout (#116623)
Erlend E. Aasland [Tue, 12 Mar 2024 13:44:39 +0000 (14:44 +0100)] 
gh-116616: Use relaxed atomic ops to access socket module defaulttimeout (#116623)

Co-authored-by: Sam Gross <colesbury@gmail.com>
19 months agogh-116604: Correctly honor the gc status when calling _Py_RunGC (#116628)
Pablo Galindo Salgado [Tue, 12 Mar 2024 12:00:49 +0000 (12:00 +0000)] 
gh-116604: Correctly honor the gc status when calling _Py_RunGC (#116628)

19 months agogh-110819: Fix ‘kind’ may be used uninitialized warning in `longobject` (#116599)
Nikita Sobolev [Tue, 12 Mar 2024 10:50:06 +0000 (13:50 +0300)] 
gh-110819: Fix â€˜kind’ may be used uninitialized warning in `longobject` (#116599)

19 months agogh-116541: Handle errors correctly in `_pystatvfs_fromstructstatvfs` (#116542)
Nikita Sobolev [Tue, 12 Mar 2024 10:10:00 +0000 (13:10 +0300)] 
gh-116541: Handle errors correctly in `_pystatvfs_fromstructstatvfs` (#116542)

19 months agogh-89547: Support for nesting special forms like Final (#116096)
Mehdi Drissi [Tue, 12 Mar 2024 06:11:56 +0000 (23:11 -0700)] 
gh-89547: Support for nesting special forms like Final (#116096)

19 months agogh-116145: Update macOS installer to Tcl/Tk 8.6.14 (GH-116151)
Christopher Chavez [Tue, 12 Mar 2024 05:37:07 +0000 (00:37 -0500)] 
gh-116145: Update macOS installer to Tcl/Tk 8.6.14 (GH-116151)

19 months agogh-85283: Convert grp extension to the limited C API (#116611)
Victor Stinner [Tue, 12 Mar 2024 00:46:53 +0000 (01:46 +0100)] 
gh-85283: Convert grp extension to the limited C API (#116611)

posixmodule.h: remove check on the limited C API, since these helpers
are not part of the public C API.

19 months agogh-113538: Revert "gh-113538: Add asycio.Server.{close,abort}_clients (#114432)"...
Guido van Rossum [Tue, 12 Mar 2024 00:31:49 +0000 (17:31 -0700)] 
gh-113538: Revert "gh-113538: Add asycio.Server.{close,abort}_clients (#114432)" (#116632)

Revert "gh-113538: Add asycio.Server.{close,abort}_clients (#114432)"

Reason: The new test doesn't always pass:
https://github.com/python/cpython/pull/116423#issuecomment-1989425489

This reverts commit 1d0d49a7e86257ff95b4de0685e6997d7533993c.

19 months agogh-108494: Fix Argument Clinic LIMITED_CAPI_REGEX (#116610)
Victor Stinner [Mon, 11 Mar 2024 22:42:18 +0000 (23:42 +0100)] 
gh-108494: Fix Argument Clinic LIMITED_CAPI_REGEX (#116610)

Accept spaces in "#  define Py_LIMITED_API 0x030d0000".

19 months agogh-116600: [Enum] fix global Flag repr (GH-116615)
Ethan Furman [Mon, 11 Mar 2024 22:41:53 +0000 (15:41 -0700)] 
gh-116600: [Enum] fix global Flag repr (GH-116615)

* and fix global flag repr

* Update Misc/NEWS.d/next/Library/2024-03-11-12-11-10.gh-issue-116600.FcNBy_.rst

Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
19 months agogh-116563: Update tutorial error example (#116569)
Terry Jan Reedy [Mon, 11 Mar 2024 22:01:08 +0000 (18:01 -0400)] 
gh-116563: Update tutorial error example (#116569)

There now may be multiple carets pointing at a token
rather than just a character.  Fix the sentence about
possible causes.

19 months agogh-90095: Make .pdbrc work properly and add some reasonable tests (#110496)
Tian Gao [Mon, 11 Mar 2024 21:27:00 +0000 (14:27 -0700)] 
gh-90095: Make .pdbrc work properly and add some reasonable tests (#110496)

19 months agogh-116040: [Enum] fix test_empty_names test (GH-116508)
Ethan Furman [Mon, 11 Mar 2024 20:42:01 +0000 (13:42 -0700)] 
gh-116040: [Enum] fix test_empty_names test (GH-116508)

* and fix _not_given usage

19 months agogh-71052: Use `raise_signal` in `ThreadSignals.test_signals` (#116423)
Malcolm Smith [Mon, 11 Mar 2024 20:39:17 +0000 (20:39 +0000)] 
gh-71052: Use `raise_signal` in `ThreadSignals.test_signals` (#116423)

Use `raise_signal` rather than `kill` in `ThreadSignals.test_signals`

19 months agogh-113538: Add asycio.Server.{close,abort}_clients (#114432)
Pierre Ossman (ThinLinc team) [Mon, 11 Mar 2024 19:43:30 +0000 (20:43 +0100)] 
gh-113538: Add asycio.Server.{close,abort}_clients (#114432)

These give applications the option of more forcefully terminating client
connections for asyncio servers. Useful when terminating a service and
there is limited time to wait for clients to finish up their work.

19 months agogh-71052: Change Android's `sys.platform` from "linux" to "android"
Malcolm Smith [Mon, 11 Mar 2024 19:25:39 +0000 (19:25 +0000)] 
gh-71052: Change Android's `sys.platform` from "linux" to "android"

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
19 months agogh-116515: Clear thread-local state before tstate_delete_common() (#116517)
Sam Gross [Mon, 11 Mar 2024 19:14:20 +0000 (15:14 -0400)] 
gh-116515: Clear thread-local state before tstate_delete_common() (#116517)

This moves `current_fast_clear()` up so that the current thread state is
`NULL` while running `tstate_delete_common()`.

This doesn't fix any bugs, but it means that we are more consistent that
`_PyThreadState_GET() != NULL` means that the thread is "attached".

19 months agoGH-115976: Add WASI to CI (GH-116516)
Brett Cannon [Mon, 11 Mar 2024 18:59:09 +0000 (11:59 -0700)] 
GH-115976: Add WASI to CI (GH-116516)

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
19 months agogh-110850: Fix _PyTime_FromSecondsDouble() API (#116606)
Victor Stinner [Mon, 11 Mar 2024 16:35:29 +0000 (17:35 +0100)] 
gh-110850: Fix _PyTime_FromSecondsDouble() API (#116606)

Return 0 on success. Set an exception and return -1 on error.

Fix os.timerfd_settime(): properly report exceptions on
_PyTime_FromSecondsDouble() failure.

No longer export _PyTime_FromSecondsDouble().

19 months agogh-116167: Allow disabling the GIL with `PYTHON_GIL=0` or `-X gil=0` (#116338)
Brett Simmers [Mon, 11 Mar 2024 15:02:58 +0000 (11:02 -0400)] 
gh-116167: Allow disabling the GIL with `PYTHON_GIL=0` or `-X gil=0` (#116338)

In free-threaded builds, running with `PYTHON_GIL=0` will now disable the
GIL. Follow-up issues track work to re-enable the GIL when loading an
incompatible extension, and to disable the GIL by default.

In order to support re-enabling the GIL at runtime, all GIL-related data
structures are initialized as usual, and disabling the GIL simply sets a flag
that causes `take_gil()` and `drop_gil()` to return early.

19 months agogh-116417: Build _testinternalcapi with limited C API version 3.5 (#116598)
Victor Stinner [Mon, 11 Mar 2024 14:20:04 +0000 (15:20 +0100)] 
gh-116417: Build _testinternalcapi with limited C API version 3.5 (#116598)

19 months agoGH-116596: Better determination of escaping uops. (GH-116597)
Mark Shannon [Mon, 11 Mar 2024 13:37:48 +0000 (13:37 +0000)] 
GH-116596: Better determination of escaping uops. (GH-116597)

19 months agogh-112536: Define MI_TSAN to 1 for --with-mimalloc and --with-thread-sanitizer (gh...
Donghee Na [Mon, 11 Mar 2024 13:25:55 +0000 (22:25 +0900)] 
gh-112536: Define MI_TSAN to 1 for --with-mimalloc and --with-thread-sanitizer (gh-116558)

19 months agogh-116590: Fix unused `current_thread_holds_gil` function warning (#116591)
Nikita Sobolev [Mon, 11 Mar 2024 13:25:04 +0000 (16:25 +0300)] 
gh-116590: Fix unused `current_thread_holds_gil` function warning (#116591)

19 months agogh-116545: Fix error handling in `mkpwent` in `pwdmodule` (#116548)
Nikita Sobolev [Mon, 11 Mar 2024 10:58:24 +0000 (13:58 +0300)] 
gh-116545: Fix error handling in `mkpwent` in `pwdmodule` (#116548)

19 months agogh-116417: Move 4 limited C API test files to _testlimitedcapi (#116571)
Victor Stinner [Mon, 11 Mar 2024 10:28:16 +0000 (11:28 +0100)] 
gh-116417: Move 4 limited C API test files to _testlimitedcapi (#116571)

Move the following files from Modules/_testcapi/ to
Modules/_testlimitedcapi/:

* bytearray.c
* bytes.c
* pyos.c
* sys.c

Changes:

* Replace PyBytes_AS_STRING() with PyBytes_AsString().
* Replace PyBytes_GET_SIZE() with PyBytes_Size().
* Update related test_capi tests.
* Copy Modules/_testcapi/util.h to Modules/_testlimitedcapi/util.h.

19 months agogh-88352: Make TimedRotatingFileHandler tests more stable (GH-116409)
Serhiy Storchaka [Mon, 11 Mar 2024 09:57:07 +0000 (11:57 +0200)] 
gh-88352: Make TimedRotatingFileHandler tests more stable (GH-116409)

The tests failed (with less than 1% probability) if for example the file
was created at 11:46:03.999, but the record was emitted at 11:46:04.001,
with atTime=11:46:04, which caused an unexpected rollover. Ensure that the
tests are always run within the range of the same whole second.

Also share code between test_rollover_at_midnight and test_rollover_at_weekday.

19 months agoGH-116468: Use constants instead of `oparg` in stack effects when `oparg` is known...
Mark Shannon [Mon, 11 Mar 2024 09:30:15 +0000 (09:30 +0000)] 
GH-116468: Use constants instead of `oparg` in stack effects when `oparg` is known to be a constant. (GH-116469)

19 months agogh-116417: Argument Clinic: test generated Limited C API code for float args (#116573)
Erlend E. Aasland [Mon, 11 Mar 2024 07:44:42 +0000 (08:44 +0100)] 
gh-116417: Argument Clinic: test generated Limited C API code for float args (#116573)

19 months agogh-116576: Fix `Tools/scripts/sortperf.py` sorting the same list (#116577)
Nikita Sobolev [Mon, 11 Mar 2024 06:38:04 +0000 (09:38 +0300)] 
gh-116576: Fix `Tools/scripts/sortperf.py` sorting the same list (#116577)

19 months agogh-116057: Use relative recursion limits when testing os.walk() and Path.walk() ...
Malcolm Smith [Sun, 10 Mar 2024 22:00:33 +0000 (22:00 +0000)] 
gh-116057: Use relative recursion limits when testing os.walk() and Path.walk() (#116058)

Replace test.support.set_recursion_limit with test.support.infinite_recursion.

19 months agogh-116417: Fix make check-c-globals for _testlimitedcapi (#116570)
Victor Stinner [Sun, 10 Mar 2024 20:19:47 +0000 (21:19 +0100)] 
gh-116417: Fix make check-c-globals for _testlimitedcapi (#116570)

* Remove unused '_testcapimodule' global in Modules/_testcapi/unicode.c.
* Update c-analyzer to not use the internal C API in
  _testlimitedcapi.c.

19 months agogh-116417: Avoid PyFloat_AS_DOUBLE() in AC limited C API (#116568)
Victor Stinner [Sun, 10 Mar 2024 19:42:40 +0000 (20:42 +0100)] 
gh-116417: Avoid PyFloat_AS_DOUBLE() in AC limited C API (#116568)

Argument Clinic no longer calls PyFloat_AS_DOUBLE() when the usage of
the limited C API is requested.

20 months agogh-112087: Make list.sort to be thread-safe for PEP 703. (gh-116553)
Donghee Na [Sun, 10 Mar 2024 00:45:42 +0000 (09:45 +0900)] 
gh-112087: Make list.sort to be thread-safe for PEP 703. (gh-116553)

20 months agogh-112087: Store memory allocation information into _PyListArray (gh-116529)
Donghee Na [Sat, 9 Mar 2024 23:50:28 +0000 (08:50 +0900)] 
gh-112087: Store memory allocation information into _PyListArray (gh-116529)

20 months agogh-116535: Fix distracting "TypeError" in example code (gh-116538)
Declan [Sat, 9 Mar 2024 21:52:57 +0000 (22:52 +0100)] 
gh-116535: Fix distracting "TypeError" in example code (gh-116538)

20 months agogh-111389: expose PyHASH_INF/BITS/MODULUS/IMAG macros as public (#111418)
Sergey B Kirpichev [Sat, 9 Mar 2024 20:32:05 +0000 (23:32 +0300)] 
gh-111389: expose PyHASH_INF/BITS/MODULUS/IMAG macros as public (#111418)

Co-authored-by: Victor Stinner <vstinner@python.org>
20 months agogh-115142: Skip ``test__xxsubinterpreters`` if ``_testinternalcapi`` is not available...
Kirill Podoprigora [Sat, 9 Mar 2024 13:28:13 +0000 (15:28 +0200)] 
gh-115142: Skip ``test__xxsubinterpreters`` if ``_testinternalcapi`` is not available (#116507)

20 months agogh-116520: Fix error handling in `os_get_terminal_size_impl` in `posixmodule` (#116521)
Nikita Sobolev [Sat, 9 Mar 2024 11:18:38 +0000 (14:18 +0300)] 
gh-116520: Fix error handling in `os_get_terminal_size_impl` in `posixmodule` (#116521)

20 months agoGH-116218 Docs: Add availability information for the 'resource' module (#116256)
Kerim Kabirov [Sat, 9 Mar 2024 09:00:37 +0000 (10:00 +0100)] 
GH-116218 Docs: Add availability information for the 'resource' module (#116256)

Add availability data to 'resource' module Docs

20 months agogh-112069: Make sets thread-safe with the GIL disabled (#113800)
Tomas R [Fri, 8 Mar 2024 21:25:34 +0000 (22:25 +0100)] 
gh-112069: Make sets thread-safe with the GIL disabled (#113800)

This makes nearly all the operations on set thread-safe in the free-threaded build, with the exception of `_PySet_NextEntry` and `setiter_iternext`.

Co-authored-by: Sam Gross <colesbury@gmail.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
20 months agogh-108724: Fix _PySemaphore_Wait call during thread deletion (#116483)
Sam Gross [Fri, 8 Mar 2024 20:26:36 +0000 (15:26 -0500)] 
gh-108724: Fix _PySemaphore_Wait call during thread deletion (#116483)

In general, when `_PyThreadState_GET()` is non-NULL then the current
thread is "attached", but there is a small window during
`PyThreadState_DeleteCurrent()` where that's not true:
tstate_delete_common() is called when the thread is detached, but before
current_fast_clear().

Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
20 months agogh-105535 Document potential performance trap during enum creation (GH-107119)
Nicolas A. Oyarzabal [Fri, 8 Mar 2024 19:22:17 +0000 (20:22 +0100)] 
gh-105535 Document potential performance trap during enum creation (GH-107119)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
20 months agogh-75988: Fix issues with autospec ignoring wrapped object (#115223)
infohash [Fri, 8 Mar 2024 19:14:32 +0000 (00:44 +0530)] 
gh-75988: Fix issues with autospec ignoring wrapped object (#115223)

* set default return value of functional types as _mock_return_value

* added test of wrapping child attributes

* added backward compatibility with explicit return

* added docs on the order of precedence

* added test to check default return_value

20 months agogh-112075: Support freeing object memory via QSBR (#116344)
Dino Viehland [Fri, 8 Mar 2024 17:56:36 +0000 (09:56 -0800)] 
gh-112075: Support freeing object memory via QSBR (#116344)

Free objects with qsbr if shared

20 months agoReplace stat.ST_xxx usage with os.stat().st_xxx (#116501)
Victor Stinner [Fri, 8 Mar 2024 17:49:09 +0000 (18:49 +0100)] 
Replace stat.ST_xxx usage with os.stat().st_xxx (#116501)

Modernize code to use the new API which avoids the usage of the stat
module just to read os.stat() members.

* Sort logging.handlers imports.
* Rework reopenIfNeeded() code to make it easier to follow.
* Replace "not self.stream" with "self.stream is None".

20 months agogh-115103: Fix unregistering of QSBR state (#116480)
Sam Gross [Fri, 8 Mar 2024 17:39:53 +0000 (12:39 -0500)] 
gh-115103: Fix unregistering of QSBR state (#116480)

If a thread blocks while waiting on the `shared->mutex` lock, the array
of QSBR states may be reallocated. The `tstate->qsbr` values before the
lock is acquired may not be the same as the value after the lock is acquired.

20 months agogh-116493: Remove old Python 2.x _winreg imports from platform.py (GH-116494)
Nikita Sobolev [Fri, 8 Mar 2024 12:42:21 +0000 (15:42 +0300)] 
gh-116493: Remove old Python 2.x _winreg imports from platform.py (GH-116494)

20 months agogh-116447: Fix possible UB in `arraymodule` and `getargs` (#116459)
Nikita Sobolev [Fri, 8 Mar 2024 10:49:52 +0000 (13:49 +0300)] 
gh-116447: Fix possible UB in `arraymodule` and `getargs` (#116459)

20 months agoGH-113710: Fix optimization of globals using `_CHECK_FUNCTION` (GH-116460)
Mark Shannon [Fri, 8 Mar 2024 09:47:41 +0000 (09:47 +0000)] 
GH-113710: Fix optimization of globals using `_CHECK_FUNCTION` (GH-116460)

20 months agogh-116349: Deprecate `platform.java_ver` function (#116471)
Nikita Sobolev [Fri, 8 Mar 2024 08:14:17 +0000 (11:14 +0300)] 
gh-116349: Deprecate `platform.java_ver` function (#116471)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>