You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`mcpp::runner(tok)`*(2026.8.19.2+)*|`mcpp:runner=` — see below |
124
-
|`mcpp::xpkg_dir(ns, name)` / `mcpp::xpkg_dir(name)`*(2026.8.19+)*| the payload directory of a package this manifest declared in `[xlings.workspace]`; `""` when it was not declared or is not installed (see below) |
124
+
|`mcpp::xpkg_dir(ns, name)` / `mcpp::xpkg_dir(name)`*(2026.8.19+)*| the payload directory of a package declared in `[xlings.workspace]` — by this manifest, or by a dependency compiled into this build program *(2026.9.6.6+)*; `""` when it was not declared or is not installed (see below) |
125
125
|`mcpp::warning(text)`*(2026.8.21.2+)*|`mcpp:warning=` — see below |
126
126
|`mcpp::action{…}.submit()`*(2026.8.5.1+)*|`mcpp:action=` — declares a **build-graph node** instead of doing the work here (see below) |
127
127
@@ -335,6 +335,18 @@ A **pinned** reference resolves to exactly that version or to nothing. A
335
335
build that asked for `1.8.12` and silently got `1.9.0` is an answer only
336
336
discovered later, in the artifact.
337
337
338
+
A **constrained** one (`>=8.5.0`, `^1.2`) resolves to the highest installed
339
+
version satisfying it *(2026.9.6.6+)*. Before that release the whole version
340
+
position was compared against a directory name, so a range installed a payload
341
+
and then answered that nothing was installed — which is why a rule package
342
+
could not state a floor and every project repeated its rule's package list.
343
+
344
+
**A package a DEPENDENCY declared is answered too***(2026.9.6.6+)*, at the
345
+
version this build actually installed rather than the one the local manifest
346
+
wrote. One package means one version: where a project and a rule both name it,
347
+
the declaration nearer the artifact wins and both sides are told the same
348
+
answer. See *One package, one version* in [05 — mcpp.toml](05-mcpp-toml.md).
349
+
338
350
**`[feature-xlings.<f>]` is answered too, while `<f>` is active**
339
351
*(2026.9.6.2+)*. That table has provisioned its packages since it existed --
340
352
naming one downloads and installs it -- but the build program's environment was
0 commit comments