summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* gh-110393: Remove watchdog with hardcoded timeout (#110400)Victor Stinner2023-10-052-9/+0
| | | | | | | | test_builtin and test_socketserver no longer use signal.alarm() to implement a watchdog with a hardcoded timeout (2 and 60 seconds). Python test runner regrtest has two watchdogs: faulthandler and timeout on running worker processes. Tests using short hardcoded timeout can fail on slowest buildbots just because the timeout is too short.
* gh-82367: Use `FindFirstFile` Win32 API in `ntpath.realpath()` (GH-110298)박문식2023-10-058-8/+132
| | | | | | | * Use `FindFirstFile` Win32 API to fix a bug where `ntpath.realpath()` breaks out of traversing a series of paths where a (handled) `ERROR_ACCESS_DENIED` or `ERROR_SHARING_VIOLATION` occurs. * Update docs to reflect that `ntpath.realpath()` eliminates MS-DOS style names.
* gh-110309: Prune empty constant in format specs (#110320)sunmy20192023-10-053-10/+79
| | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* gh-110259: Fix f-strings with multiline expressions and format specs (#110271)Pablo Galindo Salgado2023-10-055-10/+128
| | | Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
* gh-110367: Fix regrtest test_worker_output_on_failure() on ASAN build (#110387)Victor Stinner2023-10-053-9/+20
| | | Set ASAN_OPTIONS="handle_segv=0" env var to run the test.
* gh-110365: Fix error overwrite in `termios.tcsetattr` (#110366)Nikita Sobolev2023-10-052-13/+28
| | | Co-authored-by: Erlend E. Aasland <erlend@python.org>
* gh-110367: Enhance regrtest -jN --verbose3 (#110368)Victor Stinner2023-10-054-3/+52
| | | | | | When using worker processes (-jN) with --verbose3 option, regrtest can now display the worker output even if a worker process does crash. Previously, sys.stdout and sys.stderr were replaced and so the worker output was lost on a crash.
* Remove duplicate word. (#110376)Benjamin Peterson2023-10-051-1/+1
|
* gh-88402: Add new sysconfig variables on Windows (GH-110049)Sam Gross2023-10-0420-70/+231
| | | | Co-authored-by: Filipe Laíns <filipe.lains@gmail.com>
* gh-110310: Add a Per-Interpreter XID Registry for Heap Types (gh-110311)Eric Snow2023-10-043-58/+148
| | | | | | | | | | | We do the following: * add a per-interpreter XID registry (PyInterpreterState.xidregistry) * put heap types there (keep static types in _PyRuntimeState.xidregistry) * clear the registries during interpreter/runtime finalization * avoid duplicate entries in the registry (when _PyCrossInterpreterData_RegisterClass() is called more than once for a type) * use Py_TYPE() instead of PyObject_Type() in _PyCrossInterpreterData_Lookup() The per-interpreter registry helps preserve isolation between interpreters. This is important when heap types are registered, which is something we haven't been doing yet but I will likely do soon.
* GH-109329: Add tier 2 stats (GH-109913)Michael Droettboom2023-10-049-128/+483
|
* Add back bltin-boolean-values ref tag (#110371)P. L. Lim2023-10-041-0/+1
| | | To avoid breaking downstream intersphinx via numpydoc
* gh-76785: Print the Traceback from Interpreter.run() (gh-110322)Eric Snow2023-10-041-1/+7
| | | | | This is a temporary solution. The full fix may involve serializing the traceback in some form. (FYI, I merged this yesterday and the reverted it due to buildbot failures. See gh-110248.)
* gh-110222: Add support of PyStructSequence in copy.replace() (GH-110223)Xuehai Pan2023-10-043-1/+155
|
* gh-110235: Raise TypeError for duplicate/unknown fields in PyStructSequence ↵Xuehai Pan2023-10-043-7/+84
| | | | constructor (GH-110258)
* GH-109369: Merge all eval-breaker flags and monitoring version into one ↵Mark Shannon2023-10-0413-234/+188
| | | | word. (GH-109846)
* gh-104909: Split more LOAD_ATTR specializations (GH-110317)Guido van Rossum2023-10-046-219/+598
| | | | | | | | | | | | | | | | | | | * Split LOAD_ATTR_MODULE * Split LOAD_ATTR_WITH_HINT * Split _GUARD_TYPE_VERSION out of the latter * Split LOAD_ATTR_CLASS * Split LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES * Fix indent of DEOPT_IF in macros * Split LOAD_ATTR_METHOD_LAZY_DICT * Split LOAD_ATTR_NONDESCRIPTOR_NO_DICT * Fix omission of _CHECK_ATTR_METHOD_LAZY_DICT
* Lint: Remove files that no longer fail to parse or with F811 (#110356)Hugo van Kemenade2023-10-041-4/+0
|
* gh-110260: Check for PyList_SetItem() errors in termios module (GH-110261)Nikita Sobolev2023-10-041-17/+32
|
* gh-109151: Enable readline in the sqlite3 CLI (GH-109152)Serhiy Storchaka2023-10-042-0/+5
|
* gh-110332: Remove mentions of `random.WichmannHill` from `test_zlib` (#110334)Nikita Sobolev2023-10-041-12/+1
|
* gh-109276: regrtest: shorter list of resources (#110326)Victor Stinner2023-10-043-17/+63
|
* gh-110335: asyncio test_unix_events cleans multiprocessing (#110336)Victor Stinner2023-10-041-0/+8
| | | | test_unix_events tests using the multiprocessing module now call multiprocessing.util._cleanup_tests().
* gh-110166: Fix gdb CFunctionFullTests on ppc64le clang build (#110331)Victor Stinner2023-10-041-1/+1
| | | | | | CFunctionFullTests now also runs "bt" command before "py-bt-full", similar to CFunctionTests which also runs "bt" command before "py-bt". So test_gdb can skip the test if patterns like "?? ()" are found in the gdb output.
* gh-110171: `libregrtest` always sets `random.seed` (#110172)Nikita Sobolev2023-10-045-16/+24
|
* gh-110273: dataclasses.replace() now raise TypeError for all invalid ↵Serhiy Storchaka2023-10-043-11/+14
| | | | | | | arguments (GH-110274) dataclasses.replace() now raises TypeError instead of ValueError if specify keyword argument for a field declared with init=False or miss keyword argument for required InitVar field.
* gh-109653: Defer importing `warnings` in several modules (#110286)Alex Waygood2023-10-046-6/+10
|
* gh-85984: Document change in return type of tty functions (#110028)Jelle Zijlstra2023-10-041-0/+6
|
* gh-110300: Fix Refleaks in test_interpreters and test__xxinterpchannels ↵Eric Snow2023-10-043-10/+30
| | | | (gh-110318)
* gh-109979: Unify _GUARD_TYPE_VERSION{,_STORE} (#110301)Guido van Rossum2023-10-035-63/+36
| | | | | Now the target for `DEOPT_IF()` is auto-filled, we don't need a separate `_GUARD_TYPE_VERSION_STORE` uop.
* gh-109917: Fix test instability in test_concurrent_futures (#110306)elfstrom2023-10-031-1/+2
| | | | | | | | | | The test had an instability issue due to the ordering of the dummy queue operation and the real wakeup pipe operations. Both primitives are thread safe but not done atomically as a single update and may interleave arbitrarily. With the old order of operations this can lead to an incorrect state where the dummy queue is full but the wakeup pipe is empty. By swapping the order in clear() I think this can no longer happen in any possible operation interleaving (famous last words).
* Revert "gh-76785: Print the Traceback from Interpreter.run() (gh-110248)" ↵Eric Snow2023-10-031-4/+0
| | | | | | | (gh-110314) This reverts commit 6bc889aedc11cc8e0b9f57948a3d528ad2685497. That commit is causing some buildbot failures.
* gh-76785: Print the Traceback from Interpreter.run() (gh-110248)Eric Snow2023-10-031-0/+4
| | | This is a temporary fix. The full fix may involve serializing the traceback in some form.
* Docs: Avoid the deprecated ``.. cmdoption::`` directive (#110292)Adam Turner2023-10-0318-243/+243
|
* gh-109979: Auto-generate the target for DEOPT_IF() (#110193)Guido van Rossum2023-10-038-315/+315
| | | | | | | | | | | | | | | | In Python/bytecodes.c, you now write ``` DEOPT_IF(condition); ``` The code generator expands this to ``` DEOPT_IF(condition, opcode); ``` where `opcode` is the name of the unspecialized instruction. This works inside macro expansions too. **CAVEAT:** The entire `DEOPT_IF(condition)` statement must be on a single line. If it isn't, the substitution will fail; an error will be printed by the code generator and the C compiler will report some errors.
* gh-108867: Add PyThreadState_GetUnchecked() function (#108870)Victor Stinner2023-10-0310-8/+34
| | | | | | Add PyThreadState_GetUnchecked() function: similar to PyThreadState_Get(), but don't issue a fatal error if it is NULL. The caller is responsible to check if the result is NULL. Previously, this function was private and known as _PyThreadState_UncheckedGet().
* gh-110276: No longer ignore PROFILE_TASK failure silently (#110295)Victor Stinner2023-10-033-2/+7
|
* gh-107073: Mention pythoncapi-compat for PyObject_VisitManagedDict() (#110291)Victor Stinner2023-10-031-1/+3
|
* gh-109860: Use a New Thread State When Switching Interpreters, When ↵Eric Snow2023-10-038-68/+151
| | | | | | | | | Necessary (gh-110245) In a few places we switch to another interpreter without knowing if it has a thread state associated with the current thread. For the main interpreter there wasn't much of a problem, but for subinterpreters we were *mostly* okay re-using the tstate created with the interpreter (located via PyInterpreterState_ThreadHead()). There was a good chance that tstate wasn't actually in use by another thread. However, there are no guarantees of that. Furthermore, re-using an already used tstate is currently fragile. To address this, now we create a new thread state in each of those places and use it. One consequence of this change is that PyInterpreterState_ThreadHead() may not return NULL (though that won't happen for the main interpreter).
* Enhanced sqlite3 connection context management documentation with ↵Lincoln2023-10-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | contextlib.closing gh-109234 (#109322) * Enhanced sqlite3 connection context management documentation with contextlib.closing * 📜🤖 Added by blurb_it. * Fixed gitignore spelling error from nitignore to gitignore * Renamed .gitignore to .nitignore * Added generated doctests * Deleted sqlite3 generated files * Removed white-space changes * Removed News entry from the doc * Expanded a note that context manager can be used for connection management using contextlib.closing * Removed repeated contextlib.closing code snippet * Expanded the note around usage of context manageer for sqlite3 connection management * Deleted extra white-spaces * Deleted extra white-space * re-arranged context manager wording * Re-arranged word layout on how to use context manager * Fix whitespace errors * Remove unneeded change in .gitignore * Added suggested changes * Added suggested change redirecting to the contextlib.closing implementation * Added closing keyword * Removed line 2473 --------- Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend@python.org>
* gh-110267: Add tests for pickling and copying PyStructSequence objects ↵Xuehai Pan2023-10-032-2/+75
| | | | (GH-110272)
* Bump various dependencies in `Doc/requirements-oldest-sphinx.txt` (#110278)Alex Waygood2023-10-031-7/+7
| | | This resolves a Dependabot security alert on the repository for urllib3==2.0.4.
* gh-110276: Run `test_str`, not `test_unicode`, as part of the PGO build ↵Alex Waygood2023-10-031-1/+1
| | | | | (#110277) `test_unicode` does not exist
* gh-109956: Also test typing.NamedTuple with copy.replace() (GH-109957)Nikita Sobolev2023-10-031-8/+18
|
* Fix typo in py312 whatsnew: add missing closing paren (#110255)Lele Gaifax2023-10-031-1/+1
|
* Remove unused Misc/requirements-test.txt (#110240)Hugo van Kemenade2023-10-031-1/+0
|
* Add --inline-caches flag to dis command line (#110249)Guido van Rossum2023-10-032-1/+4
|
* gh-109653: Reduce the import time of `random` by 60% (#110221)Alex Waygood2023-10-022-1/+3
|
* gh-110241: Add missing error check to `record_eval` in `_testinternalcapi` ↵Nikita Sobolev2023-10-021-1/+5
| | | | (#110242)
* gh-76785: Module-level Fixes for test.support.interpreters (gh-110236)Eric Snow2023-10-023-25/+206
| | | | | * add RecvChannel.close() and SendChannel.close() * make RecvChannel and SendChannel shareable * expose ChannelEmptyError and ChannelNotEmptyError