← Back to issue list

fix: resolve core20 architecture shorthand multi-snap naming issue

View original Github issue

Metadata

Project
snapcraft
Number
#5790
Type
pull request
State
closed
Author
Nalin-Kumar-Gupta
Labels
—
Created
Updated
Closed

Current evaluation

External PR to fix core20 shorthand architecture producing multi-arch snaps was declined by maintainer (bepri) as better fixed internally; superseded by merged PR #5818 (commit f0a732be3) adding a warning, shipped in 8.13.0.

Resolution: closed superseded

Reason: Maintainer bepri closed the PR without merging, noting it changed other behaviours unintentionally. The underlying issue canonical/snapcraft#5789 was then addressed by merged PR #5818 (commit f0a732be3), which only added a warning for the architecture shorthand, released in Snapcraft 8.13.0.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- Fixes (https://github.com/canonical/snapcraft/issues/5789) - Fix shorthand architectures (e.g., [arm64, amd64]) creating 'multi' snaps instead of architecture-specific snaps - Update legacy architecture processing to find matching host architecture in shorthand form - Ensure snap metadata uses resolved build-for architecture instead of raw architectures list - Make shorthand and expanded architecture forms behave equivalently Fixes issue where core20 snaps with shorthand architecture definitions would produce foo_0.1_multi.snap instead of the expected foo_0.1_amd64.snap when building on amd64. The expanded form: architectures: - build-on: [arm64] run-on: [arm64] - build-on: [amd64] run-on: [amd64] Now behaves identically to the shorthand form: architectures: [arm64, amd64] Both forms will now build architecture-specific snaps rather than multi-arch snaps. - [x] Have you followed the [guidelines for contributing](https://github.com/canonical/snapcraft/blob/main/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 `make test`? ---

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed superseded External PR to fix core20 shorthand architecture producing multi-arch snaps was declined by maintainer (bepri) as better fixed internally; superseded by merged PR #5818 (commit f0a732be3) adding a warning, shipped in 8.13.0.
stealth/space-bunny-alpha — closed not a bug PR #5790 was closed unmerged after a maintainer said it caused unintended behavior changes. #5789 was closed as load-bearing behavior; remote-build concerns moved to open #5817.
qwen/qwen3.6-35b-a3b — — 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.
qwen3.6-35b-a3b-mtp-q6 — — Rejected due to unintended side effects. Maintainers declined the core20 architecture shorthand fix, preferring an internal implementation and advising contributors to coordinate before submitting changes.

Update history

No update history recorded yet.

Related work

  • Superseded By: canonical/snapcraft#5818 (confidence 95%)

    Merged internal PR that addressed #5789 by adding a core20 architecture-shorthand warning (commit f0a732be3), rather than the behavioural fix proposed here.

  • Duplicate Of: canonical/snapcraft#5789 (confidence 90%)

    PR states it fixes issue #5789 ('core20 behaviour with short-hand architecture'), which was closed with legacy behaviour accepted.

Related issues

Issue Project State Summary Similarity
#5818 feat(legacy): add a warning for the architecture shorthand on core20 snapcraft merged Merged PR #5818 (commit f0a732be3), adding a core20 architecture-shorthand warning; released in Snapcraft 8.13.0 for #5789.
80%
#2009520 core18/20: inconsistent architecture parsing snapcraft (launchpad) closed Superseded by snapcore/snapcraft#4340 and #4341. Core22+ overlapping build-on handling merged in #3821 (4876b53); core20 support was declined.
74%
#5588 fix!: use platform name in snap filename snapcraft merged Merged PR #5588 (57080e5c7) changed Core24 snap filenames to use platform names, preventing same-architecture platforms from overwriting each other; fixes #5399.
74%
#1997752 base core20: wrong arch triplet snapcraft (launchpad) closed Wrong SNAPCRAFT_ARCH_TRIPLET for core20 build-on/run-on builds fixed by adding SNAPCRAFT_ARCH_BUILD_ON/BUILD_FOR and *_TRIPLET_BUILD_FOR envvars (PR #4313, commit 93a9d8170); follow-up #4332 (48bd0632f) errors on unevaluable multi-arch cases.
73%
#4436 docs(architectures): remove shorthand notation for core22 architectures snapcraft merged Merged PR #4436 in commit 0e9ea29b7, removing core22 architecture shorthand from the docs because Launchpad does not support it; Snapcraft still accepts the syntax.
73%
#5789 `core20` behaviour with short-hand architecture snapcraft closed Core20 shorthand packing was retained as legacy behavior: PR #5790 was closed unmerged, while PR #5818 (f0a732be3) added a warning in 8.13.0; remote-build handling moved to #5817.
73%
#5003 Building snap with `core20` failed with non-informative error message snapcraft open The misleading core20 snapcraft-pack error was fixed by merged PR #5616 (commit b511004af), which ran the lifecycle for legacy core20 snaps.
73%
#1862256 snapcraft should complain loudly when building base: core20 snap on i386 snapcraft (launchpad) closed Closed as superseded: improved architecture parsing rejects unsupported core20/i386 builds, making a dedicated check unnecessary; snapcraft#4392 improved this handling.
71%
#5399 Use the platform in snap names to prevent overwrites snapcraft closed Fixed by merged PR canonical/snapcraft#5588 (commit 57080e5c7), using platform names in Core24 snap filenames to prevent same-architecture artifacts from overwriting each other.
70%