summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Python 3.14.0a0Thomas Wouters2024-05-087-12/+143
|
* Python 3.13.0b1v3.13.0b1Thomas Wouters2024-05-08162-499/+1861
|
* gh-118671: Updated dead ActiveState links (#118730)trag1c2024-05-0812-14/+14
| | | | | Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
* Regen ``Doc/requirements-oldest-sphinx.txt`` (#118736)Kirill Podoprigora2024-05-081-3/+3
| | | Regen dependencies
* gh-118746: Fix crash in frame_getlocals and _PyFrame_GetLocals (#118748)Tian Gao2024-05-081-0/+18
| | | | We don't know how to create an unoptimized frame with f_locals == NULL, but they are seen in the wild, and this fixes the crash.
* gh-118610: Centralize power caching in `_pylong.py` (#118611)Tim Peters2024-05-082-67/+113
| | | | | A new `compute_powers()` function computes all and only the powers of the base the various base-conversion functions need, as efficiently as reasonably possible (turns out that invoking `**`is needed at most once). This typically gives a few % speedup, but the primary point is to simplify the base-conversion functions, which no longer need their own, ad hoc, and less efficient power-caching schemes. Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* Revert to free macOS runners (#118744)Łukasz Langa2024-05-071-2/+2
|
* gh-118734: Fixes Windows build when Use_TIER2 is unspecified (#118735)Steve Dower2024-05-074-3/+5
|
* gh-109975: Make a rough editorial pass over What's New (#118711)T. Wouters2024-05-071-509/+542
| | | | | | Make a rough editorial pass over Python 3.13's What's New document. Add the release highlights, remove or merge some duplicated entries, and reorder some of the sections (removals should really go before future deprecations).
* gh-118518: Check for perf version and not kernel version in ↵Pablo Galindo Salgado2024-05-071-6/+12
| | | | test_perf_profiler (#118640)
* gh-118729: Temporarily skip `test_multiprocessing_pool_circular_import` ↵Sam Gross2024-05-071-1/+4
| | | | | | | (#118732) The `pool_in_threads.py` test file may crash in free-threaded builds, which can lead to the Tsan test hanging. Skip it for now until we fix the underlying issue.
* gh-118650: Document `Enum._repr_*` reservation exclusion (GH-118698)chrysn2024-05-071-1/+7
|
* gh-118518: Improve perf docs (#118708)Pablo Galindo Salgado2024-05-071-22/+48
|
* gh-111201: Allow pasted code to contain multiple statements in the REPL ↵Pablo Galindo Salgado2024-05-076-9/+33
| | | | | (#118712) Co-authored-by: Łukasz Langa <lukasz@langa.pl>
* bpo-115773: Use the right variable name based on the field we are trying ↵Abhinav Upadhyay2024-05-071-2/+2
| | | | | read (#118591) Co-authored-by: Pablo Galindo Salgado <Pablogsal@gmail.com>
* gh-118682: Revert forcing str commands, allow class commands in pyrepl (#118709)Lysandros Nikolaou2024-05-072-3/+16
|
* gh-118660: Add second type parameter to (Async)ContextManager (#118681)Jelle Zijlstra2024-05-074-7/+42
| | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Remove Python 3.5 hardcoded version in the tutorial appendix (GH-117612)Kerim Kabirov2024-05-071-2/+2
|
* gh-111201: Allow bracketed paste to work (GH-118700)Pablo Galindo Salgado2024-05-074-0/+61
|
* Remove several unused imports in `_pyrepl` (#118668)Nikita Sobolev2024-05-072-3/+0
|
* gh-66410: Do not stringify arguments of Tkinter callback (GH-98592)Serhiy Storchaka2024-05-077-25/+60
| | | | | | | | | Callbacks registered in the tkinter module now take arguments as various Python objects (int, float, bytes, tuple), not just str. To restore the previous behavior set tkinter module global wantobject to 1 before creating the Tk object or call the wantobject() method of the Tk object with argument 1. Calling it with argument 2 restores the current default behavior.
* gh-118090: Improve error message for empty type param brackets (GH-118091)Nikita Sobolev2024-05-074-800/+1016
|
* gh-118518: Rename `PYTHONPERFJITSUPPORT` and `-X perfjit` with underscores ↵Hugo van Kemenade2024-05-078-20/+20
| | | | (#118693)
* gh-118310: Fix documentation for `enum.Enum.__new__` (GH-118311)Momo Eissenhauer2024-05-071-5/+7
| | | | | | | The provided example was incorrect: - The example enum was missing the `int` mixin as implied by the context - The value of `int('1a', 16)` was incorrectly given as 17 (should be 26)
* gh-109653: What's new: Note improved import times for several stdlib modules ↵Alex Waygood2024-05-071-0/+9
| | | | in Python 3.13 (#118697)
* gh-118418: Deprecate failing to pass a value to the *type_params* parameter ↵Alex Waygood2024-05-073-11/+61
| | | | of some private `typing` APIs (#118695)
* gh-118119: Re-use `sep` in `posixpath.expanduser()` (GH-118120)Nice Zombies2024-05-071-5/+2
|
* gh-118650: Exclude `_repr_*` methods from Enum's _sunder_ reservation ↵chrysn2024-05-072-1/+6
| | | | (GH-118651)
* gh-109975: Update 'What's New in Python 3.13' for beta (#118694)Hugo van Kemenade2024-05-076-14/+11
|
* Fix several typos in documentation (GH-118625)Xie Yanbo2024-05-073-4/+4
|
* gh-118314: Fix padding edge case in binascii.a2b_base64 strict mode (GH-118320)Youfu Zhang2024-05-073-0/+23
| | | | | | | Fix an edge case in `binascii.a2b_base64` strict mode, where excessive padding was not detected when no padding is necessary. Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
* gh-117657: Use clang 18 in TSAN builds (GH-118533)mpage2024-05-071-1/+8
| | | | | Use clang 18 in TSAN builds We were using clang 14 which is a couple of years old.
* Fix typo inaccuracy in _bootstrap_external.py (GH-118619)wim glenn2024-05-071-1/+1
|
* gh-62090: Simplify argparse usage formatting (GH-105039)Ali Hamdan2024-05-073-72/+164
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rationale ========= argparse performs a complex formatting of the usage for argument grouping and for line wrapping to fit the terminal width. This formatting has been a constant source of bugs for at least 10 years (see linked issues below) where defensive assertion errors are triggered or brackets and paranthesis are not properly handeled. Problem ======= The current implementation of argparse usage formatting relies on regular expressions to group arguments usage only to separate them again later with another set of regular expressions. This is a complex and error prone approach that caused all the issues linked below. Special casing certain argument formats has not solved the problem. The following are some of the most common issues: - empty `metavar` - mutually exclusive groups with `SUPPRESS`ed arguments - metavars with whitespace - metavars with brackets or paranthesis Solution ======== The following two comments summarize the solution: - https://github.com/python/cpython/issues/82091#issuecomment-1093832187 - https://github.com/python/cpython/issues/77048#issuecomment-1093776995 Mainly, the solution is to rewrite the usage formatting to avoid the group-then-separate approach. Instead, the usage parts are kept separate and only joined together at the end. This allows for a much simpler implementation that is easier to understand and maintain. It avoids the regular expressions approach and fixes the corresponding issues. This closes the following GitHub issues: - #62090 - #62549 - #77048 - #82091 - #89743 - #96310 - #98666 These PRs become obsolete: - #15372 - #96311
* gh-118107: Fix zipimporter ZIP64 handling. (GH-118108)John Sirois2024-05-077-3/+128
| | | | | | | | | | | | Add missing import to code that handles too large files and offsets. Use list, not tuple, for a mutable sequence. Add tests to prevent similar mistakes. --------- Co-authored-by: Gregory P. Smith [Google LLC] <greg@krypto.org> Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru>
* Update macOS installer screens and README for 3.13.0b1 (GH-118685)Ned Deily2024-05-073-45/+11
|
* gh-118414: Fix assertion in YIELD_VALUE when tracing lines or instrs (#118683)Tian Gao2024-05-075-3/+21
|
* gh-117953: Always Run Extension Init Func in Main Interpreter First (gh-118157)Eric Snow2024-05-074-69/+216
| | | This change makes sure all extension/builtin modules have their init function run first by the main interpreter before proceeding with import in the original interpreter (main or otherwise). This means when the import of a single-phase init module fails in an isolated subinterpreter, it won't tie any global state/callbacks to the subinterpreter.
* gh-117953: Imply Single-phase Init if the Init Function Fails (gh-118684)Eric Snow2024-05-071-0/+7
| | | This ensures the kind is always either _Py_ext_module_kind_SINGLEPHASE or _Py_ext_module_kind_MULTIPHASE.
* gh-116322: Enable the GIL while loading C extension modules (#118560)Brett Simmers2024-05-079-32/+352
| | | | | | | | | | Add the ability to enable/disable the GIL at runtime, and use that in the C module loading code. We can't know before running a module init function if it supports free-threading, so the GIL is temporarily enabled before doing so. If the module declares support for running without the GIL, the GIL is later disabled. Otherwise, the GIL is permanently enabled, and will never be disabled again for the life of the current interpreter.
* Docs: add whatsnew for free-threading (#118679)Sam Gross2024-05-071-0/+46
| | | Co-authored-by: Łukasz Langa <lukasz@langa.pl>
* gh-110209: Add __class_getitem__ for generator and coroutine (#110212)James Hilton-Balfe2024-05-073-1/+5
|
* GH-116380: Revert move of pathlib globbing code to `pathlib._glob` (#118678)Barney Gale2024-05-074-337/+331
| | | | | | The previous change made the `glob` module slower to import, because it imported `pathlib._glob` and hence the rest of `pathlib`. Reverts a40f557d7b7a355a55bb90c068e3e9202fd9c8f2.
* gh-112075: use per-thread dict version pool (#118676)Dino Viehland2024-05-075-3/+70
| | | use thread state set of dict versions
* gh-118527: Intern code consts in free-threaded build (#118667)Sam Gross2024-05-0714-18/+375
| | | | | | We already intern and immortalize most string constants. In the free-threaded build, other constants can be a source of reference count contention because they are shared by all threads running the same code objects.
* gh-118473: Fix set_asyncgen_hooks not to be partially set when arguments are ↵Jeong, YunWon2024-05-073-9/+36
| | | | invalid (#118474)
* gh-118362: Skip tests when threading isn't available (#118666)Dino Viehland2024-05-063-16/+16
| | | | | * Skip tests when threads aren't available * Use ThreadPoolExecutor
* gh-112075: Fix race in constructing dict for instance (#118499)Dino Viehland2024-05-064-71/+216
|
* GH-118251: Bump the JIT CI timeout to 90 minutes (#118661)Brandt Bucher2024-05-061-1/+1
|
* gh-117486: Improve behavior for user-defined AST subclasses (#118212)Jelle Zijlstra2024-05-066-33/+94
| | | | | | | | Now, such classes will no longer require changes in Python 3.13 in the normal case. The test suite for robotframework passes with no DeprecationWarnings under this PR. I also added a new DeprecationWarning for the case where `_field_types` exists but is incomplete, since that seems likely to indicate a user mistake.