bpo-41627: Distinguish 32 and 64-bit user site packages on Windows (G…
…H-22098) Also fixes the error message returned when sysconfig fails to interpolate a variable correctly.
bpo-38585: Remove references to defusedexpat (GH-22095)
defusedexpat is not maintained.
bpo-41638: Improve ProgrammingError message for absent parameter. (GH…
…-21999) It contains now the name of the parameter instead of its index when parameters are supplied as a dict.
bpo-41713: _signal doesn't use multi-phase init (GH-22087)
Partially revert commit 71d1bd9: don't use multi-phase initialization (PEP 489) for the _signal extension module.
Fix 'gather' rules in the python parser generator (GH-22021)
Currently, empty sequences in gather rules make the conditional for gather rules fail as empty sequences evaluate as "False". We need to explicitly check for "None" (the failure condition) to avoid false negatives.
bpo-39883: Use BSD0 license for code in docs (GH-17635)
The PSF board approved this use.
bpo-39010: Improve test shutdown (#22066)
Simply closing the event loop isn't enough to avoid warnings. If we don't also shut down the event loop's default executor, it sometimes logs a "dangling thread" warning. Follow-up to GH-22017
bpo-41696: Fix handling of debug mode in asyncio.run (#22069)
* bpo-41696: Fix handling of debug mode in asyncio.run This allows PYTHONASYNCIODEBUG or -X dev to enable asyncio debug mode when using asyncio.run *📜 🤖 Added by blurb_it. Co-authored-by: hauntsaninja <> Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
bpo-41690: Use a loop to collect args in the parser instead of recurs…
…ion (GH-22053) This program can segfault the parser by stack overflow: ``` import ast code = "f(" + ",".join(['a' for _ in range(100000)]) + ")" print("Ready!") ast.parse(code) ``` the reason is that the rule for arguments has a simple recursion when collecting args: args[expr_ty]: [...] | a=named_expression b=[',' c=args { c }] { [...] }
bpo-41675: Modernize siginterrupt calls (GH-22028)
siginterrupt is deprecated:
./Modules/signalmodule.c:667:5: warning: ‘siginterrupt’ is deprecated: Use sigaction with SA_RESTART instead [-Wdeprecated-declarations]
667 | if (siginterrupt(signalnum, flag)<0) {bpo-41685: Don't pin setuptools version anymore in Doc/Makefile (GH-2…
…2062) setuptools 50.0.2 is now compatible with Python 3.10: pypa/setuptools#2361
bpo-1635741: Port _sha3 module to multi-phase init (GH-21855)
Port the _sha3 extension module to multi-phase init (PEP 489). Convert static types to heap types.
bpo-1635741: Port _blake2 module to multi-phase init (GH-21856)
Port the _blake2 extension module to the multi-phase initialization API (PEP 489).
bpo-39349: Add cancel_futures to Executor.shutdown base class (GH-22023)
* Add cancel_futures parameter to the Executor base class, since it was missed in the original PR (#18057) that added cancel_futures.
bpo-41654: Fix deallocator of MemoryError to account for subclasses (G…
…H-22020) When allocating MemoryError classes, there is some logic to use pre-allocated instances in a freelist only if the type that is being allocated is not a subclass of MemoryError. Unfortunately in the destructor this logic is not present so the freelist is altered even with subclasses of MemoryError.
bpo-41528: Use math module in turtle (GH-21837)
Use angle-related functions from math module instead of reinventing the wheel.
bpo-41617: Fix pycore_bitutils.h to support clang 3.0 (GH-22042)
__builtin_bswap16() is not available in LLVM clang 3.0.
bpo-41681: Fix for `f-string/str.format` error description when using…
… 2 `,` in format specifier (GH-22036) * Fixed `f-string/str.format` error description when using two `,` in format specifier. Co-authored-by: millefalcon <hanish0019@hmail.com>
[doc] Add link to FileHandler in logging (GH-21940)
Co-authored-by: Andrés Delfino <adelfino@onapsis.com>