Commit Graph

81 Commits

Author SHA1 Message Date
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 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
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
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
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
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
GalaxyGamingFR a89aa5c0d0 fix(progress): skip cells for rectangles without area
When squarify gave a group a sliver narrower than 2px, treemap passed cells a zero or negative width, so the row count became complex or divided by zero and render crashed. cells now returns no cells for rectangles without area. A regression test renders a 300 and 1 item split.

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