Commit Graph

211 Commits

Author SHA1 Message Date
Dean ce8f7eeb3f
Merge pull request #4344 from Roojool/contrib/round2-c19
fix(tools): use configured Ninja for test registration audit
2026-10-14 00:46:35 +13:00
Adrià e57a793958
Merge pull request #3911 from GalaxyGamingFR/fix/pr-overlap-own-branch
fix(tools): drop the branch's own pull request in pr_overlap --branch
2026-10-13 13:39:14 +02:00
Adrià e99a1b0aa9
Merge pull request #3903 from GalaxyGamingFR/fix/conventions-body-bom
fix(conventions): read the PR body file with utf-8-sig
2026-10-13 13:30:34 +02:00
GalaxyGamingFR 0817454371 fix(tools): drop the branch's own pull request in pr_overlap --branch
The --branch mode removed the branch's own open pull request only when its
head equalled the local branch exactly. Checking commits before pushing
left the branch ahead of its pull request, so the tool reported the user's
own pull request as overlapping. The filter is now a function that also
drops any pull request whose head is an ancestor of the branch.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-13 12:00:41 +02:00
GalaxyGamingFR d15cc41299 fix(conventions): read the PR body file with utf-8-sig
A pull request body saved with a UTF-8 byte order mark starts with
U+FEFF before "### What", so the first heading is not recognised and the
checker reports the What section as missing. Decode the body file with
utf-8-sig so the mark is dropped and the sections are found.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-13 11:48:36 +02:00
GalaxyGamingFR 02dad4429f fix(progress): recognise non-static and noexcept stub helpers
The stub helper pattern required a leading static and a plain signature,
so exports calling helpers in anonymous namespaces, or helpers with
noexcept, a trailing return type or a pointer next to the name, counted
as done. The pattern now anchors at line start, makes static optional,
skips APS5_VABI exports and control keywords, and accepts those suffixes.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-13 11:42:32 +02:00
Rujul Talekar 290675799e test(tools): drop the Ninja-on-PATH requirement from the registration suite
Remove test_built_uses_configured_ninja_outside_path per review: it copied
whatever ninja was on PATH and asserted one existed, so the suite failed on
exactly the setup this PR fixes. The rewritten tests already verify the
configured CMAKE_MAKE_PROGRAM is the program that runs; the suite now passes
with and without Ninja on PATH on Windows and Linux.
2026-10-13 14:51:04 +05:30
Adrià 0428328b79
Merge pull request #4581 from AlxcBTW/feat/trace-digest
feat(tools): digest a performance trace for an issue or a pull request
2026-10-12 22:13:37 +02:00
AlxcBTW ca219d1b67 feat(tools): digest a performance trace for an issue or a pull request
tools/trace_digest.py reads an APS5_TRACE_FRAMES capture (aps5-trace-*.json.gz)
and prints a markdown report of a few KB, or the same data as JSON: the
summary line from aps5-summary.jsonl, the slowest frames with their largest
slices, the busy, wait and untraced time of each thread, the largest slices
per frame, the longest waits, and with --stacks the hottest frames of an
APS5_SAMPLE_WORKER collapsed-stack file. Python standard library only; a
unittest checks every section on a small synthetic trace.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 21:33:18 +02:00
Adrià Franch 63e60db1a7 feat(progress): publish a progress history chart
tools/progress_history.py measures the first-parent history of main with
the rules of tools/progress.py, one point per day, and writes history.json,
history.svg and history.html. The Progress workflow runs it after
progress.py; the README shows the chart under the map and links the page.
Labels and points compact as days accumulate.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-12 21:31:09 +02:00
Adrià Franch 555099ae23 feat(tools): keep technical debt in one file per library
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-12 20:38:17 +02:00
Dean 4a49cda98f
Merge pull request #4492 from ideabsassistenza/fix/pad-input-persistent-sequence
fix(pad-input): preserve command ordering across clock resets
2026-10-13 07:28:56 +13:00
Dean 9907993e5f
Merge pull request #4473 from arcwiser/fix/pr-overlap-fetch-batches
fix(tools): batch pr_overlap fetch refspecs
2026-10-13 07:27:51 +13:00
Dean 45e1b80636
Merge pull request #4421 from Lorkydey/fix/nid-names-invalid-cli-nids
fix(tools): reject invalid NIDs in the name lookup CLI
2026-10-13 07:25:21 +13:00
Dean 5d3e1740ff
Merge pull request #4420 from Lorkydey/fix/check-skips-disabled-tests
fix(ci): reject disabled CTest cases in skip validation
2026-10-13 07:25:00 +13:00
Dean 59a2167a93
Merge pull request #4368 from SandstromPL/fix/conventions-run-from-subdirectory
fix(conventions): check the whole repository when run from a subdirectory
2026-10-13 07:21:13 +13:00
Dean ee2c0f9b92
Merge pull request #4361 from Roojool/contrib/round2-c20
test(tools): support Python 3.10 in encoding regressions
2026-10-13 07:20:30 +13:00
Rujul Talekar 0c52b2a0b0 fix(tools): use configured CMAKE_MAKE_PROGRAM for test registration audit
tools/check_test_registration.py invoked bare ninja from PATH, so the audit failed with FileNotFoundError when the configured Ninja lived outside PATH. Read CMAKE_MAKE_PROGRAM from the build directory CMakeCache.txt and fail honestly when it is missing. Adapt the mocked built tests to a configured build and add a regression that runs a real Ninja from a path with spaces outside PATH.
2026-10-12 21:59:53 +05:30
Dean 63d4a10999
Merge pull request #4335 from ArjenS-LA/fix/test-registration-reachability
fix(tools): ignore unreachable CTest registration files
2026-10-13 04:51:15 +13:00
Dean b8fff28bd0
Merge pull request #4330 from treuenten/claude/peaceful-darwin-etpdf0
fix(tools): follow Depends on chains in pr_overlap
2026-10-13 04:50:54 +13:00
Simon 0cd3f63803
Merge branch 'boykopovar:main' into fix/pad-input-persistent-sequence 2026-10-12 15:37:34 +02:00
Dean 993f80a081
Merge pull request #3912 from GalaxyGamingFR/fix/pr-overlap-wrapped-exports
fix(tools): ignore wrapped declarations in pr_overlap exports
2026-10-13 02:31:59 +13:00
Simon 70481b0703 fix(pad-input): preserve command ordering across clock resets 2026-10-12 15:23:22 +02:00
arcwiser 441d392c35 fix(tools): batch pr_overlap fetch refspecs 2026-10-12 23:53:47 +11:00
lorkydey 86ce78c633 fix(tools): reject invalid NIDs in the name lookup CLI 2026-10-12 12:42:48 +02:00
lorkydey 4d29852a25 fix(ci): reject disabled CTest cases in skip validation 2026-10-12 12:39:52 +02:00
Adrià Franch d9d00f0e34 ci(build): run pull request jobs only when their files change
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-12 11:35:11 +02:00
Dean 00fe732b2f
Merge pull request #4032 from fma-rc/feat/pad-input-file-sticks
feat(pad): hold the sticks from the controller command file
2026-10-12 21:37:30 +13:00
Dean 9bc3623517
Merge pull request #4355 from oneandonlydean/up4/fix-4276-stencil-ref-export
fix(agc): export the stencil reference from pixel shaders with VK_EXT_shader_stencil_export
2026-10-12 21:22:09 +13:00
SandstromPL 872c3ba6ff fix(conventions): check the whole repository when run from a subdirectory
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 13:10:44 +05:30
Rujul Talekar e991645c46 fix(tools): simulate cp1252 default encoding on Python 3.10 in pr_overlap tests
command_output patched subprocess._text_encoding, which does not exist on Python 3.10, so all eight tests errored before their assertions. Use subprocess._text_encoding where available and map io.TextIOWrapper locale to cp1252 on older interpreters, so a subprocess with no explicit encoding decodes as cp1252 on both. Add a behavioral check that default decodes as cp1252 while explicit utf-8 stays correct.

Authored by Rujul Talekar, with Muse Spark 1.3 assistance.
2026-10-12 13:02:14 +05:30
Paritosh Lahre 436e310ddb
fix(conventions): report 3rdparty submodules without a .gitmodules entry (#4304)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 20:31:24 +13:00
Bharat Yadav f961c52ad8
fix(release): exclude removed libraries from packages (#4297) 2026-10-12 20:31:13 +13:00
Paritosh Lahre 0f0291e39b
fix(tools): run pr_overlap on gh older than 2.48 (#4289)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 20:31:03 +13:00
Lorky 44e9050a58
fix(import-audit): parse export aliases as C++ tokens (#4196)
Co-authored-by: lorkydey <lorky.contact@gmail.com>
2026-10-12 20:30:54 +13:00
ArjenS-LA 9504762edb fix(tools): ignore unreachable CTest registration files 2026-10-12 00:00:28 -07:00
Dean Galvin 22d662eda7 fix(agc): export the stencil reference from pixel shaders with VK_EXT_shader_stencil_export 2026-10-12 19:44:41 +13:00
Claude fd0d55ce21
fix(tools): follow Depends on chains in pr_overlap
pr_overlap only skipped a pair when one pull request named the other
directly. In a stack where #3 depends on #2 and #2 on #1, #1 and #3 were
reported as overlapping, and two pull requests built on the same #1 were
reported for the files and exports both inherit from it. Dependencies are
now followed through open pull requests, and what a shared dependency adds
is left out of the same-file and same-export columns.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0189deyapHNNqKQJboZBJQei
2026-10-12 06:10:56 +00:00
Dean 6e653bef51
Merge pull request #3675 from MrMha/fix/oracle-cache-current
fix(hw-oracle): invalidate cached builds when inputs change
2026-10-12 18:21:47 +13:00
Dean e088868801
Merge pull request #3908 from GalaxyGamingFR/fix/conventions-wrapped-declarations
fix(conventions): treat wrapped declarations as declarations
2026-10-12 16:10:06 +13:00
Dean 796daf5ef0
Merge pull request #3906 from GalaxyGamingFR/fix/progress-render-sliver
fix(progress): skip cells for rectangles without area
2026-10-12 16:09:45 +13:00
fma-rc e0eef6c57f
feat(pad): hold the sticks from the controller command file 2026-10-12 04:47:59 +02:00
Adrià acc5d29498
Merge pull request #3673 from MrMha/fix/stub-output-current
fix(stubgen): protect input files and keep stdout valid C++
2026-10-12 00:03:02 +02:00
Adrià 9f0618548d
Merge pull request #3667 from MrMha/fix/convention-paths-current
fix(conventions): handle unusual Git paths and escaped links
2026-10-11 23:57:27 +02:00
Adrià 85e2b31b56
Merge pull request #3676 from MrMha/fix/ci-test-accounting-current
fix(ci): preserve test discovery and skip diagnostics
2026-10-11 23:49:23 +02:00
Adrià 8d57710c95
Merge pull request #3674 from MrMha/fix/release-packaging-current
fix(packaging): validate and stage release archives
2026-10-11 23:49:15 +02:00
Adrià 45682f090d
Merge pull request #3672 from MrMha/fix/nid-inventory-current
fix(nid-names): ignore comments and literals in symbol inventories
2026-10-11 23:48:44 +02:00
Adrià 00b6457610
Merge pull request #3671 from MrMha/fix/dependency-declarations-current
fix(pr-overlap): bound explicit dependency declarations
2026-10-11 23:47:27 +02:00
Adrià cda695db72
Merge pull request #3666 from MrMha/fix/export-audit-current
fix(import-audit): validate ELF and PE exports before reporting
2026-10-11 23:46:56 +02:00
GalaxyGamingFR ede6fad8b2 fix(conventions): treat wrapped declarations as declarations
Check.duplicates reported a duplicate export for a hit in another
library unless that single grep line ended with a semicolon, so a
prototype wrapped over two lines was reported as a duplicate
definition. The hit file is now read at the head commit and the
existing function_body decides whether the hit is a definition.

The git grep pattern also used the GNU escapes \b and \s, which the
BSD regex library on macOS does not support, so the check never
matched there. The pattern now uses POSIX classes instead.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:20:36 -07:00