]> git.ipfire.org Git - thirdparty/Python/cpython.git/log
thirdparty/Python/cpython.git
3 years agogh-70363: Implement `io.IOBase` interface for `SpooledTemporaryFile` (GH-29560)
Carey Metcalfe [Tue, 3 May 2022 12:18:18 +0000 (08:18 -0400)] 
gh-70363: Implement `io.IOBase` interface for `SpooledTemporaryFile` (GH-29560)

Since the underlying file-like objects (either `io.BytesIO`,
or a true file object) all implement the `io.IOBase`
interface, the `SpooledTemporaryFile` should as well.

Additionally, since the underlying file object will either be an
instance of an `io.BufferedIOBase` (for binary mode) or an
`io.TextIOBase` (for text mode), methods for these classes were also
implemented.

In every case, the required methods and properties are simply delegated
to the underlying file object.

Co-authored-by: Gary Fernie <Gary.Fernie@skyscanner.net>
Co-authored-by: Inada Naoki <songofacandy@gmail.com>
3 years agobpo-46415: Use f-string for ValueError in ipaddress.ip_{address,network,interface...
Thomas Cellerier [Tue, 3 May 2022 12:12:58 +0000 (14:12 +0200)] 
bpo-46415: Use f-string for ValueError in ipaddress.ip_{address,network,interface} helper functions (#30642)

`IPv*Network` and `IPv*Interface` constructors accept a 2-tuple of
(address description, netmask) as the address parameter.
When the tuple-based address is used errors are not propagated
correctly through the `ipaddress.ip_*` helper because of the %-formatting now expecting several arguments:

In [7]: ipaddress.ip_network(("192.168.100.0", "fooo"))
        ...
TypeError: not all arguments converted during string formatting

Compared to:

In [8]: ipaddress.IPv4Network(("192.168.100.0", "foo"))
        ...
NetmaskValueError: 'foo' is not a valid netmask

Use an f-string to make sure the error is always properly formatted.

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
3 years agoThe stdev calculation is more accurate computing its own mean (#92220)
Raymond Hettinger [Tue, 3 May 2022 08:41:46 +0000 (03:41 -0500)] 
The stdev calculation is more accurate computing its own mean (#92220)

3 years agogh-92169: Use warnings_helper.import_deprecated() to import deprecated modules unifor...
Hugo van Kemenade [Tue, 3 May 2022 07:17:54 +0000 (10:17 +0300)] 
gh-92169: Use warnings_helper.import_deprecated() to import deprecated modules uniformly in tests (GH-92170)

3 years agoFix doc warnings in What's New in 3.11 (GH-92215)
Ken Jin [Tue, 3 May 2022 06:49:06 +0000 (13:49 +0700)] 
Fix doc warnings in What's New in 3.11 (GH-92215)

3 years agobpo-46267: Test compresslevel in gzip.compress (#30416)
Ruben Vorderman [Tue, 3 May 2022 05:11:06 +0000 (07:11 +0200)] 
bpo-46267: Test compresslevel in gzip.compress  (#30416)

Fixes #90425

3 years agogh-92206: Move pysqlite_step() to Modules/_sqlite/cursor.c (#92207)
Erlend Egeberg Aasland [Tue, 3 May 2022 03:45:04 +0000 (21:45 -0600)] 
gh-92206: Move pysqlite_step() to Modules/_sqlite/cursor.c (#92207)

3 years agobpo-46785: Fix race condition between os.stat() and unlink on Windows (GH-31858)
Itai Steinherz [Mon, 2 May 2022 23:19:13 +0000 (02:19 +0300)] 
bpo-46785: Fix race condition between os.stat() and unlink on Windows (GH-31858)

3 years agogh-91621: Fix typing.get_type_hints for collections.abc.Callable (#91656)
Shantanu [Mon, 2 May 2022 23:08:28 +0000 (17:08 -0600)] 
gh-91621: Fix typing.get_type_hints for collections.abc.Callable (#91656)

This mirrors logic in typing.get_args. The trickiness comes from how we
flatten args in collections.abc.Callable, see
https://bugs.python.org/issue42195

3 years agogh-84461: Add ability for multiprocessed libregrtest to use a different Python execut...
Ethan Smith [Mon, 2 May 2022 22:51:34 +0000 (15:51 -0700)] 
gh-84461: Add ability for multiprocessed libregrtest to use a different Python executable (GH-91930)

3 years agobpo-43923: Add support for generic typing.NamedTuple (#92027)
Serhiy Storchaka [Mon, 2 May 2022 22:41:23 +0000 (01:41 +0300)] 
bpo-43923: Add support for generic typing.NamedTuple (#92027)

3 years agogh-92106: Add test that subscription works on arbitrary TypedDicts (#92176)
Serhiy Storchaka [Mon, 2 May 2022 22:38:39 +0000 (01:38 +0300)] 
gh-92106: Add test that subscription works on arbitrary TypedDicts (#92176)

3 years agogh-92032: Add soft keywords to rlcompleter (#92029)
kbeldan [Mon, 2 May 2022 22:36:29 +0000 (22:36 +0000)] 
gh-92032: Add soft keywords to rlcompleter (#92029)

Let the interpreter autocomplete soft-keywords, ATM the PEP-634 'match'
/ 'case' / '_' (wildcard pattern).

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
3 years agobpo-46586: Fix more erroneous doc links to builtins (#31429)
Meer Suri [Mon, 2 May 2022 22:32:44 +0000 (06:32 +0800)] 
bpo-46586: Fix more erroneous doc links to builtins (#31429)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Éric <merwok@netwok.org>
3 years agoDelete outdated comment in logging module (#31117)
Thomas Miedema [Mon, 2 May 2022 22:29:03 +0000 (00:29 +0200)] 
Delete outdated comment in logging module (#31117)

The root logger is now accessible via its name, see
https://github.com/python/cpython/pull/15077

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
3 years agobpo-46285: Add command-line option -p/--protocol to module http.server (#30999)
Géry Ogam [Mon, 2 May 2022 22:28:45 +0000 (00:28 +0200)] 
bpo-46285: Add command-line option -p/--protocol to module http.server (#30999)

Co-authored-by: Éric <merwok@netwok.org>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
3 years agobpo-6686: Replace String with Bytes in xml.sax.handler documentation (#30612)
Yassir Karroum [Mon, 2 May 2022 22:26:42 +0000 (22:26 +0000)] 
bpo-6686: Replace String with Bytes in xml.sax.handler documentation (#30612)

3 years agobpo-46547: remove leaking vars into `pydoc.Helper` namespace (#30957)
Nikita Sobolev [Mon, 2 May 2022 22:25:52 +0000 (01:25 +0300)] 
bpo-46547: remove leaking vars into `pydoc.Helper` namespace (#30957)

Fixes #90705

3 years agoimportlib docs: Update importlib.abc hierarchy (#31113)
David Gilbertson [Mon, 2 May 2022 20:26:35 +0000 (06:26 +1000)] 
importlib docs: Update importlib.abc hierarchy (#31113)

Fixed some inconsistencies in the text about relationships

3 years agobpo-46787: Fix `ProcessPoolExecutor exception` memory leak (GH-31408) (#31408)
themylogin [Mon, 2 May 2022 20:24:39 +0000 (22:24 +0200)] 
bpo-46787: Fix `ProcessPoolExecutor exception` memory leak (GH-31408) (#31408)

Do not store `ProcessPoolExecutor` work item exception traceback that prevents
exception frame locals from being garbage collected.

3 years agoFix the closure argument to PyEval_EvalCodeEx. (GH-92175)
larryhastings [Mon, 2 May 2022 20:08:22 +0000 (13:08 -0700)] 
Fix the closure argument to PyEval_EvalCodeEx. (GH-92175)

3 years agoFix duplicate word. (GH-92182)
Benjamin Peterson [Mon, 2 May 2022 19:43:52 +0000 (13:43 -0600)] 
Fix duplicate word. (GH-92182)

3 years agogh-87390: Add __unpacked__ attribute to types.GenericAlias (#92059)
Jelle Zijlstra [Mon, 2 May 2022 19:21:59 +0000 (13:21 -0600)] 
gh-87390: Add __unpacked__ attribute to types.GenericAlias (#92059)

3 years agogh-90765: configparser test: Catch deprecation warning (#91480)
Hugo van Kemenade [Mon, 2 May 2022 17:22:26 +0000 (20:22 +0300)] 
gh-90765: configparser test: Catch deprecation warning (#91480)

3 years agogh-90213: Speed up right shifts of negative integers (GH-30277)
Mark Dickinson [Mon, 2 May 2022 17:19:03 +0000 (18:19 +0100)] 
gh-90213: Speed up right shifts of negative integers (GH-30277)

3 years agogh-91783: Document security considerations for shutil.unpack_archive (#91844)
Sam Ezeh [Mon, 2 May 2022 17:15:04 +0000 (18:15 +0100)] 
gh-91783: Document security considerations for shutil.unpack_archive (#91844)

3 years agosuggestions.c: Improve efficiency of levenshtein_distance method (#91835)
Pieter Eendebak [Mon, 2 May 2022 17:09:35 +0000 (19:09 +0200)] 
suggestions.c: Improve efficiency of levenshtein_distance method (#91835)

3 years agoFix typo in turtle deprecation warning and use warnings._deprecated (#91862)
Hugo van Kemenade [Mon, 2 May 2022 16:57:00 +0000 (19:57 +0300)] 
Fix typo in turtle deprecation warning and use warnings._deprecated (#91862)

3 years agoAdd weakref_slot to dataclass decorator, to allow instances with slots to be weakref...
Eric V. Smith [Mon, 2 May 2022 16:36:39 +0000 (10:36 -0600)] 
Add weakref_slot to dataclass decorator, to allow instances with slots to be weakref-able. (#92160)

3 years agogh-92082: contextlib docs: Change aclosing from a class to a function for consistency...
Thaddeus1499 [Mon, 2 May 2022 16:20:30 +0000 (12:20 -0400)] 
gh-92082: contextlib docs: Change aclosing from a class to a function for consistency (#92155)

Signed-off-by: prwatson <prwatson@redhat.com>
3 years agogh-91276: revert the increase of dis output width (GH-92126)
Irit Katriel [Mon, 2 May 2022 15:51:17 +0000 (09:51 -0600)] 
gh-91276: revert the increase of dis output width (GH-92126)

3 years agogh-88546: glob.glob docs: Make new paragraph for emphasis and reordered sentence...
slateny [Mon, 2 May 2022 15:11:05 +0000 (08:11 -0700)] 
gh-88546: glob.glob docs: Make new paragraph for emphasis and reordered sentence (#91614)

3 years agogh-92128: Add `__class_getitem__` to `logging.LoggerAdapter` and `logging.StreamHandl...
Alex Waygood [Mon, 2 May 2022 15:10:02 +0000 (16:10 +0100)] 
gh-92128: Add `__class_getitem__` to `logging.LoggerAdapter` and `logging.StreamHandler` (#92129)

Closes #92128

3 years agogh-92135: Fix _Py_reinterpret_cast() for const (#92138)
Victor Stinner [Mon, 2 May 2022 15:07:00 +0000 (17:07 +0200)] 
gh-92135: Fix _Py_reinterpret_cast() for const (#92138)

Fix C++ compiler warnings on cast macros, like _PyObject_CAST(), when
casting a constant expression to a non constant type: use
const_cast<> in C++.

* In C++, Py_SAFE_DOWNCAST() now uses static_cast<> rather than
  reinterpret_cast<>.
* Add tests to the _testcppext C++ extension.
* test_cppext no longer captures stdout in verbose mode.

3 years agoconcurrent.futures: Fix typo in docstring (#92121)
Yiannis Hadjicharalambous [Mon, 2 May 2022 15:05:26 +0000 (16:05 +0100)] 
concurrent.futures: Fix typo in docstring (#92121)

3 years agobpo-46907: Update Windows installer to SQLite 3.38.3. (GH-91995)
Mariusz Felisiak [Mon, 2 May 2022 15:02:54 +0000 (17:02 +0200)] 
bpo-46907: Update Windows installer to SQLite 3.38.3. (GH-91995)

3 years agoasyncio.subprocess: Fix a typo in doc (#92030)
Harsh [Mon, 2 May 2022 15:01:52 +0000 (20:31 +0530)] 
asyncio.subprocess: Fix a typo in doc (#92030)

Remove a confusion for read method in asyncio-subprocess doc for stderr StreamReader instance

3 years agoFix typo in Programming FAQ (#92083)
Matt Harding [Mon, 2 May 2022 15:01:03 +0000 (16:01 +0100)] 
Fix typo in Programming FAQ (#92083)

I believe the word "with" was missing here.

3 years agogh-85133: os docs: Add that getenv uses os.environ (#91874)
slateny [Mon, 2 May 2022 14:43:32 +0000 (07:43 -0700)] 
gh-85133: os docs: Add that getenv uses os.environ (#91874)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
3 years agogh-84714: Add behavior if dst file exists (#91867)
slateny [Mon, 2 May 2022 14:31:55 +0000 (07:31 -0700)] 
gh-84714: Add behavior if dst file exists (#91867)

3 years agogh-89301: Fix regression with bound values in traced SQLite statements (#92053)
Erlend Egeberg Aasland [Mon, 2 May 2022 14:14:35 +0000 (08:14 -0600)] 
gh-89301: Fix regression with bound values in traced SQLite statements (#92053)

3 years agogh-88097: doc: fix link to Py_Version (#92141)
Victor Stinner [Mon, 2 May 2022 13:29:22 +0000 (15:29 +0200)] 
gh-88097: doc: fix link to Py_Version (#92141)

3 years agogh-91321: Add _testcppext C++ extension (#32175)
Victor Stinner [Mon, 2 May 2022 12:09:22 +0000 (14:09 +0200)] 
gh-91321: Add _testcppext C++ extension (#32175)

Build a basic C++ test extension to check that the Python C API is
compatible with C++ and does not emit C++ compiler warnings.

* Add Modules/_testcppext.cpp: C++ extension
* Add Lib/test/test_cppext.py: test building the C++ extension.

3 years agobpo-36819: Fix crashes in built-in encoders with weird error handlers (GH-28593)
Serhiy Storchaka [Mon, 2 May 2022 09:37:48 +0000 (12:37 +0300)] 
bpo-36819: Fix crashes in built-in encoders with weird error handlers (GH-28593)

If the error handler returns position less or equal than the starting
position of non-encodable characters, most of built-in encoders didn't
properly re-size the output buffer. This led to out-of-bounds writes,
and segfaults.

3 years agogh-85679: Recommend `encoding="utf-8"` in tutorial (GH-91778)
Inada Naoki [Mon, 2 May 2022 08:25:05 +0000 (17:25 +0900)] 
gh-85679: Recommend `encoding="utf-8"` in tutorial (GH-91778)

3 years agogh-90822: Make `PY_SSIZE_T_MAX` and `PY_SSIZE_T_MIN` constant expression (GH-92071)
Ganesh Kathiresan [Mon, 2 May 2022 08:23:28 +0000 (13:53 +0530)] 
gh-90822: Make `PY_SSIZE_T_MAX` and `PY_SSIZE_T_MIN` constant expression (GH-92071)

3 years agogh-92114: Improve error message for types with __class_getitem__ = None (GH-92115)
Serhiy Storchaka [Mon, 2 May 2022 05:29:49 +0000 (08:29 +0300)] 
gh-92114: Improve error message for types with __class_getitem__ = None (GH-92115)

3 years agogh-91998: 'WebAssemby' to 'WebAssembly' (#92040)
vainaijr [Mon, 2 May 2022 01:24:41 +0000 (06:54 +0530)] 
gh-91998: 'WebAssemby' to 'WebAssembly' (#92040)

3 years agobuild(deps): bump actions/stale from 4 to 5 (#92108)
dependabot[bot] [Sun, 1 May 2022 20:53:15 +0000 (14:53 -0600)] 
build(deps): bump actions/stale from 4 to 5 (#92108)

Bumps [actions/stale](https://github.com/actions/stale) from 4 to 5.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years agobuild(deps): bump actions/github-script from 5 to 6 (#92109)
dependabot[bot] [Sun, 1 May 2022 20:52:21 +0000 (14:52 -0600)] 
build(deps): bump actions/github-script from 5 to 6 (#92109)

Bumps [actions/github-script](https://github.com/actions/github-script) from 5 to 6.
- [Release notes](https://github.com/actions/github-script/releases)
- [Commits](https://github.com/actions/github-script/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/github-script
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years agobuild(deps): bump actions/setup-node from 2 to 3 (#92110)
dependabot[bot] [Sun, 1 May 2022 20:39:53 +0000 (14:39 -0600)] 
build(deps): bump actions/setup-node from 2 to 3 (#92110)

Bumps [actions/setup-node](https://github.com/actions/setup-node) from 2 to 3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years agobuild(deps): bump actions/cache from 3.0.1 to 3.0.2 (#92111)
dependabot[bot] [Sun, 1 May 2022 20:37:52 +0000 (14:37 -0600)] 
build(deps): bump actions/cache from 3.0.1 to 3.0.2 (#92111)

Bumps [actions/cache](https://github.com/actions/cache) from 3.0.1 to 3.0.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3.0.1...v3.0.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years agobpo-39716: Raise on conflicting subparser names. (GH-18605)
Antony Lee [Sun, 1 May 2022 06:04:50 +0000 (08:04 +0200)] 
bpo-39716: Raise on conflicting subparser names. (GH-18605)

Raise an ArgumentError when the same subparser name is added twice to an
ArgumentParser.  This is consistent with the (default) behavior when the
same option string is added twice to an ArgumentParser.

(Support for `conflict_handler="resolve"` could be considered as a
followup feature, although real use cases seem even rarer than
"resolve"ing option-strings.)

Automerge-Triggered-By: GH:rhettinger
3 years agotyping docs: Add example for async functions (#20386)
Sam Bull [Sun, 1 May 2022 04:40:27 +0000 (05:40 +0100)] 
typing docs: Add example for async functions (#20386)

Fixes python/typing#424

3 years agogh-81488: Add recursive wording for issubclass docs (#92087)
slateny [Sun, 1 May 2022 04:05:20 +0000 (21:05 -0700)] 
gh-81488: Add recursive wording for issubclass docs (#92087)

3 years agogh-91952: Make TextIOWrapper.reconfigure() supports "locale" encoding (GH-91982)
Inada Naoki [Sun, 1 May 2022 01:44:14 +0000 (10:44 +0900)] 
gh-91952: Make TextIOWrapper.reconfigure() supports "locale" encoding (GH-91982)

3 years agogh-91954: Use shell=True in test_subprocess.test_encoding_warning (GH-92090)
Dennis Sweeney [Sun, 1 May 2022 00:38:19 +0000 (20:38 -0400)] 
gh-91954: Use shell=True in test_subprocess.test_encoding_warning (GH-92090)

3 years agoImproving readability of argparse.rst (GH-91751)
Antonio Andrade [Sat, 30 Apr 2022 22:20:10 +0000 (02:20 +0400)] 
Improving readability of argparse.rst (GH-91751)

Fixed few typos and enhanced few paragraphs for your review and consideration.
Trivial contribution towards continuous improvement, so no issue was raised.

Automerge-Triggered-By: GH:rhettinger
3 years agogh-89253: Add 3.10 whatsnew section for itertools.pairwise (GH-91563)
slateny [Sat, 30 Apr 2022 22:14:38 +0000 (15:14 -0700)] 
gh-89253: Add 3.10 whatsnew section for itertools.pairwise (GH-91563)

#89253

[`pairwise()`](https://docs.python.org/3/library/itertools.html#itertools.pairwise) already has the 'new in python3.10'

Automerge-Triggered-By: GH:rhettinger
3 years agogh-85757: Change wording from nested to inner (GH-91811)
slateny [Sat, 30 Apr 2022 22:12:33 +0000 (15:12 -0700)] 
gh-85757: Change wording from nested to inner (GH-91811)

#85757

https://docs.python.org/3/tutorial/datastructures.html#nested-list-comprehensions

I do think this is clearer, but I wonder if 'nested' should be kept though to get the terminology out there more often. So perhaps it could be something like 'inner (nested) listcomp' or 'nested (inner) listcomp' despite sounding a bit redundant

Automerge-Triggered-By: GH:rhettinger
3 years agoFix typo in asyncio-extending.rst (#91609)
Yurii Karabas [Sat, 30 Apr 2022 22:09:48 +0000 (01:09 +0300)] 
Fix typo in asyncio-extending.rst (#91609)

3 years agogh-91611: Use example.com for documentation, not mydomain.com (#91613)
Motoki Naruse [Sat, 30 Apr 2022 21:52:13 +0000 (06:52 +0900)] 
gh-91611: Use example.com for documentation, not mydomain.com (#91613)

example.com is reserved by the IANA as special-use domain name for documentation
purposes. The domain names are used widely in books, tutorials, sample network
configurations, and generally as examples for the use of domain name.

On the other hand, mydomain.com is real Domain Name Registration service.

3 years agogh-87801: Add run() to subprocess.CalledProcessError description (#91628)
slateny [Sat, 30 Apr 2022 21:32:00 +0000 (14:32 -0700)] 
gh-87801: Add run() to subprocess.CalledProcessError description (#91628)

3 years agogh-87192: Update wording for fcntl 'Changed in' (#91658)
slateny [Sat, 30 Apr 2022 21:24:01 +0000 (14:24 -0700)] 
gh-87192: Update wording for fcntl 'Changed in' (#91658)

3 years agoConvert :issue: to :gh: in whatsnew (GH-92089)
Dennis Sweeney [Sat, 30 Apr 2022 19:53:59 +0000 (15:53 -0400)] 
Convert :issue: to :gh: in whatsnew (GH-92089)

3 years agogh-92063: Enforce types in specialized PRECALL opcodes (GH-92068)
Dennis Sweeney [Sat, 30 Apr 2022 18:35:33 +0000 (14:35 -0400)] 
gh-92063:  Enforce types in specialized PRECALL opcodes (GH-92068)

* Check the types of PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS

* fix PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS as well

* fix PRECALL_NO_KW_METHOD_DESCRIPTOR_O

* fix PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST

3 years agogh-85864: io docs: Add missing position-only parameters (#91950)
slateny [Sat, 30 Apr 2022 15:22:33 +0000 (08:22 -0700)] 
gh-85864: io docs: Add missing position-only parameters (#91950)

3 years agogh-92019: Make sqlite3.Blob indexing conform with the norm (#92020)
Erlend Egeberg Aasland [Sat, 30 Apr 2022 15:01:37 +0000 (09:01 -0600)] 
gh-92019: Make sqlite3.Blob indexing conform with the norm (#92020)

- get index now returns an int
- set index now requires an int in range(0, 256)

Resolves #92019

3 years agobpo-43323: Fix UnicodeEncodeError in the email module (GH-32137)
Serhiy Storchaka [Sat, 30 Apr 2022 10:17:23 +0000 (13:17 +0300)] 
bpo-43323: Fix UnicodeEncodeError in the email module (GH-32137)

It was raised if the charset itself contains characters not encodable
in UTF-8 (in particular \udcxx characters representing non-decodable
bytes in the source).

3 years agogh-81548: Deprecate octal escape sequences with value larger than 0o377 (GH-91668)
Serhiy Storchaka [Sat, 30 Apr 2022 10:16:27 +0000 (13:16 +0300)] 
gh-81548: Deprecate octal escape sequences with value larger than 0o377 (GH-91668)

3 years agogh-91583: AC: Fix regression for functions with defining_class (GH-91739)
Serhiy Storchaka [Sat, 30 Apr 2022 10:15:02 +0000 (13:15 +0300)] 
gh-91583: AC: Fix regression for functions with defining_class (GH-91739)

Argument Clinic now generates the same efficient code as before
adding the defining_class parameter.

3 years agogh-91760: Deprecate group names and numbers which will be invalid in future (GH-91794)
Serhiy Storchaka [Sat, 30 Apr 2022 10:13:46 +0000 (13:13 +0300)] 
gh-91760: Deprecate group names and numbers which will be invalid in future (GH-91794)

Only sequence of ASCII digits will be accepted as a numerical reference.
The group name in bytes patterns and replacement strings could only
contain ASCII letters and digits and underscore.

3 years agogh-92049: Forbid pickling constants re._constants.SUCCESS etc (GH-92070)
Serhiy Storchaka [Sat, 30 Apr 2022 10:03:23 +0000 (13:03 +0300)] 
gh-92049: Forbid pickling constants re._constants.SUCCESS etc (GH-92070)

Previously, pickling did not fail, but the result could not be unpickled.

3 years agogh-91954: Emit EncodingWarning from locale and subprocess (GH-91977)
Inada Naoki [Sat, 30 Apr 2022 06:53:29 +0000 (15:53 +0900)] 
gh-91954: Emit EncodingWarning from locale and subprocess (GH-91977)

locale.getpreferredencoding() and subprocess.Popen() emit EncodingWarning

3 years agogh-91880 - fix typo (GH-92069)
David Hewitt [Sat, 30 Apr 2022 05:23:54 +0000 (06:23 +0100)] 
gh-91880 - fix typo (GH-92069)

https://github.com/python/cpython/issues/91880#issuecomment-1113914241 - With thanks to @MojoVampire for spotting this.

Automerge-Triggered-By: GH:gvanrossum
3 years agobpo-43224: Implement substitution of unpacked TypeVarTuple in C (GH-31828)
Serhiy Storchaka [Sat, 30 Apr 2022 05:22:46 +0000 (08:22 +0300)] 
bpo-43224: Implement substitution of unpacked TypeVarTuple in C (GH-31828)

Co-authored-by: Matthew Rahtz <mrahtz@gmail.com>
3 years agogh-92064: Fix global variable name collision in test_typing (#92067)
Dennis Sweeney [Sat, 30 Apr 2022 03:18:38 +0000 (23:18 -0400)] 
gh-92064: Fix global variable name collision in test_typing (#92067)

Fixes #92064

3 years agoRephrase typing.assert_never docs (#92061)
Shantanu [Sat, 30 Apr 2022 03:13:21 +0000 (21:13 -0600)] 
Rephrase typing.assert_never docs (#92061)

This change is similar to that in #32069

3 years agogh-91491: Add several typing features to What's New (#92060)
Shantanu [Sat, 30 Apr 2022 03:12:45 +0000 (21:12 -0600)] 
gh-91491: Add several typing features to What's New (#92060)

This gets all the major items in #91491. However, I didn't get around to
adding what's new entries for the large clump of changes in the last
bullet point in the issue.

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
3 years agogh-91217: deprecate xdrlib (GH-92066)
Brett Cannon [Sat, 30 Apr 2022 01:22:10 +0000 (18:22 -0700)] 
gh-91217: deprecate xdrlib (GH-92066)

Automerge-Triggered-By: GH:brettcannon
3 years agoFix indentation for typing.Unpack docs (#92058)
Jelle Zijlstra [Fri, 29 Apr 2022 22:58:40 +0000 (16:58 -0600)] 
Fix indentation for typing.Unpack docs (#92058)

https://docs.python.org/3.11/library/typing.html#typing.Unpack

3 years agosorting howto: Add clarification on < using __lt__ (#92010)
slateny [Fri, 29 Apr 2022 22:08:07 +0000 (15:08 -0700)] 
sorting howto: Add clarification on < using __lt__ (#92010)

3 years agobpo-44791: Accept ellipsis as the last argument of typing.Concatenate (#30969)
Serhiy Storchaka [Fri, 29 Apr 2022 21:01:40 +0000 (00:01 +0300)] 
bpo-44791: Accept ellipsis as the last argument of typing.Concatenate (#30969)

3 years agogh-87390: Add tests demonstrating current type variable substitution behaviour (...
Matthew Rahtz [Fri, 29 Apr 2022 20:03:21 +0000 (14:03 -0600)] 
gh-87390: Add tests demonstrating current type variable substitution behaviour (#32341)

3 years agobpo-26792: Improve docstrings of runpy module run_functions (#30729)
Humbled Drugman [Fri, 29 Apr 2022 18:22:46 +0000 (19:22 +0100)] 
bpo-26792: Improve docstrings of runpy module run_functions (#30729)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
3 years agogh-91324: Convert the stable ABI manifest to TOML (GH-92026)
Petr Viktorin [Fri, 29 Apr 2022 14:18:08 +0000 (16:18 +0200)] 
gh-91324: Convert the stable ABI manifest to TOML (GH-92026)

3 years agobpo-36329: Remove 'make -C Doc serve' in favour of 'make -C Doc htmlview' (GH-32354)
Hugo van Kemenade [Fri, 29 Apr 2022 13:47:26 +0000 (16:47 +0300)] 
bpo-36329: Remove 'make -C Doc serve' in favour of 'make -C Doc htmlview' (GH-32354)

Also updated `make -C htmlview` so it used a full path with `file://`, because the original didn't open the page (macOS).

For example:
```sh
cd Doc

# Doesn't open anything:
python3 -c "import webbrowser; webbrowser.open('build/html/index.html')"

# Opens the docs page e.g. file:///Users/hugo/github/cpython/Doc/build/html/index.html :
python3 -c "import os, webbrowser; webbrowser.open('file://' + os.path.realpath('build/html/index.html'))"
```

https://bugs.python.org/issue36329

3 years agogh-91873: Summarise deprecations in typing at the top level (GH-91864)
Ken Jin [Fri, 29 Apr 2022 04:22:25 +0000 (11:22 +0700)] 
gh-91873: Summarise deprecations in typing at the top level (GH-91864)

3 years agobpo-22276: Change pathlib.Path.glob not to ignore trailing path separator (GH-10349)
Eisuke Kawashima [Thu, 28 Apr 2022 19:45:03 +0000 (04:45 +0900)] 
bpo-22276: Change pathlib.Path.glob not to ignore trailing path separator (GH-10349)

Now pathlib.Path.glob() **only** matches directories when the pattern ends in a path separator.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
3 years agogh-91603: Speed up isinstance/issubclass on union types (GH-91631)
Yurii Karabas [Thu, 28 Apr 2022 15:24:19 +0000 (18:24 +0300)] 
gh-91603: Speed up isinstance/issubclass on union types (GH-91631)

Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
3 years agogh-91832: Add 'required' attr to argparse.Action repr (GH-91841)
Abhigyan Bose [Thu, 28 Apr 2022 14:50:27 +0000 (20:20 +0530)] 
gh-91832: Add 'required' attr to argparse.Action repr (GH-91841)

# Adding 'required' to names in Lib.argparse.Action

gh-91832:
Added 'required' to the list `names` in `Lib.argparse.Action`.
Changed constant strings that test the Action object.

Automerge-Triggered-By: GH:merwok
3 years agogh-91324: List feature macros in the stable ABI manifest, improve tests (GH-32415)
Petr Viktorin [Thu, 28 Apr 2022 14:30:28 +0000 (16:30 +0200)] 
gh-91324: List feature macros in the stable ABI manifest, improve tests (GH-32415)

3 years agogh-84461: Add HOSTRUNNER for program to run Python executable (GH-91931)
Ethan Smith [Thu, 28 Apr 2022 12:14:19 +0000 (05:14 -0700)] 
gh-84461: Add HOSTRUNNER for program to run Python executable (GH-91931)

`HOSTRUNNER` is a program which can be used to run `BUILDPYTHON` for the host platform (for example, `python.js` requires `node`).

Also change depedencies from `build_all` to `all` so that targets which can't build everything (e.g. WASM) can still run `buildbottest` and `pythoninfo`.

cc @tiran

3 years agogh-89479: Export _Py_GetSpecializationStats() internal function (#92011)
Victor Stinner [Thu, 28 Apr 2022 12:02:45 +0000 (14:02 +0200)] 
gh-89479: Export _Py_GetSpecializationStats() internal function (#92011)

When Python is built with "./configure --enable-pystats" (if the
Py_STATS macro is defined), the _Py_GetSpecializationStats() function
must be exported, since it's used by the _opcode extension which is
built as a shared library.

3 years agogh-91984: Fix trailing spaces in multiline test strings in test_argparse (GH-91986)
Abhigyan Bose [Thu, 28 Apr 2022 11:29:24 +0000 (16:59 +0530)] 
gh-91984: Fix trailing spaces in multiline test strings in test_argparse (GH-91986)

3 years agogh-91603: Speed up operator "|" for UnionType (GH-91955)
Serhiy Storchaka [Thu, 28 Apr 2022 10:25:33 +0000 (13:25 +0300)] 
gh-91603: Speed up operator "|" for UnionType (GH-91955)

Reduce the complexity from O((M+N)^2) to O(M*N), where M and N are the length
of __args__ for both operands (1 for operand which is not a UnionType).

As a consequence, the complexity of parameter substitution in UnionType has
been reduced from O(N^3) to O(N^2).

Co-authored-by: Yurii Karabas <1998uriyyo@gmail.com>
3 years agogh-91869: Fix tracing of specialized instructions with extended args (GH-91945)
Dennis Sweeney [Thu, 28 Apr 2022 04:36:34 +0000 (00:36 -0400)] 
gh-91869: Fix tracing of specialized instructions with extended args (GH-91945)

3 years agogh-91217: deprecate uu (GH-92009)
Brett Cannon [Thu, 28 Apr 2022 03:26:33 +0000 (20:26 -0700)] 
gh-91217: deprecate uu (GH-92009)

Automerge-Triggered-By: GH:brettcannon
3 years agoAdd note that headers added via urllib.request.add_header are added to redirected...
Ashwin Ramaswami [Wed, 27 Apr 2022 22:25:03 +0000 (18:25 -0400)] 
Add note that headers added via urllib.request.add_header are added to redirected requests (#30708)

3 years agogh-84459: Make wording more specific for Path.replace (GH-91853)
slateny [Wed, 27 Apr 2022 22:03:03 +0000 (15:03 -0700)] 
gh-84459: Make wording more specific for Path.replace (GH-91853)

#84459