summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-90241: Clarify documentation for PyUnicode_FSConverter and ↵Serhiy Storchaka2025-01-062-11/+36
| | | | | | PyUnicode_FSDecoder (GH-128451) Co-authored-by: Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* gh-111178: fix UBSan failures in `Objects/descrobject.c` (GH-128245)Bénédikt Tran2025-01-061-7/+10
| | | fix UBSan failures for `propertyobject`
* gh-77214: Update outdated documentation for numeric PyArg_Parse formats ↵Serhiy Storchaka2025-01-061-8/+14
| | | | (GH-128454)
* gh-128089: Add PYC magic number for VALUE_WITH_FAKE_GLOBALS (#128097)Jelle Zijlstra2025-01-061-1/+1
| | | | Assign 3610 PYC magic number to VALUE_WITH_FAKE_GLOBALS format of annotationlib.
* gh-102471: convert decimal module to use PyLong_Export API (PEP 757) (#128267)Sergey B Kirpichev2025-01-061-24/+27
|
* gh-128519: Align the docstring of untokenize() to match the docs (#128521)Tomas R.2025-01-061-10/+4
|
* gh-98188: Fix EmailMessage.get_payload to decode data when CTE value has ↵RanKKI2025-01-065-2/+59
| | | | | | | | | | | extra text (#127547) Up to this point message handling has been very strict with regards to content encoding values: mixed case was accepted, but trailing blanks or other text would cause decoding failure, even if the first token was a valid encoding. By Postel's Rule we should go ahead and decode as long as we can recognize that first token. We have not thought of any security or backward compatibility concerns with this fix. This fix does introduce a new technique/pattern to the Message code: we look to see if the header has a 'cte' attribute, and if so we use that. This effectively promotes the header API exposed by HeaderRegistry to an API that any header parser "should" support. This seems like a reasonable thing to do. It is not, however, a requirement, as the string value of the header is still used if there is no cte attribute. The full fix (ignore any trailing blanks or blank-separated trailing text) applies only to the non-compat32 API. compat32 is only fixed to the extent that it now ignores trailing spaces. Note that the HeaderRegistry parsing still records a HeaderDefect if there is extra text. Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* Docs: fix `MessageDefect` references in email.policy docs (#128468)Yuki Kobayashi2025-01-052-3/+2
|
* gh-128504: Upgrade doctest to ubuntu-24.04 (#128506)Damien2025-01-051-1/+1
| | | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
* gh-128137: Update PyASCIIObject to handle interned field with the atomic ↵Donghee Na2025-01-053-10/+18
| | | | operation (gh-128196)
* gh-128437: Add `BOLT_COMMON_FLAGS` with `-update-debug-sections` (gh-128455)Zanie Blue2025-01-052-4/+32
| | | | | Add `BOLT_COMMON_FLAGS` with `-update-debug-sections` Co-authored-by: Gregory Szorc <gregory.szorc@gmail.com>
* gh-115765: Document and enforce Autoconf 2.72 requirement (#128502)Erlend E. Aasland2025-01-042-3/+6
|
* gh-127553: Remove outdated TODO comment in _pydatetime (#127564)Beomsoo Kim2025-01-041-1/+0
|
* gh-127954: Document PyObject_DelItemString (#127986)RUANG (James Roy)2025-01-041-0/+7
|
* Docs: amend json.dump() post gh-128482 (#128489)Erlend E. Aasland2025-01-041-5/+8
|
* gh-126719: Clarify math.fmod docs (#127741)Stan Ulbrych2025-01-041-1/+2
| | | Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* pathlib tests: create `walk()` test hierarchy without using class under test ↵Barney Gale2025-01-042-39/+58
| | | | | | | | (#128338) In the tests for `pathlib.Path.walk()`, avoid using the path class under test (`self.cls`) in test setup. Instead we use `os` functions in `test_pathlib`, and direct manipulation of `DummyPath` internal data in `test_pathlib_abc`.
* Docs: mark up json.dump() using parameter list (#128482)Erlend E. Aasland2025-01-041-48/+70
| | | Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
* GH-127381: pathlib ABCs: remove `PathBase.move()` and `move_into()` (#128337)Barney Gale2025-01-044-153/+148
| | | | | These methods combine `_delete()` and `copy()`, but `_delete()` isn't part of the public interface, and it's unlikely to be added until the pathlib ABCs are made official, or perhaps even later.
* gh-128152: Argument Clinic: ignore pre-processor directives inside C ↵Erlend E. Aasland2025-01-043-0/+15
| | | | comments (#128464)
* Add `check-readthedocs` pre-commit hook (#128453)sobolevn2025-01-041-0/+1
|
* gh-128002: fix many thread safety issues in asyncio (#128147)Kumar Aditya2025-01-043-175/+951
| | | | | | * Makes `_asyncio.Task` and `_asyncio.Future` thread-safe by adding critical sections * Add assertions to check for thread safety checking locking of object by critical sections in internal functions * Make `_asyncio.all_tasks` thread safe when eager tasks are used * Add a thread safety test
* gh-125985: Fix `cmodule_function()` scaling benchmark (#128460)Sam Gross2025-01-031-3/+11
| | | | | | | | | | | Add a separate benchmark that measures the effect of `_PyObject_LookupSpecial()` on scaling. In the process of cleaning up the scaling benchmarks for inclusion, I unintentionally changed the "cmodule_function" benchmark to pass an `int` to `math.floor()` instead of a `float`, which causes it to use the `_PyObject_LookupSpecial()` code path. `_PyObject_LookupSpecial()` has its own scaling issues that we want to measure separately from calling a function on a C module.
* gh-128354: Consistently use LIBS over LDFLAGS in library build checks (#128359)Zanie Blue2025-01-032-43/+41
|
* gh-128456: Use '-reorder-functions=cdsort' for BOLT builds (#128457)Zanie Blue2025-01-032-2/+2
| | | 'hfsort+' is deprecated in favor of 'cdsort'.
* gh-128400: Only show the current thread in `faulthandler` if the GIL is ↵Peter Bierma2025-01-034-5/+45
| | | | disabled (GH-128425)
* gh-127903: Fix a crash on debug builds when calling ↵Alexander Shadchin2025-01-033-3/+15
| | | | `Objects/unicodeobject::_copy_characters`` (#127876)
* gh-89083: improve UUIDv8 uniqueness tests (GH-128149)Bénédikt Tran2025-01-031-6/+10
| | | improve UUIDv8 uniqueness tests
* gh-111178: fix UBSan failures in `Modules/zlibmodule.c` (GH-128252)Bénédikt Tran2025-01-031-5/+9
|
* gh-111178: fix UBSan failures in `Objects/tupleobject.c` (GH-128251)Bénédikt Tran2025-01-031-14/+20
| | | fix UBSan failures for `_PyTupleIterObject`
* gh-111178: fix UBSan failures in `Objects/enumobject.c` (GH-128246)Bénédikt Tran2025-01-031-22/+35
| | | | * fix UBSan failures for `enumobject` * fix UBSan failures for `reversedobject`
* gh-111178: fix UBSan failures in `Modules/curses*.c` (GH-128244)Bénédikt Tran2025-01-032-71/+114
| | | | | * fix UBSan failures in `_cursesmodule.c` * fix UBSan failures in `_curses_panel.c` * suppress an unused return value
* gh-111178: fix UBSan failures in `Modules/_csv.c` (GH-128243)Bénédikt Tran2025-01-031-28/+48
| | | Also: suppress unused return values
* gh-112015: Implement `ctypes.memoryview_at()` (GH-112018)Rian Hunter2025-01-036-1/+120
| | | | | Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-authored-by: Petr Viktorin <encukou@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-128317: Highlight today in colour in calendar CLI output (#128318)Hugo van Kemenade2025-01-035-13/+85
| | | | Co-authored-by: Peter Bierma <zintensitydev@gmail.com>
* gh-127787: refactor helpers for `PyUnicodeErrorObject` internal interface ↵Bénédikt Tran2025-01-032-155/+293
| | | | | | | | | | | | | | | | | | | | | | (GH-127789) - Unify `get_unicode` and `get_string` in a single function. - Allow to retrieve the underlying `object` attribute, its size, and the adjusted 'start' and 'end', all at once. Add a new `_PyUnicodeError_GetParams` internal function for this. (In `exceptions.c`, it's somewhat common to not need all the attributes, but the compiler has opportunity to inline the function and optimize unneeded work away. Outside that file, we'll usually need all or most of them at once.) - Use a common implementation for the following functions: - `PyUnicode{Decode,Encode}Error_GetEncoding` - `PyUnicode{Decode,Encode,Translate}Error_GetObject` - `PyUnicode{Decode,Encode,Translate}Error_{Get,Set}Reason` - `PyUnicode{Decode,Encode,Translate}Error_{Get,Set}{Start,End}`
* gh-115765: Upgrade to GNU Autoconf 2.72 (#128411)Erlend E. Aasland2025-01-038-3104/+4509
|
* gh-128404: Remove `asyncio` from `Lib/test/test_sys_settrace` (#128435)Thomas Grainger2025-01-031-6/+2
|
* gh-127529: Correct asyncio's `accept_connection` behaviour for handling ↵jb21702025-01-033-3/+36
| | | | | `ConnectionAbortedError` (#127532) Co-authored-by: Kumar Aditya <kumaraditya@python.org>
* gh-128104: Remove `Py_STRFTIME_C99_SUPPORT`; require C99-compliant strftime ↵Zanie Blue2025-01-035-27/+10
| | | | (#128106)
* gh-108202: Document calendar.TextCalendar formatting helpers (#127608)Stan Ulbrych2025-01-031-1/+26
| | | | | | | Document the following TextCalendar methods: - formatday() - formatmonthname() - formatweekday() - formatweekheader()
* gh-128133: use relaxed atomics for hash of bytes (#128412)Abhijeet2025-01-031-31/+39
|
* gh-128404: remove asyncio from test_type_params (#128436)Thomas Grainger2025-01-031-5/+2
|
* gh-128426: Mention PySequence_Fast in free-threading C API HOWTO (#128428)Nathan Goldbaum2025-01-031-2/+4
|
* gh-128212: Fix race in `_PyUnicode_CheckConsistency` (GH-128367)Sam Gross2025-01-021-1/+1
| | | | | There was a data race on the utf8 field between `PyUnicode_SET_UTF8` and `_PyUnicode_CheckConsistency`. Use the `_PyUnicode_UTF8()` accessor, which uses an atomic load internally, to avoid the data race.
* gh-128400: Stop-the-world when manually calling `faulthandler` (GH-128422)Peter Bierma2025-01-023-1/+36
|
* Remove asserts that confuse `enum _framestate` with `enum _frameowner` ↵Anders Kaseorg2025-01-021-2/+0
| | | | | | | | | | | | (GH-124148) The `owner` field of `_PyInterpreterFrame` is supposed to be a member of `enum _frameowner`, but `FRAME_CLEARED` is a member of `enum _framestate`. At present, it happens that `FRAME_CLEARED` is not numerically equal to any member of `enum _frameowner`, but that could change in the future. The code that incorrectly assigned `owner = FRAME_CLEARED` was deleted in commit a53cc3f49463e50cb3e2b839b3a82e6bf7f73fee (GH-116687). Remove the incorrect checks for `owner != FRAME_CLEARED` as well.
* gh-128014: Fix passing default='' to the tkinter method wm_iconbitmap() ↵Zhikang Yan2025-01-023-2/+30
| | | | | (GH-128015) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* Revert "Doc: Show object descriptions in the table of contents (#125757)" ↵Hugo van Kemenade2025-01-023-10/+1
| | | | (#128406)
* gh-128404: Remove ``asyncio`` from ``test_builtin`` (#128403)Thomas Grainger2025-01-021-59/+64
| | | Co-authored-by: Kumar Aditya <kumaraditya@python.org>