`core20` behaviour with short-hand architecture
Metadata
Current evaluation
Closed without fixing the core20 shorthand architecture bug, deemed a load-bearing behavior that cannot be changed. The related remote-build inconsistency was identified as a separate fixable issue tracked in #5817.
Suggested action: —
No scores available.
Issue body
### Bug Description
In the last few releases, something seems to have changed in the handling of the architectures definition for `core20` snaps.
### To Reproduce
If I create a snap with details such as:
```yaml
# ...
name: foo
version: 0.1
base: core20
architectures:
- arm64
- amd64
```
After `snapcraft pack --use-lxd`, the resulting file is `foo_0.1_multi.snap`, where it was previously `foo_0.1.amd64.snap` as I'd expect.
If I expand the definition to:
```yaml
# ...
name: foo
version: 0.1
base: core20
architectures:
- build-on: [arm64]
run-on: [arm64]
- build-on: [amd64]
run-on: [amd64]
```
Then I get the expected result. My understanding was that the two forms are supposed to be equivalent, and that the resulting `*_multi.snap` is probably a bug?
### Environment
Ubuntu 25.04, Snapcraft 8.12.0, building using LXD
### snapcraft.yaml
```yaml
see above
```
### Relevant log output
```shell
see above
```
### Additional context
Discovered while troubleshooting this issue: https://github.com/snapcrafters/sublime-text/issues/86
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Closed without fixing the core20 shorthand architecture bug, deemed a load-bearing behavior that cannot be changed. The related remote-build inconsistency was identified as a separate fixable issue tracked in #5817. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as unfixable due to historical core20 behavior. The related remote-build --build-for inconsistency was identified as fixable and tracked separately in issue #5817. Original PR #5790 was not merged. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as wontfix. Maintainers determined the core20 shorthand architecture behavior is intentional due to semantic differences in meta.yaml generation. A separate remote-build inconsistency was tracked in a new issue for future resolution. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed as a known limitation. Shorthand architecture handling producing _multi.snap files is intentional due to meta.yaml semantics. Follow-up issue #5817 tracks fixing the remote-build --build-for inconsistency. No fix merged. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Rejected as a load-bearing behavior; the core20 shorthand architecture expansion cannot be changed. The related remote-build inconsistency was tracked separately in issue #5817. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5817 Unclear remote build error with ``--build-for`` on core20 | snapcraft | open | core20 remote-build with --build-for and long-form architectures emits a misleading --build-on error. Triaged by maintainers as a likely legacy limitation; addressed in 8.14.4 via PR #6090 which improved the error message. | |
| #5790 fix: resolve core20 architecture shorthand multi-snap naming issue | snapcraft | closed | Rejected by maintainers due to unintended behavioral changes. The contributor will step back while the team implements an internal fix for the core20 architecture shorthand multi-snap naming issue. |