Skip to content

ci: test secure-memory builds in the CMake matrix - #1714

Open
Alb3e3 wants to merge 1 commit into
open-source-parsers:masterfrom
Alb3e3:ci/test-secure-memory
Open

ci: test secure-memory builds in the CMake matrix#1714
Alb3e3 wants to merge 1 commit into
open-source-parsers:masterfrom
Alb3e3:ci/test-secure-memory

Conversation

@Alb3e3

@Alb3e3 Alb3e3 commented Sep 7, 2026

Copy link
Copy Markdown

Fixes #1712.

Add secure-memory ON/OFF builds to the existing CMake matrix across Ubuntu,
Windows, macOS and C++11/17/20. Use Debug consistently across generators and run
CTest after building, including the reader/writer suites as well as unit tests.

Verified locally with GCC 15.2: all three CTest suites pass in each of the six
secure-memory/C++ configurations. The pre-#1709 secure build fails on string
allocator mismatches. Restoring only the old CZString cleanup call on current
master also makes the secure CTest run fail at ValueTest/CZStringCoverage.
Actionlint passes. Windows and macOS still need the GitHub runners.

Prepared with AI assistance; the validation commands above were run locally.

@greptile-apps

greptile-apps Bot commented Sep 7, 2026

Copy link
Copy Markdown

Greptile Summary

The PR expands the CMake CI matrix to exercise secure-memory enabled and disabled builds across three operating systems and C++11/17/20. It also standardizes Debug builds and runs the registered CTest suites after each build.

  • Adds JSONCPP_USE_SECURE_MEMORY ON/OFF matrix coverage.
  • Uses a consistent build directory and Debug configuration.
  • Runs CTest with failures and missing tests treated as CI failures.

Confidence Score: 5/5

The PR appears safe to merge, with the new matrix and test invocation using consistent CMake configuration and build paths across supported runners.

The workflow correctly passes secure-memory and language-standard values as CMake definitions, handles single- and multi-config Debug builds, and runs tests from the configured build directory.

Important Files Changed

Filename Overview
.github/workflows/cmake.yml Expands the existing matrix to 18 secure-memory/platform/language configurations and adds consistent Debug build and CTest execution; no actionable defect was identified.

Reviews (1): Last reviewed commit: "ci: test secure-memory builds in the CMa..." | Re-trigger Greptile

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.

GitHub Action should be added to ensure JSONCPP_USE_SECURE_MEMORY build does not regress

1 participant