← Back to issue list

fix(legacy): accept --build-for on long-form architecture remote build

View original Github issue

Metadata

Project
snapcraft
Number
#5819
Type
pull request
State
closed
Author
bepri
Labels
—
Created
Updated
Closed

Current evaluation

PR #5819 was closed as superseded by merged PR #6090 (commit 527ff6d2c), which improved the legacy remote-builder’s --build-for error handling instead.

Resolution: closed superseded

Reason: A maintainer explicitly marked #5819 as superseded by #6090. That PR was merged as commit 527ff6d2c and replaced the proposed behavior with a clearer error for unsupported legacy long-form architectures.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- [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`? - [ ] Have you successfully run `make test`? --- Changes the behavior of the legacy remote builder to accept `--build-for` when using the long-form architecture notation. The issue was that for the long-form, architectures were decoded from the project, and then an error would be raised even if `--build-for` narrowed the project to a valid subset of architectures. Now, `--build-for` is given priority and an error is only raised if the selected platforms aren't a subset of the available ones. I know that the error message says `--build-on`, both flags had this issue and I don't see a way to raise a more generic error message with click - it seems to only allow raising for a single bad flag usage. Fixes #5817.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed superseded PR #5819 was closed as superseded by merged PR #6090 (commit 527ff6d2c), which improved the legacy remote-builder’s --build-for error handling instead.
stealth/space-bunny-alpha — closed superseded PR #5819 was closed as superseded by merged PR #6090 after testing showed --build-for still failed with long-form architectures on core20.
qwen/qwen3.6-35b-a3b — — Superseded by PR #6090. This PR attempted to fix legacy remote build handling of the --build-for flag with long-form architectures. Testing revealed it still failed, so the maintainer closed it in favor of a newer fix.
qwen3.6-35b-a3b-mtp-q6 — — Fixes --build-for handling with long-form architecture notation in the legacy remote builder. Testing revealed the change did not resolve the error. The pull request was closed and superseded by #6090.

Update history

No update history recorded yet.

Related work

  • Superseded By: canonical/snapcraft#6090 (confidence 100%)

    The maintainer cited #6090 as the replacement; it was merged and resolves the related #5817 behavior.

  • Related To: canonical/snapcraft#5817 (confidence 100%)

    #5819 originally targeted #5817; #6090 later addressed that issue with clearer validation.

Related issues

Issue Project State Summary Similarity
#6090 feat(remote-build/legacy): improve error when building with --build-for snapcraft merged Merged PR #6090 improved legacy remote-builder errors for core20, clarifying that --build-for requires shorthand architectures because of Launchpad limitations. It addresses #5817 and supersedes #5819.
84%
#3919 cli: move remote build out of legacy snapcraft merged Merged as 686d69711, moving remote-build CLI logic out of legacy, exposing --build-for, hiding --build-on, and stopping the emitter during confirmation prompts.
74%
#5817 Unclear remote build error with ``--build-for`` on core20 snapcraft open Legacy remote-build rejected --build-for on core20 long-form architectures with a cryptic 'architecture list is already set' error. Maintainers traced it to a long-standing Launchpad/legacy builder limitation; fixed as a better error message in #6090, and the legacy builder was later removed entirely.
73%
#4793 fix(remote-build): don't fail with certain archs snapcraft merged Merged into the hotfix branch as commit 53ec55cef, fixing architecture-specific remote-build failures from #4780, with companion support in craft-application#343.
72%
#2774 remote-build: architecture handling snapcraft merged Merged PR #2774 via commit 8300281d6, cleaning up and fixing remote-build architecture handling. Missing CLI unit tests were acknowledged as follow-up work.
71%
#5676 remote build: remove legacy remote builder snapcraft closed Fixed in merged PR #5994 (commit b08f1a66e) for Snapcraft 9.0 by removing the legacy remote builder, selection logic, strategy env var, and legacy credential support.
70%
#2467 remote-build: add support for `--build-for` charmcraft open remote-build still rejects --build-for; this untriaged feature request would enable architecture-selective Launchpad builds and reduce queue-related build time.
70%
#5265 fix(remotebuild): don't fail when cross-compiling snapcraft merged Merged PR #5265 fixed remote cross-compilation by sending build-on architectures to Launchpad; commit f94da8f13 closed #4996.
70%