Better guidance for missing "assumes" features

The assumes field is pretty fantastic. With that set I can ensure Ubuntu 16.04.1 users (who don’t have an auto-updating snapd) can be guided to update their snapd, so I can provide one set of instructions for all users.

However, the error message could do a better job of guiding them through that update:

sudo snap install --dangerous bcc_0.3.0-20170401-1747-c5f48c9_amd64.snap
error: cannot perform the following tasks:
- Mount snap "bcc" (unset) (snap "bcc" assumes unsupported features: snapd2.23 (try to update snapd and refresh the core snap))

Could we instead say:

sudo snap install --dangerous bcc_0.3.0-20170401-1747-c5f48c9_amd64.snap
error: cannot perform the following tasks:
- Mount snap "bcc" (unset) (snap "bcc" assumes unsupported features: snapd2.23 (try `snap refresh core`, then re-run this command))

Some more context here.

1 Like

Also noticed we have no documentation on assumes, so I’ve requested that here.

This is only useful if snapd supports re-execution on the given system. I agree that we can make the message nicer but we cannot just say that upgrading core snap is enough.

EDIT: having said that we are getting closer towards being able to re-execute in more places.

Ah, I failed to connect those dots. So assumes is a nice guard, but doesn’t help us guide 16.04.1 users to a recent snapd. With that in mind, any objection to updating the Ubuntu and Debian install instructions to say:

$ sudo apt update
$ sudo apt install snapd
1 Like

Created https://github.com/CanonicalLtd/snappy-docs/issues/78 for this [ed. now merged].