← Back to issue list

Add multi-bases support for charm build plans

View original Github issue

Metadata

Project
craft-platforms
Number
#73
Type
issue
State
closed
Author
mr-cal
Labels
Type: Enhancement Status: Triaged
Created
Updated
Closed

Current evaluation

Multi-base charm build-plan support was merged in PR #81 (commit 519b705), with validation tightening and error-handling updates; it resolved #73.

Resolution: closed resolved

Reason: Merged PR canonical/craft-platforms#81 as commit 519b705. The PR added multi-base support for charm build plans and explicitly fixed #73.

Evaluated by: mr-cal-bot

No scores available.

Issue body

### What needs to get done Polish the prototype in [work/CRAFT-3668/multibase-prototype](https://github.com/canonical/craft-platforms/tree/work/CRAFT-3668/multibase-prototype) to support multi-base builds as defined in [ST124](https://docs.google.com/document/d/1QVHxZumruKVZ3yJ2C74qWhvs-ye5I9S6avMBDHs2YcQ/edit?tab=t.0) for the charm build planner. ### Missing work 1. Unit tests 2. Changelog, tag and release ### Why it needs to get done To support multi-base builds in charmcraft. ### Downstream work - https://github.com/canonical/craft-application/issues/569 - https://github.com/canonical/charmcraft/issues/2008

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Multi-base charm build-plan support was merged in PR #81 (commit 519b705), with validation tightening and error-handling updates; it resolved #73.
qwen/qwen3.6-35b-a3b — closed resolved Fixed in craft-platforms#81 by merging multi-base support for charm build plans, including validation tightening and error handling updates.

Update history

Date Change
created

Related work

Related issues

Issue Project State Summary Similarity
#81 feat: multi-base support for charm build plans craft-platforms merged Merged PR #81 as commit 519b705, adding multi-base charm build-plan support and fixing #73, with stricter shorthand validation and CraftPlatformsError.
89%
#215 fix(charm): accept redundant multi-base charms craft-platforms merged Merged PR #215 as commit 4879309, allowing redundant multi-base charms when they produce equivalent valid build plans and addressing canonical/charmcraft#2620.
81%
#383 commands/build: charm file name format support for bases (CRAFT-66) charmcraft merged Merged PR #383 (commit 951f6aaa; merge 1c839909) added bases-aware charm filename formatting and tests, retaining the legacy runtime path pending default-bases configuration.
76%
#148 feat(charm): add a build planner for bases charms craft-platforms merged Merged PR #148 added a Charm build planner for legacy charms using the bases key, addressing CHARMCRAFT-630 in commit 16ff218.
75%
#1789 Unable to build multi-base subordinate charms on 24.04 charmcraft closed Multi-base builds were implemented with platforms-based recipes in merged PR #2054 (commit 1ad02d82), enabling one recipe to build charms for multiple Ubuntu bases.
74%
#569 Allow multi-base builds craft-application closed Multi-base build plans were enabled by merged PR #598 (d81c39a7), explicitly fixing #569; PR #812 (c4bf6b4c) later added ProjectService compatibility for 5.5.0.
74%
#79 Unify charm build planner with default build planner craft-platforms open Maintainer-authored refactor to consolidate the separate charm planner into the default planner. Implicit build-for parity now exists, but multi-base semantics still differ.
73%
#3 Implement a basic API that makes a build plan for charms craft-platforms closed Charm build planning was implemented and merged in PR #148 (commit 16ff218), providing bases-charm build plans for Charmcraft and Launchpad.
73%
#861 No support for paralell builds for multi-base charms charmcraft open Enhancement request (triaged) to let `charmcraft pack` build the bases/platforms of a multi-base charm in parallel; still unimplemented, scoped upstream to the whole craft ecosystem (CHARMCRAFT-655).
72%
#2008 Multi-base platform support charmcraft closed Multi-base support shipped in charmcraft#2054 (commit 1ad02d82) via platforms-based recipes; the prototype was not separately polished, but the requested capability was implemented.
71%