fix(environment): sort core20 project variables before replacement
Metadata
Current evaluation
Merged PR #4366 in commit ae891d1d, sorting core20 project variables so BUILD_ON/BUILD_FOR values expand before SNAPCRAFT_ARCH_TRIPLET and fixing #4363.
Resolution: closed resolved
Reason: PR #4366 was merged as commit ae891d1d and explicitly fixes #4363. The change ensures specific SNAPCRAFT_ARCH_TRIPLET_BUILD_* variables are replaced before the base SNAPCRAFT_ARCH_TRIPLET variable.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)?
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
- [x] Have you successfully run `make lint`?
- [x] Have you successfully run `pytest tests/unit`?
-----
Sort project variables before replacement, such that `$SNAPCRAFT_ARCH_TRIPLET_BUILD_{ON|FOR}` are replaced before `$SNAPCRAFT_ARCH_TRIPLET`.
source: https://github.com/canonical/craft-parts/issues/541
Fixes #4363
(CRAFT-2035)
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #4366 in commit ae891d1d, sorting core20 project variables so BUILD_ON/BUILD_FOR values expand before SNAPCRAFT_ARCH_TRIPLET and fixing #4363. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #4366 as ae891d1d, sorting core20 variables so SNAPCRAFT_ARCH_TRIPLET_BUILD_* is replaced before SNAPCRAFT_ARCH_TRIPLET; fixes #4363. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #4366 to sort core20 project variables before replacement, fixing premature expansion of SNAPCRAFT_ARCH_TRIPLET_BUILD_ON/FOR by SNAPCRAFT_ARCH_TRIPLET. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #4366 as ae891d1d, sorting core20 project variables so BUILD_ON/BUILD_FOR triplet variables are replaced before SNAPCRAFT_ARCH_TRIPLET. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #4366 in commit ae891d1d, sorting core20 project variables so specific SNAPCRAFT_ARCH_TRIPLET_BUILD_* names are replaced before SNAPCRAFT_ARCH_TRIPLET. Closes #4363 (CRAFT-2035). | |
| qwen/qwen3.6-35b-a3b | — | — | Merged fix sorting core20 project variables before replacement to ensure build-specific arch triplet variables are processed before the general one. Resolves #4363 after passing CI and receiving two approvals. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix that sorts core20 project variables before replacement, ensuring build-specific arch triplet variables are processed before the base arch triplet. Resolves issue #4363 by correcting environment variable substitution order. |
Update history
No update history recorded yet.
Related work
-
Related To:
snapcraft#4363
(confidence 100%)
Issue explicitly cited and fixed by PR #4366.
-
Related To:
craft-parts#541
(confidence 100%)
Upstream premature parts-variable expansion issue cited as the source.
-
Related To:
craft-parts#554
(confidence 100%)
Upstream implementation of the same variable-ordering fix.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #571 fix(environment): sort project variables before replacement | craft-parts | merged | Merged in canonical/craft-parts#571 as bdc12ec4, sorting project variables so specific build-on/build-for names are replaced before shorter prefixes. | |
| #554 fix(environment): sort project variables before replacement | craft-parts | merged | Merged #554 (438fa857) sorted project variables by descending name length, fixing premature triplet expansion; the fix reached mainline via #571 (bdc12ec4) and resolved #541. | |
| #4313 environment: add build-on and build-for envvars for core20 | snapcraft | merged | Merged PR #4313 as 93a9d8170, adding core20 SNAPCRAFT build-on/build-for architecture and triplet environment variables plus tests. | |
| #541 Premature parts environment variable expansion | craft-parts | closed | Fixed premature CRAFT_ARCH_TRIPLET_BUILD_FOR expansion by sorting variable replacements; merged in craft-parts#554 (438fa857). |