← Back to issue list

many: add snapcraftctl set-grade

View original Github issue

Metadata

Project
snapcraft
Number
#2067
Type
pull request
State
merged
Author
kyrofa
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #2067 in commit 4713f4ae3, adding snapcraftctl set-grade and validating final snap.yaml metadata; resolves #2064.

Resolution: closed resolved

Reason: PR #2067 was merged as commit 4713f4ae3. It added set-grade support for scriptlets and schema validation for final snap metadata.

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] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)? - [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)? - [x] Have you successfully run `./runtests.sh static`? - [x] Have you successfully run `./runtests.sh unit`? ----- This PR resolves #2064 by adding the ability to set the snap grade from a scriptlet using `snapcraftctl set-grade <grade>`. It also begins validating final YAML before generating the `snap.yaml`, catching both extracted and scriptlet metadata (such as grade) that doesn't match the schema.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #2067 in commit 4713f4ae3, adding snapcraftctl set-grade and validating final snap.yaml metadata; resolves #2064.
stealth/space-bunny-alpha — closed resolved Merged in PR #2067 (commit 4713f4ae3), adding snapcraftctl set-grade for scriptlets and validating final snap.yaml metadata; resolves #2064.
stealth/space-bunny-alpha — closed resolved Merged PR #2067 (commit 4713f4ae3), adding snapcraftctl set-grade and final snap.yaml metadata/schema validation; it resolves #2064.
qwen/qwen3.6-35b-a3b — — Merged. Introduces snapcraftctl set-grade for scriptlet-based snap grade configuration and adds final YAML validation before snap.yaml generation. Resolves #2064. Approved, passed CI, and modified 20 files.
qwen3.6-35b-a3b-mtp-q6 — — Merged. Resolves #2064 by adding snapcraftctl set-grade to configure snap grades via scriptlets. Includes final YAML validation before snap.yaml generation to catch metadata schema mismatches.

Update history

No update history recorded yet.

Related work

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

    This PR explicitly resolves the set-grade feature request in issue #2064.

Related issues

Issue Project State Summary Similarity
#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.
87%
#764 Implementing 'grade' support in snapcraft.yaml snapcraft merged PR #764 (merge commit 2e97ae2f4) implemented `grade` support in snapcraft.yaml, letting recipes declare snap quality (devel/stable); a follow-up docs PR #857 covered the option.
76%
#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%
#3325 snapcraftctl: add checks for empty string for set-version & set-grade snapcraft merged Merged PR #3325 added explicit empty-string validation for snapcraftctl set-version and set-grade, replacing cryptic downstream failures with helpful errors.
73%
#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.
73%
#1618123 Add a build grade attribute to snaps snapcraft (launchpad) closed Grade support was merged in canonical/snapcraft#764 (commit 2e97ae2f4) and later documented in canonical/snapcraft#857.
72%