← Back to issue list

feat(lifecycle): conditionally enable partitions

View original Github issue

Metadata

Project
snapcraft
Number
#4493
Type
pull request
State
merged
Author
mr-cal
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #4493 enabled partitions for devel/core24+ projects with components, added component lifecycle variables, and fixed #4463 and #4465; it replaced #4487.

Resolution: closed resolved

Reason: PR #4493 was approved and merged, implementing component-defined partitions and SNAPCRAFT_COMPONENT_* lifecycle variables for devel/core24+. Its resolution explicitly fixes snapcraft#4463 and snapcraft#4465 and replaces draft PR snapcraft#4487.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] Have you successfully run `make lint`? - [x] Have you successfully run `pytest tests/unit`? ----- - Conditionally enable partitions if components are defined and base is `devel`, `core24`, or newer - Create partitions from components - Create envvars for partitions (e.g. `SNAPCRAFT_COMPONENT_<name>_STAGE`) TODO: - [x] improve spread test to the partitions are created and `stage`, `prime`, and `organize` keywords work as-expected Replaces #4487 Fixes #4463 Fixes #4465 (CRAFT-2307) (CRAFT-2311)

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #4493 enabled partitions for devel/core24+ projects with components, added component lifecycle variables, and fixed #4463 and #4465; it replaced #4487.
stealth/space-bunny-alpha — closed resolved Merged PR #4493 enabled partitions for component-defined projects, created component partitions and environment variables, and fixed #4463 and #4465.
stealth/space-bunny-alpha — closed resolved Merged in #4493, enabling partitions for component-defined devel/core24+ projects, creating component partitions and partition environment variables; fixes #4463 and #4465.
stealth/space-bunny-alpha — closed resolved Merged #4493 added conditional component-based partitions for devel/core24+ projects, partition env vars, and core22 component support; it replaced #4487 and closed #4463/#4465.
stealth/space-bunny-alpha — closed resolved Merged in #4493, adding component-defined partitions for devel/core24+ and partition environment variables; fixes #4463 and #4465 and replaces #4487.
qwen/qwen3.6-35b-a3b — — Merged after approval and CI checks. Conditionally enables partitions for components on core24 or newer bases, generates partitions from definitions, and adds environment variables. Resolves #4463 and #4465.
qwen3.6-35b-a3b-mtp-q6 — — Merged after fixing spread test failures. Conditionally enables partitions for components on devel and core24+ bases, generates partitions from components, adds partition environment variables, and adds core22 component support. Resolves #4463 and #4465.

Update history

No update history recorded yet.

Related work

  • Related To: snapcraft#4463 (confidence 100%)

    Enabled craft-parts partitions and was fixed by merged PR #4493.

  • Related To: snapcraft#4465 (confidence 100%)

    Component-created partitions and coverage were delivered by PR #4493.

  • Related To: snapcraft#4487 (confidence 100%)

    Draft partition-enablement PR explicitly replaced by #4493.

Related issues

Issue Project State Summary Similarity
#4463 Enable craft-parts partitions feature snapcraft closed Partitions support landed in merged PR #4493 (commit 070c7e995), enabling partition-backed component lifecycle data and completing #4463.
75%
#292 feat: expose partitions to the lifecycle service craft-application merged Merged PR #292 in commit a3488853, exposing project partitions to LifecycleManager so lifecycle operations can use configured prime partitions.
75%
#4465 Create partitions for components snapcraft closed Component partition support was added by merged PR #4493 (commit 070c7e995), enabling partitions for component projects and covering the requested behavior.
73%
#4487 [DRAFT] feat: enable partitions snapcraft closed Draft PR #4487 was closed unmerged and replaced by #4493, which conditionally enabled partitions and fixed #4463; implementation landed in commit 070c7e995.
73%
#489 partitions: add feature and validation craft-parts merged Merged as commit d363fa7c, adding the opt-in partitions feature to LifecycleManager/Dirs, partition name validation with new partition errors, and integration tests for CRAFT-1843. Follow-up PRs #493, #497 and #517 extended it.
73%
#4700 feat: partitions for core24 snapcraft merged Merged PR #4700 added core24 partition and component support across 16 files, resolving #4649 in commit 070c7e995.
71%
#1699 feat: partitions always enabled craft-parts open Maintainer refactor merging the enabled/disabled partition code paths so partitions are always active with a default-only fallback. +699/-603 across 43 files; rebased 11 days ago, unreviewed, no approvals, one CI job failing.
70%