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
boykopovar
21634bfb99
fix(tests): split header and convention checks into bounded jobs
2026-10-25 00:48:05 +03:00
Guille Dols
6fb15480a5
ci(conventions): keep namespace identity across reopened blocks for alignas constants
2026-10-24 20:33:30 +02:00
Guille Dols
3b4c56757c
ci(conventions): resolve alignas constants in the scope they are used in
2026-10-24 20:33:30 +02:00
Guille Dols
a2b2c374ed
ci(conventions): reject alignas above the 8192 bytes MinGW allows
2026-10-24 20:33:30 +02:00
Dean
a8c8b8117b
Merge pull request #8900 from WhiteAssassins/feat/patch-advisor
...
feat(tools): recommend verified local game patches
2026-10-25 03:51:47 +13:00
Dean Galvin
5cef36532c
fix(tools): keep check_type_size results in configure_seed
...
CMake stores a check_type_size result as two cache entries: HAVE_<VAR>, documented as Result of TRY_COMPILE, and <VAR>, documented as CHECK_TYPE_SIZE. The exporter only recognized the first, so a seeded configure restored HAVE_<VAR>=TRUE, skipped the probe and had no size. Seed the size entry too, and hash tools/configure_seed.py into the seed cache key so a seed written by the old exporter is not restored.
2026-10-25 02:16:51 +13:00
Dean
1da453787e
Merge pull request #8970 from xdCloudy/feat/pr-overlap-main-export-check
...
fix(tools): detect exports already present on main
2026-10-25 01:52:38 +13:00
Dean
e754f6c2b4
Merge pull request #10217 from emirplus/fix/env-reference-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in env_reference
2026-10-25 01:52:12 +13:00
Adrià
b930da950d
Merge pull request #8377 from Gabrieljr42/feat/progress-library-report
...
feat(tools): report per-library progress in PR comparisons
2026-10-24 14:01:40 +02:00
Dean
99ad843970
Merge pull request #10311 from MarrasFederico/fix/import-audit-unterminated-dynamic
...
fix(tools): reject dynamic tables without DT_NULL in import_audit
2026-10-24 23:40:54 +13:00
Adrià Franch and Claude
82b3e66f29
fix(tools): build excluded executables a selected test gets as definitions
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 11:46:56 +02:00
Dean
f7b1b3d694
Merge pull request #8876 from Ninot1Quyi/codex/protect-audit-cmake-inputs
...
fix(tools): protect CMake inputs from audit JSON output
2026-10-24 22:11:35 +13:00
Federico Marras
1723ade7ba
fix(tools): reject dynamic tables without DT_NULL in import_audit
2026-10-24 10:26:43 +02:00
Adrià Franch and Claude
860c772e2c
fix(tools): keep executables passed as -D definitions in select_tests
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 09:33:30 +02:00
Dean
e977948753
Merge pull request #10266 from emirplus/fix/nid-names-stream-reconfigure
...
fix(tools): wrap entrypoint in main with stream reconfigure in nid_names
2026-10-24 18:20:31 +13:00
Dean
559e4dc883
Merge pull request #9140 from xXPBSXx/fix/shader-cache-sources-test-timeouts
...
test(recompiler): give the shader cache source fixture room under load
2026-10-24 16:53:16 +13:00
Dean
3f017b7370
Merge pull request #10296 from MarcZX10/fix/env-reference-utf8-output
...
fix(tools): make environment reports Unicode-safe
2026-10-24 16:09:25 +13:00
Dean
5540852c54
Merge pull request #9241 from veosett/codex/audit-sdk-symbol-names
...
fix(tools): flag qualified imports exported only under a NID
2026-10-24 14:21:32 +13:00
Dean
8fc60685a7
Merge pull request #10224 from Project-MOC/codex/fix-unwrap-self-atomic-output
...
fix(tools): preserve SELF outputs on failed writes
2026-10-24 12:55:33 +13:00
Dean
0884fab4b1
Merge pull request #8995 from dantdmdarealguy/fix/env-reference-environmentnumber
...
fix(tools): read the EnvironmentNumber environment reader in env_reference
2026-10-24 12:40:38 +13:00
Dean
40e5962114
Merge pull request #10227 from veosett/codex/select-tests-windows-batches
...
fix(tools): measure Windows test batches after quoting
2026-10-24 11:54:31 +13:00
Dean
4936511ad5
Merge pull request #9226 from AMRYB/fix/audit-windows-module-extension-case
...
fix(tools): normalize Windows module suffix case before matching
2026-10-24 11:53:15 +13:00
Dean
d271a49580
Merge pull request #10323 from LuPetro/fix/tools-compile-database-validation
...
fix(tools): validate compilation database entries
2026-10-24 10:11:49 +13:00
Dean
b9a8704095
Merge pull request #8718 from ArjenS-LA/fix/audit-module-weak-imports
...
fix(tools): preserve weak guest module imports in audits
2026-10-24 10:09:05 +13:00
Dean
d3a4fab335
Merge pull request #10268 from MarcZX10/fix/tools-web-release-stream-test
...
fix(tools): make web release stream mock writable
2026-10-24 09:45:47 +13:00
Dean
5ab504eae8
Merge pull request #10216 from veosett/codex/env-reader-whitespace
...
fix(tools): recognize spaced environment reader calls
2026-10-24 09:45:05 +13:00
Dean
c4d105021e
Merge pull request #10260 from emirplus/fix/check-skips-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in check_skips
2026-10-24 09:37:41 +13:00
Dean
4f8049efce
Merge pull request #10269 from emirplus/fix/trace-digest-stream-reconfigure
...
fix(tools): wrap entrypoint in main with stream reconfigure in trace_digest
2026-10-24 09:37:09 +13:00
Dean
1915df0dd4
Merge pull request #10252 from emirplus/fix/unwrap-self-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in unwrap_self
2026-10-24 09:36:38 +13:00
Dean
f4e3044429
Merge pull request #10267 from emirplus/fix/build-web-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in build_web
2026-10-24 09:25:26 +13:00
Dean
7f5f22f1bb
Merge pull request #10257 from emirplus/fix/select-tests-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in select_tests
2026-10-24 09:25:02 +13:00
Dean
4221f82dcd
Merge pull request #10263 from emirplus/fix/configure-seed-stream-reconfigure
...
fix(tools): reconfigure streams with backslashreplace in configure_seed
2026-10-24 09:24:03 +13:00
Luka Petrovic
a0ce5788b3
fix(tools): validate compilation database entries
2026-10-23 19:38:59 +02:00
MarcZX10
da5c03c20f
test(tools): normalize Windows report paths
2026-10-23 16:42:45 +00:00
Project-MOC
db8785f6ce
fix(tools): preserve new SELF output permissions
2026-10-23 18:33:14 +02:00
MarcZX10
c242694d09
test(tools): cover Unicode environment reports
2026-10-23 16:31:10 +00:00
Project-MOC
1852888af9
fix(tools): preserve SELF outputs on failed writes
2026-10-23 18:20:22 +02:00
MarcZX10
1bb1702806
test(tools): assert web release parse error status
2026-10-23 16:18:15 +00:00
emirplus
dfacf431f6
fix(tools): wrap entrypoint in main with stream reconfigure in trace_digest
2026-10-23 19:08:36 +03:00
emirplus
082a799e7e
fix(tools): reconfigure streams with backslashreplace in build_web
2026-10-23 19:06:52 +03:00
emirplus
c2cd880e14
fix(tools): wrap entrypoint in main with stream reconfigure in nid_names
2026-10-23 19:05:46 +03:00