Add `output-file` to charmcraft.yaml so the developer can control the resulting file name
Metadata
Current evaluation
No output-file key was added. Charmcraft 3 named platforms provide shorter, developer-controlled filenames; maintainers closed #494 in 2025 as unlikely to proceed further.
Resolution: closed stale
Reason: The proposed output-file feature was abandoned after years without implementation. Maintainer comments demonstrated that named `platforms` entries already provide filenames such as `my-charm_my-platform.charm`, then stated in 2025 that the proposal was unlikely to proceed.
Evaluated by: mr-cal-bot
No scores available.
Issue body
I have a charm which needs to be built on say focal but run "everywhere". It's a simple charm with just a bit of Python - nothing series or arch specific. So I have a charmcraft.yaml file like below. I need to explicitly list all series and arches, and the 4 arches I have included are now no longer the complete set - more have been added, eg riscv etc. When I pack the charm, I get a file name like this:
`juju-controller_ubuntu-20.04-amd64-aarch64-arm64-s390x_ubuntu-18.04-amd64-aarch64-arm64-s390x_ubuntu-16.04-amd64-aarch64-arm64-s390x.charm`
And there's no tab completion so charmcraft upload is fun to use :-)
Things will only get worse when more arches and/or series are added.
What I'd really like is a way to say the charm runs "everywhere". Or at least channel=all arch=all or something.
And a nicer filename, or at least tab completion. Imagine what things will be like when more series and arches are added.
For reference, here's a related charmhub issue
https://github.com/canonical-web-and-design/charmhub.io/issues/1104
```yaml
type: charm
bases:
- build-on:
- name: ubuntu
channel: "20.04"
architectures: ["amd64"]
run-on:
- name: ubuntu
channel: "20.04"
architectures:
- amd64
- aarch64
- arm64
- s390x
- name: ubuntu
channel: "18.04"
architectures:
- amd64
- aarch64
- arm64
- s390x
- name: ubuntu
channel: "16.04"
architectures:
- amd64
- aarch64
- arm64
- s390x
```
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed stale | No output-file key was added. Charmcraft 3 named platforms provide shorter, developer-controlled filenames; maintainers closed #494 in 2025 as unlikely to proceed further. | |
| stealth/space-bunny-alpha | — | closed superseded | No output-file key was added. Naming the entries in Charmcraft 3’s `platforms` configuration provides shorter, developer-controlled charm filenames instead; maintainers closed #494 in 2025. | |
| stealth/space-bunny-alpha | — | closed superseded | The proposed output-file option was dropped in favor of Charmcraft 3 platform names, which let developers control charm filenames (e.g. my-charm_my-platform.charm). | |
| stealth/space-bunny-alpha | — | closed superseded | Closed as superseded: Charmcraft 3’s named platforms let developers control charm filenames, but a general `output-file` option was not pursued. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | The output-file option was rejected. The feature was superseded by Charmcraft 3 platforms configuration, which allows custom platform names to control output filenames. Maintainers closed the issue as the new feature satisfies the requirement. | |
| qwen/qwen3.6-35b-a3b | — | — | Superseded by Charmcraft 3 platforms configuration, which allows custom platform names to control output filenames. Maintainers declined the original output-file request as the new feature provides sufficient flexibility. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed and superseded. Charmcraft 3's existing platforms configuration already provides sufficient control over output filenames, making the proposed output-file key unnecessary. | |
| qwen/qwen3.6-35b-a3b | — | — | The output-file config was not implemented. The request was superseded by Charmcraft 3's platforms feature, which lets developers name platforms to control the output filename. Maintainers closed the issue as this addresses the need. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | The output-file config option was not implemented. Charmcraft 3 instead introduced a platforms feature allowing custom target names to control the output filename. The original request is superseded and will not be further developed. |
Update history
No update history recorded yet.
Related work
-
Related To:
charmhub.io#1104
(confidence 75%)
The issue cites this earlier discussion about filename and platform handling; it provides context but did not implement output-file support.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2174 charmcraft pack outputs different charm filenames depending on base/platform specification in charmcraft.yaml | charmcraft | closed | Closed as working as intended: deprecated bases preserve Charmcraft 2.x naming, while platforms keys intentionally control the filename suffix. |