]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
2 years agogh-99889: Fix directory traversal security flaw in uu.decode() (#104096)
Sam Carroll [Tue, 9 May 2023 16:01:58 +0000 (12:01 -0400)] 
gh-99889: Fix directory traversal security flaw in uu.decode() (#104096)

* Fix directory traversal security flaw in uu.decode()
* also check absolute paths and os.altsep
* Add a regression test.

---------

Co-authored-by: Gregory P. Smith <greg@krypto.org> [Google]
2 years agogh-104184: fix building --with-pydebug --enable-pystats (#104217)
Carl Meyer [Tue, 9 May 2023 14:53:19 +0000 (08:53 -0600)] 
gh-104184: fix building --with-pydebug --enable-pystats (#104217)

2 years agogh-104139: Add itms-services to uses_netloc urllib.parse. (#104312)
Gregory P. Smith [Tue, 9 May 2023 14:04:50 +0000 (07:04 -0700)] 
gh-104139: Add itms-services to uses_netloc urllib.parse. (#104312)

Teach unsplit to retain the `"//"` when assembling `itms-services://?action=generate-bugs` style
[Apple Platform Deployment](https://support.apple.com/en-gb/guide/deployment/depce7cefc4d/web) URLs.

2 years agogh-104240: return code unit metadata from codegen (#104300)
Irit Katriel [Tue, 9 May 2023 13:33:40 +0000 (14:33 +0100)] 
gh-104240: return code unit metadata from codegen (#104300)

2 years agogh-104276: Make `_struct.unpack_iterator` type use type flag instead of custom constr...
chgnrdv [Tue, 9 May 2023 12:41:09 +0000 (15:41 +0300)] 
gh-104276: Make `_struct.unpack_iterator` type use type flag instead of custom constructor (#104277)

2 years agogh-97696: Move around and update the whatsnew entry for asyncio eager task factory...
Itamar Ostricher [Tue, 9 May 2023 12:39:59 +0000 (05:39 -0700)] 
gh-97696: Move around and update the whatsnew entry for asyncio eager task factory (#104298)

2 years agogh-103193: Fix refleaks in `test_inspect` and `test_typing` (#104320)
Alex Waygood [Tue, 9 May 2023 12:33:36 +0000 (13:33 +0100)] 
gh-103193: Fix refleaks in `test_inspect` and `test_typing` (#104320)

2 years agorequire-pr-label.yml: Add missing "permissions:" (#104309)
Sebastian Pipping [Tue, 9 May 2023 10:29:00 +0000 (12:29 +0200)] 
require-pr-label.yml: Add missing "permissions:" (#104309)

2 years agogh-90656: Add platform triplets for 64-bit LoongArch (LA64) (#30939)
Zhang Na [Tue, 9 May 2023 09:19:40 +0000 (17:19 +0800)] 
gh-90656: Add platform triplets for 64-bit LoongArch (LA64) (#30939)

Signed-off-by: Zhang Na <zhangna@loongson.cn>
Co-authored-by: WANG Xuerui <git@xen0n.name>
2 years agogh-104180: Read SOCKS proxies from macOS System Configuration (#104181)
samschott [Tue, 9 May 2023 08:24:29 +0000 (10:24 +0200)] 
gh-104180: Read SOCKS proxies from macOS System Configuration (#104181)

read SOCKS proxies from macOS System Configuration in ``urllib.request``.

---------

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
2 years ago gh-97696 Remove unnecessary check for eager_start kwarg (#104188)
Jacob Bower [Tue, 9 May 2023 00:51:58 +0000 (17:51 -0700)] 
 gh-97696 Remove unnecessary check for eager_start kwarg (#104188)

Instead, add docstring to create_eager_task_factory.

2 years agoGH-104308: socket.getnameinfo should release the GIL (#104307)
Nathaniel J. Smith [Mon, 8 May 2023 23:27:20 +0000 (16:27 -0700)] 
GH-104308: socket.getnameinfo should release the GIL (#104307)

* socket.getnameinfo should release the GIL

* ðŸ“œðŸ¤– Added by blurb_it.

---------

Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
2 years agogh-104310: Add importlib.util.allowing_all_extensions() (gh-104311)
Eric Snow [Mon, 8 May 2023 22:56:01 +0000 (16:56 -0600)] 
gh-104310: Add importlib.util.allowing_all_extensions() (gh-104311)

(I'll be adding docs for this separately.)

2 years agogh-99113: A Per-Interpreter GIL! (gh-104210)
Eric Snow [Mon, 8 May 2023 19:15:09 +0000 (13:15 -0600)] 
gh-99113: A Per-Interpreter GIL! (gh-104210)

This is the culmination of PEP 684 (and of my 8-year long multi-core Python project)!

Each subinterpreter may now be created with its own GIL (via Py_NewInterpreterFromConfig()).  If not so configured then the interpreter will share with the main interpreter--the status quo since subinterpreters were added decades ago.  The main interpreter always has its own GIL and subinterpreters from Py_NewInterpreter() will always share with the main interpreter.

2 years agoGH-104284: Fix documentation gettext build (#104296)
Adam Turner [Mon, 8 May 2023 19:01:25 +0000 (20:01 +0100)] 
GH-104284: Fix documentation gettext build (#104296)

2 years agogh-89550: Buffer GzipFile.write to reduce execution time by ~15% (#101251)
Arjun [Mon, 8 May 2023 17:55:59 +0000 (10:55 -0700)] 
gh-89550: Buffer GzipFile.write to reduce execution time by ~15% (#101251)

Use `io.BufferedWriter` to buffer gzip writes.

---------

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2 years agogh-104223: Fix issues with inheriting from buffer classes (#104227)
Jelle Zijlstra [Mon, 8 May 2023 16:52:41 +0000 (09:52 -0700)] 
gh-104223: Fix issues with inheriting from buffer classes (#104227)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2 years agogh-99108: fix typo in Modules/Setup (#104293)
Jonathan Protzenko [Mon, 8 May 2023 16:52:11 +0000 (09:52 -0700)] 
gh-99108: fix typo in Modules/Setup (#104293)

case sensitive filename

2 years agoGH-104145: Use fully-qualified cross reference types for the bisect module (#104172)
Adam Turner [Mon, 8 May 2023 16:32:18 +0000 (17:32 +0100)] 
GH-104145: Use fully-qualified cross reference types for the bisect module (#104172)

2 years agogh-103193: Improve `getattr_static` test coverage (#104286)
Alex Waygood [Mon, 8 May 2023 14:18:36 +0000 (15:18 +0100)] 
gh-103193: Improve `getattr_static` test coverage (#104286)

2 years agoTrim trailing whitespace and test on CI (#104275)
Hugo van Kemenade [Mon, 8 May 2023 14:03:52 +0000 (17:03 +0300)] 
Trim trailing whitespace and test on CI (#104275)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2 years agogh-102500: Remove mention of bytes shorthand (#104281)
Shantanu [Mon, 8 May 2023 13:40:51 +0000 (06:40 -0700)] 
gh-102500: Remove mention of bytes shorthand (#104281)

The bytes shorthand was removed in PEP 688:
https://peps.python.org/pep-0688/#no-special-meaning-for-bytes

I also remove the reference to `collections.abc.ByteString`, since that
object is deprecated (#91896) and has different semantics (#102092)

2 years agogh-97696: Improve and fix documentation for asyncio eager tasks (#104256)
Itamar Ostricher [Mon, 8 May 2023 11:59:34 +0000 (04:59 -0700)] 
gh-97696: Improve and fix documentation for asyncio eager tasks (#104256)

2 years agogh-99108: Replace SHA3 implementation HACL* version (#103597)
Jonathan Protzenko [Mon, 8 May 2023 03:50:04 +0000 (20:50 -0700)] 
gh-99108: Replace SHA3 implementation HACL* version (#103597)

Replaces our built-in SHA3 implementation with a verified one from the HACL* project.

This implementation is used when OpenSSL does not provide SHA3 or is not present.

3.11 shiped with a very slow tiny sha3 implementation to get off of the <=3.10 reference implementation that wound up having serious bugs. This brings us back to a reasonably performing built-in implementation consistent with what we've just replaced our other guaranteed available standard hash algorithms with: code from the HACL* project.

---------

Co-authored-by: Gregory P. Smith <greg@krypto.org>
2 years agogh-104273: Remove redundant len() calls in argparse function (#104274)
Burak Saler [Sun, 7 May 2023 23:43:50 +0000 (02:43 +0300)] 
gh-104273: Remove redundant len() calls in argparse function (#104274)

2 years agogh-64660: Don't hardcode Argument Clinic return converter result variable name (...
Erlend E. Aasland [Sun, 7 May 2023 21:55:37 +0000 (23:55 +0200)] 
gh-64660: Don't hardcode Argument Clinic return converter result variable name (#104200)

2 years agogh-104265 Disallow instantiation of `_csv.Reader` and `_csv.Writer` (#104266)
chgnrdv [Sun, 7 May 2023 21:15:44 +0000 (00:15 +0300)] 
gh-104265 Disallow instantiation of `_csv.Reader` and `_csv.Writer` (#104266)

2 years agoGH-102613: Improve performance of `pathlib.Path.rglob()` (GH-104244)
Barney Gale [Sun, 7 May 2023 21:12:50 +0000 (22:12 +0100)] 
GH-102613: Improve performance of `pathlib.Path.rglob()` (GH-104244)

Stop de-duplicating results in `_RecursiveWildcardSelector`. A new
`_DoubleRecursiveWildcardSelector` class is introduced which performs
de-duplication, but this is used _only_ for patterns with multiple
non-adjacent `**` segments, such as `path.glob('**/foo/**')`. By avoiding
the use of a set, `PurePath.__hash__()` is not called, and so paths do not
need to be stringified and case-normalised.

Also merge adjacent '**' segments in patterns.

2 years agogh-103650: Fix perf maps address format (#103651)
Arthur Pastel [Sun, 7 May 2023 19:42:26 +0000 (21:42 +0200)] 
gh-103650: Fix perf maps address format (#103651)

2 years agoGH-89812: Churn `pathlib.Path` methods (GH-104243)
Barney Gale [Sun, 7 May 2023 19:07:07 +0000 (20:07 +0100)] 
GH-89812: Churn `pathlib.Path` methods (GH-104243)

Re-arrange `pathlib.Path` methods in source code. No other changes.

The methods are arranged as follows:

1. `stat()` and dependants (`exists()`, `is_dir()`, etc)
2. `open()` and dependants (`read_text()`, `write_bytes()`, etc)
3. `iterdir()` and dependants (`glob()`, `walk()`, etc)
4. All other `Path` methods

This patch prepares the ground for a new `_AbstractPath` class, which will
support the methods in groups 1, 2 and 3 above. By churning the methods
here, subsequent patches will be easier to review and less likely to break
things.

2 years agogh-104240: make _PyCompile_CodeGen support different compilation modes (#104241)
Irit Katriel [Sun, 7 May 2023 17:47:28 +0000 (18:47 +0100)] 
gh-104240: make _PyCompile_CodeGen support different compilation modes (#104241)

2 years agogh-103193: cache calls to `inspect._shadowed_dict` in `inspect.getattr_static` (...
Alex Waygood [Sun, 7 May 2023 17:45:09 +0000 (18:45 +0100)] 
gh-103193: cache calls to `inspect._shadowed_dict` in `inspect.getattr_static` (#104267)

Co-authored-by: Carl Meyer <carl@oddbird.net>
2 years agoGH-100479: Fix pathlib test failure on WASI (#104215)
Barney Gale [Sun, 7 May 2023 16:54:40 +0000 (17:54 +0100)] 
GH-100479: Fix pathlib test failure on WASI (#104215)

2 years agogh-101819: Port _io.PyBytesIOBuffer_Type to heap type (#104264)
Erlend E. Aasland [Sun, 7 May 2023 14:01:27 +0000 (16:01 +0200)] 
gh-101819: Port _io.PyBytesIOBuffer_Type to heap type (#104264)

2 years agogh-100370: fix OverflowError in sqlite3.Connection.blobopen for 32-bit builds (#103902)
Erlend E. Aasland [Sun, 7 May 2023 10:55:31 +0000 (12:55 +0200)] 
gh-100370: fix OverflowError in sqlite3.Connection.blobopen for 32-bit builds (#103902)

2 years agogh-101819: Adapt _io.PyWindowsConsoleIO_Type to heap type (#104197)
Erlend E. Aasland [Sun, 7 May 2023 09:23:11 +0000 (11:23 +0200)] 
gh-101819: Adapt _io.PyWindowsConsoleIO_Type to heap type (#104197)

2 years agogh-101819: Port _io.PyIncrementalNewlineDecoder_Type to heap type (#104249)
Erlend E. Aasland [Sun, 7 May 2023 09:20:34 +0000 (11:20 +0200)] 
gh-101819: Port _io.PyIncrementalNewlineDecoder_Type to heap type (#104249)

2 years agoRe-enable commented-out test in test_generators.py (#104130)
ymki4360 [Sun, 7 May 2023 04:44:46 +0000 (13:44 +0900)] 
Re-enable commented-out test in test_generators.py (#104130)

2 years agogh-104018: remove unused format "z" handling in string formatfloat() (#104107)
John Belmonte [Sun, 7 May 2023 04:41:42 +0000 (13:41 +0900)] 
gh-104018: remove unused format "z" handling in string formatfloat() (#104107)

This is a cleanup overlooked in PR #104033.

2 years agogh-97696: Use `PyObject_CallMethodNoArgs` and inline is_loop_running check in `_async...
Itamar Ostricher [Sun, 7 May 2023 04:25:45 +0000 (21:25 -0700)] 
gh-97696: Use `PyObject_CallMethodNoArgs` and inline is_loop_running check in `_asyncio` (#104255)

2 years agogh-103886: Improve `builtins.__doc__` (#104179)
Tomas R [Sun, 7 May 2023 02:05:34 +0000 (04:05 +0200)] 
gh-103886: Improve `builtins.__doc__` (#104179)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2 years agogh-104254: Document the optional keyword-only "context" argument to Task constructor...
Itamar Ostricher [Sun, 7 May 2023 01:31:53 +0000 (18:31 -0700)] 
gh-104254: Document the optional keyword-only "context" argument to Task constructor (#104251)

(This was added in 3.11. It was already documented for `create_task()`, but not for `Task()`.)

2 years agogh-101640: Make argparse _print_message catch any write error (#101802)
Oleg Iarygin [Sat, 6 May 2023 22:53:48 +0000 (02:53 +0400)] 
gh-101640: Make argparse _print_message catch any write error (#101802)

* In particular, don't exit when trying to print to stderr = None.
* Add tests

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2 years agogh-99113: Make Sure the GIL is Acquired at the Right Places (gh-104208)
Eric Snow [Sat, 6 May 2023 21:59:30 +0000 (15:59 -0600)] 
gh-99113: Make Sure the GIL is Acquired at the Right Places (gh-104208)

This is a pre-requisite for a per-interpreter GIL.  Without it this change isn't strictly necessary.  However, there is no real downside otherwise.

2 years agogh-99113: Add a check for Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104206)
Eric Snow [Sat, 6 May 2023 21:57:35 +0000 (15:57 -0600)] 
gh-99113: Add a check for Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104206)

Py_MOD_PER_INTERPRETER_GIL_SUPPORTED is a new supported value for Py_mod_multiple_interpreters, added in gh-104205.

2 years agogh-101819: Remove unused 'locale_module' from _io state (#104246)
Erlend E. Aasland [Sat, 6 May 2023 20:26:06 +0000 (22:26 +0200)] 
gh-101819: Remove unused 'locale_module' from _io state (#104246)

The locale module reference was introduced by 932ff8368 in 2013,
and rendered unused by 710e82630 (gh-23050) in 2020.

2 years agoGH-103548: Improve performance of `pathlib.Path.[is_]absolute()` (GH-103549)
Barney Gale [Sat, 6 May 2023 18:03:07 +0000 (19:03 +0100)] 
GH-103548: Improve performance of `pathlib.Path.[is_]absolute()` (GH-103549)

Improve performance of `pathlib.Path.absolute()` and `cwd()` by joining paths only when necessary. Also improve
performance of `PurePath.is_absolute()` on Posix by skipping path parsing and normalization.

2 years agogh-90953: Emit deprecation warnings for `ast` features deprecated in Python 3.8 ...
Alex Waygood [Sat, 6 May 2023 16:48:07 +0000 (17:48 +0100)] 
gh-90953: Emit deprecation warnings for `ast` features deprecated in Python 3.8 (#104199)

`ast.Num`, `ast.Str`, `ast.Bytes`, `ast.Ellipsis` and `ast.NameConstant` now all emit deprecation warnings on import, access, instantation or `isinstance()` checks.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2 years agogh-104144: Optimize gather to finish eagerly when all futures complete eagerly (...
Itamar Ostricher [Sat, 6 May 2023 15:15:27 +0000 (08:15 -0700)] 
gh-104144: Optimize gather to finish eagerly when all futures complete eagerly (#104138)

2 years agoRewrite the turtledemo makeGraphFrame method (#104224)
Terry Jan Reedy [Sat, 6 May 2023 15:09:08 +0000 (11:09 -0400)] 
Rewrite the turtledemo makeGraphFrame method (#104224)

Replace `self._canvas` and `self.scanvas`, both bound to `canvas`,
with `self.canvas, which is accessed in other methods.
Replace `_s_` with `screen` and `_s_._canvas` with `canvas`.
Add a comment explaining the unorthodox use of
function turtle.Screen and singleton class turtle._Screen.

2 years agogh-65772: Clean-up turtle module (#104218)
Terry Jan Reedy [Sat, 6 May 2023 15:04:41 +0000 (11:04 -0400)] 
gh-65772: Clean-up turtle module (#104218)

* Remove the unused, private, and undocumented name `_ver` and
the commented-out `print` call.

* Don't add math functions to `__all__`.  Beginners should learn
to `import math` to access them.

* Gregor Lindel, who wrote this version of turtle, dropped plans
to implement turtle on another toolkit at least a decade ago.
Drop `_dot` code preparing for this, but add a hint comment.

* `_Screen` is meant to be a singleton class.  To enforce that,
it needs either a `__new__` that returns the singleton or
`else...raise` in `__iter__`.  Merely removing the `if` clauses
as suggested might break something if a user were to call `_Screen`
directly.  Leave the code alone until a problem is evident.

* Turtledemo injects into _Screen both _root and _canvas,
configured as it needs them to be.  Making _canvas an `__init__`
option would require skipping some but not all of the lines under
'if _Screen._canvas is None:`.  Leave working code alone.

2 years agogh-104233: Fix "unused variable" warning in `ceval_gil.c` (#104234)
Nikita Sobolev [Sat, 6 May 2023 14:58:32 +0000 (17:58 +0300)] 
gh-104233: Fix "unused variable" warning in `ceval_gil.c` (#104234)

2 years agoGH-97950: Use new-style index directive ('builtin') (#104164)
Adam Turner [Sat, 6 May 2023 03:54:08 +0000 (04:54 +0100)] 
GH-97950: Use new-style index directive ('builtin') (#104164)

* Uncomment builtin removal in pairindextypes

* Use new-style index directive ('builtin') - C API

* Use new-style index directive ('builtin') - Extending

* Use new-style index directive ('builtin') - Library

* Use new-style index directive ('builtin') - Reference

* Use new-style index directive ('builtin') - Tutorial

2 years agogh-102215: importlib documentation cleanups
Sam Morris [Sat, 6 May 2023 02:40:19 +0000 (03:40 +0100)] 
gh-102215: importlib documentation cleanups

2 years agogh-101819: Prepare to modernize the _io extension (#104178)
Victor Stinner [Fri, 5 May 2023 23:53:55 +0000 (01:53 +0200)] 
gh-101819: Prepare to modernize the _io extension (#104178)

* Add references to static types to _PyIO_State:

  * PyBufferedIOBase_Type
  * PyBytesIOBuffer_Type
  * PyIncrementalNewlineDecoder_Type
  * PyRawIOBase_Type
  * PyTextIOBase_Type

* Add the defining class to methods:

  * _io.BytesIO.getbuffer()
  * _io.FileIO.close()

* Add get_io_state_by_cls() function.
* Add state parameter to _textiowrapper_decode()
* _io_TextIOWrapper___init__() now sets self->state before calling
  _textiowrapper_set_decoder().

Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2 years agogh-97696: Remove redundant #include (#104216)
Jacob Bower [Fri, 5 May 2023 23:50:06 +0000 (16:50 -0700)] 
gh-97696: Remove redundant #include (#104216)

Remove "#include cpython/context.h"` from `_asynciomodule.c`.

It's already included in `Python.h`.

2 years agogh-104144: Skip scheduling a done callback if a TaskGroup task completes eagerly...
Itamar Ostricher [Fri, 5 May 2023 23:44:03 +0000 (16:44 -0700)] 
gh-104144: Skip scheduling a done callback if a TaskGroup task completes eagerly (#104140)

Co-authored-by: Carl Meyer <carl@oddbird.net>
2 years agogh-99113: Add PyInterpreterConfig.own_gil (gh-104204)
Eric Snow [Fri, 5 May 2023 21:59:20 +0000 (15:59 -0600)] 
gh-99113: Add PyInterpreterConfig.own_gil (gh-104204)

We also add PyInterpreterState.ceval.own_gil to record if the interpreter actually has its own GIL.

Note that for now we don't actually respect own_gil; all interpreters still share the one GIL.  However, PyInterpreterState.ceval.own_gil does reflect PyInterpreterConfig.own_gil.  That lie is a temporary one that we will fix when the GIL really becomes per-interpreter.

2 years agogh-104146: Remove unused var 'parser_body_declarations' from clinic.py (#104214)
Erlend E. Aasland [Fri, 5 May 2023 21:35:24 +0000 (23:35 +0200)] 
gh-104146: Remove unused var 'parser_body_declarations' from clinic.py (#104214)

2 years agogh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205)
Eric Snow [Fri, 5 May 2023 21:11:27 +0000 (15:11 -0600)] 
gh-99113: Add Py_MOD_PER_INTERPRETER_GIL_SUPPORTED (gh-104205)

Here we are doing no more than adding the value for Py_mod_multiple_interpreters and using it for stdlib modules.  We will start checking for it in gh-104206 (once PyInterpreterState.ceval.own_gil is added in gh-104204).

2 years agogh-104108: Add the Py_mod_multiple_interpreters Module Def Slot (gh-104148)
Eric Snow [Fri, 5 May 2023 20:04:55 +0000 (14:04 -0600)] 
gh-104108: Add the Py_mod_multiple_interpreters Module Def Slot (gh-104148)

I'll be adding a value to indicate support for per-interpreter GIL in gh-99114.

2 years agogh-99113: Share the GIL via PyInterpreterState.ceval.gil (gh-104203)
Eric Snow [Fri, 5 May 2023 19:23:00 +0000 (13:23 -0600)] 
gh-99113: Share the GIL via PyInterpreterState.ceval.gil (gh-104203)

In preparation for a per-interpreter GIL, we add PyInterpreterState.ceval.gil, set it to the shared GIL for each interpreter, and use that rather than using _PyRuntime.ceval.gil directly.  Note that _PyRuntime.ceval.gil is still the actual GIL.

2 years agoGH-100479: Add `pathlib.PurePath.with_segments()` (GH-103975)
Barney Gale [Fri, 5 May 2023 19:04:53 +0000 (20:04 +0100)] 
GH-100479: Add `pathlib.PurePath.with_segments()` (GH-103975)

Add `pathlib.PurePath.with_segments()`, which creates a path object from arguments. This method is called whenever a derivative path is created, such as from `pathlib.PurePath.parent`. Subclasses may override this method to share information between path objects.

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2 years agogh-69152: Add _proxy_response_headers attribute to HTTPConnection (#26152)
Alexey Namyotkin [Fri, 5 May 2023 18:52:24 +0000 (21:52 +0300)] 
gh-69152: Add _proxy_response_headers attribute to HTTPConnection (#26152)

Add _proxy_response_headers attribute to HTTPConnection (#26152)

---------

Co-authored-by: Senthil Kumaran <senthil@python.org>
2 years agogh-103533: Use PEP 669 APIs for cprofile (GH-103534)
Tian Gao [Fri, 5 May 2023 17:38:47 +0000 (10:38 -0700)] 
gh-103533: Use PEP 669 APIs for cprofile (GH-103534)

2 years agoGH-96803: Add three C-API functions to make _PyInterpreterFrame less opaque for users...
Mark Shannon [Fri, 5 May 2023 16:53:07 +0000 (17:53 +0100)] 
GH-96803: Add three C-API functions to make _PyInterpreterFrame less opaque for users of PEP 523. (GH-96849)

2 years agogh-64595: Argument Clinic: Touch source file if any output file changed (#104152)
Erlend E. Aasland [Fri, 5 May 2023 12:38:38 +0000 (14:38 +0200)] 
gh-64595: Argument Clinic: Touch source file if any output file changed (#104152)

2 years agogh-64631: Test exception messages in cloned Argument Clinic funcs (#104167)
Erlend E. Aasland [Fri, 5 May 2023 12:08:24 +0000 (14:08 +0200)] 
gh-64631: Test exception messages in cloned Argument Clinic funcs (#104167)

2 years agogh-68395: Avoid naming conflicts by mangling variable names in Argument Clinic (...
Erlend E. Aasland [Fri, 5 May 2023 11:40:18 +0000 (13:40 +0200)] 
gh-68395: Avoid naming conflicts by mangling variable names in Argument Clinic (#104065)

Add all internally used variable names to CLINIC_PREFIXED_ARGS.

2 years agogh-64658: Expand Argument Clinic return converter docs (#104175)
Erlend E. Aasland [Fri, 5 May 2023 11:32:00 +0000 (13:32 +0200)] 
gh-64658: Expand Argument Clinic return converter docs (#104175)

2 years agoGH-103092: port `_asyncio` freelist to module state (#104196)
Kumar Aditya [Fri, 5 May 2023 11:12:58 +0000 (16:42 +0530)] 
GH-103092: port `_asyncio` freelist to module state (#104196)

2 years agogh-104051: fix crash in test_xxtestfuzz with -We (#104052)
Irit Katriel [Fri, 5 May 2023 10:34:13 +0000 (11:34 +0100)] 
gh-104051: fix crash in test_xxtestfuzz with -We (#104052)

2 years agogh-104190: fix ubsan crash (#104191)
sunmy2019 [Fri, 5 May 2023 09:54:03 +0000 (17:54 +0800)] 
gh-104190: fix ubsan crash (#104191)

2 years agogh-104106: Add gcc fallback of mkfifoat/mknodat for macOS (gh-104129)
Dong-hee Na [Fri, 5 May 2023 03:27:25 +0000 (12:27 +0900)] 
gh-104106: Add gcc fallback of mkfifoat/mknodat for macOS (gh-104129)

2 years agoGH-104142: Fix _Py_RefcntAdd to respect immortality (GH-104143)
Brandt Bucher [Fri, 5 May 2023 00:00:07 +0000 (17:00 -0700)] 
GH-104142: Fix _Py_RefcntAdd to respect immortality (GH-104143)

2 years agogh-104112: link from cached_property docs to method-caching FAQ (#104113)
Carl Meyer [Thu, 4 May 2023 22:38:53 +0000 (16:38 -0600)] 
gh-104112: link from cached_property docs to method-caching FAQ (#104113)

Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2 years agogh-68968: Correcting message display issue with assertEqual (#103937)
Michael Blahay [Thu, 4 May 2023 22:37:17 +0000 (18:37 -0400)] 
gh-68968: Correcting message display issue with assertEqual (#103937)

2 years agoGH-103899: Provide a hint when accidentally calling a module (GH-103900)
Brandt Bucher [Thu, 4 May 2023 22:07:42 +0000 (15:07 -0700)] 
GH-103899: Provide a hint when accidentally calling a module (GH-103900)

2 years agogh-103963: fix 'make regen-opcode' in out-of-tree builds (#104177)
Carl Meyer [Thu, 4 May 2023 17:45:56 +0000 (11:45 -0600)] 
gh-103963: fix 'make regen-opcode' in out-of-tree builds (#104177)

2 years agogh-102500: Add PEP 688 and 698 to the 3.12 release highlights (#104174)
Hugo van Kemenade [Thu, 4 May 2023 16:55:48 +0000 (19:55 +0300)] 
gh-102500: Add PEP 688 and 698 to the 3.12 release highlights (#104174)

2 years agoGH-81079: Add case_sensitive argument to `pathlib.Path.glob()` (GH-102710)
Barney Gale [Thu, 4 May 2023 16:44:36 +0000 (17:44 +0100)] 
GH-81079: Add case_sensitive argument to `pathlib.Path.glob()` (GH-102710)

This argument allows case-sensitive matching to be enabled on Windows, and
case-insensitive matching to be enabled on Posix.

Co-authored-by: Steve Dower <steve.dower@microsoft.com>
2 years agogh-91896: Deprecate collections.abc.ByteString (#102096)
Shantanu [Thu, 4 May 2023 16:39:33 +0000 (09:39 -0700)] 
gh-91896: Deprecate collections.abc.ByteString (#102096)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2 years agogh-99593: Add tests for Unicode C API (part 2) (#99868)
Serhiy Storchaka [Thu, 4 May 2023 15:25:09 +0000 (18:25 +0300)] 
gh-99593: Add tests for Unicode C API (part 2) (#99868)

Add tests for lower-level functions.

Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net>
2 years agogh-102500: Document PEP 688 (#102571)
Jelle Zijlstra [Thu, 4 May 2023 15:23:40 +0000 (08:23 -0700)] 
gh-102500: Document PEP 688 (#102571)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
2 years agogh-102500: Implement PEP 688 (#102521)
Jelle Zijlstra [Thu, 4 May 2023 14:59:46 +0000 (07:59 -0700)] 
gh-102500: Implement PEP 688 (#102521)

Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
2 years agogh-96534: socketmodule: support FreeBSD divert(4) socket (#96536)
Gleb Smirnoff [Thu, 4 May 2023 14:57:05 +0000 (07:57 -0700)] 
gh-96534: socketmodule: support FreeBSD divert(4) socket (#96536)

2 years agogh-104066: Improve performance of hasattr for module objects (#104063)
Itamar Ostricher [Thu, 4 May 2023 14:50:26 +0000 (07:50 -0700)] 
gh-104066: Improve performance of hasattr for module objects (#104063)

2 years agogh-102795: Fix use of poll in test_epoll's test_control_and_wait (#102796)
Kevin Krakauer [Thu, 4 May 2023 14:38:20 +0000 (07:38 -0700)] 
gh-102795: Fix use of poll in test_epoll's test_control_and_wait (#102796)

This test can fail unnecessarily. In the test we wait for events on two
file descriptors. This is done in a single call to select.epoll's poll()
function. However, it is valid for the OS to return only one event via
poll() and the next via a subsequent call to poll(). This rarely
happens, but it can cause the test to fail despite properly functioning
polling.

Instead, we poll a second time when necessary.

2 years agogh-103323: Remove PyRuntimeState_GetThreadState() (#104171)
Victor Stinner [Thu, 4 May 2023 14:21:01 +0000 (16:21 +0200)] 
gh-103323: Remove PyRuntimeState_GetThreadState() (#104171)

This function no longer makes sense, since its runtime parameter is
no longer used. Use directly _PyThreadState_GET() and
_PyInterpreterState_GET() instead.

2 years agogh-104169: Ensure the tokenizer doesn't overwrite previous errors (#104170)
Pablo Galindo Salgado [Thu, 4 May 2023 14:15:26 +0000 (15:15 +0100)] 
gh-104169: Ensure the tokenizer doesn't overwrite previous errors (#104170)

2 years agoFix typo "involvin" → "involving" (#104166)
Christopher Chavez [Thu, 4 May 2023 13:03:52 +0000 (08:03 -0500)] 
Fix typo "involvin" â†’ "involving" (#104166)

2 years agogh-103092: Port _ctypes.COMError to heap type (#104020)
Erlend E. Aasland [Thu, 4 May 2023 13:03:24 +0000 (15:03 +0200)] 
gh-103092: Port _ctypes.COMError to heap type (#104020)

2 years agogh-97556: Raise null bytes syntax error upon null in multiline string (GH-104136)
Lysandros Nikolaou [Thu, 4 May 2023 12:26:23 +0000 (14:26 +0200)] 
gh-97556: Raise null bytes syntax error upon null in multiline string (GH-104136)

2 years agoGH-97950: Use new-style index directive ('statement') (#104162)
Adam Turner [Thu, 4 May 2023 10:48:45 +0000 (11:48 +0100)] 
GH-97950: Use new-style index directive ('statement') (#104162)

2 years agoGH-97950: Use new-style index directive ('exception') (#104160)
Adam Turner [Thu, 4 May 2023 10:30:24 +0000 (11:30 +0100)] 
GH-97950: Use new-style index directive ('exception') (#104160)

2 years agogh-104089: catch DeprecationWarning in `test_fstring` (#104137)
sunmy2019 [Thu, 4 May 2023 10:20:20 +0000 (18:20 +0800)] 
gh-104089: catch DeprecationWarning in `test_fstring` (#104137)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2 years agoGH-97950: Use new-style index directive ('object') (#104158)
Adam Turner [Thu, 4 May 2023 10:04:41 +0000 (11:04 +0100)] 
GH-97950: Use new-style index directive ('object') (#104158)

* Uncomment object removal in pairindextypes

* Use new-style index directive ('object') - C API

* Use new-style index directive ('object') - Library

* Use new-style index directive ('object') - Reference

* Use new-style index directive ('object') - Tutorial

2 years agoGH-97950: Use new-style index directive ('operator') (#104156)
Adam Turner [Thu, 4 May 2023 09:03:11 +0000 (10:03 +0100)] 
GH-97950: Use new-style index directive ('operator') (#104156)

2 years agoGH-97950: Use new-style index directive ('keyword') (#104153)
Adam Turner [Thu, 4 May 2023 08:44:12 +0000 (09:44 +0100)] 
GH-97950: Use new-style index directive ('keyword') (#104153)

* Uncomment keyword removal in pairindextypes

* Use new-style index directive ('keyword') - Reference

2 years agoGH-97950: Use new-style index directive ('module') (#103996)
Adam Turner [Thu, 4 May 2023 08:17:12 +0000 (09:17 +0100)] 
GH-97950: Use new-style index directive ('module') (#103996)

* Use new-style index directive ('module') - C API

* Use new-style index directive ('module') - Library

* Use new-style index directive ('module') - Reference

* Use new-style index directive ('module') - Tutorial

* Uncomment module removal in pairindextypes

* Use new-style index directive ('module') - C API

* Use new-style index directive ('module') - Library

* Use new-style index directive ('module') - Reference