Commit graph

56308 commits

Author SHA1 Message Date
Bénédikt Tran
3eda146035
gh-74598: add fnmatch.filterfalse for excluding names matching a patern (#121185) 2025-04-08 10:11:25 +00:00
Adam Turner
ee3657209b
gh-118761: Optimise import time for `string` (#132037)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-04-08 10:05:48 +00:00
Bénédikt Tran
53908bd790
gh-93096: fix test_mimetypes.test_guess_type_conflicting_with_mimetypes (#131408) 2025-04-08 09:08:59 +00:00
Srinivas Reddy Thatiparthy (తాటిపర్తి శ్రీనివాస్ రెడ్డి)
403886c28d
gh-132021: Add bool type to the list of allowed JSON key types (#132048)
Co-authored-by: Eric V. Smith <ericvsmith@users.noreply.github.com>
2025-04-08 11:25:46 +03:00
sobolevn
f7305a06c7
gh-115942: Add locked to several multiprocessing locks (#115944)
Co-authored-by: mpage <mpage@cs.stanford.edu>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-04-08 11:14:12 +03:00
Emma Smith
6cd1d6c6b1
gh-84481: Make ZipFile.data_offset more robust (#132178) 2025-04-08 10:43:14 +03:00
Inada Naoki
e2b35ee229
enum: remove unused function (#132044) 2025-04-08 09:23:48 +09:00
sobolevn
bc5233b6a5
gh-130775: Allow negative locations in ast (#130795)
Co-authored-by: Victor Stinner <vstinner@python.org>
2025-04-07 19:35:17 +03:00
sobolevn
3980718710
gh-132171: Fix _interpreters.run_string crash on string subclass (#132173) 2025-04-07 14:59:44 +03:00
btwood
895d983b5c
gh-61456: Add Thai language codec aliases (#15079)
Adding aliases for Thai language support. The current code page is an implementation of the windows code page.
This will alias '874', 'ms874', and 'windows_874' to cp874, adding Thai language support for those users.

Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2025-04-07 13:06:32 +02:00
Vincent Fazio
4c5dcc6d82
gh-129204: Add _PYTHON_SUBPROCESS_USE_POSIX_SPAWN environment knob (GH-132184)
* Add _PYTHON_SUBPROCESS_USE_POSIX_SPAWN environment knob

Add support for disabling the use of `posix_spawn` via a variable in
the process environment.

While it was previously possible to toggle this by modifying the value
of `subprocess._USE_POSIX_SPAWN`, this required either patching CPython
or modifying it within the interpreter instance which is not always
possible, such as when running applications or scripts not under a
user's control.

Signed-off-by: Vincent Fazio <vfazio@gmail.com>

* fixup NEWS entry

---------

Signed-off-by: Vincent Fazio <vfazio@gmail.com>
2025-04-06 20:53:02 -07:00
Brian Schubert
e2476398ee
gh-132168: Add __class_getitem__ to ctypes.py_object (#132169) 2025-04-06 22:05:19 +01:00
Emma Smith
0788948dcb
gh-84481: Add ZipFile.data_offset attribute (#132165)
* Add ZipFile.data_offset attribute

This attribute provides the offset to zip data from the start of the file, when available.

* Add blurb-it

* Try fixing class ref in NEWS
2025-04-06 13:51:42 -07:00
Tomas R.
a693eaa710
gh-132121: Always escape non-printable characters in pygettext (GH-132122) 2025-04-06 23:15:17 +03:00
Xuehai Pan
7bb1e1a236
gh-132159: Do not shadow user arguments in generated __new__ by @warnings.deprecated (#132160) 2025-04-06 16:37:37 +00:00
sobolevn
c0661df42a
gh-132011: Fix crash on invalid CALL_LIST_APPEND deoptimization (#132018)
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-04-06 19:10:39 +03:00
Semyon Moroz
f247e1d04c
gh-131178: Add tests for pickle command-line interface (#131275)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-04-06 11:50:32 -04:00
Srinivas Reddy Thatiparthy (తాటిపర్తి శ్రీనివాస్ రెడ్డి)
0a10b45dd1
Docs: Replace dead hyperlink for CGI environment variables (#132137) 2025-04-06 10:12:48 +02:00
Tomas R.
85bc489b64
GH-131798: Narrow the result of _CONTAINS_OP_SET to bool in the JIT (GH-132057) 2025-04-05 15:56:01 -07:00
Stan Ulbrych
ad6a032ceb
gh-131852: Filter out POT-Creation-Date in msgfmt (GH-131880)
Co-authored-by: Tomas R. <tomas.roun8@gmail.com>
2025-04-05 22:38:39 +03:00
Adam Turner
1755157207
GH-118761: Expose more core interpreter types in `_types` (#132103)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
2025-04-05 18:11:07 +00:00
Serhiy Storchaka
ef70f02925
Skip a test for Bluetooth HCI socket (added in GH-132023) if it fails (GH-132072) 2025-04-05 16:41:57 +03:00
Semyon Moroz
37bc3865c8
gh-85162: Add HTTPSServer to http.server to serve files over HTTPS (#129607)
The `http.server` module now supports serving over HTTPS using the `http.server.HTTPSServer` class.
This functionality is also exposed by the command-line interface (`python -m http.server`) through the
`--tls-cert`, `--tls-key` and `--tls-password-file` options.
2025-04-05 08:49:48 +00:00
Ageev Maxim
05557788f3
gh-131015: Add test for bytes formatting errors (#131881)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
2025-04-05 10:30:16 +02:00
Jelle Zijlstra
ac14d4a23f
gh-129463, gh-128593: Simplify ForwardRef (#129465) 2025-04-05 04:36:34 +00:00
Adam Turner
231a50fa9a
gh-109599: Expose CapsuleType via the _types module (#131969) 2025-04-04 23:37:41 +01:00
Victorien
ac3a7bfecc
Fix typo in template_replace() test helper docstring (#132094) 2025-04-04 17:38:09 +00:00
Bénédikt Tran
0a97427ee5
gh-99108: Implement HACL* HMAC (#130157)
A new extension module, `_hmac`, now exposes the HACL* HMAC (formally verified) implementation.

The HACL* implementation is used as a fallback implementation when the OpenSSL implementation of HMAC
is not available or disabled. For now, only named hash algorithms are recognized and SIMD support provided
by HACL* for the BLAKE2 hash functions is not yet used.
2025-04-04 19:04:00 +02:00
Jelle Zijlstra
305be5fb1a
gh-118761: Lazily import annotationlib in typing (#132060)
annotationlib is used quite a few times in typing.py, but I think the
usages are just rare enough that this makes sense.

The import would get triggered by:
- Using get_type_hints(), evaluate_forward_ref(), and similar introspection
  functions
- Using a string annotation anywhere that goes through _type_convert (e.g.,
  "Final['x']" will trigger an annotationlib import in order to access the
  ForwardRef class).
- Creating a TypedDict or NamedTuple (unless it's empty or PEP 563 is on).

Lots of programs will want to use typing without any of these, so the tradeoff
seems worth it.
2025-04-04 08:57:10 -07:00
Bénédikt Tran
04bc681e7c
gh-131938: Update exception message for Element.remove() when an element is not found (#131972)
The exception message for `xml.etree.ElementTree.Element.remove` when an element is not found
has been updated from "list.remove(x): x not in list" to "Element.remove(x): element not found".
2025-04-04 15:04:07 +00:00
Jelle Zijlstra
255eb375a7
gh-118761: Defer import of functools in annotationlib (#132059) 2025-04-04 06:42:22 -07:00
Tomas R.
a126cefc17
gh-130655: Add a test for corrupt .mo files in gettext (#131911) 2025-04-04 13:26:59 +00:00
Tomas R.
16a6270aa6
gh-130655: Add a test for bad magic numbers in .mo files parsed by gettext (#131909) 2025-04-04 13:26:15 +00:00
Tomasz Pytel
891c61c1fa
gh-128632: fix segfault on nested __classdict__ type param (#128744) 2025-04-04 06:23:35 -07:00
Jelle Zijlstra
d1db43c139
gh-105499: Defer "import warnings" in typing (#132061)
A bunch of other warnings in typing.py were already deferred, but
I added a few non-lazy ones.
2025-04-04 06:19:42 -07:00
Victor Stinner
37d47d4965
gh-125434: Display thread name in faulthandler (#132016) 2025-04-04 12:24:41 +00:00
Serhiy Storchaka
2ccd6aae4d
Add tests for Bluetooth RFCOMM, HCI and SCO (GH-132023) 2025-04-04 14:33:09 +03:00
Filipe Laíns 🇵🇸
6ab4acecf9
GH-131770: increase assumed WASI stack size to 131072 (wasi-sdk default) (#131844)
e9524a0980/libc-top-half/musl/src/internal/pthread_impl.h (L220)

Signed-off-by: Filipe Laíns <lains@riseup.net>
2025-04-04 09:34:02 +01:00
Itamar Oren
b6c92ec419
gh-132038: Make perf version check in test_perf_profiler more robust (#132039)
Should work also if the version string includes a commit hash, like `perf version 6.12.9.g242e6068fd5c`
2025-04-03 18:37:08 +01:00
Jelle Zijlstra
5518c2ae09
gh-128661: Remove DeprecationWarning in evaluate_forward_ref (#128930)
It doesn't make sense to use a deprecation for evaluate_forward_ref,
as it is a new function in Python 3.14 and doesn't have compatibility
guarantees.

I considered making it throw an error if type_params it not passed and
there is no owner. However, I think this is too unfriendly for users. The
case where this param is really needed is fairly esoteric and I don't think
this case is worth the pain of forcing users to write "type_params=()".
2025-04-03 09:52:17 -07:00
Pablo Galindo Salgado
943cc1431e
gh-131591: Implement PEP 768 (#131937)
Co-authored-by: Ivona Stojanovic <stojanovic.i@hotmail.com>
Co-authored-by: Matt Wozniski <godlygeek@gmail.com>
2025-04-03 16:20:01 +01:00
Adam Turner
b3e3cc054c
Remove deferred `typing import in annotationlib` (#132034) 2025-04-02 20:30:31 -07:00
Tian Gao
6bd9689426
gh-60115: Support frozen modules for linecache.getline() (#131638) 2025-04-02 19:50:01 -04:00
Jelle Zijlstra
06822bfbf6
gh-118761: Fix star-import of ast (#132025)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-04-02 18:15:05 +00:00
Victor Stinner
643dd5107c
gh-111178: Skip test_perf_profiler on function sanitizer (#132020)
Add 'function' parameter to check_sanitizer() of test.support.
2025-04-02 18:46:10 +02:00
Adam Turner
f20f02e6b5
gh-118761: Optimise import time for ast (#131953) 2025-04-02 17:22:15 +01:00
Mark Shannon
ad053d8d6a
GH-131498: Cases generator: Parse down to C statement level. (GH-131948)
* Parse down to statement level in the cases generator

* Add handling for #if macros, treating them much like normal ifs.
2025-04-02 16:31:59 +01:00
Jakub Kulík
e8085319eb
gh-59705: Fix solaris detection in test_threading.test_set_name() (#132012) 2025-04-02 16:34:43 +02:00
Thomas Grainger
b0f77c4d25
gh-131888: fix ResourceWarning in test_ftplib (#131889) 2025-04-02 14:30:19 +02:00
sobolevn
ab2a3dda1d
gh-132002: Fix crash of ContextVar on unhashable str subtype (#132003) 2025-04-02 14:48:47 +03:00