Commit graph

118378 commits

Author SHA1 Message Date
Miss Islington (bot)
19d822681b
[3.12] GH-90690: Mention removal of `PRECALL` in What's New (GH-103910) (#109027)
GH-90690: Mention removal of ``PRECALL`` in What's New (GH-103910)
(cherry picked from commit f9bd6e49ae)

Co-authored-by: Anthony Shaw <anthony.p.shaw@gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-09-08 15:10:18 +02:00
Serhiy Storchaka
e65401d245
[3.12] C API tests: use special markers to test that output parameters were set (GH-109014) (#109023)
[3.12] C API tests: use special markers to test that output parameters were set (GH-109014).
(cherry picked from commit bf414b7fcb)
2023-09-08 15:09:49 +02:00
Miss Islington (bot)
db55cfcbab
[3.12] gh-109002: Ensure only one wheel for each vendored package (GH-109003) (#109005)
Output with one wheel:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
Verifying checksum for /Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl.
Expected digest: 7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
Actual digest:   7ccf472345f20d35bdc9d1841ff5f313260c2c33fe417f48c30ac46cccabf5be
::notice file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Successfully verified the checksum of the pip wheel.
```

Output with two wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-22.0.4-py3-none-any.whl::Found more than one wheel for package pip.

::error file=/Volumes/RAMDisk/cpython/Lib/ensurepip/_bundled/pip-23.2.1-py3-none-any.whl::Found more than one wheel for package pip.
```

Output without wheels:
```
❯ GITHUB_ACTIONS=true ./Tools/build/verify_ensurepip_wheels.py
::error file=::Could not find a pip wheel on disk.
```
(cherry picked from commit f8a047941f)

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2023-09-06 20:01:36 +02:00
Thomas Wouters
ce3709568b Merge branch '3.12' of https://github.com/python/cpython into 3.12 2023-09-06 12:28:46 +02:00
Thomas Wouters
8c7655554c Post 3.12.0rc2 2023-09-06 12:27:54 +02:00
Miss Islington (bot)
d7869ec22a
[3.12] gh-108857: improve markup in inspect.Signature.replace() docs (GH-108862) (#108971)
gh-108857: improve markup in inspect.Signature.replace() docs (GH-108862)
(cherry picked from commit 6f8411cfd6)

Co-authored-by: nabin2004 <107109731+nabin2004@users.noreply.github.com>
2023-09-06 00:39:21 +00:00
Thomas Wouters
40913a56ed Python 3.12.0rc2 2023-09-05 23:57:19 +02:00
Miss Islington (bot)
495ba70356
[3.12] gh-108469: Update ast.unparse for unescaped quote support from PEP701 [3.12] (GH-108553) (#108960)
Co-authored-by: Anthony Shaw <anthony.p.shaw@gmail.com>
Co-authored-by: sunmy2019 <59365878+sunmy2019@users.noreply.github.com>
2023-09-05 20:49:55 +00:00
Miss Islington (bot)
460043b554
[3.12] gh-108927: Fix test_import + test_importlib + test_unittest problem (GH-108929) (#108954)
gh-108927: Fix test_import + test_importlib + test_unittest problem (GH-108929)
(cherry picked from commit 3f89b25763)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-09-05 20:43:47 +00:00
Miss Islington (bot)
3d0827e397
[3.12] gh-107565: Update Windows build to use OpenSSL 3.0.10 (GH-108928) (#108930)
gh-107565: Update Windows build to use OpenSSL 3.0.10 (GH-108928)
(cherry picked from commit deea7c8268)

Co-authored-by: Zachary Ware <zach@python.org>
2023-09-05 20:19:06 +02:00
Miss Islington (bot)
578b3ea0e9
[3.12] GH-103082: Document PEP-669: Low Impact Monitoring for CPython (GH-107772) (#108909)
GH-103082: Document PEP-669: Low Impact Monitoring for CPython (GH-107772)
(cherry picked from commit 8b515f60ee)

Co-authored-by: Mark Shannon <mark@hotpy.org>
2023-09-05 15:07:11 +02:00
Mark Shannon
7ee021f999
[3.12] GH-108390: Prevent non-local events being set with sys.monitoring.set_local_events() (GH-108420) (#108899)
* GH-108390: Prevent non-local events being set with `sys.monitoring.set_local_events()` (GH-108420)

* Restore generated objects

* Restore size of monitoring arrays in code object for 3.12 ABI compatibility.

* Update ABI file
2023-09-05 11:29:38 +00:00
Serhiy Storchaka
5121faabd1
[3.12] gh-89392: Remove support of test_main() in libregrtest (GH-108876) (#108897)
[3.12] gh-89392: Remove support of test_main() in libregrtest (GH-108876).
(cherry picked from commit 04a0830b00)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-09-05 11:18:41 +00:00
Miss Islington (bot)
8c551a7f2a
[3.12] Link to PEP sections in What's New in 3.12 (GH-108878) (#108890)
Link to PEP sections in What's New in 3.12 (GH-108878)
(cherry picked from commit 7855d325e6)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-09-05 12:52:36 +02:00
Serhiy Storchaka
e76b0b7783
[3.12] bpo-45229: Make ElementTree tests discoverable (GH-108859) (#108873)
[3.12] bpo-45229: Make ElementTree tests discoverable (GH-108859).
(cherry picked from commit 074ac1f72e)
2023-09-05 12:51:37 +02:00
Miss Islington (bot)
9c1428c7cc
[3.12] CI: Bump GitHub Actions (GH-108879) (#108889)
CI: Bump GitHub Actions (GH-108879)
(cherry picked from commit 572678e1f8)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-09-05 12:50:44 +02:00
Serhiy Storchaka
88ff02e3c5
[3.12] gh-89392: Remove test_main() in test_netrc (GH-108860) (#108872)
[3.12] gh-89392: Remove test_main() in test_netrc (GH-108860).
(cherry picked from commit 76f3c043b6)

Co-authored-by: T. Wouters <thomas@python.org>
2023-09-04 21:13:02 +02:00
Miss Islington (bot)
bce77915b6
[3.12] Disable differing_test_runners health check (GH-108886) (#108887)
Disable `differing_test_runners` health check (GH-108886)
(cherry picked from commit 6ead5bd6ae)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-09-04 21:11:16 +02:00
Serhiy Storchaka
d5c2d453fd
[3.12] gh-89392: Make test_pep646_syntax discoverable (GH-108861) (#108871)
* [3.12] gh-89392: Make test_pep646_syntax discoverable (GH-108861).
(cherry picked from commit d0b22f6bd8)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>

* Add "import unittest".
2023-09-04 18:41:42 +02:00
Miss Islington (bot)
331b0267e2
[3.12] Resolve reference warnings in faq/gui.rst (GH-108147) (#108193)
* Resolve reference warnings in faq/gui.rst (GH-108147)
(cherry picked from commit 8f3d09bf5d)

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>

* Resolve reference warnings in faq/gui.rst

---------

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-09-04 18:40:59 +02:00
Łukasz Langa
e0f6080819
[3.12] gh-46376: Revert "Return existing pointer when possible in ctypes (GH-107131) (GH-107487)" (#108864)
This reverts commit 54aaaadef8.

Co-authored-by: T. Wouters <thomas@python.org>
2023-09-04 16:24:16 +02:00
Miss Islington (bot)
7b936ac12e
[3.12] Reorder some test's decorators (GH-108804) (#108844)
Reorder some test's decorators (GH-108804)

For example, do not demand the 'cpu' resource if the test cannot be run
due to non-working threads.
(cherry picked from commit 509bb61977)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-04 13:47:07 +02:00
Miss Islington (bot)
183bb673a8
[3.12] gh-107208: Fix iter_index() recipe to not swallow exceptions (gh-108835) (#108837)
gh-107208: Fix iter_index() recipe to not swallow exceptions (gh-108835)
(cherry picked from commit f373c6b948)


gh-107208: iter_index now supports "stop" and no longer swallows ValueError

Co-authored-by: Raymond Hettinger <rhettinger@users.noreply.github.com>
2023-09-04 13:46:35 +02:00
Victor Stinner
c8cf6be213
[3.12] gh-108822: regrtest computes statistics (#108793) (#108833)
gh-108822: regrtest computes statistics (#108793)

test_netrc, test_pep646_syntax and test_xml_etree now return results
in the test_main() function.

Changes:

* Rewrite TestResult as a dataclass with a new State class.
* Add test.support.TestStats class and Regrtest.stats_dict attribute.
* libregrtest.runtest functions now modify a TestResult instance
  in-place.
* libregrtest summary lists the number of run tests and skipped
  tests, and denied resources.
* Add TestResult.has_meaningful_duration() method.
* Compute TestResult duration in the upper function.
* Use time.perf_counter() instead of time.monotonic().
* Regrtest: rename 'resource_denieds' attribute to 'resource_denied'.
* Rename CHILD_ERROR to MULTIPROCESSING_ERROR.
* Use match/case syntadx to have different code depending on the
  test state.

Notes on the backport: doctest.TestResults.skipped is a new feature
in Python 3.13, so don't use it in the backport.

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
(cherry picked from commit d4e534cbb3)
2023-09-04 13:45:50 +02:00
Miss Islington (bot)
dcaacd9066
[3.12] gh-108416: Mark slow test methods with @requires_resource('cpu') (GH-108421) (#108798)
gh-108416: Mark slow test methods with @requires_resource('cpu') (GH-108421)

Only mark tests which spend significant system or user time,
by itself or in subprocesses.
(cherry picked from commit f3ba0a74cd)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-03 01:22:33 +02:00
Victor Stinner
7269916cd7
[3.12] gh-63760: Don't declare gethostname() on Solaris (#108817) (#108824)
gh-63760: Don't declare gethostname() on Solaris (#108817)

Since 2005, Solaris defines gethostname(). socketmodule.c no longer
has to define gethostname() for Solaris.

Oracle Solaris and OpenSolaris have patches to remove the
gethostname() definition in Python:

* https://github.com/oracle/solaris-userland/blob/master/components/python/python37/patches/15-gethostname.patch
* https://github.com/OpenIndiana/oi-userland/blob/oi/hipster/components/python/python37/patches/15-gethostname.patch
* https://github.com/omniosorg/omnios-build/blob/master/build/python27/patches/24-gethostname.patch

Co-authored-by: Jakub Kulík <Kulikjak@gmail.com>
(cherry picked from commit 0e6d582b3b)
2023-09-02 23:47:25 +02:00
Nikita Sobolev
c5ce34f9b4
[3.12] gh-101100: Fix sphinx warnings in unittest.mock-examples.rst (GH-108810) (#108813)
* [3.12] gh-101100: Fix sphinx warnings in `unittest.mock-examples.rst` (GH-108810).
(cherry picked from commit 5141b1ebe0)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>

* Make the requested changes

---------

Co-authored-by: AlexWaygood <alex.waygood@gmail.com>
2023-09-02 23:46:03 +02:00
Miss Islington (bot)
54e8dd757c
[3.12] gh-101100: Fix sphinx warnings in uuid.rst (GH-108805) (#108807)
* gh-101100: Fix sphinx warnings in `uuid.rst` (GH-108805)

* gh-101100: Fix sphinx warnings in `uuid.rst`

* Use anchors
(cherry picked from commit 21da4980f5)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>

* Fix typo

* another typo

---------

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-09-02 23:45:40 +02:00
Miss Islington (bot)
b862c25922
[3.12] gh-106392: Fix inconsistency in deprecation warnings (GH-106436) (#108792)
gh-106392: Fix inconsistency in deprecation warnings (GH-106436)

They used "datetime" to refer to both the object and the module.
(cherry picked from commit d5c5d4bfd3)

Co-authored-by: William Andrea <william.j.andrea@gmail.com>
2023-09-02 23:44:28 +02:00
Miss Islington (bot)
70a378c888
[3.12] gh-105563: reference DateType in datetime's documentation (GH-105946) (#108789)
gh-105563: reference DateType in datetime's documentation (GH-105946)
(cherry picked from commit 8f9ea43ee8)

Co-authored-by: TATHAGATA ROY <royzen9495@gmail.com>
2023-09-02 23:44:06 +02:00
Serhiy Storchaka
246cb64984
[3.12] Improve some C API documentation (GH-108768) (#108785)
* Express functions which take argument as a C string in terms of
  functions which take Python object.
* Use "note" directive for PyMapping_HasKey() and
  PyMapping_HasKeyString() notes..
(cherry picked from commit 6f97eeec22)
2023-09-02 23:43:41 +02:00
Miss Islington (bot)
ba7e06bb63
[3.12] Add Modules/_testcapi/util.h header (GH-108774) (#108780)
Add Modules/_testcapi/util.h header (GH-108774)

It contains common macros used in C API tests.
(cherry picked from commit 0e01fac315)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-09-02 23:43:14 +02:00
Hugo van Kemenade
f58617a3bc
[3.12] gh-101100: Fix sphinx warnings in tutorial/appendix.rst (GH-108750) (#108759)
(cherry picked from commit 3047f09490)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-09-02 23:42:40 +02:00
Miss Islington (bot)
4dc07d2bde
[3.12] Make test_fcntl quiet (GH-108758) (#108760)
Make test_fcntl quiet (GH-108758)

Running test_fcntl logs two "struct.pack: ..." lines because
multiprocessing imports test_fcntl twice with
test.support.verbose=1. Move get_lockdata() inside TestFcntl test
case and only call it where it's needed, to stop logging these lines.
(cherry picked from commit 23f54c1200)

Co-authored-by: Victor Stinner <vstinner@python.org>
2023-09-01 15:36:52 +02:00
Miss Islington (bot)
712994e1ab
[3.12] gh-101100: Fix sphinx warnings in tutorial/classes.rst (GH-108746) (#108756)
gh-101100: Fix sphinx warnings in `tutorial/classes.rst` (GH-108746)
(cherry picked from commit e775601ef1)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
2023-09-01 15:33:36 +02:00
Miss Islington (bot)
56683097f4
[3.12] gh-107805: Fix signatures of module-level generated functions in turtle (GH-107807) (#108749)
gh-107805: Fix signatures of module-level generated functions in `turtle` (GH-107807)
(cherry picked from commit 044b8b3b6a)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-09-01 15:32:35 +02:00
Miss Islington (bot)
1e15c1501c
[3.12] ast docs: Fix incorrect link on keyword (GH-108728) (#108737)
`ast` docs: Fix incorrect link on `keyword` (GH-108728)

In two places, Sphinx was erroneously adding links to the `keyword` module instead of the `ast.keyword` class
(cherry picked from commit c1e2f3b2f7)

Co-authored-by: Alex Povel <git@alexpovel.de>
2023-09-01 15:32:13 +02:00
Miss Islington (bot)
8c3793a539
[3.12] gh-108682: [Enum] raise TypeError if super().__new__ called in custom __new__ (GH-108704) (#108733)
gh-108682: [Enum] raise TypeError if super().__new__ called in custom __new__ (GH-108704)

When overriding the `__new__` method of an enum, the underlying data type should be created directly; i.e. .

    member = object.__new__(cls)
    member = int.__new__(cls, value)
    member = str.__new__(cls, value)

Calling `super().__new__()` finds the lookup version of `Enum.__new__`, and will now raise an exception when detected.
(cherry picked from commit d48760b2f1)

Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
2023-09-01 00:04:55 +02:00
Miss Islington (bot)
a92c60c99b
[3.12] gh-97850: Note in py312 whatsnew that importlib.util.set_loader and importlib.util.module_for_loader have been removed (GH-108719) (#108723)
gh-97850: Note in py312 whatsnew that `importlib.util.set_loader` and `importlib.util.module_for_loader` have been removed (GH-108719)

Note in py312 whatsnew that `importlib.util.set_loader` and `importlib.util.module_for_loader` have been removed
(cherry picked from commit 013a99a47b)

Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-09-01 00:03:02 +02:00
Miss Islington (bot)
bc42d6c604
[3.12] gh-101100: Fix sphinx warnings in threading.rst (GH-108684) (#108707)
gh-101100: Fix sphinx warnings in `threading.rst` (GH-108684)
(cherry picked from commit 991e4e76b5)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-08-31 15:32:39 +02:00
Miss Islington (bot)
1a15d20b75
[3.12] gh-108654: restore comprehension locals before handling exception (GH-108659) (#108700)
gh-108654: restore comprehension locals before handling exception (GH-108659)
(cherry picked from commit d52c4482a8)

Co-authored-by: Carl Meyer <carl@oddbird.net>
Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>
2023-08-31 15:32:17 +02:00
Miss Islington (bot)
320d398262
[3.12] gh-108520: Fix bad fork detection in nested multiprocessing use case (GH-108568) (#108691)
gh-108520: Fix bad fork detection in nested multiprocessing use case (GH-108568)

gh-107275 introduced a regression where a SemLock would fail being passed along nested child processes, as the `is_fork_ctx` attribute would be left missing after the first deserialization.

---------

(cherry picked from commit add8d45cbe)

Co-authored-by: albanD <desmaison.alban@gmail.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Antoine Pitrou <pitrou@free.fr>
2023-08-30 23:18:49 +02:00
Miss Islington (bot)
420db1027b
[3.12] gh-101100: Fix Sphinx warnings in the Logging Cookbook (GH-108678) (#108680)
gh-101100: Fix Sphinx warnings in the Logging Cookbook (GH-108678)
(cherry picked from commit c7cef54631)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-08-30 15:21:58 +02:00
Miss Islington (bot)
2e60d58fff
[3.12] Fix typo in multiprocessing docs (GH-108666) (#108677)
Fix typo in multiprocessing docs (GH-108666)
(cherry picked from commit 38ab0dba80)

Co-authored-by: kato8966 <66937409+kato8966@users.noreply.github.com>
2023-08-30 15:21:32 +02:00
Miss Islington (bot)
ecabf1e19f
[3.12] gh-108669: unittest: Fix documentation for TestResult.collectedDurations (GH-108670) (#108672)
gh-108669: unittest: Fix documentation for TestResult.collectedDurations (GH-108670)
(cherry picked from commit 6c484c39be)

Co-authored-by: Sebastian Rittau <srittau@rittau.biz>
2023-08-30 15:21:05 +02:00
Miss Islington (bot)
1d6d05aa82
[3.12] Mention Ellipsis pickling in the docs (GH-103660) (#108661)
Mention Ellipsis pickling in the docs (GH-103660)
(cherry picked from commit 14ec0bb7c3)

Co-authored-by: sterliakov <50529348+sterliakov@users.noreply.github.com>
2023-08-30 15:20:45 +02:00
Erlend E. Aasland
036dd6958a
[3.12] gh-107801: Improve the accuracy of io.IOBase.seek docs (#108268) (#108655)
(cherry picked from commit 8178a88bd8)

- Add param docstrings
- Link to os.SEEK_* constants
- Mention the return value in the initial paragraph

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2023-08-29 22:19:08 +02:00
Miss Islington (bot)
4afc5d8716
[3.12] gh-108617: Extend interactive session tests for sqlite3 (GH-108556) (#108626)
gh-108617: Extend interactive session tests for sqlite3 (GH-108556)
(cherry picked from commit ecb2bf02a4)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-08-29 20:30:23 +02:00
Miss Islington (bot)
1478a386e6
[3.12] gh-108558: Improve sqlite3 row factory tests (GH-108578) (#108615)
* gh-108558: Improve sqlite3 row factory tests (GH-108578)

Add test_sqlite_row_keys() to explicitly test sqlite3.Row.keys().

Cleanups:
- Reduce test noise by converting docstrings to regular comments
- Reduce boilerplate code by adding a setUp() method to RowFactoryTests

(cherry picked from commit 6eaddc10e9)

Co-authored-by: Edward Schauman-Haigh <142528725+EddInSverige@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend@python.org>

* Fix backport

---------

Co-authored-by: Edward Schauman-Haigh <142528725+EddInSverige@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend@python.org>
2023-08-29 20:29:52 +02:00
Miss Islington (bot)
cdca4af6c2
[3.12] gh-108550: Fix sqlite3 CLI regression from gh-108551 (GH-108618) (#108621)
gh-108550: Fix sqlite3 CLI regression from gh-108551 (GH-108618)
(cherry picked from commit c8847841cc)

Co-authored-by: Erlend E. Aasland <erlend@python.org>
2023-08-29 12:54:35 +02:00