Make partitions and overlay features mutually exclusive
Metadata
Current evaluation
Resolved by merged PR #667 (commit 6582b829), which makes partition and overlay features mutually exclusive and rejects configurations enabling both.
Resolution: closed resolved
Reason: PR #667 was merged and landed as commit 6582b829. Its validation prevents partitions and overlays from being enabled together, avoiding the undefined combined behavior described in #632.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
Require partitions and overlays to be mutually exclusive features.
### Why it needs to get done
The first implementation of partitions (https://github.com/canonical/craft-parts/pull/517) allowed both features to be enabled. It added some basic integration tests, but they were not comprehensive. The same integration tests pass after partitions were [moved to a top-level directory](https://github.com/canonical/craft-parts/pull/627).
However, @lengau, @cmatsuoka, and @mr-cal are concerned that enabling both these features does not have a well-defined behavior. There is no immediate need for an application to have both features enabled, so we prefer to make them mutually exclusive until the behavior is fully defined and agreed upon.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Resolved by merged PR #667 (commit 6582b829), which makes partition and overlay features mutually exclusive and rejects configurations enabling both. | |
| stealth/space-bunny-alpha | — | closed resolved | Fixed by merged PR #667 (commit 6582b829), which rejects enabling partitions and overlays together to prevent undefined behavior. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented mutual exclusivity between partitions and overlays to prevent undefined behavior. The task was closed after the restriction was added to the codebase. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented by enforcing mutual exclusivity between partitions and overlays. The change prevents simultaneous use, eliminating undefined behavior until a comprehensive integration strategy is defined. | |
| qwen/qwen3.6-35b-a3b | — | — | Adopted a design constraint in craft-parts making partitions and overlay features mutually exclusive to avoid undefined behavior. The requirement was accepted by maintainers and the issue was closed as the change was implemented. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Resolved by implementing mutual exclusivity between partitions and overlay features to prevent undefined behavior when both are enabled. The requirement was enforced and the issue closed. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
canonical/craft-parts#667
(confidence 100%)
The merged PR introduced mutual-exclusivity validation and is recorded as the resolution for #632.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #667 fix: make overlay and partition features mutually exclusive | craft-parts | merged | Merged PR #667 as commit 6582b829, making overlay and partitions mutually exclusive and fixing #632. | |
| #1028 Allow enabling both partitions and overlays features at the same time | craft-parts | closed | Enabled partitions and overlays to be used together in merged PR #1035 (commit b575539e), resolving the feature conflict. | |
| #1035 feat: reconcile overlays and partition features | craft-parts | merged | Merged PR #1035 at commit b575539e, enabling overlay and partition features simultaneously and fixing canonical/craft-parts#1028. |