← Back to issue list

No support for paralell builds for multi-base charms

View original Github issue

Metadata

Project
charmcraft
Number
#861
Type
issue
State
open
Author
fnordahl
Labels
Status: Triaged Type: Enhancement
Created
Updated
Closed

Current evaluation

Feature request to add optional parallel builds for multi-base charms (e.g. a --base-build-concurrency option). Triaged and acknowledged by maintainers as a valid enhancement; still open and unimplemented, with a recent 2025 comment noting it is a full cycle of work for the craft ecosystem.

Suggested action: keep open

Reason: The issue is labeled Status: Triaged / Type: Enhancement and has maintainer engagement: facundobatista proposed a `charm-base-build-concurrency` option (default 1, disallowed in destructive mode) and flagged the terminal-output/log-prefixing problem, and a 2025-09-17 comment confirms it is still wanted but 'a full cycle's worth of work'. Code inspection confirms no concurrency support exists (no ThreadPool/concurrency in the pack path; --bases-index is still sequential), so it is not implemented and remains relevant.

Impact: 50 Quick Win: 12.5 Staleness: 35 Complexity: 75 Confidence: 80 Support Request: 10

Issue body

For a charm with multiple bases it would be useful to be able to optionally have charmcraft build those bases in parallel. With charmcraft's use of build providers such as LXD this should in theory be possible to implement. The reasoning behind this request comes from the need to build charms from source and/or for non-x86/arm architectures. When building from source, most of the build time is spent in `pip`'s dependency resolution algorithm, and very little time is spent actually compiling code. Other architectures currently don't have pre-compiled wheels shipped on PyPi, so everyone would need to build from source for those architectures. The lack of support for this natively in `charmcraft` could be worked around by interpreting the charmcraft.yaml and running multiple invocations of `charmcraft` with an appropriate `--bases-index` argument. But it feels like an awful lot of work to delegate to the end user, and it would be much simpler with a `--base-build-concurrency N` argument or something similar?

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.8-27b
Impact: 50
Quick Win: 12.5
Staleness: 35
Complexity: 75
Confidence: 80
Support Request: 10
keep open Feature request to add optional parallel builds for multi-base charms (e.g. a --base-build-concurrency option). Triaged and acknowledged by maintainers as a valid enhancement; still open and unimplemented, with a recent 2025 comment noting it is a full cycle of work for the craft ecosystem.
qwen/qwen3.6-35b-a3b
Staleness: 75
Complexity: 70
Confidence: 85
Support Request: 5
keep open Enhancement request to add parallel build support for multi-base charms in charmcraft to speed up source and cross-architecture builds. Currently triaged but inactive for ~10 months, with maintainers noting significant implementation effort and terminal handling considerations.
qwen3.6-35b-a3b-mtp-q6
Staleness: 75
Complexity: 80
Confidence: 75
Support Request: 10
keep open Feature request for parallel multi-base charm builds to improve cross-architecture and source build times. Triaged and acknowledged by maintainers as a valid but large-scope enhancement for the craft ecosystem, currently awaiting prioritization.
qwen3.6-35b-a3b-mtp-q6
Staleness: 70
Complexity: 85
Confidence: 75
Support Request: 10
keep open Feature request to add parallel build support for multi-base charms in charmcraft to improve build times. Currently triaged, with maintainers noting it requires significant ecosystem-wide effort and technical work to manage concurrent terminal output.
qwen3.6-35b-a3b-mtp-q6
Staleness: 75
Complexity: 68
Confidence: 85
Support Request: 5
keep open Add parallel build support for multi-base charms in charmcraft to speed up source and non-x86 compilation. Triaged and under discussion, but deferred to a future cycle due to log handling complexity and team capacity. Internal Jira ticket CHARMCRAFT-655 created.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#1789 Unable to build multi-base subordinate charms on 24.04 charmcraft closed Reported build failures for multi-base subordinate charms under charmcraft 3's new syntax. Closed after a user identified PR #2054 as the resolution for configuring multiple bases.
74%