skip repacking if snap content not changed
Metadata
Current evaluation
Closed as too complex and superseded by #6349, #6355, #6379, and #6385, which split metadata mediation by file type; snapcraft now defaults to always_repack=False.
Resolution: closed superseded
Reason: Maintainer mr-cal closed the PR because focused follow-ups replaced it. PRs #6349, #6355, #6379, and #6385 merged as commits e93155b28, ebecfd613, bdbf07385, and f702705c6.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Mediate creation of metadata and asset files to only repack artifacts
if prime or post-prime contents have been changed. This includes
project or part definitions, snap metadata, manifests, hooks, and icon
and desktop files.
---
- [x] I've followed the [contribution guidelines](https://github.com/canonical/snapcraft/blob/main/CONTRIBUTING.md).
- [x] I've signed the [CLA](http://www.ubuntu.com/legal/contributors/).
- [ ] I've successfully run `make lint && make test`.
- [ ] I've added or updated any relevant documentation.
- [ ] In documents I changed, I [added a meta description](https://canonical-starflow.readthedocs-hosted.com/how-to/add-a-page-meta-description/) if one was missing.
- [ ] I've updated the relevant release notes.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed superseded | Closed as too complex and superseded by #6349, #6355, #6379, and #6385, which split metadata mediation by file type; snapcraft now defaults to always_repack=False. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed as too complex and superseded by focused follow-up PRs, including #6349, #6355, #6379 and #6385; repacking is now controlled with always_repack=False. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed and superseded by follow-up pull requests. The original implementation was split into smaller PRs due to complexity. The optimization is now handled by setting always_repack=False. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
10
Complexity:
75
Confidence:
85
|
keep open | Optimizes snap repacking by skipping it when prime/post-prime contents are unchanged. Author acknowledges excessive complexity and plans to split into smaller PRs. 11 unresolved comments, some CI failures. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
5
Complexity:
35
Confidence:
70
|
needs review | Optimizes snap building by skipping repacking when prime/post-prime contents remain unchanged. Currently awaiting CI checks and documentation updates. |
Update history
| Date | Change |
|---|---|
| closed |
Related work
-
Superseded By:
canonical/snapcraft#6349
(confidence 100%)
Merged focused implementation of snap.yaml metadata mediation.
-
Superseded By:
canonical/snapcraft#6385
(confidence 100%)
Merged mediation for desktop, icon, manifest, and snapcraft.yaml files.
-
Superseded By:
canonical/snapcraft#6355
(confidence 98%)
Merged component.yaml metadata mediation as a separate change.
-
Superseded By:
canonical/snapcraft#6379
(confidence 98%)
Merged mediation for hooks and GUI assets separately.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #6325 Skip repacking if artifact contents are unchanged | snapcraft | open | Conditional repacking is implemented through craft-application PR #1111, integrated and documented in Snapcraft 9.1, but this issue remains open. | |
| #442 Skip repacking when project files are not changed | imagecraft | open | Maintainer request to adopt craft-application's package mediation API so imagecraft skips repacking unchanged projects; implementation merged in PR #444, but issue stays open/triaged pending the wider testing-workflow requirement. |