Commit graph

128243 commits

Author SHA1 Message Date
AN Long
1ff2cbbac8
gh-137136: Suppress build warnings when build on Windows with --experimental-jit-interpreter (GH-137137) 2025-09-03 15:42:26 +01:00
Jakub Kulík
34ed03875a
gh-91214: Skip tests failing on Solaris (GH-31978) 2025-09-03 17:00:53 +03:00
Adam Turner
8cf547f4cd
GH-101100: Resolve reference warnings in extending/extending.rst (#138417) 2025-09-03 16:00:50 +03:00
Marc Mueller
8ce4f28363
Docs: Fix typo in test.support.linked_to_musl function name (#138406) 2025-09-03 14:52:13 +02:00
Serhiy Storchaka
482fd0c811
gh-60462: Fix locale.strxfrm() on Solaris (GH-138242)
It should interpret the result of wcsxfrm() as a sequence of abstract
integers, not a sequence of Unicode code points or using other encoding
scheme that does not preserve ordering.
2025-09-03 15:49:28 +03:00
Adam Turner
2985c6345f
GH-101100: Resolve reference warnings in whatsnew/3.4.rst (#138413)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-09-03 12:01:16 +00:00
Barney Gale
b19ad11027
GH-119169: Slightly speed up os.walk(topdown=True) (GH-121431)
GH-119186: Slightly speed up `os.walk(topdown=True)`

When `os.walk()` traverses into subdirectories in top-down mode, call
`os.path.join()` once to add a trailing slash, and use string concatenation
thereafter to generate child paths.
2025-09-03 13:57:01 +02:00
Adam Turner
984d928a22
GH-101100: Resolve reference warnings in whatsnew/2.7.rst (#138415)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-09-03 11:33:13 +00:00
Adorilson Bezerra
88665de120
gh-138307: Update the Ellipsis documentation (#138306)
* Doc: Change Ellipsis doc at library/constants

* Doc: Change Ellipsis doc at library/stdtypes

* Doc: Add NumPy reference into Ellipsis doc at library/stdtypes

* Doc: Add Ellipsis reference into the pass statement section at tutorial

* Doc: Update Ellipsis doc concerns assignments at library/constants

* Update Doc/library/stdtypes.rst

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>

* Doc: Fix grammar on Ellipsis docs (library/constants.rst)

Co-authored-by: Éric <merwok@netwok.org>

* Doc: Fix grammar on Ellipsis docs (library/stdtypes.rst)

Co-authored-by: Éric <merwok@netwok.org>

* Doc: Fix grammar on Ellipsis docs (library/stdtypes.rst)

Co-authored-by: Éric <merwok@netwok.org>

* Doc: Remove pretty printers reference from Ellipsis doc at library/stdtypes

* Doc: Update index concerns Ellipsis object and pass statement

* Doc: Improve Ellipsis doc at library/constants

* Doc: Improve Ellipsis doc at library/stdtypes

* Doc: Change the "..." glossary entry to mention the Ellipsis object

* Doc: Some improvements concern ellipsis into typing doc

* Minor update Doc/tutorial/controlflow.rst

Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>

* Update Doc/library/constants.rst

Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>

* Update Doc/library/stdtypes.rst

Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>

---------

Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Co-authored-by: Éric <merwok@netwok.org>
Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
2025-09-03 07:27:22 -04:00
Adam Turner
8c1ae6de11
GH-101100: Resolve reference warnings in whatsnew/3.8.rst (#138409)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-09-03 11:24:42 +00:00
Adam Turner
14e25177c6
GH-101100: Resolve reference warnings in whatsnew/3.3.rst (#138414) 2025-09-03 11:20:43 +00:00
Adam Turner
04c236bf7a
GH-123299: Copyedit 3.14 What's New: Move and consolidate Porting (#138400) 2025-09-03 14:10:12 +03:00
Cody Maloney
6dd21e9f56
gh-138013: Remove test_io load_tests namespace manipulation (#138366)
Reduce what happens in `load_tests` so that the next change,
moving the `Buffered*` tests to `test_bufferdio` is purely mechanical
movement and updating imports.

This adds two classes, one per I/O implementation, to act as dispatch to
the implementation-specific mocks as well as module members. Previously
the mappings CTestCase and PyTestCase provide were injected directly
during `load_tests`.

CTestCase and PyTestCase inherit from `unittest.TestCase` so when the
split happens default test discovery will work for the classes in
`test_bufferedio`. `test_general` keeps a manual test list for this
refactoring; some of the tests (ex. `ProtocolsTest`) aren't currently
run and fixing that + helpers to not be picked up is out of my current
scope.

CTestCase and PyTestCase have an `io` class member which points to the
implementation meaning that can be removed from individual test cases
which now inherit from them.

This code is picking up `MockRawIO` which is defined globally in the
module but these should use the mock specific to the I/O implementation
being tested.

Co-authored-by: Victor Stinner <vstinner@python.org>
2025-09-03 11:49:59 +02:00
Cody Maloney
974532e758
gh-138013: Move I/O tests to test_io (#138365)
Centralize `io` tests into the `test_io` module so they are easier to
find and work on. This will make it easier to split `test_general` which
takes 30+ seconds in a debug build on my machine.

This renames `test_bufio` to be `test_bufferedio` so that it matches
the implementation file name (`bufferedio.c`).

Validation performed:
Tests are run in parallel after change:

```bash
./python.exe -m test test_io  -uall,largefile,extralargefile -M12G -j8
```

Docstring reformat in `test_io/__init__.py` looks reasonable:

```python
>>> import test.test_io
>>> help(test.test_io)
```

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-09-03 11:37:06 +02:00
Serhiy Storchaka
7274d07607
gh-78502: Add a trackfd parameter to mmap.mmap() on Windows (GH-138238)
If trackfd is False, the file handle corresponding to fileno
will not be duplicated.
2025-09-03 11:31:34 +03:00
Serhiy Storchaka
4a33077fdb
gh-138264: Fix gcc 14 compiler warnings (GH-138265) 2025-09-03 11:26:56 +03:00
Bénédikt Tran
572df47840
gh-116946: fully implement GC protocol for _curses_panel.panel (#138333)
This commit fixes possible reference loops via `panel.set_userptr`
by implementing `tp_clear` and `tp_traverse` for panel objects.
2025-09-03 10:17:17 +02:00
Bénédikt Tran
51244ba16a
gh-116946: add Py_TPFLAGS_IMMUTABLETYPE to _random.Random (#138341) 2025-09-03 09:55:53 +02:00
Adam Turner
dd86fb4ba5
GH-101100: Resolve reference warnings in whatsnew/3.7.rst (#138410)
Resolve reference warnings in whatsnew/3.7.rst
2025-09-03 09:20:16 +03:00
Weilin Du
c22cc8fccd
gh-101100: Resolve reference warnings in library/xml.sax.handler.rst (#136612) 2025-09-03 01:35:21 +01:00
Adam Turner
98b4cd6fe9
GH-135763: AC: Use `Py_ssize_t(allow_negative=False)` (#138394) 2025-09-02 21:29:05 +01:00
Zackery Spytz
32032ee376
gh-87595: Support mmap.size() for anonymous mapping on Unix (GH-24781)
Previously, the size would be returned on Windows and an OSError would
be raised on Unix.

Also, raise ValueError instead of OSError for trackfd=False.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-09-02 23:24:06 +03:00
Jacob Coffee
e4e2390a64
Doc: Track file downloads via plausible (#138393)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-09-02 22:02:00 +03:00
Bénédikt Tran
3ff00c76c9
gh-116946: add Py_TPFLAGS_IMMUTABLETYPE to select.poll and select.epoll (#138340) 2025-09-02 17:53:44 +00:00
Brian Schubert
5493b46462
gh-138372: Fix SyntaxWarning for erroneous t-string subscription (#138375) 2025-09-02 18:13:12 +01:00
AN Long
b3e785c76c
gh-138314: Add winreg.DeleteTree (GH-138388) 2025-09-02 17:04:57 +00:00
Adam Turner
cc7ef69c86
gh-138122: Use `profiling.sampling` in the documentation (PEP 799) (#138389) 2025-09-02 17:45:00 +01:00
Pieter Eendebak
2d3711dc06
gh-136599: Add tests for long_hash (#138335)
Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
2025-09-02 18:42:12 +02:00
Serhiy Storchaka
33fcb0c4a0
gh-138204: Forbid expansion of a shared anonymous mmap on Linux (GH-138220)
This is a Linux kernel bug which caused a bus error.
https://bugzilla.kernel.org/show_bug.cgi?id=8691
2025-09-02 19:00:39 +03:00
jadonduff
c19db1d2b8
gh-138004: Fix setting a thread name on OpenIndiana (GH-138017)
Encode Solaris/Illumos thread names to ASCII, since
OpenIndiana does not support non-ASCII names.

Add tests for setting non-ASCII name for the main thread.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-09-02 15:26:25 +00:00
James Parrott
8d5c3341c5
gh-138297 Point link in docs for finally to try/else, instead of if/else (#138298)
Co-authored-by: Brian Schubert <brianm.schubert@gmail.com>
Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
2025-09-02 14:56:23 +00:00
Sebastian Rittau
3f23888fd7
gh-127647: Fix and enable I/O protocol tests (#138369) 2025-09-02 06:45:29 -07:00
Sergey Miryanov
33f89106d7
gh-133158: Adjust c-analyzer max_sizes for typeobject.c (GH-133159)
This also improves the error message for when a file is too large.
2025-09-02 13:34:22 +00:00
Stan Ulbrych
0a0cbd43a7
gh-110936: Reorder string literal definition in Lexical Analysis (GH-138063) 2025-09-02 13:48:26 +02:00
Serhiy Storchaka
cb18269e1b
gh-138253: Fix compatibility of sub-interpreters queues with queue.Queue (GH-138256)
Add the block parameter in the put() and get() methods of
the concurrent.interpreters queues for compatibility with the
queue.Queue interface.
2025-09-02 08:59:20 +03:00
Gregory P. Smith
a2ba0a7552
gh-61206: Support zstandard compression in the zipimport module (GH-138254)
* gh-61206: support zstd in zipimport

* NEWS entry

* versionchanged doc
2025-09-01 17:14:23 -07:00
Christoph Walcher
47bc10e6b3
gh-135763: AC: Implement `allow_negative for Py_ssize_t` (#138150)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-09-01 22:55:22 +01:00
Andrey
7c92497e5c
gh-138360: Fix test_free_threading for IO objects (#138359)
Fix typo in test_io.py
2025-09-01 19:53:13 +00:00
Victor Stinner
aec006be97
gh-135755: Make Py_MAX_SCRIPT_PATH_SIZE private (#138350) 2025-09-01 20:01:01 +01:00
Stan Ulbrych
b3ff3165d2
gh-89905: Correct -R option doc (#137608) 2025-09-01 19:58:25 +02:00
Tapeline
ea77feecbb
gh-138302: Specialize int ops only if ints are compact (GH-138347) 2025-09-02 01:33:15 +08:00
Marc Mueller
6528cf47a0
gh-90548: Fix musl version detection with --strip-all (#137864)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-09-01 18:58:45 +02:00
Peter Bierma
4f6ecd10c2
gh-138342: Use a common utility for visiting an object's type (GH-138343)
Add `_PyObject_VisitType` in place of `tp_traverse` functions that only visit the object's type.
2025-09-01 16:20:33 +00:00
Pieter Eendebak
0d02e4d7d3
gh-116738: Fix test_json_mutating_exact_dict (#138339)
Fix test_json_mutating_exact_dic
2025-09-01 21:44:19 +05:30
Stan Ulbrych
0d383f86ee
gh-54874: Expand unicodedata module documentation (#138301)
Closes #54874

Co-authored-by: Alexander Belopolsky <abalkin@users.noreply.github.com>
2025-09-01 17:50:31 +02:00
Bénédikt Tran
c9b252c2c0
gh-116946: Revert GC protocol for immutable empty heap types (GH-138266, GH-138288, GH-138289) (#138338)
* Revert "gh-116946: fully implement GC protocol for `bz2` objects (#138266)"

This reverts commit 9be91f6a20.

* Revert "gh-116946: fully implement GC protocol for `lzma` objects (#138288)"

This reverts commit 3ea16f990f.

* Revert "gh-116946: fully implement GC protocol for `_hashlib` objects (#138289)"

This reverts commit 6f1dd9551a.
2025-09-01 21:15:11 +05:30
Jason R. Coombs
9b38c6698a
Reapply "gh-132947: Apply changes from importlib_metadata 8.7 (#137885)" (#137924) (#137930)
* Reapply "gh-132947: Apply changes from importlib_metadata 8.7 (#137885)" (#137924)

This reverts commit 3706ef66ef.

* Skip the triggering test on buildbots only.
2025-09-01 11:27:01 -04:00
Bénédikt Tran
2a54acf3c3
gh-116946: fully implement GC protocol for zlib objects (#138290) 2025-09-01 10:24:23 +02:00
Bénédikt Tran
6f1dd9551a
gh-116946: fully implement GC protocol for _hashlib objects (#138289) 2025-09-01 10:23:01 +02:00
Bénédikt Tran
3ea16f990f
gh-116946: fully implement GC protocol for lzma objects (#138288) 2025-09-01 10:22:43 +02:00