Skip to content

ci(actions): require cross-platform unit tests - #143

Closed
macmixing wants to merge 19 commits into
mainfrom
codex/issue-130-clean-clone-ci
Closed

ci(actions): require cross-platform unit tests#143
macmixing wants to merge 19 commits into
mainfrom
codex/issue-130-clean-clone-ci

Conversation

@macmixing

@macmixing macmixing commented Jul 31, 2026

Copy link
Copy Markdown
Collaborator

What changed

  • run the full CMake build and CTest suite for ready pull requests on Ubuntu 24.04 and macOS 15
  • install prebuilt platform dependencies instead of rebuilding the full vcpkg dependency graph
  • fail the pull-request check when either platform build or unit test fails
  • keep model runtimes and model assets out of pull-request CI and report that omission explicitly
  • fix portability and test-isolation defects exposed by clean Linux and macOS runners

Validation

Closes #130

- run CTest on Linux, macOS, and Windows pull requests
- use prebuilt platform dependencies instead of rebuilding vcpkg
@macmixing
macmixing force-pushed the codex/issue-130-clean-clone-ci branch from a31fb94 to ed95a14 Compare July 31, 2026 14:34
@macmixing
macmixing marked this pull request as ready for review July 31, 2026 14:34
@macmixing macmixing changed the title ci(actions): add clean-clone coverage ci(actions): require cross-platform unit tests Jul 31, 2026
macmixing added 18 commits July 31, 2026 07:36
- avoid repository manifest expansion during the Linux dependency step
- install Ubuntu's required zipcmp companion package
- use Homebrew OpenCV 4 with its keg prefix
- limit the matrix to the current POSIX build targets
- install every Ubuntu libzip companion required by its CMake export
- select the runner's Xcode 26.3 toolchain for floating-point character conversion
- avoid the floating-point from_chars API introduced in macOS 26
- retain finite binary64 validation through the existing JSON parser
- make the embedded SVPI reader tests compile independently with GCC
- remove the macOS 26 Xcode override after making decimal parsing portable
- make the inspector unit test compile with the Linux standard library
- avoid enabling an optional model runtime without model assets
- report the intentional model-dependent test omission
- provide the existing valid cache fixture to batch creation cases
- remove dependence on a developer machine model installation
- emit numeric values when present
- emit JSON null when quality measurements are absent
- expect the native model-cache location on macOS, Linux, and Windows
- use the native wide-character executable lookup
- apply platform-specific path and executability handling
- build and run the full CTest suite with the UCRT64 toolchain
- keep Windows alongside Ubuntu and macOS in pull-request checks
- use Windows pipe APIs and command quoting
- retain POSIX exit-status handling on Unix
- use Windows pipe and command conventions
- preserve Unix process status handling
- use Windows pipe APIs and quoting
- preserve Unix exit-status behavior
- use Windows pipe and null-device conventions
- retain Unix decoder behavior
- read stable Windows file identity and timestamps
- preserve Unix stat-based verification
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add clean-clone CI coverage

1 participant