Skip to content

Add GitHub Actions coverage for Meson D and C++ tests - #491

Open
jmh530 wants to merge 5 commits into
libmir:masterfrom
jmh530:meson-ci-tests
Open

jmh530 wants to merge 5 commits into
libmir:masterfrom
jmh530:meson-ci-tests

Conversation

@jmh530

@jmh530 jmh530 commented Oct 14, 2026

Copy link
Copy Markdown
Contributor

Depends on #490. Until that PR merges, this branch includes its prerequisite documentation-build changes.

Add a separate GitHub Actions workflow for the Meson library unit tests and C++ interoperability example using LDC 1.36.0 and pinned dependencies.

The build driver’s new --tests-only mode preserves the existing Meson test versions, including mir_secure_memory, and DIP1008. Both named test suites must pass. Build and test diagnostics are uploaded as artifacts.

Local validation passed:

  • Meson D and C++ tests.
  • Source-snapshot regression check.
  • Existing HTML build, generating 84 pages.

Remote validation is pending. CircleCI, extracted documentation examples, and release publishing remain unchanged.

AI-Assisted-By: Codex (GPT-6 Astra Medium)

Remove stale parameter documentation from constant interpolation and
string-map declarations, and document the polynomial coefficient type
on the declaration where it is defined. These corrections allow HTML
generation with documentation warnings treated as errors.

Add mir.bignum.internal.parse, mir.internal.ldc_simd, mir.stdio, and
mir.string to the Meson source list so the build includes these modules.

AI-Assisted-By: Codex (GPT-6 Astra Medium)
Build documentation for pull requests, master pushes, and manual runs
without requiring CircleCI access. Upload the HTML preview and build
diagnostics as artifacts for review.

Add a Python build driver that reuses the existing Ddoc templates with
LDC 1.36.0, pinned Python dependencies, and pinned template and mir-core
revisions. Preserve build inputs, logs, and a version manifest.

Copy tracked working-tree edits into an isolated source snapshot for
local reproduction. Cover additions, modifications, and deletions with
a regression check that also runs in the workflow.

Select HTML targets only. Nine modules still have extracted-example
compilation failures, and legacy links need repair before deployment.

AI-Assisted-By: Codex (GPT-6 Astra Medium)
Restore the executable permission supplied by the legacy Dockerfile
after cloning the pinned documentation assets. Without it, Meson
cannot find dtools_tests_extractor on a native Linux filesystem.

AI-Assisted-By: Codex (GPT-6 Astra Medium)
Use symbol references for bignum views, serde attributes, and iteration
functions. Update moved graph and sorting references, and render
namespaces without overview pages as plain text.

Route Mir-core references through the existing cross-project macros
and Phobos references to the official documentation.

AI-Assisted-By: Codex (GPT-6 Astra Medium)
Run the Meson library tests and C++ interoperability example with
LDC 1.36.0 and the pinned build dependencies. Preserve the existing
test versions and DIP1008 compiler option.

Add a tests-only mode to the build driver and upload build and test
diagnostics. Keep HTML generation, extracted documentation examples,
and release publishing separate.

AI-Assisted-By: Codex (GPT-6 Astra Medium)
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.

1 participant