features: introduce craft-parts features
Metadata
Current evaluation
Merged pull request introducing a configurable feature system to craft-parts, including an initial overlay feature implementation. Approved by reviewer, passed CI, and merged with 620 additions and 12 deletions across 14 files.
Suggested action: —
No scores available.
Issue body
Craft-parts can now specify features that can be enabled or disabled to change its behavior in certain scenarios. This change also includes a minimally intrusive implementation of the overlay feature, which inhibits the generation of overlay actions when this feature is disabled by the application.
Signed-off-by: Claudio Matsuoka <claudio.matsuoka@canonical.com>
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
CRAFT-1531
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged pull request introducing a configurable feature system to craft-parts, including an initial overlay feature implementation. Approved by reviewer, passed CI, and merged with 620 additions and 12 deletions across 14 files. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Introduces a feature flag system to craft-parts, including a disabled-by-default overlay feature that suppresses overlay action generation when disabled. Resolves CRAFT-1531. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #367 features: introduce craft-parts features | craft-parts | merged | Successfully merged, introducing configurable features for craft-parts including an optional overlay feature to control action generation. Approved by reviewer, passed CI, and integrated after build retrigger. | |
| #334 features: introduce craft-parts features | craft-parts | closed | Abandoned after 1315 days with no reviews or CI checks. The change introduced a configurable features system for craft-parts, including a minimal overlay implementation, but was closed without merging. | |
| #362 feat: add a method to enable craft-parts Features | craft-application | merged | Merged a method for Application subclasses to enable craft-parts features at the correct initialization point, ensuring proper setup order for overlays and logging. Approved, passed CI, and changed 30 lines across two files. | |
| #3636 parts: integrate craft-parts (CRAFT-765) | snapcraft | merged | Merged after reviewer approval and passing CI checks. Integrates craft-parts for part validation and lifecycle processing. Modifies 12 files, adding 369 lines and removing 20, fulfilling CRAFT-765. | |
| #4083 requirements: update craft-parts to 1.19.0 | snapcraft | merged | Merged update to craft-parts 1.19.0, enabling optional overlay steps, feature selection, and improved dirty checking. Approved by reviewer, passed CI, and merged into main. | |
| #602 fix: enable overlays in _enable_craft_parts_features() | rockcraft | merged | Merged a fix enabling overlays in _enable_craft_parts_features(). Approved by two reviewers with passing CI checks. A minor testing note was dismissed when the reviewer used the correct environment. The change was successfully integrated. | |
| #299 feat: enable override-overlay | imagecraft | merged | Merged following approval from two reviewers and passing CI checks. Updated craft-parts to ~2.30 to enable override-overlay support and added a corresponding spread test. | |
| #4183 requirements: update craft-parts to 1.21.0 | snapcraft | merged | Merged update to craft-parts 1.21.0, enabling explicit base package listing and overlay layer configuration via new callbacks. Approved by two reviewers, passed CI, rebased to main, and introduced no coverage changes. | |
| #3 parts: add parts support (CRAFT-27) | rockcraft | merged | Merged after approval. Integrates craft-parts to add initial parts processing support to Rockcraft. Changes span 11 files with 375 additions and 6 deletions. Zero unresolved comments and passing CI checks. | |
| #110 feat: Support overlay | imagecraft | merged | Merged to enable the overlay feature, provide a bare base, and add spread tests. Approved by two reviewers with passing CI checks. Resolves #98 and CRAFT-4269 across 18 files. |