← Back to issue list

fix: Set imagecraft snap grade dynamically from version metadata

View original Github issue

Metadata

Project
imagecraft
Number
#440
Type
pull request
State
closed
Author
copilot-swe-agent
Labels
—
Created
Updated
Closed

Current evaluation

Merged in #440, dynamically setting the snap grade to devel for post/dev versions and stable for tagged releases, fixing #439.

Resolution: closed resolved

Reason: PR #440 was merged after two approvals and no unresolved comments. A maintainer verified with a fake tagged build that Imagecraft 0.6.9 produced grade: stable.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Imagecraft’s snap was pinned to `grade: devel`, which blocked release-channel promotion behavior expected for stable-tagged builds. This aligns imagecraft with the same dynamic grade model used in sibling craft tools. - **Build metadata behavior** - Updated `/snap/snapcraft.yaml` to derive snap grade during `override-build` from the resolved package version. - `post` versions (non-tagged/dev builds) map to `devel`; tagged release versions map to `stable`. - **Packaging change scope** - No structural packaging refactor. - Single-path change in the `imagecraft` part where version is already computed and set. ```yaml version="$(... print(imagecraft.__version__))" ${SNAP}/libexec/snapcraft/craftctl set version="$version" [ -n "$(echo $version | grep "post")" ] && grade=devel || grade=stable ${SNAP}/libexec/snapcraft/craftctl set grade="${grade}" ``` <!-- START COPILOT CODING AGENT SUFFIX --> - Fixes #439

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged in #440, dynamically setting the snap grade to devel for post/dev versions and stable for tagged releases, fixing #439.
stealth/space-bunny-alpha — closed resolved Merged in #440: imagecraft now derives snap grade from the resolved version, using stable for tagged releases and devel for post/dev builds, fixing #439.
qwen/qwen3.6-35b-a3b — — Merged a fix dynamically setting the imagecraft snap grade from version metadata. Tagged releases now use grade stable, while dev builds use grade devel, resolving #439 and enabling proper release-channel promotion.
qwen/qwen3.6-35b-a3b
Impact: 50
Quick Win: 42
Staleness: 5
Complexity: 15
Confidence: 90
needs review Dynamic snap grade from version metadata; approved by 2 reviewers, 0 unresolved comments, ready to land
qwen/qwen3.6-35b-a3b
Impact: 40
Quick Win: 34
Staleness: 0
Complexity: 15
Confidence: 75
needs review Dynamically sets snap grade from version metadata instead of hardcoded 'devel', addressing issue #439. Brand new PR with no maintainer review yet.

Update history

Date Change
closed
updated
updated
created

Related work

  • Likely Fixed By: canonical/imagecraft#439 (confidence 100%)

    PR #440 explicitly fixes the dynamically-set snap grade issue.

Related issues

Issue Project State Summary Similarity
#439 Dynamically set snap grade imagecraft closed Fixed by PR #440, which dynamically sets imagecraft's snap grade from version metadata (devel for dev/post versions, stable for tagged releases).
87%
#1402 build: set grade based on version number charmcraft merged Merged PR #1402 as a968adfa, setting the snap grade to devel for post versions and stable otherwise, resolving #1401.
76%
#427 build: set snap grade based on version rockcraft merged Merged in #427 via commit 91214e03, setting snap grade from the build version: post versions are devel and other versions are stable.
75%
#1401 snapcraft.yaml: set grade dynamically charmcraft closed Dynamic snap grade was implemented by merged PR #1402 (commit a968adfa), assigning devel grade to post-releases and stable otherwise.
74%
#114 snap: set grade to stable fetch-service merged Merged in #114 via commit c7b9a39, setting the Snap grade to stable so releases can target the candidate channel.
71%
#2064 Support for set-grade snapcraft closed Added snapcraftctl set-grade support in merged PR #2067 (commit 4713f4ae3), including final snap metadata and schema validation, resolving #2064.
71%
#2230 snap: use set-version and set-grade snapcraft merged Merged PR #2230 as commit e1b59b75, updating snap handling to use set-version and set-grade and resolving Launchpad bug #1789695.
70%