many: add snapcraftctl set-grade
Metadata
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. | |
| #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. | |
| #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. | |
| #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. | |
| #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. | |
| #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. |