The PR build (ci-pull-request.yml) only runs Debian/Fedora. Platform-specific compile/link failures therefore only surface after merge in the nightly/RC — e.g. the AppleClang constexpr error, the Assimp bundled-zlib break on the macOS SDK, and the Win-ARM64 LNK2001. All of those cost a full RC cycle to catch.
Change
Make the build path-aware in ci-pull-request.yml:
- Add a
code output to the detect job — true when src/**, deps/**, **/CMakeLists.txt or version.inc change (deps always count → never skipped).
- Run macOS (15 ARM Universal) + Windows (2022 x64) when
code == true.
- Doc-only and most workflow-only PRs still don't trigger any build (paths filter); pure packaging changes still only run the relevant Linux job.
Trade-off: src/deps PRs become multi-platform (slower), but platform breakage is caught in the PR instead of after merge.
The PR build (
ci-pull-request.yml) only runs Debian/Fedora. Platform-specific compile/link failures therefore only surface after merge in the nightly/RC — e.g. the AppleClangconstexprerror, the Assimp bundled-zlib break on the macOS SDK, and the Win-ARM64LNK2001. All of those cost a full RC cycle to catch.Change
Make the build path-aware in
ci-pull-request.yml:codeoutput to thedetectjob — true whensrc/**,deps/**,**/CMakeLists.txtorversion.incchange (deps always count → never skipped).code == true.Trade-off: src/deps PRs become multi-platform (slower), but platform breakage is caught in the PR instead of after merge.