snapcraft.yaml needs to make all stages dirty (was: the can't add file without recreating entire package)
Metadata
Current evaluation
Fixed by PRs #442–#448: snapcraft.yaml changes now dirty lifecycle steps and auto-rerun strip/stage (commits 1a6a21831, 80de92254, 6224553ae, da1411df0).
Resolution: closed resolved
Reason: PR #443 (80de92254) made YAML changes clean and rerun stage, while #442 (1a6a21831) did the same for strip. PRs #447 (6224553ae) and #448 (da1411df0) completed LP #1477904 by detecting dirty build and pull steps after relevant YAML changes.
Evaluated by: mr-cal-bot
Issue body
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Fixed by PRs #442–#448: snapcraft.yaml changes now dirty lifecycle steps and auto-rerun strip/stage (commits 1a6a21831, 80de92254, 6224553ae, da1411df0). | |
| stealth/space-bunny-alpha | — | closed stale | LP1477904 closed without a recorded fix; snapcraft.yaml changes did not invalidate prior stages, so added files were omitted until build directories were deleted. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without a direct fix. The maintainer noted snapcraft failed to invalidate stages when snapcraft.yaml changed, requiring an internal --force. Tracking was moved back to Launchpad, superseding this GitHub issue. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned and migrated back to Launchpad. The maintainer noted snapcraft should dirty all stages when snapcraft.yaml changes, but no fix was implemented and tracking reverted to Launchpad. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without a documented fix. Maintainer acknowledged snapcraft fails to rebuild when snapcraft.yaml changes and should invalidate all stages upon modification. Tracking moved back to Launchpad. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Superseded by Launchpad tracking. Modifying snapcraft.yaml fails to trigger stage rebuilds, requiring an internal dirty flag. Closed without resolution. |
Update history
No update history recorded yet.
Related work
-
Likely Fixed By:
snapcraft#443
(confidence 100%)
Merged as 80de92254; automatically cleans and reruns stage when snapcraft.yaml changes.
-
Likely Fixed By:
snapcraft#442
(confidence 98%)
Merged as 1a6a21831; automatically cleans and reruns strip when relevant snapcraft.yaml data changes.
-
Likely Fixed By:
snapcraft#447
(confidence 98%)
Merged as 6224553ae; detects relevant YAML changes that make the build step dirty.
-
Likely Fixed By:
snapcraft#448
(confidence 98%)
Merged as da1411df0; detects relevant YAML changes that make the pull step dirty.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1477904 snapcraft.yaml needs to make all stages dirty (was: the can't add file without recreating entire package) | snapcraft (launchpad) | closed | snapcraft.yaml changes now invalidate and rerun all lifecycle steps, implemented by canonical/snapcraft PRs #442–#448; final pull-stage fix landed as da1411df0. | |
| #1578170 Your first snap: snapcraft clean needed before second snapcraft stage | snapcraft (launchpad) | closed | Fixed in canonical/snapcraft#4 by PRs #442–#448 (commits 1a6a21831, 80de92254, 6224553ae, da1411df0): snapcraft.yaml changes now dirty lifecycle steps, avoiding the required manual clean. | |
| #1647907 When a step is dirty, snapcraft doesn't autoclean and reexecute it | snapcraft (launchpad) | closed | Automatic cleanup and rebuilding of outdated lifecycle steps was implemented in canonical/snapcraft#2145 and merged as d033c7d0f. | |
| #442 Automatically re-strip if dirty. | snapcraft | merged | Merged PR #442 (commit 1a6a21831): Snapcraft now detects YAML `snap` keyword changes and automatically cleans and re-runs the strip step instead of halting, advancing LP #1477904. | |
| #1774021 Support automatically cleaning dirty steps | snapcraft (launchpad) | closed | Fixed by automatically cleaning dirty lifecycle steps in snapcraft PR #2145, merged as commit d033c7d0f. | |
| #432 Removed stage filters in snapcraft.yaml. | charmcraft | merged | Merged PR #432 removed 124 lines of architecture-specific stage filters from snapcraft.yaml to fix armhf builds; merge commit: 46310912. | |
| #1583718 snapcraft command doesn't include expected changes | snapcraft (launchpad) | closed | Local source edits now trigger refreshed pull/build steps, fixing stale packaged files; snapcraft#2167 was merged in commit 39c4c39f1. |