Commit graph

122140 commits

Author SHA1 Message Date
Steve Dower
b204c4beb4
gh-86179: Skip test case that fails on POSIX with unversioned binary (GH-114136) 2024-01-17 11:33:59 +00:00
Terry Jan Reedy
4a32275389
gh-72284: Revise lists in IDLE doc (#114174)
Tkinter is a fact, not necessarily a feature.

Reorganize editor key bindings in a logical order
and remove those that do not work, at least on Windows.

Improve shell bindings list.
2024-01-17 07:52:32 +00:00
Terry Jan Reedy
e07a400c31
gh-81479: For Help => IDLE Doc, stop double-spacing some lists. (#114168)
This matches Firefox format.  Edge double-spaces non-simple
list but I think it looks worse.
2024-01-17 05:24:59 +00:00
Erlend E. Aasland
8d26db45df
gh-112043: Align concurrent.futures.Executor.map docs with implementation (#114153)
The first parameter is named 'fn', not 'func'.
2024-01-17 01:31:16 +00:00
Steffen Zeile
05008c27b7
gh-88531 Fix dataclass __post_init__/__init__ interplay documentation (gh-107404)
* Simplify __post_init__ example usage. It applies to all base classes, not just dataclasses.
2024-01-16 20:17:34 -05:00
Mano Sriram
60ca37fdee
gh-106293: Fix typos in Objects/object_layout.md (#106294)
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2024-01-16 23:11:15 +00:00
Barney Gale
45e527dfb5
GH-110109: pathlib docs: bring from_uri() and as_uri() together. (#110312)
This is a very soft deprecation of `PurePath.as_uri()`. We instead document
it as a `Path` method, and add a couple of sentences mentioning that it's
also available in `PurePath`.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-01-16 22:51:57 +00:00
Kuan-Wei Chiu
1d6989f9b0
Fix typo in c_annotations.py comment (#108773)
"compatability" => "compatibility"
2024-01-16 23:36:01 +01:00
Erlend E. Aasland
6e84f3b56f
gh-94220: Align fnmatch docs with the implementation and amend markup (#114152)
- Align the argument spec for fnmatch functions with the actual
  implementation.
- Update Sphinx markup to recent recommandations.
- Add link to 'iterable' glossary entry.

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-01-16 22:35:09 +00:00
Barney Gale
7092b3f131
GH-78988: Document pathlib.Path.glob() exception propagation. (#114036)
We propagate the `OSError` from the `is_dir()` call on the top-level
directory, and suppress all others.
2024-01-16 22:28:54 +00:00
Steve Dower
2e672f7ca6
gh-113655: Increase default stack size for PGO builds to avoid C stack exhaustion (GH-114148) 2024-01-16 22:02:20 +00:00
Sam Gross
b331381485
gh-112529: Track if debug allocator is used as underlying allocator (#113747)
* gh-112529: Track if debug allocator is used as underlying allocator

The GC implementation for free-threaded builds will need to accurately
detect if the debug allocator is used because it affects the offset of
the Python object from the beginning of the memory allocation. The
current implementation of `_PyMem_DebugEnabled` only considers if the
debug allocator is the outer-most allocator; it doesn't handle the case
of "hooks" like tracemalloc being used on top of the debug allocator.

This change enables more accurate detection of the debug allocator by
tracking when debug hooks are enabled.

* Simplify _PyMem_DebugEnabled
2024-01-16 13:42:15 -08:00
solya0x
c86571e4c9
Update copyright years to 2024. (GH-113608)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-01-16 21:54:05 +01:00
Brett Cannon
03f7839703
GH-114013: fix setting HOSTRUNNER for Tools/wasm/wasi.py (GH-114097)
Also fix tests found failing under a pydebug build of WASI thanks to `make test` working due to this change.
2024-01-16 11:36:41 -08:00
Shantanu
3d5df54cdc
Clean up backslash avoiding code in ast, fix typo (#113605)
As of #108553, the `_avoid_backslashes` code path is dead

`scape_newlines` was introduced in #110271. Happy to drop the typo fix
if we don't want it
2024-01-16 11:24:25 -08:00
Serhiy Storchaka
74208ed0c4
gh-113659: Skip hidden .pth files (GH-113660)
Skip .pth files with names starting with a dot or hidden file attribute.
2024-01-16 20:23:05 +02:00
Terry Jan Reedy
7a24ecc953
Fix 'expresion' typo in IDLE doc (#114130)
The substantive change is on line 577/593. Rest is header/footer stuff ignored when displaying.
2024-01-16 17:12:59 +00:00
Erlend E. Aasland
b1db6278cf
Docs: Improve multiprocessing.SharedMemory reference (#114093)
Align the multiprocessing shared memory docs with Diatáxis's
recommendations for references.

- use a parameter list for the SharedMemory.__init__() argument spec
- use the imperative mode
- use versionadded, not versionchanged, for added parameters
- reflow touched lines according to SemBr
2024-01-16 16:43:13 +00:00
Steve Dower
de4ced54eb
gh-114096: Restore privileges in _winapi.CreateJunction after creating the junction (GH-114089)
This avoids impact on later parts of the application which may be able to do things they otherwise shouldn't.
2024-01-16 16:40:02 +00:00
Terry Jan Reedy
31a2543c80
gh-114069: Revise Tutorial Methods paragraph (#114127)
Remove excess words in the first and third sentences.
2024-01-16 11:33:05 -05:00
Jonathon Reinhart
e454f9383c
Fix an incorrect comment in iobase_is_closed (GH-102952)
This comment appears to have been mistakenly copied from what is now
called iobase_check_closed() in commit 4d9aec0220.

Also unite the iobase_check_closed() code with the relevant comment.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-16 18:27:17 +02:00
Victor Stinner
c77f552ec0
gh-114107: test.pythoninfo logs Windows Developer Mode (#114121)
Also, don't skip the whole collect_windows() if ctypes is missing.

Log also ctypes.windll.shell32.IsUserAnAdmin().
2024-01-16 17:23:46 +01:00
Donghee Na
867f59f234
gh-111968: Use per-thread freelists for PyContext in free-threading (gh-114122) 2024-01-16 16:14:56 +00:00
Serhiy Storchaka
d2d8332f71
gh-113626: Add allow_code parameter in marshal functions (GH-113648)
Passing allow_code=False prevents serialization and de-serialization of
code objects which is incompatible between Python versions.
2024-01-16 18:05:15 +02:00
AN Long
a482bc67ee
gh-102468: Document PyCFunction_New* and PyCMethod_New (GH-112557)
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2024-01-16 16:17:03 +01:00
Petr Viktorin
c361a1f395
gh-114107: Fix importlib.resources symlink test if symlinks aren't supported (#114108)
gh-114107: Fix symlink test if symlinks aren't supported
2024-01-16 16:10:03 +01:00
Petr Viktorin
ac44ec6206
gh-113858: GH Actions: Limit max ccache size for the asan build (GH-114113) 2024-01-16 14:21:16 +01:00
Erlend E. Aasland
af85274086
Docs: Align multiprocessing.shared_memory docs with Sphinx recommendations (#114103)
- add :class: and :mod: markups where needed
- fix incorrect escaping of a star in ShareableList arg spec
- mark up parameters with stars: *val*
- mark up list of built-in types using list markup
- remove unneeded parentheses from :meth: markups
2024-01-16 12:35:35 +00:00
Serhiy Storchaka
d4dfad2aa9
gh-114077: Fix OverflowError in socket.sendfile() when pass count >2GiB (GH-114079) 2024-01-16 11:31:34 +00:00
Mike Zimin
c85c0026a6
gh-113238: add Anchor to importlib.resources (#113801)
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
2024-01-16 10:55:59 +00:00
Jérome Perrin
04fabe22dd
gh-113358: Fix rendering tracebacks with exceptions with a broken __getattr__ (GH-113359)
Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
2024-01-16 09:49:24 +00:00
Mark Shannon
17b73ab99e
GH-113655: Lower the C recursion limit on various platforms (GH-113944) 2024-01-16 09:32:01 +00:00
AN Long
6c502ba809
gh-114101: Correct PyErr_Format arguments in _testcapi module (#114102)
- use PyErr_SetString() iso. PyErr_Format() in parse_tuple_and_keywords()
- fix misspelled format specifier in CHECK_SIGNNESS() macro
2024-01-16 09:32:39 +01:00
Zackery Spytz
8fd287b18f
gh-78502: Add a trackfd parameter to mmap.mmap() (GH-25425)
If *trackfd* is False, the file descriptor specified by *fileno*
will not be duplicated.

Co-authored-by: Erlend E. Aasland <erlend@python.org>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-16 08:51:46 +01:00
Donghee Na
42b90cf0d6
gh-112087: Update list impl to be thread-safe with manual CS (gh-113863) 2024-01-16 09:11:14 +09:00
Raphaël Marinier
5094690efd
gh-91539: Small performance improvement of urrlib.request.getproxies_environment() (#108771)
Small performance improvement of getproxies_environment() when there are many environment variables. In a benchmark with 5k environment variables not related to proxies, and 5 specifying proxies, we get a 10% walltime improvement.
2024-01-15 15:45:01 -08:00
Sergey B Kirpichev
4f24b92aa0
gh-114070: correct the specification of `digit` in the float() docs (#114080) 2024-01-15 14:19:59 -08:00
Kamil Turek
d457345bbc
gh-99437: runpy: decode path-like objects before setting globals 2024-01-15 16:58:50 +00:00
Donghee Na
3eae76554b
gh-111968: Use per-thread slice_cache in free-threading (gh-113972) 2024-01-16 00:38:57 +09:00
Sam Gross
44e47dfba5
gh-112532: Fix memory block count for free-threaded build (gh-113995)
This fixes `_PyInterpreterState_GetAllocatedBlocks()` and
`_Py_GetGlobalAllocatedBlocks()` in the free-threaded builds. The
gh-113263 change that introduced multiple mimalloc heaps per-thread
broke the logic for counting the number of allocated blocks. For subtle
reasons, this led to reported reference count leaks in the refleaks
buildbots.
2024-01-16 00:37:36 +09:00
Sergey B Kirpichev
0f2fa6150b
gh-109598: make PyComplex_RealAsDouble/ImagAsDouble use __complex__ (GH-109647)
`PyComplex_RealAsDouble()`/`PyComplex_ImagAsDouble` now try to convert
an object to a `complex` instance using its `__complex__()` method
before falling back to the ``__float__()`` method.

PyComplex_ImagAsDouble() also will not silently return 0.0 for
non-complex types anymore.  Instead we try to call PyFloat_AsDouble()
and return 0.0 only if this call is successful.
2024-01-15 16:04:17 +01:00
Mark Shannon
ac10947ba7
GH-112354: _GUARD_IS_TRUE_POP side-exits to target the next instruction, not themselves. (GH-114078) 2024-01-15 11:41:06 +00:00
Ronald Oussoren
2010d45327
gh-113666: Adding missing UF_ and SF_ flags to module 'stat' (#113667)
Add some constants to module 'stat' that are used on macOS.

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-01-15 12:22:43 +01:00
Kirill Podoprigora
892155d736
gh-114075: Capture test_compileall stdout output (#114076)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2024-01-15 10:21:34 +00:00
Serhiy Storchaka
f8a79109d0
gh-109862: Fix test_create_subprocess_with_pidfd when it was run separately (GH-113991) 2024-01-15 09:26:49 +02:00
Erlend E. Aasland
1709020e8e
gh-113317: Move FormatCounterFormatter into libclinic (#114066) 2024-01-15 00:09:26 +01:00
Barney Gale
4de4e654e5
Replace pathlib._abc.PathModuleBase.splitroot() with splitdrive() (#114065)
This allows users of the `pathlib-abc` PyPI package to use `posixpath` or
`ntpath` as a path module in versions of Python lacking
`os.path.splitroot()` (3.11 and before).
2024-01-14 23:06:04 +00:00
Barney Gale
ca6cf56330
Add pathlib._abc.PathModuleBase (#113893)
Path modules provide a subset of the `os.path` API, specifically those
functions needed to provide `PurePathBase` functionality. Each
`PurePathBase` subclass references its path module via a `pathmod` class
attribute.

This commit adds a new `PathModuleBase` class, which provides abstract
methods that unconditionally raise `UnsupportedOperation`. An instance of
this class is assigned to `PurePathBase.pathmod`, replacing `posixpath`.
As a result, `PurePathBase` is no longer POSIX-y by default, and
all its methods raise `UnsupportedOperation` courtesy of `pathmod`.

Users who subclass `PurePathBase` or `PathBase` should choose the path
syntax by setting `pathmod` to `posixpath`, `ntpath`, `os.path`, or their
own subclass of `PathModuleBase`, as circumstances demand.
2024-01-14 21:49:53 +00:00
Hugo van Kemenade
c2808431b3
gh-101100: Fix Sphinx warnings in howto/urllib2.rst and library/http.client.rst (#114060) 2024-01-14 20:38:53 +00:00
Erlend E. Aasland
5dbcdfdeb8
gh-113317: Move global utility functions into libclinic (#113986)
Establish Tools/clinic/libclinic/utils.py and move the following
functions over there:

- compute_checksum()
- create_regex()
- write_file()
2024-01-14 18:26:09 +00:00