summaryrefslogtreecommitdiffstats
path: root/Tools
Commit message (Collapse)AuthorAgeFilesLines
* gh-115778: Add `tierN` annotation for instruction definitions (#115815)Kirill Podoprigora2024-02-238-10/+20
| | | | | This replaces the old `TIER_{ONE,TWO}_ONLY` macros. Note that `specialized` implies `tier1`. Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Remove `ConverterKeywordDict` alias in `clinic.py` (#115843)Nikita Sobolev2024-02-231-3/+1
|
* GH-113464: Clean up JIT stencil generation (GH-115800)Brandt Bucher2024-02-221-6/+5
|
* gh-110850: Rename internal PyTime C API functions (#115734)Victor Stinner2024-02-201-0/+1
| | | | | | | | | | | | | | | | | Rename functions: * _PyTime_GetSystemClock() => _PyTime_TimeUnchecked() * _PyTime_GetPerfCounter() => _PyTime_PerfCounterUnchecked() * _PyTime_GetMonotonicClock() => _PyTime_MonotonicUnchecked() * _PyTime_GetSystemClockWithInfo() => _PyTime_TimeWithInfo() * _PyTime_GetMonotonicClockWithInfo() => _PyTime_MonotonicWithInfo() * _PyTime_GetMonotonicClockWithInfo() => _PyTime_MonotonicWithInfo() Changes: * Remove "typedef PyTime_t PyTime_t;" which was "typedef PyTime_t _PyTime_t;" before a previous rename. * Update comments of "Unchecked" functions. * Remove invalid PyTime_Time() comment.
* Tier 2 cleanups and tweaks (#115534)Guido van Rossum2024-02-201-0/+4
| | | | | | | | | * Rename `_testinternalcapi.get_{uop,counter}_optimizer` to `new_*_optimizer` * Use `_PyUOpName()` instead of` _PyOpcode_uop_name[]` * Add `target` to executor iterator items -- `list(ex)` now returns `(opcode, oparg, target, operand)` quadruples * Add executor methods `get_opcode()` and `get_oparg()` to get `vmdata.opcode`, `vmdata.oparg` * Define a helper for printing uops, and unify various places where they are printed * Add a hack to summarize_stats.py to fix legacy uop names (e.g. `POP_TOP` -> `_POP_TOP`) * Define helpers in `test_opt.py` for accessing the set or list of opnames of an executor
* GH-115457: Support splitting and replication of micro ops. (GH-115558)Mark Shannon2024-02-2010-36/+174
|
* GH-112354: Initial implementation of warm up on exits and trace-stitching ↵Mark Shannon2024-02-207-10/+68
| | | | (GH-114142)
* gh-108303: Move `Lib/test/sortperf.py` to `Tools/scripts` (#114687)Nikita Sobolev2024-02-181-0/+196
|
* gh-100176: Remove outdated Tools/{io,cc,string}bench (#101853)Hugo van Kemenade2024-02-175-2733/+0
| | | Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
* gh-115556: Remove quotes from command-line arguments in test.bat and rt.bat ↵Łukasz Langa2024-02-161-10/+16
| | | | | | | | | | | | (#115557) This change essentially replaces usage of `%1` with `%~1`, which removes quotes, if any. Without this change, the if statements fail due to the quotes mangling the syntax. Additionally, this change works around comma being treated as a parameter delimiter in test.bat by escaping commas at time of parsing. Tested combinations of rt and regrtest arguments, all seems to work as before but now you can specify commas in arguments like "-uall,extralargefile".
* gh-115362: Add documentation to pystats output (#115365)Michael Droettboom2024-02-161-77/+224
|
* gh-113317: Argument Clinic: move C/Py identifier helpers into libclinic ↵Erlend E. Aasland2024-02-163-29/+45
| | | | (#115520)
* gh-113317: Argument Clinic: move linear_format into libclinic (#115518)Erlend E. Aasland2024-02-153-55/+62
|
* gh-113317: Argument Clinic: inline required_type_for_self_for_parser() in ↵Erlend E. Aasland2024-02-151-9/+4
| | | | | self converter (#115522) Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-113317: Argument Clinic: remove global clinic instance (#115517)Erlend E. Aasland2024-02-151-7/+3
|
* gh-113317: Argument Clinic: don't use global state in warn() and fail() ↵Erlend E. Aasland2024-02-151-11/+18
| | | | (#115510)
* gh-113317: Argument Clinic: don't use fail() in CLI (#115513)Erlend E. Aasland2024-02-151-2/+2
|
* gh-114258: Refactor Argument Clinic function name parser (#114930)Erlend E. Aasland2024-02-151-106/+123
| | | | | | | | | | Refactor state_modulename_name() of the parsing state machine, by adding helpers for the sections that deal with ...: 1. parsing the function name 2. normalizing "function kind" 3. dealing with cloned functions 4. resolving return converters 5. adding the function to the DSL parser
* GH-113516: don't set `LDSHARED` when building for WASI (GH-115495)Brett Cannon2024-02-152-2/+1
|
* gh-114570: Add PythonFinalizationError exception (#115352)Victor Stinner2024-02-141-0/+2
| | | | | | | | | | | | | | | | | Add PythonFinalizationError exception. This exception derived from RuntimeError is raised when an operation is blocked during the Python finalization. The following functions now raise PythonFinalizationError, instead of RuntimeError: * _thread.start_new_thread() * subprocess.Popen * os.fork() * os.fork1() * os.forkpty() Morever, _winapi.Overlapped finalizer now logs an unraisable PythonFinalizationError, instead of an unraisable RuntimeError.
* gh-112302: Move pip SBOM discovery to release-tools (#115360)Seth Michael Larson2024-02-141-251/+0
|
* gh-115399: Upgrade bundled libexpat to 2.6.0 (#115431)Seth Michael Larson2024-02-142-1/+5
|
* gh-76785: Improved Subinterpreters Compatibility with 3.12 (gh-115424)Eric Snow2024-02-131-4/+4
| | | | | For the most part, these changes make is substantially easier to backport subinterpreter-related code to 3.12, especially the related modules (e.g. _xxsubinterpreters). The main motivation is to support releasing a PyPI package with the 3.13 capabilities compiled for 3.12. A lot of the changes here involve either hiding details behind macros/functions or splitting up some files.
* gh-114058: Foundations of the Tier2 redundancy eliminator (GH-115085)Ken Jin2024-02-138-53/+251
| | | | | | | --------- Co-authored-by: Mark Shannon <9448417+markshannon@users.noreply.github.com> Co-authored-by: Jules <57632293+JuliaPoo@users.noreply.github.com> Co-authored-by: Guido van Rossum <gvanrossum@users.noreply.github.com>
* GH-113710: Fix updating of dict version tag and add watched dict stats ↵Mark Shannon2024-02-121-1/+1
| | | | (GH-115221)
* GH-108362: Revert "GH-108362: Incremental GC implementation (GH-108038)" ↵Mark Shannon2024-02-071-5/+2
| | | | | | | (#115132) Revert "GH-108362: Incremental GC implementation (GH-108038)" This reverts commit 36518e69d74607e5f094ce55286188e4545a947d.
* gh-112302: Change 'licenseConcluded' field to 'NOASSERTION' (#115038)Seth Michael Larson2024-02-061-5/+7
|
* gh-109991: Update GitHub CI workflows to use OpenSSL 3.0.13. (#115050)Ned Deily2024-02-061-2/+3
| | | Also update multissltests to use 1.1.1w, 3.0.13, 3.1.5, and 3.2.1.
* gh-115015: Argument Clinic: fix generated code for METH_METHOD methods ↵Erlend E. Aasland2024-02-052-1/+2
| | | | without params (#115016)
* GH-108362: Incremental GC implementation (GH-108038)Mark Shannon2024-02-051-2/+5
|
* gh-115026: Argument Clinic: handle PyBuffer_FillInfo errors in generated ↵Nikita Sobolev2024-02-051-1/+3
| | | | code (#115027)
* Update README.md (#114974)Skip Montanaro2024-02-041-1/+1
| | | | | Trivial edit Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
* ``Tools/cases_generator``: Fix typos and incorrect comments. (#114892)Kirill Podoprigora2024-02-034-6/+6
|
* Bump ruff to 0.2.0 (#114932)Alex Waygood2024-02-021-0/+2
|
* gh-112529: Remove PyGC_Head from object pre-header in free-threaded build ↵Sam Gross2024-02-011-4/+11
| | | | | | | | | | | | | | | | | (#114564) * gh-112529: Remove PyGC_Head from object pre-header in free-threaded build This avoids allocating space for PyGC_Head in the free-threaded build. The GC implementation for free-threaded CPython does not use the PyGC_Head structure. * The trashcan mechanism uses the `ob_tid` field instead of `_gc_prev` in the free-threaded build. * The GDB libpython.py file now determines the offset of the managed dict field based on whether the running process is a free-threaded build. Those are identified by the `ob_ref_local` field in PyObject. * Fixes `_PySys_GetSizeOf()` which incorrectly incorrectly included the size of `PyGC_Head` in the size of static `PyTypeObject`.
* Update outdated info in ``Tools/cases_generator/README.md`` (#114844)Kirill Podoprigora2024-02-011-7/+21
|
* build(deps-dev): bump types-psutil from 5.9.5.17 to 5.9.5.20240106 in /Tools ↵dependabot[bot]2024-02-011-1/+1
| | | | | | | | | | | | | | | | | | (#114852) build(deps-dev): bump types-psutil in /Tools Bumps [types-psutil](https://github.com/python/typeshed) from 5.9.5.17 to 5.9.5.20240106. - [Commits](https://github.com/python/typeshed/commits) --- updated-dependencies: - dependency-name: types-psutil dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump hypothesis from 6.92.2 to 6.97.4 in /Tools (#114851)dependabot[bot]2024-02-011-1/+1
| | | | | | | | | | | | | | | Bumps [hypothesis](https://github.com/HypothesisWorks/hypothesis) from 6.92.2 to 6.97.4. - [Release notes](https://github.com/HypothesisWorks/hypothesis/releases) - [Commits](https://github.com/HypothesisWorks/hypothesis/compare/hypothesis-python-6.92.2...hypothesis-python-6.97.4) --- updated-dependencies: - dependency-name: hypothesis dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps-dev): bump types-setuptools from 69.0.0.0 to 69.0.0.20240125 in ↵dependabot[bot]2024-02-011-1/+1
| | | | | | | | | | | | | | | | | | /Tools (#114853) build(deps-dev): bump types-setuptools in /Tools Bumps [types-setuptools](https://github.com/python/typeshed) from 69.0.0.0 to 69.0.0.20240125. - [Commits](https://github.com/python/typeshed/commits) --- updated-dependencies: - dependency-name: types-setuptools dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* gh-113744: Add a new IncompleteInputError exception to improve incomplete ↵Pablo Galindo Salgado2024-01-301-0/+2
| | | | | input detection in the codeop module (#113745) Signed-off-by: Pablo Galindo <pablogsal@gmail.com>
* GH-80789: Get rid of the ``ensurepip`` infra for many wheels (#109245)Sviatoslav Sydorenko (Святослав Сидоренко)2024-01-301-5/+1
| | | | | | Co-authored-by: vstinner@python.org Co-authored-by: Pradyun Gedam <pradyunsg@gmail.com> Co-authored-by: Adam Turner <9087854+aa-turner@users.noreply.github.com>
* gh-91325: Skip Stable ABI checks with Py_TRACE_REFS special build (GH-92046)Petr Viktorin2024-01-291-9/+10
| | | | | | Skip Stable ABI checks with Py_TRACE_REFS special build This build is not compatible with Py_LIMITED_API nor with the stable ABI.
* GH-113464: Add a JIT backend for tier 2 (GH-113465)Brandt Bucher2024-01-299-0/+1084
| | | | | | | Add an option (--enable-experimental-jit for configure-based builds or --experimental-jit for PCbuild-based ones) to build an *experimental* just-in-time compiler, based on copy-and-patch (https://fredrikbk.com/publications/copy-and-patch.pdf). See Tools/jit/README.md for more information on how to install the required build-time tooling.
* gh-113055: Use pointer for interp->obmalloc state (gh-113412)Neil Schemenauer2024-01-271-1/+2
| | | | | | | | | For interpreters that share state with the main interpreter, this points to the same static memory structure. For interpreters with their own obmalloc state, it is heap allocated. Add free_obmalloc_arenas() which will free the obmalloc arenas and radix tree structures for interpreters with their own obmalloc state. Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
* gh-114250: Fetch metadata for pip and its vendored dependencies from PyPI ↵Seth Michael Larson2024-01-261-50/+213
| | | | (#114450)
* gh-114312: Collect stats for unlikely events (GH-114493)Michael Droettboom2024-01-251-1/+21
|
* GH-112354: `END_FOR` instruction to only pop one value. (GH-114247)Mark Shannon2024-01-241-0/+8
| | | | * Compiler emits END_FOR; POP_TOP instead of END_FOR. To support tier 2 side exits in loops.
* gh-112984: Fix link error on free-threaded Windows build (GH-114455)Sam Gross2024-01-231-0/+3
| | | | | | The test_peg_generator test tried to link the python313_d.lib library, which failed because the library is now named python313t_d.lib. The underlying problem is that the "compiler" attribute was not set when we call get_libraries() from distutils.
* gh-113317: Don't use global clinic instance in bad_argument() (#114330)Erlend E. Aasland2024-01-231-12/+11
| | | | | | | Make it possible for a converter to have multiple includes, by collecting them in a list on the converter instance. This implies converter includes are added during template generation, so we have to add them to the clinic instance at the end of the template generation instead of in the beginning.
* GH-114448: Don't sort summarize_stats.py histograms by amount of change ↵Michael Droettboom2024-01-221-4/+7
| | | | (GH-114449)