Peter Bierma
f72768f30e
gh-141004: Document C APIs for dictionary keys, values, and items (GH-141009)
...
Co-authored-by: Petr Viktorin <encukou@gmail.com >
2025-11-13 15:02:21 +00:00
Mikhail Efimov
c2470b39fa
gh-137959: Fix TIER1_TO_TIER2 macro name in JIT InternalDocs (GH-141496)
...
JIT InternalDocs fix
2025-11-13 14:44:40 +00:00
Cody Maloney
732224e113
gh-139871: Add bytearray.take_bytes([n]) to efficiently extract bytes (GH-140128)
...
Update `bytearray` to contain a `bytes` and provide a zero-copy path to
"extract" the `bytes`. This allows making several code paths more efficient.
This does not move any codepaths to make use of this new API. The documentation
changes include common code patterns which can be made more efficient with
this API.
---
When just changing `bytearray` to contain `bytes` I ran pyperformance on a
`--with-lto --enable-optimizations --with-static-libpython` build and don't see
any major speedups or slowdowns with this; all seems to be in the noise of
my machine (Generally changes under 5% or benchmarks that don't touch
bytes/bytearray).
Co-authored-by: Victor Stinner <vstinner@python.org >
Co-authored-by: Maurycy Pawłowski-Wieroński <5383+maurycy@users.noreply.github.com >
2025-11-13 13:19:44 +00:00
Serhiy Storchaka
2fbd396666
gh-140601: Refactor ElementTree.iterparse() tests (GH-141499)
...
Split existing tests on smaller methods and move them to separate class.
Rename variable "content" to "it".
Use BytesIO instead of StringIO.
Add few more tests.
2025-11-13 13:37:01 +02:00
Serhiy Storchaka
d8e6bdc0d0
gh-135801: Add the module parameter to compile() etc (GH-139652)
...
Many functions related to compiling or parsing Python code, such as
compile(), ast.parse(), symtable.symtable(),
and importlib.abc.InspectLoader.source_to_code() now allow to pass
the module name used when filtering syntax warnings.
2025-11-13 13:21:32 +02:00
Shamil
63548b3699
gh-140260: fix data race in _struct module initialization with subinterpreters ( #140909 )
2025-11-13 16:31:31 +05:30
Gregory P. Smith
781cc68c3c
gh-137109: refactor warning about threads when forking ( #141438 )
...
* gh-137109: refactor warning about threads when forking
This splits the OS API specific functionality to get the number of threads out
from the fallback Python method and warning raising code itself. This way the
OS APIs can be queried before we've run
`os.register_at_fork(after_in_parent=...)` registered functions which
themselves may (re)start threads that would otherwise be detected.
This is best effort. If the OS APIs are either unavailable or fail, the
warning generating code still falls back to looking at the Python threading
state after the CPython interpreter world has been restarted and the
after_in_parent calls have been made. The common case for most Linux and macOS
environments should work today.
This also lines up with the existing TODO refactoring, we may choose to expose
this API to get the number of OS threads in the `os` module in the future.
* NEWS entry
* avoid "function-prototype" compiler warning?
2025-11-12 18:15:16 -08:00
Peter Bierma
26b7df2430
gh-141004: Document PyRun_InteractiveOneObject (GH-141405)
2025-11-12 17:52:56 -05:00
Michael Cho
dc0987080e
gh-124111: Fix TCL 9 thread detection (GH-128103)
2025-11-12 22:16:58 +00:00
Russell Keith-Magee
558936bec1
gh-141442: Add escaping to iOS testbed arguments ( #141443 )
...
Xcode concatenates the test argument array, losing quoting in the process.
2025-11-13 05:41:26 +08:00
Mikhail Efimov
35ed3e4ced
gh-140936: Fix JIT assertion crash at finalization if some generator is alive (GH-140969)
2025-11-12 19:04:02 +00:00
Savannah Ostrowski
1f381a579c
Add details about JIT build infrastructure and updating dependencies to Tools/jit ( #141167 )
2025-11-12 18:26:50 +00:00
Bob Kline
fbcac79951
gh-141412: Use reliable target URL for urllib example (GH-141428)
...
The endpoint used for demonstrating reading URLs is no longer
stable. This change substitutes a target over which we have more
control.
2025-11-12 12:25:23 -06:00
Savannah Ostrowski
d162c42790
GH-140479: Update JIT builds to use LLVM 21 ( #140973 )
2025-11-12 18:09:25 +00:00
Peter Bierma
9cd5427d96
gh-141004: Document PyType_SUPPORTS_WEAKREFS (GH-141408)
...
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com >
2025-11-12 11:38:17 -05:00
Stan Ulbrych
f1330b35b8
gh-141004: Document Py_MATH_{E, PI, TAU} constants ( #141373 )
2025-11-12 17:37:54 +01:00
M Bussonnier
2ac738d325
gh-132657: add regression test for PySet_Contains with unhashable type ( #141411 )
2025-11-12 20:50:08 +05:30
Stan Ulbrych
88aeff8eab
gh-87710: Update mime type for `.ai` ( #141239 )
2025-11-12 16:22:01 +02:00
yihong
f963864cb5
gh-141464: a typo in profiling sampling when can not run warning in linux ( #141465 )
2025-11-12 14:45:43 +02:00
Sergey B Kirpichev
e2026731f5
gh-141004: soft-deprecate Py_INFINITY macro ( #141033 )
...
Co-authored-by: Victor Stinner <vstinner@python.org >
2025-11-12 13:44:49 +01:00
Rani Pinchuk
c6f3dd6a50
gh-98896: resource_tracker: use json&base64 to allow arbitrary shared memory names (GH-138473)
2025-11-12 13:35:01 +01:00
Jacob Austin Lincoln
70748bdbea
gh-131116: Fix inspect.getdoc() to work with cached_property objects (GH-131165)
2025-11-12 10:07:21 +00:00
Sergey B Kirpichev
23d85a2a3f
gh-141042: fix sNaN's packing for mixed floating-point formats ( #141107 )
2025-11-12 11:06:29 +01:00
Cody Maloney
7d54374f9c
gh-141311: Avoid assertion in BytesIO.readinto() (GH-141333)
...
Fix error in assertion which causes failure if pos is equal to PY_SSIZE_T_MAX.
Fix undefined behavior in read() and readinto() if pos is larger that the size
of the underlying buffer.
2025-11-12 11:57:05 +02:00
Sergey B Kirpichev
20f53df07d
gh-141370: document undefined behavior of Py_ABS() (GH-141439)
2025-11-12 11:50:44 +02:00
Cody Maloney
6f988b08d1
gh-85524: Raise "UnsupportedOperation" on FileIO.readall ( #141214 )
...
io.UnsupportedOperation is a subclass of OSError and recommended by
io.IOBase for this case; matches other read methods on io.FileIO.
2025-11-12 10:37:48 +01:00
Petr Viktorin
909f76dab9
gh-141376: Rename _AsyncioDebug to _Py_AsyncioDebug (GH-141391)
2025-11-12 09:42:56 +01:00
Mark Byrne
35908265b0
gh-75593: Add support of bytes and path-like paths in wave.open() (GH-140951)
2025-11-12 10:20:55 +02:00
Kumar Aditya
f1b7961ccf
GH-116946: revert eliminate the need for the GC in the _thread.lock and _thread.RLock ( #141448 )
...
Revert "GH-116946: eliminate the need for the GC in the `_thread.lock` and `_thread.RLock` (#141268 )"
This reverts commit fbebca289d .
2025-11-12 07:21:43 +00:00
Kumar Aditya
ef474cfafb
gh-103847: fix cancellation safety of asyncio.create_subprocess_exec ( #140805 )
2025-11-12 10:47:38 +05:30
Sergey Miryanov
fbebca289d
GH-116946: eliminate the need for the GC in the _thread.lock and _thread.RLock ( #141268 )
2025-11-12 10:29:48 +05:30
Adam Turner
9ce99c6c19
GH-137618: Require Python 3.10 to Python 3.15 for PYTHON_FOR_REGEN (GH-137619)
...
* Require Python 3.11 to Python 3.15 for PYTHON_FOR_REGEN
* NEWS
* keep allowing python 3.10
---------
Co-authored-by: Gregory P. Smith <greg@krypto.org >
2025-11-12 00:53:21 +00:00
Alejandro Cabello Jiménez
df6676549c
gh-137928: remove redundant size validation in multiprocessing.heap (GH-137929)
...
remove redundant size check, malloc does it
---------
Co-authored-by: Gregory P. Smith <greg@krypto.org >
2025-11-12 00:36:43 +00:00
Jan-Eric Nitschke
0e88be6f55
gh-138621: Increase test coverage for csv.DictReader and csv.Sniffer (GH-138622)
...
* Increase test coverage for csv.DictReader and csv.Sniffer
Previously there were no tests for the DictReader fieldnames
setter, the case where a StopIteration was encountered when trying
to determine the fieldnames from the content or the case where
Sniffer could not find a delimiter.
* Revert whitespace change to comment
* Add a test that csv.Sniffer.has_header checks up to 20 rows
* Replace name and age with letter and offset
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com >
* Address review comment
---------
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com >
Co-authored-by: Gregory P. Smith <68491+gpshead@users.noreply.github.com >
2025-11-12 00:32:26 +00:00
Maurycy Pawłowski-Wieroński
0d7b48a8f5
gh-137952: update csv.Sniffer().has_header() docs to describe the actual off-by-onish behavior (GH-137953)
...
* checks 21, not 20
* Say "header" instead of "first row" to disambiguate per review.
---------
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com >
Co-authored-by: Maurycy Pawłowski-Wieroński <maurycy@maurycy.com >
2025-11-12 00:03:14 +00:00
yihong
f5c2a41f9a
gh-138775: fix handle python -m base64 stdin correct with EOF signal (GH-138776)
...
* fix: handle stdin correct with EOF single.
* fix: flollow the comments when pipe stdin use buffer
* Apply suggestions from code review
* fix: apply review comments in Lib/base64.py
* fix: address comments
* Reword comment and NEWS entry.
---------
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com >
Co-authored-by: Peter Bierma <zintensitydev@gmail.com >
Co-authored-by: Gregory P. Smith <greg@krypto.org >
2025-11-11 23:47:57 +00:00
Serhiy Storchaka
4359706ac8
gh-120950: Fix overflow in math.log() with large int-like argument (GH-121011)
...
Handling of arbitrary large int-like argument is now consistent with
handling arbitrary large int arguments.
2025-11-12 00:27:13 +02:00
J Berg
9e7340cd3b
gh-139462: Make the ProcessPoolExecutor BrokenProcessPool exception report which child process terminated (GH-139486)
...
Report which process terminated as cause of BPE
2025-11-11 22:09:58 +00:00
Serhiy Storchaka
7906f4d96a
gh-132686: Add parameters inherit_class_doc and fallback_to_class_doc for inspect.getdoc() (GH-132691)
2025-11-12 00:01:25 +02:00
Adam Turner
c744ccb2c9
GH-139596: Cease caching config.cache & ccache in GH Actions (GH-139623)
...
* Cease caching config.cache in GH Actions\
* Remove ccache action
2025-11-11 13:51:22 -08:00
Mohsin Mehmood
af80fac425
gh-141314: Fix TextIOWrapper.tell() assertion failure with standalone carriage return (GH-141331)
...
The assertion was checking wrong variable (skip_back vs skip_bytes).
2025-11-11 23:49:54 +02:00
Peter Bierma
37e2762ee1
gh-141004: Document PyBytes_Repr and PyBytes_DecodeEscape (GH-141407)
...
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com >
2025-11-11 15:32:54 -05:00
Alper
c13b59204a
gh-116738: use PyMutex in lzma module ( #140711 )
...
Co-authored-by: Kumar Aditya <kumaraditya@python.org >
2025-11-12 02:01:55 +05:30
Peter Bierma
2befce86e6
gh-141004: Document PyFile_OpenCode and PyFile_OpenCodeObject (GH-141413)
...
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com >
2025-11-11 15:31:29 -05:00
Alper
298e9074cd
gh-140476: optimize PySet_Add for frozenset in free-threading ( #140440 )
...
Avoids critical section in `PySet_Add` when adding items to newly created frozensets.
Co-authored-by: Kumar Aditya <kumaraditya@python.org >
2025-11-12 01:57:21 +05:30
Aniket
b5196fa15a
gh-137339: Clarify host and port parameter behavior in smtplib.SMTP{_SSL} initialization ( #137340 )
...
This also documents the previously undocumented default_port parameter.
Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com >
2025-11-11 15:25:26 -05:00
Mikhail Efimov
2fb2b82161
gh-141367: Use actual SPECIALIZATION_THRESHOLD value in specialization related test (GH-141417)
2025-11-11 20:16:46 +00:00
Steve Dower
336154f4b0
Add documentation for Python install manager's install_dir, global_dir and download_dir (GH-140223)
2025-11-11 20:02:49 +00:00
Marco Barbosa
c903d76832
gh-139533: fix refs to code without proper markups on turtledemo doc (GH-139534)
...
gh-139533: fix refs to code without proper markups on turtledemo documentation
2025-11-11 11:35:55 -08:00
yihong
0f09bda643
gh-140193: Forward port test_exec_set_nomemory_hang from 3.13 (GH-140187)
...
* chore: test_exec_set_nomemory_hang from 3.13
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
* fix: apply comments
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
* Update Lib/test/test_exceptions.py
Co-authored-by: Peter Bierma <zintensitydev@gmail.com >
* Update Lib/test/test_exceptions.py
Co-authored-by: Peter Bierma <zintensitydev@gmail.com >
* fix: windows too long name 60 times is enough
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
---------
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
Co-authored-by: Peter Bierma <zintensitydev@gmail.com >
2025-11-11 11:27:56 -08:00