Skip to content

Commit 6c377ce

Browse files
committed
ci: validate every member with mcpp 2026.9.29.2; latest_mcpp -> 2026.9.29.2; ignore the workspace-root build outputs
mcpp 2026.9.29.1 builds a workspace as one graph per configuration and writes the build directory, project data, compile database and lock at the workspace root. 2026.9.29.2 (mcpp-community/mcpp#739) corrects what such a plan reads from its members, among them a member's own relative [indices].path, which 47 members of this index declare.
1 parent 1e571c4 commit 6c377ce

3 files changed

Lines changed: 30 additions & 2 deletions

File tree

‎.github/workflows/validate.yml‎

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,23 @@ env:
377377
# as its floor, and tests/examples/mcpp-plugins builds against it. Engine
378378
# warnings the members may newly print: W1 to W3 of SPEC-008 (the library
379379
# interface), warnings only.
380-
MCPP_VERSION: "2026.9.28.3"
380+
#
381+
# 2026.9.29.1 (mcpp-community/mcpp#738) builds a workspace as one graph per
382+
# configuration: `mcpp test -p <member>` plans that member and what it
383+
# reaches in the workspace's build directory, `target/<triple>/<key>/` at
384+
# this repository's root, with the member's products in `bin/<name>/`. The
385+
# members' own `tests/examples/*/target/` directories are no longer written.
386+
# The directory name no longer hashes a package's own flags, so a member
387+
# whose flags differ from another's shares the directory and ninja rebuilds
388+
# the commands that changed.
389+
#
390+
# 2026.9.29.2 (mcpp-community/mcpp#739) reads what a member states about
391+
# itself from the member: a member's own relative [indices].path is anchored
392+
# at the member, a member whose tests import std is tested with the std
393+
# module built, and a member's product directory holds every shared library
394+
# of its closure. 2026.9.29.1 is not used here: its sweep refused the 47
395+
# members that declare their own [indices].
396+
MCPP_VERSION: "2026.9.29.2"
381397

382398
jobs:
383399
lint:

‎.gitignore‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
.xlings-index-cache.json
2+
# The workspace's build directory, project data, compile database and lock:
3+
# mcpp 2026.9.29.1+ writes them at the workspace root for every member.
4+
/target/
5+
/.mcpp/
6+
/compile_commands.json
7+
/mcpp.lock
28
# example project build/fetch artifacts
39
tests/examples/*/target/
410
tests/examples/*/.mcpp/

‎index.toml‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,13 @@
126126
# registers mcpp.plugins 0.17.0, whose package floor it is. The release changes
127127
# no descriptor grammar; its `[package] mcpp` key is manifest vocabulary, which
128128
# an older engine reports as unsupported and ignores.
129+
# ── 2026-09-29: latest_mcpp -> 2026.9.29.2, min_mcpp unchanged ─────────────
130+
#
131+
# Moved in the pull request that moves validate.yml's pin to 2026.9.29.2,
132+
# which runs every member on every platform with it. 2026.9.29.1 is skipped:
133+
# it resolved a member's own relative [indices].path against the workspace
134+
# root. Neither release changes descriptor grammar.
129135
[index]
130136
spec = "1"
131137
min_mcpp = "2026.9.18.3"
132-
latest_mcpp = "2026.9.28.3"
138+
latest_mcpp = "2026.9.29.2"

0 commit comments

Comments
 (0)