]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
3 years agofFx refleak in isinstance error path (GH-31005)
Ken Jin [Sat, 29 Jan 2022 14:34:12 +0000 (22:34 +0800)] 
fFx refleak in isinstance error path (GH-31005)

3 years agoFix a `UnboundLocalError` bug in `test_sysconfig` (GH-31000)
Brett Cannon [Sat, 29 Jan 2022 00:43:36 +0000 (16:43 -0800)] 
Fix a `UnboundLocalError` bug in `test_sysconfig` (GH-31000)

Accidentally introduced by GH-24502

3 years agobpo-29688: document and test `pathlib.Path.absolute()` (GH-26153)
Barney Gale [Fri, 28 Jan 2022 23:40:55 +0000 (23:40 +0000)] 
bpo-29688: document and test `pathlib.Path.absolute()` (GH-26153)

Co-authored-by: Brett Cannon <brett@python.org>
Co-authored-by: Brian Helba <brian.helba@kitware.com>
3 years agobpo-43112: detect musl as a separate SOABI (GH-24502)
Natanael Copa [Fri, 28 Jan 2022 23:02:54 +0000 (00:02 +0100)] 
bpo-43112: detect musl as a separate SOABI (GH-24502)

musl libc and gnu libc are not ABI compatible so we need set different
SOABI for musl and not simply assume that all linux is linux-gnu.

Replace linux-gnu with the detected os for the build from config.guess
for linux-musl*.

3 years agobpo-26552: Fixed case where failing `asyncio.ensure_future` did not close the corouti...
Kumar Aditya [Fri, 28 Jan 2022 22:24:35 +0000 (03:54 +0530)] 
bpo-26552: Fixed case where failing `asyncio.ensure_future` did not close the coroutine (#30288)

3 years agobpo-46458: Add tests for context of exception in finally block (GH-30986)
Irit Katriel [Fri, 28 Jan 2022 20:41:58 +0000 (20:41 +0000)] 
bpo-46458: Add tests for context of exception in finally block (GH-30986)

3 years agobpo-46560: Fix a typo in `typing.ParamSpec's` doc string (GH-30995)
Zackery Spytz [Fri, 28 Jan 2022 18:08:11 +0000 (10:08 -0800)] 
bpo-46560: Fix a typo in `typing.ParamSpec's` doc string (GH-30995)

3 years agobpo-46553: allow bare typing.ClassVar annotations (#30983)
Gregory Beauregard [Fri, 28 Jan 2022 16:58:39 +0000 (08:58 -0800)] 
bpo-46553: allow bare typing.ClassVar annotations (#30983)

These are used in the wild and covered by dataclasses unit tests.
Several static type checkers support this pattern.

3 years agobpo-33125: Enables building traditional installer for Windows ARM64 (GH-30885)
Steve Dower [Fri, 28 Jan 2022 16:48:06 +0000 (16:48 +0000)] 
bpo-33125: Enables building traditional installer for Windows ARM64 (GH-30885)

Also makes a few general improvements to the build process and removes some dead code.

3 years agobpo-45925: Update Windows installer to SQLite 3.37.2 (GH-30485)
Kumar Aditya [Fri, 28 Jan 2022 16:29:32 +0000 (21:59 +0530)] 
bpo-45925: Update Windows installer to SQLite 3.37.2 (GH-30485)

3 years agobpo-46072: Add simple stats for Python calls. (GH-30989)
Mark Shannon [Fri, 28 Jan 2022 15:20:33 +0000 (15:20 +0000)] 
bpo-46072: Add simple stats for Python calls. (GH-30989)

3 years agobpo-46417: _PyStructSequence_FiniType() updates _Py_RefTotal (GH-30988)
Victor Stinner [Fri, 28 Jan 2022 13:08:32 +0000 (14:08 +0100)] 
bpo-46417: _PyStructSequence_FiniType() updates _Py_RefTotal (GH-30988)

3 years agobpo-46329: Split calls into precall and call instructions. (GH-30855)
Mark Shannon [Fri, 28 Jan 2022 12:42:30 +0000 (12:42 +0000)] 
bpo-46329: Split calls into precall and call instructions. (GH-30855)

* Add PRECALL_FUNCTION opcode.

* Move 'call shape' varaibles into struct.

* Replace CALL_NO_KW and CALL_KW with KW_NAMES and CALL instructions.

* Specialize for builtin methods taking using the METH_FASTCALL | METH_KEYWORDS protocol.

* Allow kwnames for specialized calls to builtin types.

* Specialize calls to tuple(arg) and str(arg).

3 years agobpo-46449: deepfreeze get_code() now returns strong ref (GH-30987)
Kumar Aditya [Fri, 28 Jan 2022 12:41:13 +0000 (18:11 +0530)] 
bpo-46449: deepfreeze get_code() now returns strong ref  (GH-30987)

3 years agobpo-42238: [doc] Avoid hardcoding fast-moving lines in susp-ignored.csv. (GH-30981)
Julien Palard [Fri, 28 Jan 2022 09:50:58 +0000 (10:50 +0100)] 
bpo-42238: [doc] Avoid hardcoding fast-moving lines in susp-ignored.csv. (GH-30981)

3 years agobpo-46530: add `"thread_time"` to `test_time.test_get_clock_info` (#30913)
Nikita Sobolev [Fri, 28 Jan 2022 05:43:00 +0000 (08:43 +0300)] 
bpo-46530: add `"thread_time"` to `test_time.test_get_clock_info` (#30913)

3 years agobpo-46407: Optimizing some modulo operations (GH-30653)
Crowthebird [Fri, 28 Jan 2022 00:46:45 +0000 (08:46 +0800)] 
bpo-46407: Optimizing some modulo operations (GH-30653)

Added new internal functions to compute mod without also computing the quotient.

The loops can be leaner then, which leads to modestly but reliably faster execution in contexts that know they don't need the quotient.

Code by Jeremiah Vivian (Pascual).

3 years agobpo-46542: test_json uses support.infinite_recursion() (GH-30972)
Victor Stinner [Fri, 28 Jan 2022 00:35:13 +0000 (01:35 +0100)] 
bpo-46542: test_json uses support.infinite_recursion() (GH-30972)

Fix test_json tests checking for RecursionError: modify these tests
to use support.infinite_recursion().

3 years agobpo-40170: Remove PyHeapType_GET_MEMBERS() macro (GH-30942)
Victor Stinner [Thu, 27 Jan 2022 23:39:52 +0000 (00:39 +0100)] 
bpo-40170: Remove PyHeapType_GET_MEMBERS() macro (GH-30942)

Remove the PyHeapType_GET_MEMBERS() macro. It was exposed in the
public C API by mistake, it must only be used by Python internally.
Use the PyTypeObject.tp_members member instead.

Rename PyHeapType_GET_MEMBERS() to _PyHeapType_GET_MEMBERS() and move
it to the internal C API.

3 years agobpo-40170: Move _Py_GetAllocatedBlocks() to pycore_pymem.h (GH-30943)
Victor Stinner [Thu, 27 Jan 2022 20:23:22 +0000 (21:23 +0100)] 
bpo-40170: Move _Py_GetAllocatedBlocks() to pycore_pymem.h (GH-30943)

Move _Py_GetAllocatedBlocks() and _PyObject_DebugMallocStats()
declarations to pycore_pymem.h. These functions are related to memory
allocators, not to the PyObject structure.

3 years agobpo-46417: signal: move siginfo_type to the module state (GH-30964)
Victor Stinner [Thu, 27 Jan 2022 20:21:50 +0000 (21:21 +0100)] 
bpo-46417: signal: move siginfo_type to the module state (GH-30964)

3 years agobpo-42982: update pbkdf2 example & add another link (GH-30966)
Gregory P. Smith [Thu, 27 Jan 2022 20:18:28 +0000 (12:18 -0800)] 
bpo-42982: update pbkdf2 example & add another link (GH-30966)

Automerge-Triggered-By: GH:gpshead
3 years agobpo-46476: Simplify and fix _PyStaticCode_Dealloc (GH-30965)
Christian Heimes [Thu, 27 Jan 2022 19:32:12 +0000 (21:32 +0200)] 
bpo-46476: Simplify and fix _PyStaticCode_Dealloc (GH-30965)

3 years agobpo-46541: Generate the global objects initializer. (gh-30941)
Eric Snow [Thu, 27 Jan 2022 18:06:09 +0000 (11:06 -0700)] 
bpo-46541: Generate the global objects initializer. (gh-30941)

This change is a prerequisite for generating code for other global objects (like strings in gh-30928).

(We borrowed some code from Tools/scripts/deepfreeze.py.)

https://bugs.python.org/issue46541

3 years agobpo-46098: Add test for multiline syntax error traceback (GH-30695)
Russel Webber [Thu, 27 Jan 2022 14:13:12 +0000 (14:13 +0000)] 
bpo-46098: Add test for multiline syntax error traceback (GH-30695)

3 years agobpo-44734: Fix floating point precision in test_turtle (GH-30910)
Karolina Surma [Thu, 27 Jan 2022 13:57:55 +0000 (14:57 +0100)] 
bpo-44734: Fix floating point precision in test_turtle (GH-30910)

3 years agobpo-46458: emit code for else of a try block immediately after the try body (GH-30751)
Irit Katriel [Thu, 27 Jan 2022 13:40:44 +0000 (13:40 +0000)] 
bpo-46458: emit code for else of a try block immediately after the try body (GH-30751)

3 years agobpo-46476: Fix memory leak in code objects generated by deepfreeze (GH-30853)
Kumar Aditya [Thu, 27 Jan 2022 13:03:47 +0000 (18:33 +0530)] 
bpo-46476: Fix memory leak in code objects generated by deepfreeze (GH-30853)

Add _Py_Deepfreeze_Fini() and _PyStaticCode_Dealloc() functions.

3 years agobpo-44791: Fix substitution of ParamSpec in Concatenate with different parameter...
Serhiy Storchaka [Thu, 27 Jan 2022 12:34:55 +0000 (14:34 +0200)] 
bpo-44791: Fix substitution of ParamSpec in Concatenate with different parameter expressions (GH-27518)

* Substitution with a list of types returns now a tuple of types.
* Substitution with Concatenate returns now a Concatenate with
  concatenated lists of arguments.
* Substitution with Ellipsis is not supported.

3 years agobpo-46544: Do not leak `x` and `uspace` in textwrap.TextWrapper (GH-30955)
Nikita Sobolev [Thu, 27 Jan 2022 11:55:58 +0000 (14:55 +0300)] 
bpo-46544: Do not leak `x` and `uspace` in textwrap.TextWrapper (GH-30955)

3 years agobpo-23556: [doc] Fix inaccuracy in documentation for raise without args. Improve...
Kinshuk Dua [Thu, 27 Jan 2022 10:24:48 +0000 (15:54 +0530)] 
bpo-23556: [doc] Fix inaccuracy in documentation for raise without args. Improve tests for context in nested except handlers.  (GH-29236)

3 years agobpo-40280: Use presence of msvcrt module to detect Windows (GH-30930)
Christian Heimes [Thu, 27 Jan 2022 09:57:43 +0000 (11:57 +0200)] 
bpo-40280: Use presence of msvcrt module to detect Windows (GH-30930)

3 years agobpo-42982: Improve the text on suggested number of iterations of PBKDF2 (GH-24276)
Illia Volochii [Thu, 27 Jan 2022 08:39:09 +0000 (10:39 +0200)] 
bpo-42982: Improve the text on suggested number of iterations of PBKDF2 (GH-24276)

Less specific number wording (as there is no one right number - the old 100k is too big for some applications and woefully small for others). We now link to NIST SP 800-132 to tell people what to read in there on how to decide for their application.

Co-authored-by: Gregory P. Smith <greg@krypto.org> [Google]
3 years ago[doc]: Spotted errors while working on rstlint. (GH-30879)
Julien Palard [Thu, 27 Jan 2022 07:57:43 +0000 (08:57 +0100)] 
[doc]: Spotted errors while working on rstlint. (GH-30879)

Also ignored some `make suspicious` false positives while assuring
true positives were properly seen by rstlint.

3 years agobpo-45162: Revert "Remove many old deprecated unittest features" (GH-30935)
Gregory P. Smith [Thu, 27 Jan 2022 04:39:15 +0000 (20:39 -0800)] 
bpo-45162: Revert "Remove many old deprecated unittest features" (GH-30935)

Revert "bpo-45162: Remove many old deprecated unittest features (GH-28268)"

This reverts commit b0a6ede3d0bd6fa4ffe413ab4dfc1059201df25b.

We're deferring this change until 3.12 while upstream projects that use
the legacy assertion method names are fixed.  See the issue for links
to the discussion. Many upstream projects now have issues and PRs
filed.

3 years agobpo-46496: news11-10 for bpo45296 (GH-30937)
Terry Jan Reedy [Thu, 27 Jan 2022 03:19:32 +0000 (22:19 -0500)] 
bpo-46496: news11-10 for bpo45296 (GH-30937)

3 years agobpo-45296: Clarify close, quit, and exit in IDLE (GH-30936)
Terry Jan Reedy [Thu, 27 Jan 2022 03:16:31 +0000 (22:16 -0500)] 
bpo-45296: Clarify close, quit, and exit in IDLE (GH-30936)

In the File menu, 'Close' and 'Exit' are now 'Close Window' (the current
one) and 'Exit' is now 'Exit IDLE' (by closing all windows).
In Shell, 'quit()' and 'exit()' mean 'close Shell'.
If there are no other windows, this also exits IDLE.

3 years agobpo-46539: Pass status of special typeforms to forward references (GH-30926)
Gregory Beauregard [Thu, 27 Jan 2022 03:11:51 +0000 (19:11 -0800)] 
bpo-46539: Pass status of special typeforms to forward references (GH-30926)

Previously this didn't matter because there weren't any valid code paths
that could trigger a type check with a special form, but after the bug
fix for `Annotated` wrapping special forms it's now possible to annotate
something like `Annotated['ClassVar[int]', (3, 4)]`. This change would
also be needed for proposed future changes, such as allowing `ClassVar`
and `Final` to nest each other in dataclasses.

3 years agobpo-40170: Remove _Py_GetAllocatedBlocks() function (GH-30940)
Victor Stinner [Thu, 27 Jan 2022 02:35:51 +0000 (03:35 +0100)] 
bpo-40170: Remove _Py_GetAllocatedBlocks() function (GH-30940)

Move _Py_GetAllocatedBlocks() and _PyObject_DebugMallocStats()
private functions to the internal C API.

3 years agobpo-40170: PyType_SUPPORTS_WEAKREFS() becomes a regular function (GH-30938)
Victor Stinner [Thu, 27 Jan 2022 02:00:55 +0000 (03:00 +0100)] 
bpo-40170: PyType_SUPPORTS_WEAKREFS() becomes a regular function (GH-30938)

Convert the PyType_SUPPORTS_WEAKREFS() macro to a regular function.
It no longer access the PyTypeObject.tp_weaklistoffset member
directly.

Add _PyType_SUPPORTS_WEAKREFS() static inline functions, used
internally by Python for best performance.

3 years agobpo-46502: Remove "How do I tell incomplete input" from FAQ (GH-30925)
Mateusz Łoskot [Wed, 26 Jan 2022 23:49:06 +0000 (00:49 +0100)] 
bpo-46502: Remove "How do I tell incomplete input" from FAQ (GH-30925)

Since,

- Py_CompileString no longer allows to distinguish "incomplete input"
  from "invalid input"
- there is no alternative solution available from the Python C API
  due to how the new parser works (rewritten in 3.9)
- the only supported way is to manually import the codeop module from C
  and use its API as IDLE does, and accept its own complications

it is desirable to remove this Q&A from the official FAQ.

3 years agomake regen-all now suggests running: make autoconf (GH-30893)
Victor Stinner [Wed, 26 Jan 2022 23:35:40 +0000 (00:35 +0100)] 
make regen-all now suggests running: make autoconf (GH-30893)

"make autoconf" also runs autoheader, whereas "autoconf" does not.

3 years agobpo-38472: setup.py uses LC_ALL=C to check the C compiler (GH-30929)
Victor Stinner [Wed, 26 Jan 2022 23:22:04 +0000 (00:22 +0100)] 
bpo-38472: setup.py uses LC_ALL=C to check the C compiler (GH-30929)

Fix GCC detection in setup.py when cross-compiling. The C compiler is
now run with LC_ALL=C. Previously, the detection failed with a German
locale.

3 years agobpo-46528: Simplify the VM's stack manipulations (GH-30902)
Brandt Bucher [Wed, 26 Jan 2022 20:47:45 +0000 (12:47 -0800)] 
bpo-46528: Simplify the VM's stack manipulations (GH-30902)

3 years agobpo-35134: Add Include/cpython/descrobject.h (GH-30923)
Victor Stinner [Wed, 26 Jan 2022 16:32:47 +0000 (17:32 +0100)] 
bpo-35134: Add Include/cpython/descrobject.h (GH-30923)

Move Include/descrobject.h non-limited API to a new
Include/cpython/descrobject.h header file.

3 years agobpo-43853: Expand test suite for SQLite UDF's (GH-27642)
Erlend Egeberg Aasland [Wed, 26 Jan 2022 16:26:16 +0000 (17:26 +0100)] 
bpo-43853: Expand test suite for SQLite UDF's (GH-27642)

3 years agobpo-46527: allow calling enumerate(iterable=...) again (GH-30904)
Jelle Zijlstra [Wed, 26 Jan 2022 15:46:48 +0000 (07:46 -0800)] 
bpo-46527: allow calling enumerate(iterable=...) again (GH-30904)

3 years agoUse existing unbound_local_error label in DELETE_FAST opcode (GH-30882)
Kumar Aditya [Wed, 26 Jan 2022 13:58:28 +0000 (19:28 +0530)] 
Use existing unbound_local_error label in DELETE_FAST opcode (GH-30882)

3 years agobpo-46529: increase coverage of `typing.Union.__repr__` method (GH-30911)
Nikita Sobolev [Wed, 26 Jan 2022 10:13:02 +0000 (13:13 +0300)] 
bpo-46529: increase coverage of `typing.Union.__repr__` method (GH-30911)

3 years agobpo-43698: do not use `...` as argument name in docs (GH-30502)
Nikita Sobolev [Wed, 26 Jan 2022 10:06:10 +0000 (13:06 +0300)] 
bpo-43698: do not use `...` as argument name in docs (GH-30502)

3 years agobpo-45578: add a test case for `dis.findlabels` (GH-30058)
Nikita Sobolev [Wed, 26 Jan 2022 10:05:35 +0000 (13:05 +0300)] 
bpo-45578: add a test case for `dis.findlabels` (GH-30058)

3 years agobpo-46513: Remove AC_C_CHAR_UNSIGNED / __CHAR_UNSIGNED__ (GH-30851)
Christian Heimes [Wed, 26 Jan 2022 09:03:49 +0000 (11:03 +0200)] 
bpo-46513: Remove AC_C_CHAR_UNSIGNED / __CHAR_UNSIGNED__ (GH-30851)

3 years agobpo-41844: Update IDLE part of What's New 3.9 to 20228 (GH-30905)
Terry Jan Reedy [Wed, 26 Jan 2022 04:49:54 +0000 (23:49 -0500)] 
bpo-41844: Update IDLE part of What's New 3.9 to 20228 (GH-30905)

3 years agobpo-48146: Update IDLE part of What's New 3.10 to 2022 (GH-30906)
Terry Jan Reedy [Wed, 26 Jan 2022 04:48:53 +0000 (23:48 -0500)] 
bpo-48146: Update IDLE part of What's New 3.10 to 2022 (GH-30906)

3 years agobpo-46431: use raw string for regex in test (GH-30901)
Irit Katriel [Tue, 25 Jan 2022 23:52:43 +0000 (23:52 +0000)] 
bpo-46431: use raw string for regex in test (GH-30901)

3 years agoAdd skips to crashing tests under sanitizers instead of manually skipping them (GH...
Pablo Galindo Salgado [Tue, 25 Jan 2022 23:14:03 +0000 (23:14 +0000)] 
Add skips to crashing tests under sanitizers instead of manually skipping them (GH-30897)

3 years agobpo-46091: Correctly calculate indentation levels for whitespace lines with continuat...
Pablo Galindo Salgado [Tue, 25 Jan 2022 22:12:14 +0000 (22:12 +0000)] 
bpo-46091: Correctly calculate indentation levels for whitespace lines with continuation characters (GH-30130)

3 years agoRefactor sanitiser skip tests into test.support (GH-30889)
Pablo Galindo Salgado [Tue, 25 Jan 2022 22:01:10 +0000 (22:01 +0000)] 
Refactor sanitiser skip tests into test.support (GH-30889)

* Refactor sanitizer skip tests into test.support

* fixup! Refactor sanitizer skip tests into test.support

* fixup! fixup! Refactor sanitizer skip tests into test.support

3 years agobpo-45382: test.pythoninfo: set wmic.exe encoding to OEM (GH-30890)
Victor Stinner [Tue, 25 Jan 2022 19:02:23 +0000 (20:02 +0100)] 
bpo-45382: test.pythoninfo: set wmic.exe encoding to OEM (GH-30890)

3 years agobpo-46510: Add missing test for types.TracebackType/FrameType. Calculate them directl...
Irit Katriel [Tue, 25 Jan 2022 18:00:57 +0000 (18:00 +0000)] 
bpo-46510: Add missing test for types.TracebackType/FrameType. Calculate them directly from the caught exception. (GH-30880)

3 years agobpo-46510: simplify exception handling code in xmlrpc (GH-30878)
Irit Katriel [Tue, 25 Jan 2022 17:58:13 +0000 (17:58 +0000)] 
bpo-46510: simplify exception handling code in xmlrpc (GH-30878)

3 years agobpo-46510: update Python2-style exception handling in argparse (GH-30881)
Kumar Aditya [Tue, 25 Jan 2022 15:34:03 +0000 (21:04 +0530)] 
bpo-46510: update Python2-style exception handling in argparse (GH-30881)

3 years agoMove doctests to the main docs. Eliminate duplication. Improve coverage. (GH-30869)
Raymond Hettinger [Tue, 25 Jan 2022 12:56:53 +0000 (06:56 -0600)] 
Move doctests to the main docs. Eliminate duplication. Improve coverage. (GH-30869)

3 years agobpo-46420: Use NOTRACE_DISPATCH() in specialized opcodes (GH-30652)
Dennis Sweeney [Tue, 25 Jan 2022 12:28:29 +0000 (07:28 -0500)] 
bpo-46420: Use NOTRACE_DISPATCH() in specialized opcodes (GH-30652)

3 years agobpo-46496: Update IDLE News to 2021 Jan 24 (GH-30875)
Terry Jan Reedy [Tue, 25 Jan 2022 08:27:09 +0000 (03:27 -0500)] 
bpo-46496: Update IDLE News to 2021 Jan 24 (GH-30875)

3 years agobpo-40280: Skip subprocess-based tests on wasm32-emscripten (GH-30615)
Christian Heimes [Tue, 25 Jan 2022 07:09:06 +0000 (09:09 +0200)] 
bpo-40280: Skip subprocess-based tests on wasm32-emscripten (GH-30615)

3 years agobpo-46491: Allow Annotated on outside of Final/ClassVar (GH-30864)
Gregory Beauregard [Tue, 25 Jan 2022 06:37:15 +0000 (22:37 -0800)] 
bpo-46491: Allow Annotated on outside of Final/ClassVar (GH-30864)

We treat Annotated type arg as class-level annotation. This exempts it from checks against Final and ClassVar in order to allow using them in any nesting order.

Automerge-Triggered-By: GH:gvanrossum
3 years agobpo-41841: update idlelib News up to 3.10.0. (GH-30868)
Terry Jan Reedy [Tue, 25 Jan 2022 04:48:40 +0000 (23:48 -0500)] 
bpo-41841: update idlelib News up to 3.10.0. (GH-30868)

3 years agobpo-46503: Prevent an assert from firing when parsing some invalid \N sequences in...
Eric V. Smith [Tue, 25 Jan 2022 02:53:27 +0000 (21:53 -0500)] 
bpo-46503: Prevent an assert from firing when parsing some invalid \N sequences in f-strings. (GH-30865)

* bpo-46503: Prevent an assert from firing.  Also fix one nearby tiny PEP-7 nit.

* Added blurb.

3 years agobpo-46504: faster code for trial quotient in x_divrem() (GH-30856)
Tim Peters [Tue, 25 Jan 2022 01:06:00 +0000 (19:06 -0600)] 
bpo-46504: faster code for trial quotient in x_divrem() (GH-30856)

* bpo-46504: faster code for trial quotient in x_divrem()

This brings x_divrem() back into synch with x_divrem1(), which was changed
in bpo-46406 to generate faster code to find machine-word division
quotients and remainders. Modern processors compute both with a single
machine instruction, but convincing C to exploit that requires writing
_less_ "clever" C code.

3 years agobpo-46431: Add example of subclassing ExceptionGroup. Document the message and except...
Irit Katriel [Mon, 24 Jan 2022 21:50:18 +0000 (21:50 +0000)] 
bpo-46431: Add example of subclassing ExceptionGroup. Document the message and exceptions attributes (GH-30852)

3 years agobpo-46431: improve error message on invalid calls to BaseExceptionGroup.__new__ ...
Irit Katriel [Mon, 24 Jan 2022 21:47:40 +0000 (21:47 +0000)] 
bpo-46431: improve error message on invalid calls to BaseExceptionGroup.__new__ (GH-30854)

3 years agofixed flaky test (GH-30845)
Kumar Aditya [Mon, 24 Jan 2022 21:04:47 +0000 (02:34 +0530)] 
fixed flaky test (GH-30845)

3 years agobpo-40280: Get help() working and more (GH-30858)
Christian Heimes [Mon, 24 Jan 2022 21:02:01 +0000 (23:02 +0200)] 
bpo-40280: Get help() working and more (GH-30858)

3 years agobpo-45711: move whatsnew entries which are incorrectly listed under New Features...
Irit Katriel [Mon, 24 Jan 2022 17:44:42 +0000 (17:44 +0000)] 
bpo-45711: move whatsnew entries which are incorrectly listed under New Features (GH-30849)

3 years agobpo-46470: remove unused branch from `typing._remove_dups_flatten` (GH-30780)
Nikita Sobolev [Mon, 24 Jan 2022 15:42:54 +0000 (18:42 +0300)] 
bpo-46470: remove unused branch from `typing._remove_dups_flatten` (GH-30780)

The branch was a remnant of old 3.6 typing.Union implementation.

3 years agobpo-41906: Accept built filters in dictConfig (GH-30756)
Mario Corchero [Mon, 24 Jan 2022 12:39:50 +0000 (13:39 +0100)] 
bpo-41906: Accept built filters in dictConfig (GH-30756)

When configuring the logging stack, accept already built filters (or
just callables) in the filters array of loggers and handlers.
This facilitates passing quick callables as filters.

Automerge-Triggered-By: GH:vsajip
3 years agobpo-46422: use `dis.Positions` in `dis.Instruction` (GH-30716)
Nikita Sobolev [Mon, 24 Jan 2022 11:09:20 +0000 (14:09 +0300)] 
bpo-46422: use `dis.Positions` in `dis.Instruction` (GH-30716)

Co-authored-by: Batuhan Taskaya <isidentical@gmail.com>
3 years agobpo-43683: Streamline YIELD_VALUE and SEND (GH-30723)
Mark Shannon [Mon, 24 Jan 2022 11:08:53 +0000 (11:08 +0000)] 
bpo-43683: Streamline YIELD_VALUE and SEND (GH-30723)

* Split YIELD_VALUE into ASYNC_GEN_WRAP; YIELD_VALUE for async generators.

* Split SEND into SEND; YIELD_VALUE.

* Document new opcodes.

3 years agofix typo in typing.rst (#30841)
Jelle Zijlstra [Sun, 23 Jan 2022 23:36:08 +0000 (15:36 -0800)] 
fix typo in typing.rst (#30841)

3 years agobpo-46486: Fixed misspelled name DesciptorClassification
Kumar Aditya [Sun, 23 Jan 2022 22:03:50 +0000 (03:33 +0530)] 
bpo-46486: Fixed misspelled name DesciptorClassification

3 years agoImprove grouper() recipe to demonstrate all forms of zip() (GH-30837)
Raymond Hettinger [Sun, 23 Jan 2022 20:31:10 +0000 (14:31 -0600)] 
Improve grouper() recipe to demonstrate all forms of zip() (GH-30837)

3 years agobpo-41403: Improve error message for invalid mock target (GH-30833)
Irit Katriel [Sun, 23 Jan 2022 18:42:41 +0000 (18:42 +0000)] 
bpo-41403: Improve error message for invalid mock target (GH-30833)

3 years agobpo-46471: Use single byte singletons (GH-30781)
Kumar Aditya [Sun, 23 Jan 2022 17:45:39 +0000 (23:15 +0530)] 
bpo-46471: Use single byte singletons (GH-30781)

3 years agobpo-46103: Fix inspect.getmembers to only get __bases__ from class (GH-30147)
Weipeng Hong [Sun, 23 Jan 2022 17:40:38 +0000 (01:40 +0800)] 
bpo-46103: Fix inspect.getmembers to only get __bases__ from class (GH-30147)

3 years agobpo-46481: Implement vectorcall for weakref.ref.__call__ method. (GH-30820)
Dong-hee Na [Sun, 23 Jan 2022 15:39:45 +0000 (00:39 +0900)] 
bpo-46481: Implement vectorcall for weakref.ref.__call__ method. (GH-30820)

3 years agobpo-46483: change `PurePath.__class_getitem__` to return `GenericAlias` (GH-30822)
Nikita Sobolev [Sun, 23 Jan 2022 14:48:43 +0000 (17:48 +0300)] 
bpo-46483: change `PurePath.__class_getitem__` to return `GenericAlias` (GH-30822)

3 years agobpo-46406: Faster single digit int division. (#30626)
Gregory P. Smith [Sun, 23 Jan 2022 10:00:41 +0000 (02:00 -0800)] 
bpo-46406: Faster single digit int division. (#30626)

* bpo-46406: Faster single digit int division.

This expresses the algorithm in a more basic manner resulting in better
instruction generation by todays compilers.

See https://mail.python.org/archives/list/python-dev@python.org/thread/ZICIMX5VFCX4IOFH5NUPVHCUJCQ4Q7QM/#NEUNFZU3TQU4CPTYZNF3WCN7DOJBBTK5

3 years agobpo-29882: Fix portability bug introduced in GH-30774 (#30794)
Mark Dickinson [Sun, 23 Jan 2022 09:59:34 +0000 (09:59 +0000)] 
bpo-29882: Fix portability bug introduced in GH-30774 (#30794)

3 years agobpo-46474: Avoid REDoS in EntryPoint.pattern (sync with importlib_metadata 4.10.1...
Jason R. Coombs [Sun, 23 Jan 2022 04:00:23 +0000 (23:00 -0500)] 
bpo-46474: Avoid REDoS in EntryPoint.pattern (sync with importlib_metadata 4.10.1) (GH-30803)

3 years agobpo-45382: test.pythoninfo logs more Windows versions (GH-30817)
Victor Stinner [Sun, 23 Jan 2022 03:03:43 +0000 (04:03 +0100)] 
bpo-45382: test.pythoninfo logs more Windows versions (GH-30817)

Add the following info to test.pythoninfo:

* windows.ver: output of the shell "ver" command
* windows.version and windows.version_caption: output of the
  "wmic os get Caption,Version /value" command.

3 years agoThis localization technique is no longer cost effective. (GH-30818)
Raymond Hettinger [Sun, 23 Jan 2022 02:52:55 +0000 (20:52 -0600)] 
This localization technique is no longer cost effective. (GH-30818)

3 years agobpo-46474: Apply changes from importlib_metadata 4.10.0 (GH-30802)
Jason R. Coombs [Sun, 23 Jan 2022 02:39:00 +0000 (21:39 -0500)] 
bpo-46474: Apply changes from importlib_metadata 4.10.0 (GH-30802)

3 years agobpo-46425: Partially revert "bpo-46425: fix direct invocation of `test_importlib...
Jason R. Coombs [Sun, 23 Jan 2022 02:38:26 +0000 (21:38 -0500)] 
bpo-46425: Partially revert "bpo-46425: fix direct invocation of `test_importlib` (GH-30682)" (GH-30799)

This reverts commit 57316c52bae5d6420f5067f3891ec328deb97305 for files pertaining to importlib.metadata and importlib.resources.

3 years agobpo-46477: [Enum] ensure Flag subclasses have correct bitwise methods (GH-30816)
Ethan Furman [Sun, 23 Jan 2022 02:27:52 +0000 (18:27 -0800)] 
bpo-46477: [Enum] ensure Flag subclasses have correct bitwise methods (GH-30816)

3 years agobpo-46417: _PyList_Fini() clears indexerr (GH-30815)
Victor Stinner [Sun, 23 Jan 2022 01:20:44 +0000 (02:20 +0100)] 
bpo-46417: _PyList_Fini() clears indexerr (GH-30815)

_PyList_Fini() now clears the 'indexerr' error message.

3 years agoMinor code rearrangement to group related methods together. (GH-30813)
Raymond Hettinger [Sun, 23 Jan 2022 00:47:22 +0000 (18:47 -0600)] 
Minor code rearrangement to group related methods together. (GH-30813)

* Make example more focused with math.prod()
* Move comparison tests to the multiset operations section

3 years agobpo-46417: Fix _PyStaticType_Dealloc() (GH-30810)
Victor Stinner [Sat, 22 Jan 2022 23:32:05 +0000 (00:32 +0100)] 
bpo-46417: Fix _PyStaticType_Dealloc() (GH-30810)

_PyStaticType_Dealloc() now only calls PyObject_ClearWeakRefs()
if the call is not going to fail.

3 years agobpo-46417: Clear symtable identifiers at exit (GH-30809)
Victor Stinner [Sat, 22 Jan 2022 23:06:56 +0000 (00:06 +0100)] 
bpo-46417: Clear symtable identifiers at exit (GH-30809)

Add _PySymtable_Fini() function, called by finalize_interp_clear().

Update test_cmd_line.test_showrefcount() to tolerate negative
reference count.

3 years agobpo-41682: Skip unstable test_asyncio sendfile test on Windows (GH-30801)
Nikita Sobolev [Sat, 22 Jan 2022 22:52:26 +0000 (01:52 +0300)] 
bpo-41682: Skip unstable test_asyncio sendfile test on Windows (GH-30801)