Commit Graph
823 Commits
Author SHA1 Message Date
Dean d3953ca5dc Merge pull request #10740 from Bram910/fix/nid-cache-temporary-names
fix(tools): shorten NID database temporary names
2026-10-26 11:07:40 +13:00
Dean 9b5e3368de Merge pull request #10367 from Bram910/fix/trace-summary-jsonl
fix(tools): validate trace summary JSONL records
2026-10-26 11:04:31 +13:00
Dean b7681c0cb1 Merge pull request #10380 from Bram910/fix/main-sync-squash-prs
fix(tools): report squash-merged PRs in main sync checks
2026-10-26 11:04:02 +13:00
Adrià 8813b0356e Merge pull request #9556 from dantdmdarealguy/fix/select-tests-utf8-deps
fix(tools): decode Ninja's header dependencies as UTF-8 in select_tests
2026-10-25 22:35:23 +01:00
Adrià 1f68b1f776 Merge pull request #9605 from harisibrar1/test/shard-shader-cache-runtime-sources
test(recompiler): shard shader_cache_runtime_sources to stay under 30 s
2026-10-25 22:13:35 +01:00
Dean 721bb69e55 Merge pull request #9257 from Noxy-HNR/fix/ci-gate-flow-mapping-paths
fix(tools): accept flow-style pull_request paths filters in the CI gate
2026-10-26 09:07:17 +13:00
Adrià 1a7a3dfd4f Merge pull request #9572 from JJenkx/windows/symbolize-sampler-stacks
feat(tools): symbolize the Windows samplers' stacks
2026-10-25 20:18:58 +01:00
Dean ed0d0ae54a Merge pull request #10019 from chitters2004/fix/check-compile-preprocessor-dependencies
fix(tools): preserve dependency files during syntax checks
2026-10-26 05:36:50 +13:00
Adrià 7e5a2c6e3d Merge pull request #9380 from emirplus/fix/progress-compare-utf8-bom
fix(tools): decode snapshots with utf-8-sig and reconfigure streams in progress
2026-10-25 16:16:53 +01:00
Adrià e07e775074 Merge pull request #9377 from emirplus/fix/import-audit-utf8-stream-reconfigure
fix(tools): decode sources with utf-8-sig and reconfigure streams in import_audit
2026-10-25 16:16:43 +01:00
Jamie 18ee716d53 fix(tools): strip forwarded dependency flags from syntax checks 2026-10-25 14:18:39 +00:00
Dean e05ba6feeb Merge pull request #10596 from roboterspinne/test/debt-split-in-process
test(tools): run debt_split in process and commit only where tests need it
2026-10-26 02:40:18 +13:00
Dean 89ee8c0270 Merge pull request #10576 from plexerPK/fix/web-release-invalid-zip
fix(tools): report release BadZipFile errors with asset names
2026-10-26 02:32:26 +13:00
Adrià FranchandClaude Sonnet 5.5 7b557b5e07 test(tools): pin that the alias scanner receives BOM-free decoded text
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-25 11:48:44 +01:00
Queuze 225b6072fc fix(check-compile): reject forwarded response operands 2026-10-25 07:47:42 -03:00
emirplus 1c13cf5a99 fix(tools): decode sources with utf-8-sig and reconfigure streams in import_audit
Specify utf-8-sig encoding when reading library source files in
source_stubs so UTF-8 characters are preserved on Windows and leading
BOMs are tolerated.

Reconfigure stdout and stderr streams to UTF-8 with backslashreplace
at the beginning of main, and specify UTF-8 encoding when writing test
fixtures.
2026-10-25 11:47:31 +01:00
Queuze 454eb1f46a fix(check-compile): preserve safe forwarded operands 2026-10-25 07:40:23 -03:00
Queuze c2273c8a7e fix(check-compile): reject forwarded compiler actions 2026-10-25 07:23:12 -03:00
Queuze ac275df723 chore(check-compile): sync with current main 2026-10-25 07:23:12 -03:00
Dean b25020248f Merge pull request #10759 from MarcZX10/marc/fix-unwrap-self-unplaceable-segment
fix(tools): refuse unwrap_self segments placed before the file start
2026-10-25 20:41:49 +13:00
Dean b860f46f98 Merge pull request #10533 from al3ss4ndrolb/test/nid-names-env-db-empty-tree
test(tools): look up the environment-selected NID database in an empty source tree
2026-10-25 20:11:21 +13:00
MarcZX10 4f078782a1 test(tools): cover unwrap_self segments with stale offsets that cannot be placed 2026-10-25 06:37:02 +00:00
Dean 74986c28bd Merge pull request #10559 from xTRACKGOD/fix/trace-digest-interval-identity
fix(tools): detect host and title changes in interval digests
2026-10-25 19:15:31 +13:00
Dean 282f4a68ae Merge pull request #10744 from Bram910/fix/jobmanager-module-refusals
fix(tools): report refused JobManager modules cleanly
2026-10-25 19:13:56 +13:00
Dean caffb7d8b5 Merge pull request #10474 from hyvvs/fix/check-skips-reasons
fix(ci): reject skips with mixed expected and unexpected reasons
2026-10-25 19:13:27 +13:00
Dean e1ad116e72 Merge pull request #10670 from Bram910/fix/patch-advisor-utf8-io
fix(tools): use UTF-8 for patch advisor I/O
2026-10-25 19:05:39 +13:00
Dean 61c55ed466 Merge pull request #10748 from Bram910/fix/workflow-script-boundaries
fix(tools): match workflow test scripts only as whole paths
2026-10-25 19:04:09 +13:00
Dean 4b31738b2b Merge pull request #10624 from Bram910/fix/library-zip-original-paths
fix(tools): reject rewritten library ZIP paths
2026-10-25 19:02:31 +13:00
Dean effe283dca Merge pull request #10747 from roboterspinne/fix/tools-check-main-sync-missing-head
fix(tools): name a missing head instead of reporting no common ancestor in check_main_sync
2026-10-25 19:01:23 +13:00
Braxton Atkinson 2f975066cd fix(tools): parse flow-style pull-request filter keys safely 2026-10-24 23:26:59 -05:00
Dean 52a8bed576 Merge pull request #8610 from Baytowne/fix/progress-history-bad-ref
fix(tools): report an unknown ref as a usage error in progress_history
2026-10-25 15:28:14 +13:00
Queuze e0b90dc054 test(check-compile): detect Clang's gcc alias 2026-10-24 21:39:26 -03:00
Queuze 8a6f7843a2 test(check-compile): split missing operand cases 2026-10-24 21:31:23 -03:00
Queuze 699337abfd fix(check-compile): keep one syntax action 2026-10-24 21:31:23 -03:00
Queuze cea2536efe fix(check-compile): preserve positional inputs 2026-10-24 21:31:23 -03:00
Queuze e5fcbb775d fix(check-compile): enforce syntax mode 2026-10-24 21:31:23 -03:00
Dean 2e22b67032 Merge pull request #9372 from mehmetbayoglu/feat/import-audit-partial
feat(tools): split guarded exports into a partial import_audit class
2026-10-25 13:29:15 +13:00
Dean 17c46a4388 Merge pull request #9150 from gdols/ci/alignas-limit
ci(conventions): reject alignas above the 8192 bytes MinGW allows
2026-10-25 12:57:04 +13:00
memob 1ee2fe9ff9 test(tools): count the partial class in the module suffix audit tests 2026-10-24 19:49:55 -04:00
memob df1a204a4f fix(tools): count a throw inside a plain block as unconditional
A compound statement that is not a conditional, loop or lambda always runs, so its calls are collected like the body's own and its exits stop the scan. An export whose only throw sits in such a block stays a stub and fails a strict audit.
2026-10-24 19:49:14 -04:00
memob d606317bca test(tools): match the stub heading from main in the partial class test 2026-10-24 19:49:14 -04:00
memob 1e123e64ff fix(tools): call an export partial when a conditional exit precedes its throw
A conditional return, co_return or goto before the throwing call leaves a path that succeeds, so the audit stops collecting calls at it and the export, or a helper it calls, is partial. A guard that throws still leaves every path throwing, so it stays a stub.
2026-10-24 19:49:14 -04:00
memob bf358a9486 fix(tools): call an export partial only when some preprocessor branch does not throw
The previous check called any stub call inside an #if block partial,
so an export that throws in every #if, #elif and #else alternative was
reported as partial. Each combination of preprocessor branches is now
expanded into its own body, an #if without #else gets an empty
alternative, and the export is a stub when every combination reaches
the throw. More than 256 combinations in one function, or unbalanced
directives, are reported as errors.
2026-10-24 19:49:14 -04:00
memob a88acf15de fix(tools): count a stub call under a preprocessor branch as partial
A NotImplemented_nid_no_patch call inside an #if, #ifdef or #ifndef block
opened in the export's own body runs only on some hosts, so the export
is partial, not a stub. An export wrapped in a preprocessor block from
outside its body keeps its class.
2026-10-24 19:49:13 -04:00
memob 41739f0174 feat(tools): split guarded exports into a partial import_audit class
An export whose body reaches NotImplemented_nid_no_patch on every path,
directly or through a helper that always reaches it, stays a stub. One
that reaches it only under a condition (if, else, loop, switch, ternary,
short-circuit or lambda) is now classified as partial, so implemented
exports with guards for unknown behaviour are no longer counted as stubs.
progress.py and the progress page are unchanged.
2026-10-24 19:49:13 -04:00
Dean Galvin 586bea7f4e Merge main into fix/progress-history-bad-ref 2026-10-25 12:04:23 +13:00
boykopovar 21634bfb99 fix(tests): split header and convention checks into bounded jobs 2026-10-25 00:48:05 +03:00
Bram910 e537509b7d test(tools): resolve JobManager artifact path expectations 2026-10-24 22:42:38 +02:00
roboterspinne dfd99b7cb5 fix(tools): name a missing head instead of reporting no common ancestor in check_main_sync
report() turned every nonzero exit of git merge-base into "<head> and
<base> have no common ancestor", so a mistyped or unfetched --head, a
tree or a blob was reported as unrelated history and git's own error was
dropped. Now only exit status 1 keeps that message, and any other
failure raises "git merge-base failed: <stderr>" like the merge-tree
call in conflicts(). git merge-base returns 1 when the histories share
no commit and dies with 128 when a revision does not resolve to a
commit. The tool still exits 2 in both cases, and
test_unrelated_histories_are_an_error now also checks that an invalid
head reports git's own merge-base error and not a missing common
ancestor.
2026-10-24 22:28:37 +02:00
Bram910 ee451b5a41 fix(tools): report refused JobManager modules cleanly 2026-10-24 22:24:03 +02:00