Commit Graph

164 Commits

Author SHA1 Message Date
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
MrMha 19344d661a test(packaging): restore cwd before temporary cleanup 2026-10-11 19:30:59 +04:00
MrMha 2f6db82da7 fix(nid-names): normalize Windows inventory paths 2026-10-11 19:30:28 +04:00
Adrià Franch 8b73fe7a76 fix(stubgen): give new output files the default umask permissions 2026-10-11 17:11:35 +02:00
Adrià Franch a5465007fa test(conventions): merge duplicate import 2026-10-11 17:10:33 +02:00
MrMha 0ffd244af2 fix(ci): preserve test discovery and skip diagnostics 2026-10-11 18:25:36 +04:00
MrMha 5ccc11642f fix(packaging): validate and stage release archives 2026-10-11 18:23:59 +04:00
MrMha 83be8dfb27 fix(stubgen): protect input files and keep stdout valid C++ 2026-10-11 18:23:13 +04:00
MrMha 08b1b7808a fix(nid-names): ignore comments and literals in symbol inventories 2026-10-11 18:22:21 +04:00
MrMha 14bbb1e00f fix(pr-overlap): bound explicit dependency declarations 2026-10-11 18:21:44 +04:00
MrMha 45f349df9b fix(conventions): handle unusual Git paths and escaped links 2026-10-11 18:21:09 +04:00
MrMha d6bc502765 fix(import-audit): validate ELF and PE exports before reporting 2026-10-11 18:20:18 +04:00
Winvoker c9038f7d8d fix(progress): match stub calls across whitespace 2026-10-11 15:06:06 +03:00
MarcZX100 05504bb05e fix(tools): retain literals when classifying inert returns 2026-10-11 11:44:32 +00:00
Leandro Soares 90a82da283 feat(tools): mark behaviourally empty bodies in the progress report
Cherry-picked from commit f1be92e95c02be451971fc1a8eec139e738e936d.
2026-10-11 11:44:28 +00:00
Adrià 2e40ade881
Merge pull request #3402 from GalaxyGamingFR/fix/conventions-system-dependency-spelling
fix(conventions): match ordinary CMake spellings of system lookups
2026-10-11 12:39:31 +02:00
Adrià 02030f8a62
Merge pull request #3427 from AchrafReyani/fix/pr-overlap-fetch-head-sha
fix(tools): fetch each open pull request by the head commit the API reports
2026-10-11 12:35:24 +02:00
GalaxyGamingFR 0e7ccce2ec fix(conventions): match ordinary CMake spellings of system lookups
The system-dependency rule was case-sensitive, so FIND_PACKAGE(SDL2) passed,
and its trailing word boundary failed when whitespace followed the opening
parenthesis. find_path, find_program and find_file were not covered at all.
The pattern is now case-insensitive, anchors each command name, and covers
the find_* family.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:21:30 +02:00
Adrià dcca02896e
Merge pull request #3406 from GalaxyGamingFR/fix/stubgen-debt-links
fix(tools): make stubgen TechnicalDebt links resolve from docs/dev
2026-10-11 12:20:37 +02:00
Adrià 68ae2a895d
Merge pull request #3386 from GalaxyGamingFR/fix/conventions-path-with-spaces
fix(conventions): keep per-line rules for file names with spaces
2026-10-11 12:19:02 +02:00
Adrià f0c6cf27b2
Merge pull request #3408 from GalaxyGamingFR/fix/pr-overlap-template-placeholder
fix(tools): read Depends on through the template placeholder in pr_overlap
2026-10-11 12:13:59 +02:00
Achraf Reyani 2b234efff3 fix(tools): fetch each open pull request by the head commit the API reports
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 19:13:35 +09:00
Adrià b42b29128b
Merge pull request #3407 from GalaxyGamingFR/fix/import-audit-per-library-stubs
fix(tools): classify import_audit stubs per providing library
2026-10-11 12:09:27 +02:00
Adrià Franch 68f60cf348 fix(conventions): spell the stripped tab as an escape 2026-10-11 12:07:35 +02:00
GalaxyGamingFR 3a1deb48a8 fix(conventions): strip trailing tab from spaced diff paths
Git appends a tab after file names containing spaces in the +++ header, so the
added-lines key kept the tab and its suffix no longer matched. Comment,
extension, title and silent-stub rules then skipped such files. The tab is
now stripped, with a test covering core/a b.cpp.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:07:34 +02:00
Adrià cdef5b7fce
Merge pull request #3405 from GalaxyGamingFR/fix/pr-overlap-encoding
fix(tools): decode pr_overlap git output with errors=replace
2026-10-11 12:05:54 +02:00
Adrià Franch 52a5b4869a fix(tools): drop unused depends lookup in open_prs 2026-10-11 12:01:08 +02:00
GalaxyGamingFR 26e0b30df3 fix(tools): ignore PR template placeholder when reading dependencies
The PR template's untouched "Depends on: <!-- #PR, or none -->" line
matched the checklist regex, so prose such as "Depends on #1400" was never
consulted and the declared dependency was lost. HTML comments are now
stripped and the prose form is used when the checklist line is blank. An
explicit "Depends on: none" still takes precedence.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 12:01:08 +02:00
Adrià 8ec0e13109
Merge pull request #3404 from GalaxyGamingFR/fix/conventions-checklist-bullets
fix(conventions): count * and + checklist bullets as unchecked
2026-10-11 11:59:14 +02:00
GalaxyGamingFR efbf36f637 fix(tools): make stubgen debt links resolve from docs/dev
stubgen emitted TechnicalDebt links as repo-relative paths, but
TechnicalDebt.md lives in docs/dev and the conventions checker resolves
links relative to it, so pasted lines failed CI. The derived default path
now carries a ../../ prefix; an explicit --td-path is used as given.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 11:58:25 +02:00
Adrià 5c4bc7d607
Merge pull request #3390 from GalaxyGamingFR/fix/check-skips-device-messages
fix(ci): recognise every device-limitation skip message in check_skips
2026-10-11 11:51:46 +02:00
GalaxyGamingFR 50c288810e fix(tools): key import audit stubs by library
source_stubs pooled done NIDs across all libraries, so a throwing stub
in libSceShare.native counted as implemented when libSceShare had the
same function. Stubs are now keyed by (library.prx, nid) and audit marks
an import stub only when every provider of it is a stub.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:42:36 -07:00
GalaxyGamingFR 15f34d3043 fix(tools): decode pr_overlap git output with errors=replace
One PR diff containing a byte that is not valid UTF-8 made git() and
merge() raise, which aborted the hourly run and dropped the overlap
comment on every PR. Both subprocess calls now pass errors="replace",
matching check_conventions.py. A test commits a Latin-1 byte and checks
the export is still found.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:42:08 -07:00
GalaxyGamingFR 2f1b4aaf97 fix(conventions): count * and + checklist bullets as unchecked
The pull request check only matched unchecked items written with a dash,
so a checklist rewritten with * or + bullets passed with every box empty.
GitHub renders all three bullet styles as task items. The pattern now
accepts any of them, and new tests cover each bullet style.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:41:54 -07:00
Adrià 66d577d428
Merge pull request #3378 from GalaxyGamingFR/fix/conventions-quoted-paths
fix(conventions): read non-ASCII paths unquoted from git
2026-10-11 11:37:57 +02:00
Adrià f4b7151097
Merge pull request #2510 from Edd016/fix/hw-oracle-mingw-lld
fix(hw-oracle): select the AMDGPU ELF emulation when linking kernels
2026-10-11 11:33:58 +02:00
GalaxyGamingFR 73b4bdb600 fix(tools): accept more device limitation skips in check_skips
The Linux skip check only recognised subgroup, "the device has no",
"the device reports" and "no display", so tests that skip with
"the device lacks ...", "does not import", "imports no", "flushes",
"binds fewer", "no usable Vulkan device" or "host imports are
unavailable" failed the job. The regex now covers those messages, and
unrelated reasons such as "flaky" still fail. A unit test covers the
messages and an end-to-end run.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:33:31 -07:00
GalaxyGamingFR 8365766e93 fix(conventions): read non-ASCII paths unquoted from git
With git's default core.quotePath=true, paths with non-ASCII characters
were printed quoted and octal-escaped. The checker stored the quoted
string as the path and then failed in git show with a traceback. git()
now passes core.quotePath=false so raw UTF-8 paths are used. A test
covers a diff containing a non-ASCII file name.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9UU71SP1UKGR51Sowbgmq
2026-10-11 02:32:41 -07:00
TibixDev 3a35841aad feat(pad): accept timed controller pulses from a local command file
Add an optional input helper for test runs without desktop input injection. Preserve physical input and release injected buttons automatically.

Validation: guest_pad tests and Python helper CLI smoke checks passed. Written with AI assistance.
2026-10-11 10:54:18 +02:00
Adrià 85c7cf9b02
Merge pull request #3343 from AchrafReyani/carry/progress-literal-braces
fix(progress): ignore braces in literals and comments when scanning bodies
2026-10-11 10:50:56 +02:00
Adrià 407b5324de
Merge pull request #2373 from 011010/ci/conventions-systemdeps-exemption
ci(conventions): exempt cmake/SystemDeps.cmake from the system-dependency rule
2026-10-11 10:26:03 +02:00
Achraf Reyani ef94a36b90 fix(progress): blank literals and comments in one pass
An apostrophe in a block comment paired with a later character literal on
the same line when literals were blanked before comments, exposing a brace
and ending the body early.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 17:17:40 +09:00
GalaxyGamingFR f3216874c5 fix(progress): ignore braces in literals and comments when scanning bodies
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-11 17:16:25 +09:00
Blazing Cook 271e31a5a3 fix(conventions): restrict silent stub exemptions to their section 2026-10-11 16:45:35 +09:00