feat(platforms): support --build-for to select platform
Metadata
Current evaluation
Merged to add --build-for flag for platform selection and update _filter_plan API with host_arch parameter for remote builds. Approved by two reviewers, passed CI, and resolves issue #254.
Suggested action: —
No scores available.
Issue body
Filter plans based on `platform`, `build-on`, and `build-for`.
Use `platform` if it matched `build-for`
There is an API change that `_filter_plan` now need `host_arch` parameter, which can be used in remote builds.
Fixes: #254
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged to add --build-for flag for platform selection and update _filter_plan API with host_arch parameter for remote builds. Approved by two reviewers, passed CI, and resolves issue #254. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged implementation of --build-for flag to select platforms. Filters plans by platform, build-on, and build-for, using platform for matches. Updates _filter_plan API to require host_arch for remote builds. Closes issue #254. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5216 feat(remotebuild)!: filter build-plan with --build-for, drop --platform | snapcraft | merged | Merged after review and passing CI. Introduces --build-for to filter build plans, removes --platform due to Launchpad API limitations, and improves error handling. Resolves #4992. | |
| #4992 remote build: filter build plan with `--build-for`, drop `--platform` | snapcraft | closed | Resolved via PR #5216. Implemented --build-for filtering for remote build plans. The --platform flag was dropped pending full Launchpad support for the platforms key. | |
| #365 feat: accept build-for: [all] in platforms | craft-application | merged | Merged via rebase after approval and passing CI. Enables build-for: [all] in platform definitions, restricting other platforms when used. Resolves #360. | |
| #4994 fix(remotebuild): parse '--build-for' and '--platform' | snapcraft | merged | Merged fix for remote-build parsing of --build-for and --platform flags. Enforces flag restrictions, updates documentation, and resolves issues #4858 and #4881. Approved by two reviewers with passing CI checks. | |
| #5687 feat(remote): allow using shorthand platforms with --build-for | snapcraft | merged | Merged a feature enabling shorthand platforms with the --build-for flag. The change removes a prior restriction now that related Launchpad bugs are resolved. Approved by three reviewers and passed CI checks before integration. | |
| #86 feat(project): add support to platforms in build plan | craft-application | merged | Implemented generic platform name filtering for build plans, resolving issue #83. Merged after reviewer approval and passing CI checks with 100% diff coverage. | |
| #442 fix(platform): automatically vectorise architectures | craft-application | merged | Merged fix allowing the Platform model to accept string or list values for build-on and build-for architectures, resolving issue #1874. Approved by two reviewers, passed CI, and modified two files. |