← Back to issue list

fix: add all parts as a dep of extension part

View original Github issue

Metadata

Project
snapcraft
Number
#5395
Type
pull request
State
merged
Author
soumyaDghosh
Labels
—
Created
Updated
Closed

Current evaluation

Merged in #5395 (48c8af2ae), adding dependencies on all parts so extension parts rebuild after changes; #5451 later reverted the change.

Resolution: closed resolved

Reason: PR #5395 was approved and merged, adding all parts as dependencies of the extension part to prevent stale cached extension-part builds. PR #5451 (e12e765b7) later reverted it because those dependencies broke cleanup and other parts that must run after extensions.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Previously with cached builds, there'd always be cases, where files from the extension's part would not be found as the files are removed from prime, but the extension's part's state shows it as built. Adding all the parts as a dependency of the extension ensures that the extension's part is always rebuilt whenever on part is changed. - [x] Have you followed the [guidelines for contributing](https://github.com/canonical/snapcraft/blob/main/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 `make test`? --- A better solution would be to have a property in the parent `Extension` class that holds the keys of all the parts. But, let's see what everyone opines.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged in #5395 (48c8af2ae), adding dependencies on all parts so extension parts rebuild after changes; #5451 later reverted the change.
stealth/space-bunny-alpha — closed resolved Merged #5395 (48c8af2ae) to force extension-part rebuilds, then reverted it via merged #5451 (e12e765b7) because the added dependencies broke cleanup parts.
qwen/qwen3.6-35b-a3b — — Merged a fix for cached build failures where extension part files were missing. Added all parts as dependencies of the extension part to force rebuilds on any change, resolving stale prime state. Approved by two reviewers and passed CI checks.
qwen3.6-35b-a3b-mtp-q6 — — Merged a fix adding all parts as a dependency of the extension part. This resolves cached build failures where extension files were missing due to stale build states, ensuring the extension rebuilds whenever any part changes.

Update history

No update history recorded yet.

Related work

  • Superseded By: canonical/snapcraft#5451 (confidence 100%)

    Merged commit e12e765b7 reverted #5395 because the dependency behavior broke cleanup and post-extension parts.

Related issues

Issue Project State Summary Similarity
#5451 chore(revert): "fix: add all parts as a dep of extension part (#5395)" snapcraft merged Merged #5451 (e12e765b7), reverting #5395 because its extension-part dependency logic broke parts that must run after the extension.
78%