← Back to issue list

docs: Status of `parts` field in `charmcraft.yaml` is misleading

View original Github issue

Metadata

Project
charmcraft
Number
#2528
Type
issue
State
open
Author
wctaylor
Labels
Status: Triaged Type: Documentation
Created
Updated
Closed

Current evaluation

charmcraft.yaml reference docs label the `parts` field as 'Recommended', but it is actually required for newer bases (PlatformCharm model enforces min_length=1). Triaged by maintainers; fix deferred to a comprehensive charmcraft.yaml reference review before Kitbash lands. Doc still says 'Recommended' in current main.

Suggested action: keep open

Reason: Maintainers actively triaged this (labels 'Status: Triaged' + 'Type: Documentation') and explicitly committed to addressing it: jahn-junior said it 'will be addressed in our comprehensive review of the charmcraft.yaml reference before introducing Kitbash', and an internal ticket CHARMCRAFT-683 was created. Code confirms the doc is wrong — PlatformCharm.parts has min_length=1 while legacy CharmProject.parts has a default — so the issue remains valid and unresolved; docs/reference/files/charmcraft-yaml-file.rst still reads '**Status:** Recommended.' for `parts`.

Impact: 40 Quick Win: 30.0 Staleness: 45 Complexity: 25 Confidence: 85 Support Request: 5

Issue body

*Please describe the question or issue you're facing with "charmcraft.yaml file - Charmcraft 4.1.0 documentation".* The documentation says that the `parts` field has a status of `recommended`, but according to [this message on Matrix](https://matrix.to/#/!LhFxJIPEcCacgdMghH:ubuntu.com/$jBmv75eFdU5t3rU6ih35fnIlZmS8bJaI2Y3GLT9jBhY?via=ubuntu.com&via=matrix.org&via=canonical.com), the status of `parts` actually depends on the base, and it is required for newer bases. The documentation should be updated to reflect that the status of `parts` depends on the base, and the documentation should detail that dependency. Maybe something like ``` ``parts`` --------- **Status:** Base-dependent * Bases older than <insert_base>: Recommended * Bases <insert_base> and newer: Required ``` --- *Reported from: https://documentation.ubuntu.com/charmcraft/stable/reference/files/charmcraft-yaml-file/

Evaluation history

Date Model Scores Action Summary
qwen/qwen3.8-27b
Impact: 40
Quick Win: 30.0
Staleness: 45
Complexity: 25
Confidence: 85
Support Request: 5
keep open charmcraft.yaml reference docs label the `parts` field as 'Recommended', but it is actually required for newer bases (PlatformCharm model enforces min_length=1). Triaged by maintainers; fix deferred to a comprehensive charmcraft.yaml reference review before Kitbash lands. Doc still says 'Recommended' in current main.
qwen/qwen3.6-35b-a3b
Staleness: 40
Complexity: 10
Confidence: 90
Support Request: 0
keep open Documentation incorrectly labels the parts field in charmcraft.yaml as recommended instead of base-dependent. Triaged, acknowledged by maintainers, and tracked in an internal ticket for a comprehensive docs review.
qwen3.6-35b-a3b-mtp-q6
Staleness: 45
Complexity: 10
Confidence: 85
Support Request: 0
keep open Documentation incorrectly labels the parts field in charmcraft.yaml as recommended instead of base-dependent. Maintainers have triaged it, acknowledged the discrepancy, and linked it to an internal ticket for future updates.
qwen3.6-35b-a3b-mtp-q6
Staleness: 45
Complexity: 20
Confidence: 90
Support Request: 10
keep open Documentation incorrectly labels the parts field as recommended instead of base-dependent. Triaged with maintainer discussion pointing to a future comprehensive review and internal tracking.
qwen3.6-35b-a3b-mtp-q6
Staleness: 45
Complexity: 20
Confidence: 90
Support Request: 5
keep open Documentation mislabels the charmcraft.yaml parts field as recommended instead of base-dependent. Triaged and under discussion, with updates planned during the upcoming charmcraft.yaml reference review and Kitbash integration.

Update history

No update history recorded yet.

Related work

  • Blocked By: canonical/pydantic-kitbash (confidence 55%)

    jahn-junior tied the fix to the charmcraft.yaml reference review scheduled before introducing Kitbash, so the doc update is gated on that work.

Related issues

Issue Project State Summary Similarity
#1616 Default `charm` or `bundle` part is not added if `parts` is defined but empty in `charmcraft.yaml`. charmcraft closed Closed without a fix. Maintainers noted the behavior was original design and deferred resolution until charm and bundle parts are refactored into extensions. The issue remains pending for future architectural changes.
72%
#1782 Charmcraft 3.1.1 removed support for `parts` - when documentation clearly states it is deprecated charmcraft closed Documentation was updated to clarify the deprecated prime key in parts. Code fixes were included in the Charmcraft 3.1.2 hotfix, resolving the reported build failures and restoring expected behavior.
71%