summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* gh-117376: Make code objects use deferred reference counting (#117823)Sam Gross2024-04-163-3/+38
| | | | | | We want code objects to use deferred reference counting in the free-threaded build. This requires them to be tracked by the GC, so we set `Py_TPFLAGS_HAVE_GC` in the free-threaded build, but not the default build.
* gh-112069: Make setiter_iternext to be thread-safe (gh-117935)Donghee Na2024-04-161-12/+17
|
* Docs: Add classes to C API return value annotations (#117926)Hugo van Kemenade2024-04-161-9/+11
| | | | Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
* gh-117683: Fix test_free_different_thread failures with GIL disabled (#117685)Sam Gross2024-04-161-2/+6
|
* gh-115178: Add Counts of UOp Pairs to pystats (GH-115181)Jeff Glass2024-04-166-4/+26
|
* GH-115776: Static object are immortal, so mark them as such. (GH-117673)Mark Shannon2024-04-162-10/+9
|
* gh-117691: Add an appropriate stacklevel for PEP-706 tarfile deprecation ↵Alex Waygood2024-04-163-1/+31
| | | | warnings (GH-117872)
* gh-117613: Argument Clinic: ensure that 'defining_class' params are ↵neonene2024-04-164-6/+17
| | | | positional-only (#117781)
* gh-102402: Fix floating point math issue by using `time.time_ns()` in ↵Douglas Thor2024-04-164-7/+53
| | | | `logging.LogRecord` (GH-102412)
* gh-117797: Improve `test_descr.test_not_implemented` (#117798)Nikita Sobolev2024-04-161-8/+17
|
* gh-117613: Enhance test_clinic @defining_class tests (#117896)Victor Stinner2024-04-167-21/+122
|
* gh-77102: site: try utf-8 and fallback to locale encoding when reading .pth ↵Inada Naoki2024-04-164-26/+49
| | | | file (#117802)
* gh-76785: Fix Windows Refleak in test_interpreters (gh-117913)Eric Snow2024-04-162-6/+7
| | | gh-117662 introduced some refleaks, or, rather, exposed some existing refleaks. The leaks are coming when test.support.os_helper is imported in a "legacy" interpreter. I've updated test.test_interpreters.utils to avoid importing os_helper, which fixes the leaks. I'll address the root cause separately.
* gh-117804: Document how to suppress PGO unprofiled source warnings (#117859)Erlend E. Aasland2024-04-151-0/+9
|
* Docs: add link roles with Sphinx extlinks (#117850)Hugo van Kemenade2024-04-1562-183/+147
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-109975: Copyedit "What's New in Python 3.13" (#117902)Hugo van Kemenade2024-04-151-115/+125
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-117688: Fix deadlock in test_no_stale_references with GIL disabled (#117720)Sam Gross2024-04-151-11/+21
| | | | | | | Check `my_object_collected.wait()` in a loop to give the main thread a chance to merge the reference count fields. Additionally, call `my_object_collected.set()` in a background thread to avoid deadlocking when the destructor is called asynchronously via the eval breaker within the body of of `my_object_collected.wait()`.
* Docs: make the `whatsnew-typing-py312` anchor point to things that were new ↵Alex Waygood2024-04-151-2/+2
| | | | in the typing module (#117904)
* gh-117657: Quiet more TSAN warnings due to incorrect modeling of ↵mpage2024-04-151-2/+2
| | | | compare/exchange (#117830)
* gh-117657: Quiet TSAN warning about a data race between `start_the_world()` ↵mpage2024-04-151-1/+2
| | | | | | | | and `tstate_try_attach()` (#117828) TSAN erroneously reports a data race between the `_Py_atomic_compare_exchange_int` on `tstate->state` in `tstate_try_attach()` and the non-atomic load of `tstate->state` in `start_the_world`. The `_Py_atomic_compare_exchange_int` fails, but TSAN erroneously treats it as a store.
* gh-117657: Add TSAN suppressions for the free-threaded build (#117736)mpage2024-04-155-7/+69
| | | | | Additionally, reduce the iterations for a few weakref tests that would otherwise take a prohibitively long amount of time (> 1 hour) when TSAN is enabled and the GIL is disabled.
* gh-115532: Minor tweaks to kde() (gh-117897)Raymond Hettinger2024-04-152-12/+25
|
* gh-115664: Reorganize versionadded directives for -X options (GH-116304)Serhiy Storchaka2024-04-151-34/+45
| | | | Add the versionadded directives just under the description of the corresponding option.
* gh-112278: Improve error handling in wmi module and tests (GH-117818)Steve Dower2024-04-152-21/+30
|
* gh-90329: Add _winapi.GetLongPathName and GetShortPathName and use in venv ↵Steve Dower2024-04-156-3/+328
| | | | to reduce warnings (GH-117817)
* gh-117889: Fix PGO test in test_peg_generator (#117893)Victor Stinner2024-04-152-3/+2
| | | | | | Reuse support.check_cflags_pgo() in test_peg_generator to check for PGO build. Log PGO_PROF_USE_FLAG in test.pythoninfo.
* GH-117750: When clearing object's dict, clear inline values but leave dict ↵Mark Shannon2024-04-153-15/+31
| | | | attached (GH-117808)
* Add 'The Python 2.3 Method Resolution Order' (#116435)Hugo van Kemenade2024-04-158-11/+679
|
* gh-117694: Improve tests for PyEval_EvalCodeEx() (GH-117695)Serhiy Storchaka2024-04-152-91/+114
|
* gh-117755: Skip test_io.test_constructor() on s390x (#117801)Victor Stinner2024-04-151-1/+11
| | | | | The test allocates 9 223 372 036 854 775 807 bytes (0x7fffffffffffffff) and mimalloc fails with a division by zero on s390x.
* gh-117826: Remove lookdict_index from delitemif_lock_held (gh-117869)Donghee Na2024-04-151-5/+2
|
* docs: typo in 3.13 release notes (#117866)Galen Rice2024-04-141-1/+1
|
* gh-117636: Remove redundant type check in `os.path.join()` (#117638)Nice Zombies2024-04-144-6/+5
|
* Doc: mark up classes, attributes, parameters, and methods in dataclasses.rst ↵Erlend E. Aasland2024-04-141-85/+85
| | | | (#117820)
* gh-115692: Add tests to increase `json` coverage (#115693)Hugo van Kemenade2024-04-144-10/+35
| | | | Co-authored-by: Petr Viktorin <encukou@gmail.com>
* gh-117348: restore import time performance of configparser (#117703)Jason R. Coombs2024-04-142-13/+13
| | | Reduces import time by over 50% (10431µs vs 4350µs on Apple M3 Pro).
* dataclasses docs: add some link anchors (#117601)Jelle Zijlstra2024-04-141-0/+8
|
* Autoconf: aarch64-apple-darwin/clang is now a tier 1 platform (#117861)Erlend E. Aasland2024-04-142-4/+4
| | | See also python/pep#3705
* Simpler example of shallow dict export of a dataclass (#117812)Gouvernathor2024-04-141-1/+1
|
* Tweak wording for dataclasses.replace (gh-117758)Gouvernathor2024-04-141-2/+2
|
* GH-115060: Speed up `pathlib.Path.glob()` by omitting initial `stat()` (#117831)Barney Gale2024-04-136-10/+20
| | | | | | | | Since 6258844c, paths that might not exist can be fed into pathlib's globbing implementation, which will call `os.scandir()` / `os.lstat()` only when strictly necessary. This allows us to drop an initial `self.is_dir()` call, which saves a `stat()`. Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
* gh-96398: Fix mpicc check in configure.ac (#117857)Erlend E. Aasland2024-04-132-2/+2
|
* gh-68583: webbrowser: replace `getopt` with `argparse`, add long options ↵Hugo van Kemenade2024-04-134-55/+135
| | | | (#117047)
* gh-102247: http: support rfc9110 status codes (GH-117611)Michiel W. Beijen2024-04-136-78/+94
| | | | | | | | | | | | | | | | | | | | rfc9110 obsoletes the earlier rfc 7231. This document also includes some status codes that were previously only used for WebDAV and assigns more generic names to these status codes. ref: https://www.rfc-editor.org/rfc/rfc9110.html#name-changes-from-rfc-7231 - http.HTTPStatus.CONTENT_TOO_LARGE (413, previously REQUEST_ENTITY_TOO_LARGE) - http.HTTPStatus.URI_TOO_LONG (414, previously REQUEST_URI_TOO_LONG) - http.HTTPStatus.RANGE_NOT_SATISFYABLE (416, previously REQUEST_RANGE_NOT_SATISFYABLE) - http.HTTPStatus.UNPROCESSABLE_CONTENT (422, previously UNPROCESSABLE_ENTITY) The new constants are added to http.HTTPStatus and the old constant names are preserved for backwards compatibility. References in documentation to the obsoleted rfc 7231 are updated
* gh-117840: Fix indent to fix shlex syntax highlighting (#117843)Hugo van Kemenade2024-04-131-15/+15
|
* gh-114466: explicitly define heap invariant (#117778)Shantanu2024-04-131-2/+3
| | | | | I think the choice of wording in these docs is great and doesn't need to change. However, it could be useful to explicitly define this term / the cost of doing so seems relatively low.
* gh-96398: Detect GCC compatible compilers in configure (#117825)Erlend E. Aasland2024-04-132-1/+40
| | | | Introduce a cached variable $ac_cv_gcc_compat and set it to 'yes' if the C preprocessor defines the __GNUC__ macro.
* gh-94673: Clarify About Runtime State Related to Static Builtin Types ↵Eric Snow2024-04-122-1/+43
| | | | | | | | (gh-117761) Guido pointed out to me that some details about the per-interpreter state for the builtin types aren't especially clear. I'm addressing that by: * adding a comment explaining that state * adding some asserts to point out the relationship between each index and the interp/global runtime state
* GH-117727: Speed up `pathlib.Path.iterdir()` by using `os.scandir()` (#117728)Barney Gale2024-04-122-20/+8
| | | | | Replace use of `os.listdir()` with `os.scandir()`. Forgo setting `_drv`, `_root` and `_tail_cached`, as these usually aren't needed. Use `os.DirEntry.path` to set `_str`.
* GH-115060: Speed up `pathlib.Path.glob()` by not scanning literal parts ↵Barney Gale2024-04-124-11/+42
| | | | | | | | | (#117732) Don't bother calling `os.scandir()` to scan for literal pattern segments, like `foo` in `foo/*.py`. Instead, append the segment(s) as-is and call through to the next selector with `exists=False`, which signals that the path might not exist. Subsequent selectors will call `os.scandir()` or `os.lstat()` to filter out missing paths as needed.