fix: stage and prime content in all partitions by default
Metadata
Current evaluation
Closed unmerged in favor of an alternative; PR #668 implemented default all-partition staging and priming and merged as commit 85b9ba7a.
Resolution: closed superseded
Reason: The maintainer explicitly closed #664 in favor of a different solution. PR #668 superseded it, implementing the behavior in fileset parsing and merging as commit 85b9ba7a.
Evaluated by: mr-cal-bot
No scores available.
Issue body
- [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)?
-----
### chore: redesign partition validators
This commit combines two redundant validators and changes where partition usage in parts is validated.
Originally, I added a [validator](https://github.com/canonical/craft-parts/pull/493/files#diff-68d2086e111409ee4298829260c916b031d71f8b27081f83b135ce59d5ff8a66R152) when the `LifecycleManager` was initialized. Then Alex added [another](https://github.com/canonical/craft-parts/pull/517/files#diff-68d2086e111409ee4298829260c916b031d71f8b27081f83b135ce59d5ff8a66R159) (and better) validator also during `LifecycleManager` initialization based on this [prototype](https://github.com/canonical/craft-parts/commit/075eac2b04b70f97388faeee74a5679fa2c8c92c#diff-68d2086e111409ee4298829260c916b031d71f8b27081f83b135ce59d5ff8a66R393).
But things have changed. Now the `partitions` are provided to a part, so validation can occur when the part is initialized. This paves the way for the next commit.
### fix: stage and prime content in all partitions by default
This is similar to #663, but the processing occurs when the part is initialized and after the filter keywords are validated. It also uses a more complex data structure that later gets flattened out.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Closed unmerged in favor of an alternative; PR #668 implemented default all-partition staging and priming and merged as commit 85b9ba7a. | |
| stealth/space-bunny-alpha | — | closed superseded | PR #664 was closed unmerged in favor of an alternative. PR #668 implemented the behavior in the fileset parser and merged as commit 85b9ba7a. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed in favor of a different solution. The partition validator redesign and default stage/prime content logic was superseded by an alternative implementation. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by an alternative approach. The PR refactored partition validators and proposed staging and priming content across all partitions by default. After positive review, the author closed it to pursue a different solution. |
Update history
No update history recorded yet.
Related work
-
Superseded By:
canonical/craft-parts#668
(confidence 99%)
Merged replacement implementing all-partition staging and priming as commit 85b9ba7a.
-
Related To:
canonical/craft-parts#663
(confidence 95%)
PR #664 described itself as a similar approach with processing performed during part initialization.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #663 fix: stage and prime content in all partitions by default | craft-parts | closed | PR #663 (fix: stage and prime content in all partitions by default) was closed unmerged in favour of #664; the final fix landed via merged PR #668, commit 85b9ba7a, implementing it in the fileset parser instead of PartSpec validators. | |
| #668 fix: stage and prime content in all partitions by default | craft-parts | merged | Merged in #668 as 85b9ba7a: filesets now stage and prime across all partitions by default and reject ambiguous configurations, fixing #650. | |
| #1123 fix: Prime content from overlay when split into partitions | craft-parts | merged | Merged PR #1123 (commit 3540e306), fixing overlay priming with partitions by using stage content and migration state while preserving existing prime state files. | |
| #607 fix(partitions): use base prime dir for getting primed stage packages | craft-parts | closed | Closed unmerged and superseded by the namespaced-partition work merged in #627 via commit 9fe38d11. | |
| #650 Include all partitions by default for `stage` and `prime` keywords | craft-parts | closed | Fixed by merged PR #668 (commit 85b9ba7a): stage and prime now include all partitions by default while retaining per-partition filters. | |
| #834 fix: use partitions for stage-packages tracking | craft-parts | merged | Merged PR #834 as 4cbc6006, making stage-package tracking search primed files across partitions and fixing #804 for common cases; duplicate files across partitions remain unsupported. |