support assumes field in snapcraft.yaml
Metadata
Current evaluation
Added support for top-level `assumes`, copying feature tags from snapcraft.yaml into snap.yaml. Merged in snapcraft#525 via commit e98e34c86 and released in snapcraft 2.10.
Resolution: closed resolved
Reason: Merged PR snapcraft#525 explicitly resolved LP bug #1586429. Commit e98e34c86 implemented the change, and verification confirmed that snapcraft 2.10 copied `assumes` into snap.yaml.
Evaluated by: mr-cal-bot
No scores available.
Issue body
[Impact]
* snapd now supports checking for snaps before installing that they don't require features that the current snapd/core doesn't support,
* snapd compares a feature tag list in snap.yaml under the entry name "assumes" to the its own internal list of supported features,
* for this to work snapcraft needs to support copying a list of strings entry called "assumes" from snapcraft.yaml to the snap.yaml of the built snap
* The nodejs plugin is hard-coded to use version 4.2.2. This should be configurable via a `node-engine` config parameter.
[Test Case]
1. Run `snapcraft` on a snapcraft.yaml with a set of keywords in `assumes`.
2. Make sure they make it to snap.yaml
[Regression Potential]
* Very low. This is a new feature.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Added support for top-level `assumes`, copying feature tags from snapcraft.yaml into snap.yaml. Merged in snapcraft#525 via commit e98e34c86 and released in snapcraft 2.10. | |
| stealth/space-bunny-alpha | — | closed resolved | assumes passthrough from snapcraft.yaml to snap.yaml implemented and merged in PR #525 (commit e98e34c86); node-engine made configurable in PR #509. Shipped in snapcraft 2.10+16.10, verified by reporter, fixed in 2.10.1 (LP #1586429). | |
| stealth/space-bunny-alpha | — | closed resolved | Implemented assumes passthrough in snapcraft.yaml via merged PR #525 (e98e34c86); configurable node-engine support was also merged in PR #509 (d579b556e). | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented support for the assumes field in snapcraft.yaml. Snapcraft now copies the feature tag list to snap.yaml, enabling snapd to verify feature compatibility before installation. Verified and closed. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented support for the assumes field in snapcraft.yaml to pass feature tags to snap.yaml for snapd compatibility. Verified and closed as fixed. | |
| qwen/qwen3.6-35b-a3b | — | — | Implemented support for the assumes field in snapcraft.yaml, enabling feature tag propagation to snap.yaml. The change was verified and successfully closed. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Fixed by implementing assumes field support in snapcraft.yaml. The build now copies the assumes list to snap.yaml, enabling snapd's feature compatibility checks. Verified and closed. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
canonical/snapcraft#525
(confidence 100%)
The merged PR implemented support for the assumes keyword and explicitly listed LP bug #1586429 as resolved.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #525 Support the assumes keyword | snapcraft | merged | Merged support for the assumes keyword, passing feature tags from snapcraft.yaml into snap.yaml; resolving commit e98e34c86 fixed LP #1586429. | |
| #2019931 snapcraft is ignoring the "assumes" section | snapcraft (launchpad) | closed | Snapcraft 7.3.1 dropped project-provided assumes from meta/snap.yaml (hit core22 builds and Docker). Fixed by snapcore/snapcraft PR #4152 (commit 36dca729e); reporter confirmed working in 7.3.2. |