2026.9.29.2: a workspace plan reads what a member states about itself from the member - #739
Merged
Merged
Conversation
… from the member The plan's root is a virtual root that holds the values shared by the whole graph. Five statements a member makes about itself were read from that root in 2026.9.29.1 and were therefore empty; the mcpp-index sweep of 2026.9.29.1 found the first two, and an inventory of every read of the root's manifest found the rest (design document section 17.1). - A member's relative [indices].path is anchored at the member when the member is loaded; it was resolved against the workspace root (e2e 120). - The std module is built when a selected member's target entries import std, so a member whose only sources are its tests is tested (e2e 836 M1). - Each selected member's [resources] and windows_code_page are compiled against the member's directory and include directories, under res/<member>/, and embedded into the member's images only (e2e 837). A quoted include or resource file in a script is found through the include directories, as the resource compiler finds it. - [build] linkage is a root-position value. - A member's unknown mcpp: capability is refused, and its cfg() and schema warnings are reported, as a root's (e2e 836 M2, M3).
… compiler searches, the package directory first
Sunrisepeak
added a commit
to mcpplibs/mcpp-index
that referenced
this pull request
Sep 29, 2026
…9.29.3; ignore the workspace-root build outputs (#488) 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; these four paths are ignored. 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, and 2026.9.29.3 (mcpp-community/mcpp#740) places the runtime files of a program shipped through artifacts. - validate.yml pins mcpp 2026.9.29.3; index.toml latest_mcpp -> 2026.9.29.3, min_mcpp unchanged. - The graphics check reads the member's program from its product directory, bin/<package name>/ of the workspace's build directory. The full sweep with 2026.9.29.3 (run 36525705026) passed on every platform.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The plan's root is a virtual root that holds the values shared by the whole
graph. Five statements a member makes about itself were read from that root in
2026.9.29.1 and were therefore empty; the mcpp-index sweep of 2026.9.29.1 found
the first two, and an inventory of every read of the root's manifest found the
rest (design document section 17.1).
is loaded; it was resolved against the workspace root (e2e 120).
so a member whose only sources are its tests is tested (e2e 836 M1).
against the member's directory and include directories, under
res//, and embedded into the member's images only (e2e 837). A
quoted include or resource file in a script is found through the include
directories, as the resource compiler finds it.
warnings are reported, as a root's (e2e 836 M2, M3).
Criteria: each of e2e 120 (member leg), 836 (M1-M3) and 837 fails on the released 2026.9.29.1 and passes on this branch; unit tests IndexPathsAreAnchoredWhereTheyWereWritten, RootPositionValuesSeparateMembers (linkage) and InputsAreResolvedThroughTheIncludeDirectories.
Refs #734.