Accept `build-for: [all]` and `--build-for=all` for architecture-independent snaps
Metadata
Current evaluation
Resolved: Snapcraft supports build-for [all] and --build-for=all for remote builds/core24 in 8.4.0 and core22 in 8.7.0; requested core22/core24 regression tests were added.
Resolution: closed resolved
Reason: Core24 and remote-build support landed in commits 319056d7a and 3325af0c5, while core22 support/schema work landed in c9822a38c (PR #5606). Snapcraft 8.4.0 and 8.7.0 contain the respective support, and the requested core22/core24 tests were added before closure.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
Depends on: https://github.com/canonical/craft-application/issues/360
Add tests to ensure this works on Snapcraft for both core22 and core24, and fix any issues when doing this.
### Why it needs to get done
This is a core24 regression: https://forum.snapcraft.io/t/architectures/4972/25
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Resolved: Snapcraft supports build-for [all] and --build-for=all for remote builds/core24 in 8.4.0 and core22 in 8.7.0; requested core22/core24 regression tests were added. | |
| stealth/space-bunny-alpha | — | closed resolved | Support landed for build-for: all: remote-build and core24 in Snapcraft 8.4.0, and core22 in 8.7.0. #4854 closed after its requested core22/core24 tests were added. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The request to add tests and fix regressions for architecture-independent snaps on core22 and core24 was abandoned with no implementation recorded. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. The request to support build-for all for architecture-independent snaps and fix a core24 regression was abandoned after an automated Jira sync comment, with no fix or merge implemented. | |
| qwen/qwen3.6-35b-a3b | — | — | Support for build-for: [all] and --build-for=all in architecture-independent snaps was closed without resolution. No fix or pull request was merged, indicating the request was abandoned. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without implementation. The request to accept build-for all for architecture-independent snaps was abandoned, with no tests or core22/core24 fixes applied. |
Update history
No update history recorded yet.
Related work
-
Related To:
canonical/craft-application#360
(confidence 100%)
Explicit upstream dependency cited by the issue.
-
Likely Fixed By:
snapcraft#5606
(confidence 98%)
PR #5606, commit c9822a38c, added build-for support to core22 architectures; core22 support shipped in Snapcraft 8.7.0.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #4603 Investigate proper support for "build-for: all" | snapcraft | closed | Core24 will not support build-for: all; maintainers found true architecture independence uncommon and consider per-architecture snaps or remote builds sufficient. | |
| #4873 feat: support "build-for: [all]" in core24 | snapcraft | merged | Merged PR #4873 as commit 319056d7a, adding core24 support for build-for: [all] and fixing #4854. The feature shipped in Snapcraft 8.4.0. | |
| #5606 schema: add build-for in architectures for core22 | snapcraft | merged | Merged as c9822a38c via snapcraft#5606, adding build-for to the core22 architectures schema in snapcraft.json. | |
| #1999580 core22: wrong arch in snap.yaml when building for all archs | snapcraft (launchpad) | closed | Fixed in merged canonical/snapcraft#4150 (commit 77d3454d): core22 snap.yaml now records build-for (all) instead of the build-on architecture. | |
| #5859 Non-list `build-for` values are no longer allowed | snapcraft | open | A valid scalar build-for value regresses in Snapcraft 8.13.0: core22 falls back, then crashes with “cannot determine build-for architecture.” The issue is triaged and remains open. | |
| #1885150 Cannot use --build-on, architecture list is already set in snapcraft.yaml. | snapcraft (launchpad) | closed | Resolved in Snapcraft 8.7.0: remote-build added --build-for filtering for projects defining architectures or platforms, replacing the unusable --build-on workaround. | |
| #4150 meta: use build-for in snap.yaml architecture | snapcraft | merged | Merged #4150 as 77d3454d: build-for: all now writes architectures: all to meta/snap.yaml instead of the build-on architecture, fixing CRAFT-1535. | |
| #4630 feat: add platforms and drop architectures for core24 | snapcraft | merged | Merged as canonical/snapcraft#4630 (f771a4ab8), adding optional core24 platform selection and removing legacy architectures, with host build defaults. |