summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* gh-94309: "What's new in Python 3.12": improve deprecation notice for ↵Ori Avtalion2023-11-171-2/+3
| | | | typing.Hashable and typing.Sized (#112196)
* gh-112070: make `functools.lru_cache` threadsafe in --disable-gil build ↵Wanderxjtu2023-11-172-6/+25
| | | | | | | | | | | | | | | | | (gh-112111) * gh-112070: make `functools.lrucacle` threadsafe in --disable-gil build * gh-112070: update generate `functoolsmodule` files * gh-112070: add NEWS file * Delete Misc/NEWS.d/next/Library/2023-11-15-20-19-45.gh-issue-112070.q6OhcU.rst * gh-112070: reformat functoolsmodule.c --------- Co-authored-by: Sam Gross <colesbury@gmail.com>
* gh-112165: Fix typo in `__main__.py` (#112183)Terry Jan Reedy2023-11-171-1/+1
| | | Change '[2]' to '[1]' to get second argument.
* gh-111799: Fix `testRecursiveRepr` from `test_fileio` on WASI (GH-112181)Nikita Sobolev2023-11-161-1/+3
|
* gh-111482: Fix time_clockid_converter() on AIX (#112170)Victor Stinner2023-11-161-2/+2
| | | clockid_t is defined as long long on AIX.
* gh-111800: Fix `test_recursive_repr` from `test_io` under WASI to not ↵Nikita Sobolev2023-11-161-8/+4
| | | | recurse so deeply (GH-112150)
* Remove `imp_dummy_def` from `Tools/c-analyzer/cpython/ignored.tsv` (gh-112122)Nikita Sobolev2023-11-161-1/+0
| | | It was removed in 3.12, no need to keep the ignore.
* gh-111956: Add thread-safe one-time initialization. (gh-111960)Sam Gross2023-11-1611-955/+1061
|
* gh-111881: Import lazily zipfile in support.script_helper (#112172)Victor Stinner2023-11-161-1/+2
| | | It allows running the test suite when the zlib extension is missing.
* gh-112155: Run `typing.py` doctests as part of `test_typing` (#112156)Nikita Sobolev2023-11-162-2/+8
|
* GH-112152: Fix typo in `typing.override` docstring (#112158)Qua272023-11-161-1/+1
|
* gh-111798: Use lower Py_C_RECURSION_LIMIT in debug mode (#112124)Victor Stinner2023-11-165-5/+37
| | | | | | | * Run again test_ast_recursion_limit() on WASI platform. * Add _testinternalcapi.get_c_recursion_remaining(). * Fix test_ast and test_sys_settrace: test_ast_recursion_limit() and test_trace_unpack_long_sequence() now adjust the maximum recursion depth depending on the the remaining C recursion.
* [doc] Make subprocess.wait documentation more precise (#98700)Luis Pedro Coelho2023-11-161-3/+4
| | | | | | | | | | [doc] Make subprocess.wait doc more precise An active loop is only used when the `timeout` parameter is used on POSIX. When no timeout is used, the code calls `os.waitpid` internally (which puts the process on a sleep status). On Windows, the internal Windows API call accepts a timeout parameter, so that is delegated to the OS.
* gh-110812: Isolating Extension Modules HOWTO: List GC-related gotchas ↵Petr Viktorin2023-11-161-6/+97
| | | | | | (GH-111504) Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com> Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-111916: Make hashlib related modules thread-safe without the GIL (#111981)Tomas R2023-11-1510-137/+188
| | | | | Always use an individual lock on hash objects when in free-threaded builds. Fixes #111916
* gh-111811: Fix test_recursive_repr for WASI (#112130)Kushal Das2023-11-151-0/+1
|
* gh-112088: Run autoreconf in GHA check_generated_files (#112090)Victor Stinner2023-11-159-160/+131
| | | | | | | | | | | The "Check if generated files are up to date" job of GitHub Actions now runs the "autoreconf -ivf -Werror" command instead of the "make regen-configure" command to avoid depending on the external quay.io server. Add Tools/build/regen-configure.sh script to regenerate the configure with an Ubuntu container image. The "quay.io/tiran/cpython_autoconf:271" container image (https://github.com/tiran/cpython_autoconf) is no longer used.
* gh-112026: Add again _PyThreadState_UncheckedGet() function (#112121)Victor Stinner2023-11-152-0/+6
| | | | Add again the private _PyThreadState_UncheckedGet() function as an alias to the new public PyThreadState_GetUnchecked() function.
* gh-96954: Don't run regen-unicodedata in regen-all (#112120)Victor Stinner2023-11-151-3/+3
| | | | | | The "make regen-unicodedata" should now be run manually. By the default, it requires an Internet connection, which is not always the case. Some Linux distributions build Linux packages in isolated environment (without network).
* gh-112026: Restore removed _PyDict_GetItemStringWithError() (#112119)Victor Stinner2023-11-153-1/+17
| | | | Restore the removed _PyDict_GetItemStringWithError() function. It is used by numpy.
* gh-96954: Fix `make regen-unicodedata` in out-of-tree builds (#112118)Miro Hrončok2023-11-155-4/+5
| | | | | | | | | This avoids: python3.13 Tools/unicode/makeunicodedata.py python3.13: can't open file '.../build/debug/Tools/unicode/makeunicodedata.py': [Errno 2] No such file or directory make: *** [Makefile:1498: regen-unicodedata] Error 2 Re-run `make regen-unicodedata` to update the script path in generated files.
* gh-112026: Restore removed private C API (#112115)Victor Stinner2023-11-1520-236/+315
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Restore removed private C API functions, macros and structures which have no simple replacement for now: * _PyDict_GetItem_KnownHash() * _PyDict_NewPresized() * _PyHASH_BITS * _PyHASH_IMAG * _PyHASH_INF * _PyHASH_MODULUS * _PyHASH_MULTIPLIER * _PyLong_Copy() * _PyLong_FromDigits() * _PyLong_New() * _PyLong_Sign() * _PyObject_CallMethodId() * _PyObject_CallMethodNoArgs() * _PyObject_CallMethodOneArg() * _PyObject_CallOneArg() * _PyObject_EXTRA_INIT * _PyObject_FastCallDict() * _PyObject_GetAttrId() * _PyObject_Vectorcall() * _PyObject_VectorcallMethod() * _PyStack_AsDict() * _PyThread_CurrentFrames() * _PyUnicodeWriter structure * _PyUnicodeWriter_Dealloc() * _PyUnicodeWriter_Finish() * _PyUnicodeWriter_Init() * _PyUnicodeWriter_Prepare() * _PyUnicodeWriter_PrepareKind() * _PyUnicodeWriter_WriteASCIIString() * _PyUnicodeWriter_WriteChar() * _PyUnicodeWriter_WriteLatin1String() * _PyUnicodeWriter_WriteStr() * _PyUnicodeWriter_WriteSubstring() * _PyUnicode_AsString() * _PyUnicode_FromId() * _PyVectorcall_Function() * _Py_HashDouble() * _Py_HashPointer() * _Py_IDENTIFIER() * _Py_c_abs() * _Py_c_diff() * _Py_c_neg() * _Py_c_pow() * _Py_c_prod() * _Py_c_quot() * _Py_c_sum() * _Py_static_string() * _Py_static_string_init()
* gh-112026: Add again <unistd.h> include in Python.h (#112046)Victor Stinner2023-11-153-21/+15
| | | | Add again <ctype.h> and <unistd.h> includes in Python.h, but don't include them in the limited C API version 3.13 and newer.
* GH-111848: Set the IP when de-optimizing (GH-112065)Mark Shannon2023-11-156-98/+118
| | | | | | | | | | | | * Replace jumps with deopts in tier 2 * Fewer special cases of uop names * Add target field to uop IR * Remove more redundant SET_IP and _CHECK_VALIDITY micro-ops * Extend whitelist of non-escaping API functions.
* Fix typo in perf profiling docs (#112112)Ryuji Tsutsui2023-11-151-1/+1
|
* gh-108303: Delete `imp_dummy` test file (#112110)Nikita Sobolev2023-11-151-3/+0
|
* gh-111789: Use PyDict_GetItemRef() in Modules/_asynciomodule.c (GH-112072)Serhiy Storchaka2023-11-151-6/+2
|
* Docs: Add the time to the HTML last updated format (#110091)Adam Turner2023-11-151-3/+2
|
* gh-112062: Make `_struct` module thread-safe in `--disable-gil` builds (#112094)Radislav Chugunov2023-11-151-7/+6
| | | | | * gh-112062: Make `_struct` module thread-safe in --disable-gil builds
* gh-111545: Test PyHash_GetFuncDef() function (#112098)Victor Stinner2023-11-159-1/+147
| | | Add Modules/_testcapi/hash.c and Lib/test/test_capi/test_hash.py.
* gh-109538: Avoid RuntimeError when StreamWriter is deleted with closed loop ↵DPR2023-11-153-5/+45
| | | | | | | (#111983) Issue a ResourceWarning instead. Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-111995: Add getnameinfo extension flag (#111994)adder322023-11-152-0/+5
| | | Add getnameinfo extension NI_IDN flag.
* gh-111545: Add Include/cpython/pyhash.h header file (#112063)Victor Stinner2023-11-155-13/+24
| | | Move non-limited C API to a new Include/cpython/pyhash.h header file.
* gh-111942: Fix SystemError in the TextIOWrapper constructor (#112061)Serhiy Storchaka2023-11-143-5/+9
| | | | | | In non-debug more the check for the "errors" argument is skipped, and then PyUnicode_AsUTF8() can fail, but its result was not checked. Co-authored-by: Victor Stinner <vstinner@python.org>
* gh-111906: Fix warnings during mimalloc build on FreeBSD (#111907)Furkan Onder2023-11-141-2/+2
| | | Fix `unused function` warnings during mimalloc build on FreeBSD.
* gh-111942: Fix crashes in TextIOWrapper.reconfigure() (GH-111976)Serhiy Storchaka2023-11-143-5/+122
| | | | | | | | * Fix crash when encoding is not string or None. * Fix crash when both line_buffering and write_through raise exception when converted ti int. * Add a number of tests for constructor and reconfigure() method with invalid arguments.
* GH-111848: Convert remaining jumps to deopts into tier 2 code. (GH-112045)Mark Shannon2023-11-147-129/+184
|
* gh-111789: Simplify bytecodes.c by using PyDict_GetItemRef() (GH-111978)Serhiy Storchaka2023-11-143-140/+51
|
* gh-111262: Add PyDict_Pop() function (#112028)Victor Stinner2023-11-1415-73/+335
| | | | | | | _PyDict_Pop_KnownHash(): remove the default value and the return type becomes an int. Co-authored-by: Stefan Behnel <stefan_ml@behnel.de> Co-authored-by: Antoine Pitrou <pitrou@free.fr>
* gh-110944: Make pdb completion work for alias and convenience vars (GH-110945)Tian Gao2023-11-143-1/+39
|
* gh-111903: Add `@critical_section` directive to Argument Clinic. (#111904)Sam Gross2023-11-145-8/+117
| | | | | | | | | The `@critical_section` directive instructs Argument Clinic to generate calls to `Py_BEGIN_CRITICAL_SECTION()` and `Py_END_CRITICAL_SECTION()` around the bound function. In `--disable-gil` builds, these calls will lock and unlock the `self` object. They are no-ops in the default build. This is used in one place (`_io._Buffered.close`) as a demonstration. Subsequent PRs will use it more widely in the `_io.Buffered` bindings.
* gh-111789: Simplify ceval.c by using PyDict_GetItemRef() (GH-111980)Serhiy Storchaka2023-11-141-18/+14
|
* gh-111789: Simplify import.c by using PyDict_GetItemRef() (GH-111979)Serhiy Storchaka2023-11-141-18/+17
|
* gh-111789: Use PyDict_GetItemRef() in _ctypes (GH-111828)Serhiy Storchaka2023-11-142-78/+61
|
* gh-111789: Use PyDict_GetItemRef() in Objects/ (GH-111827)Serhiy Storchaka2023-11-145-120/+76
|
* gh-111622: Fix doc for items views (#112051)Terry Jan Reedy2023-11-141-5/+8
| | | | They are set-like even when some values are not hashable, but work even better when all are.
* GH-111520: Add back the operand local (GH-111813)Brandt Bucher2023-11-143-28/+24
|
* gh-107149: make new opcode util functions private rather than public and ↵Irit Katriel2023-11-145-39/+43
| | | | unstable (#112042)
* gh-112007: Re-organize help utility intro message (#112017)Terry Jan Reedy2023-11-131-11/+13
| | | | | | Most important: move how-to-quit sentence to the end and mention 'q'. Re-group the other sentences and improve some wording. --------- Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* GH-110417: Fix `glob` docs ordering (#110418)Barney Gale2023-11-131-34/+35
| | | | | | | Fix incorrect placement of `translate()` docs from cf67ebf. Move "see also: pathlib" admonition to the bottom of the page, alongside one for fnmatch. This helps the module introduction flow more naturally into the function descriptions. Add an "Examples" subheading just before the examples. This makes it more obvious that examples aren't specifically related to the preceding documentation of `escape()` and `translate()`.