Victor Stinner
8b5ce31c2b
gh-71810: Fix _PyLong_AsByteArray() undefined behavior ( #138873 )
...
Don't read p[-1] when p is an empty string: when n==0.
2025-09-14 11:25:53 +02:00
Victor Stinner
7168e98c80
gh-129813, PEP 782: Use PyBytesWriter in lzma and zlib ( #138832 )
...
Replace PyBytes_FromStringAndSize(NULL, size) with the new public
PyBytesWriter API.
2025-09-13 19:27:04 +02:00
Victor Stinner
430900d15b
gh-129813, PEP 782: Use PyBytesWriter in _PyBytes_FromList() ( #138837 )
...
Use the new public PyBytesWriter API in:
* _PyBytes_FromHex()
* _PyBytes_FromBuffer()
* _PyBytes_FromList()
* _PyBytes_FromTuple()
* _PyBytes_FromIterator()
Add _PyBytesWriter_ResizeAndUpdatePointer() and
_PyBytesWriter_GetAllocated() helper functions.
2025-09-13 19:23:57 +02:00
Victor Stinner
af386fd361
gh-129813, PEP 782: Use PyBytesWriter in posix extension ( #138829 )
...
Replace PyBytes_FromStringAndSize(NULL, size) and _PyBytes_Resize()
with the new public PyBytesWriter API.
2025-09-13 18:57:46 +02:00
Victor Stinner
703da5e81d
gh-129813, PEP 782: Use PyBytesWriter in memoryview ( #138836 )
...
Replace PyBytes_FromStringAndSize(NULL, size) with the new public
PyBytesWriter API.
2025-09-13 18:36:05 +02:00
Victor Stinner
bb743b684b
gh-129813, PEP 782: Use PyBytesWriter in socket and mmap ( #138831 )
...
Replace PyBytes_FromStringAndSize(NULL, size) and _PyBytes_Resize()
with the new public PyBytesWriter API.
2025-09-13 18:31:26 +02:00
Victor Stinner
06b7891f12
gh-129813, PEP 782: Use Py_GetConstant(Py_CONSTANT_EMPTY_BYTES) ( #138830 )
...
Replace PyBytes_FromStringAndSize(NULL, 0) with
Py_GetConstant(Py_CONSTANT_EMPTY_BYTES). Py_GetConstant() cannot
fail.
2025-09-13 18:30:25 +02:00
Victor Stinner
8fc6ae68b0
gh-129813, PEP 782: Use PyBytesWriter in _PyBytes_DecodeEscape2() ( #138838 )
...
Replace the private _PyBytesWriter API with the new public
PyBytesWriter API.
2025-09-13 18:28:08 +02:00
Victor Stinner
a65236bb39
gh-129813, PEP 782: Use PyBytesWriter in pickle and struct ( #138833 )
...
Replace the private _PyBytesWriter API with the new public
PyBytesWriter API.
2025-09-13 18:26:49 +02:00
Victor Stinner
ca99af3c5e
gh-129813, PEP 782: Use PyBytesWriter in binascii ( #138825 )
...
Replace the private _PyBytesWriter API with the new public
PyBytesWriter API.
2025-09-13 18:25:16 +02:00
Barney Gale
805e3368d6
GH-128520: pathlib ABCs: improve protocol for 'openable' objects ( #134101 )
...
Rename `pathlib._os.magic_open()` to `vfsopen()`. The new name is a bit
less abstract, and it aligns with the `vfspath()` method added in 5dbd27d .
Per discussion on discourse[^1], adjust `vfsopen()` so that the following
methods may be called:
- `__open_reader__()`
- `__open_writer__(mode)`
- `__open_updater__(mode)`
These three methods return readable, writable, and full duplex file objects
respectively. In the 'writer' method, *mode* is either 'a', 'w' or 'x'. In
the 'updater' method, *mode* is either 'r' or 'w'.
In the pathlib ABCs, replace `ReadablePath.__open_rb__()` with
`__open_reader__()`, and replace `WritablePath.__open_wb__()` with
`__open_writer__()`.
[^1]: https://discuss.python.org/t/open-able-objects/90238
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2025-09-12 22:25:18 +01:00
Stan Ulbrych
2e8f64c931
gh-71648: Optimize PNG files (GH-138842)
...
* Only keep > 1 kb savings
2025-09-12 20:13:05 +00:00
Christoph Walcher
220c0a8156
gh-138804: Check type in shlex.quote (GH-138809)
2025-09-12 14:26:21 -04:00
Stan Ulbrych
35e6138d1f
gh-71648: Remove unused image Doc/faq/python-video-icon.png (GH-138841)
2025-09-12 11:16:51 -05:00
Victor Stinner
eec8c98d06
gh-129813, PEP 782: Use PyBytesWriter in _hashopenssl ( #138835 )
...
Replace PyBytes_FromStringAndSize(NULL, size) with the new public
PyBytesWriter API.
2025-09-12 15:39:16 +02:00
Kumar Aditya
ea26f6da39
gh-138661: fix data race in PyCode_Addr2Line ( #138664 )
2025-09-12 18:04:55 +05:30
Victor Stinner
c3fca5d478
gh-129813, PEP 782: Add PyBytesWriter_Format() ( #138824 )
...
Modify PyBytes_FromFormatV() to use the public PyBytesWriter API
rather than the _PyBytesWriter private API.
2025-09-12 14:21:57 +02:00
ivonastojanovic
419441a6e1
Improve permission error messages in pdb and asyncio.tools ( #134290 )
2025-09-12 12:54:04 +01:00
Victor Stinner
adb414044f
gh-129813, PEP 782: Add PyBytesWriter C API ( #138822 )
2025-09-12 13:41:59 +02:00
Victor Stinner
3d521a62e7
gh-138756: Fix leak of inittab memory in PyInitConfig_Free() (GH-138792)
2025-09-12 11:46:02 +02:00
jxes993409
492941459a
gh-138163: skip failures if tests are run with SCHED_BATCH on glibc (GH-138576)
2025-09-12 11:37:53 +02:00
Jan-Eric Nitschke
44991619ba
gh-138669: Increase test coverage for difflib (GH-138670)
2025-09-12 11:33:38 +02:00
Chris Eibl
4f3cab96c1
gh-138801: re-enable pyrepl tests on Windows ( #138802 )
2025-09-12 10:47:43 +03:00
Christoph Walcher
4afa98596e
Remove unused prototype _PyPegen_set_source_in_metadata ( #138810 )
...
Remove unused prototype
2025-09-12 00:40:49 +00:00
Peter Bierma
f96f7c9f5b
Revert "gh-116946: fully implement GC protocol for _tkinter.Tk{app,tt}Object ( #138331 )" ( #138807 )
...
This reverts commit 283380a941 .
2025-09-11 17:05:37 -04:00
Benjamin Peterson
5bd4bf04c4
closes gh-138706: update Unicode to 17.0.0 ( #138719 )
2025-09-11 09:58:39 -07:00
Maurycy Pawłowski-Wieroński
e0f54a608e
gh-138005: Document that CSV skipinitialspace=True and delimiter=' ' require quotation for empty fields ( #138006 )
2025-09-11 18:11:33 +03:00
Alper
32e1e0699f
gh-116738: add multi-threaded tests for resource module on free-threading builds ( #138504 )
2025-09-11 19:08:08 +05:30
Pablo Galindo Salgado
d325cddc6b
gh-138704: Add PermissionError messages to profiling.sampling ( #138705 )
2025-09-11 14:32:08 +01:00
Bénédikt Tran
283380a941
gh-116946: fully implement GC protocol for _tkinter.Tk{app,tt}Object ( #138331 )
2025-09-11 12:59:30 +02:00
Victor Stinner
96dee64c73
gh-138756: Fix memory leak in PyInitConfig_Free() ( #138759 )
...
Clear also memory of PyConfig members.
2025-09-11 10:46:19 +00:00
Cody Maloney
101172486f
gh-138013: Move I/O test infrastructre to test_io.utils ( #138475 )
...
This moves test support code to `test_io.utils` via copy/paste
code movement then adjusts imports as needed
(remove unneded + add all required).
2025-09-11 12:45:30 +02:00
Peter Bierma
1da989be74
gh-138479: Ensure that __typing_subst__ returns a tuple (GH-138482)
...
Raise an exception if __typing_subst__ returns a non-tuple object.
---------
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-09-11 06:39:09 -04:00
Sergey B Kirpichev
011179a79a
gh-71810: Fix corner case (length==0) for int.to_bytes() ( #138739 )
...
```pycon
>>> (0).to_bytes(0, 'big', signed=True)
b''
>>> (-1).to_bytes(0, 'big', signed=True) # was b''
Traceback (most recent call last):
File "<python-input-0>", line 1, in <module>
(-1).to_bytes(0, 'big', signed=True)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
OverflowError: int too big to convert
```
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-09-11 12:30:53 +02:00
yihong
a1707e4516
gh-138081: fix some dead links in InternalDocs ( #138082 )
2025-09-11 10:54:16 +02:00
Bénédikt Tran
4978bfca10
gh-116946: add Py_TPFLAGS_IMMUTABLETYPE to several internal types ( #138582 )
...
The following types are now immutable:
* `_curses_panel.panel`,
* `[posix,nt].ScandirIterator`, `[posix,nt].DirEntry` (exposed in `os.py`),
* `_remote_debugging.RemoteUnwinder`,
* `_tkinter.Tcl_Obj`, `_tkinter.tkapp`, `_tkinter.tktimertoken`,
* `zlib.Compress`, and `zlib.Decompress`.
2025-09-11 09:56:20 +02:00
Stephen Morton
859aecc33b
gh-138432: Improved invalid path checking in zoneinfo.reset_tzpath() (GH-138433)
...
* Improve error messages for path-like relative paths and path-like bytes paths.
* TZPATH is now always a tuple of strings.
2025-09-11 10:08:53 +03:00
Adam Turner
d0c9943869
GH-138562: Remove `sort()` from the common sequence methods in the data model ( #138563 )
2025-09-10 15:52:57 +00:00
Hugo van Kemenade
6e78a539bf
gh-138744: GitHub Actions: pin to windows-2022 ( #138743 )
2025-09-10 17:28:27 +03:00
Jelle Zijlstra
7a6fd4a45d
gh-138349: Fix crash when combining module-level annotation and listcomp ( #138363 )
2025-09-10 15:18:39 +02:00
sobolevn
f5fa336579
gh-138729: Cover inspect.formatannotationrelativeto with tests ( #138730 )
2025-09-10 16:06:16 +03:00
sobolevn
cf8f36fe0a
gh-138716: Fix assert a := b syntax error message ( #138718 )
2025-09-10 16:05:16 +03:00
Dung Nguyen
1ce05537a3
gh-138008: Fix segfaults in _ctypes due to invalid argtypes (GH-138285)
...
Signed-off-by: Nguyen Viet Dung <29406816+magnified103@users.noreply.github.com>
Signed-off-by: Nguyen Viet Dung <dung@ekluster.com>
Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
Co-authored-by: Yongzi Li <204532581+Yzi-Li@users.noreply.github.com>
2025-09-10 14:01:19 +02:00
Bénédikt Tran
d54b1091d4
gh-136006: fix Py_NAN expansion on Solaris systems ( #136575 )
...
On Solaris, `Py_NAN` may expand as a function address instead of a floating-point number.
This amends commit 7a3b03509e .
2025-09-10 11:11:04 +02:00
Bénédikt Tran
b9c50b4988
gh-134531: use EVP_MAC API for _hashlib.HMAC when possible ( #135235 )
...
Use `EVP_MAC` API for HMAC on builds with OpenSSL 3.0 or later.
2025-09-10 10:35:01 +02:00
Bénédikt Tran
d6d054853d
gh-137371: refactor and fortify test.support.hashlib_helper ( #137375 )
2025-09-10 09:14:38 +02:00
Dino Viehland
04c7f36205
gh-138230: Remove dead code in code gen - codegen_check_annotation is only calle… ( #138228 )
...
Remove dead code in code gen - codegen_check_annotation is only called if future annotations are enabled, and if future annotations are enabled it does nothing.
2025-09-09 18:17:00 -07:00
Pablo Galindo Salgado
766e7f150a
gh-135953: Fix refleak in cache method ( #138721 )
2025-09-10 00:08:09 +00:00
László Kiss Kollár
137519a38c
gh-135953: Add flamegraph reporter to sampling profiler ( #138715 )
2025-09-09 23:06:45 +01:00
sobolevn
6bc65c30ff
gh-136616: Improve assert syntax error messages ( #136653 )
2025-09-09 23:26:22 +03:00