<div dir="ltr">A refresh should result in the same behavior whether the snap is locally installed or is being downloaded.<div><br></div><div>We've also (John has, actually) fixed the behavior so that a refresh of a specific snap will work, so your original attempt described in the first message on this thread will work correctly in the upcoming snapd 2.17.</div><div><br></div><div>Thanks for raising the issue.</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 27, 2016 at 11:57 AM, YC Cheng <span dir="ltr"><<a href="mailto:yc.cheng@canonical.com" target="_blank">yc.cheng@canonical.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Not sure if the new "refresh" design will check if the local installed one have the same channel/revision or even hash that match the one from server. (I think we should.) And if yes, are we going to add something like "--force" in case of some mix channel situation ? </div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">2016-10-27 20:42 GMT+08:00 Gustavo Niemeyer <span dir="ltr"><<a href="mailto:gustavo.niemeyer@canonical.com" target="_blank">gustavo.niemeyer@canonical.<wbr>com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">We actually have that already in the upcoming version. You'll be able to say "snap refresh --revison=N <snap>", similarly to how we can revert.</p>
<p dir="ltr">That said, I think the expectation exposed in the first message is a reasonable one. We should probably not blacklist the current revision if the snap name was explicitly selected in the command line.<br>
</p><div class="m_-1435563596784843981HOEnZb"><div class="m_-1435563596784843981h5">
<div class="gmail_extra"><br><div class="gmail_quote">On Oct 27, 2016 4:39 AM, "Didier Roche" <<a href="mailto:didrocks@ubuntu.com" target="_blank">didrocks@ubuntu.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div class="m_-1435563596784843981m_1459970374427891903m_1958393794466342425moz-cite-prefix">Le 27/10/2016 à 08:32, YC Cheng a
écrit :<br>
</div>
<blockquote type="cite">
<div dir="ltr">I think we need a way to just Un-revert from rev 20
to rev 29 without remove rev 29.
<div><br>
</div>
<div>Shall we fire a bug for that if we don't have such method
exists now ?<br>
</div>
</div>
</blockquote>
<br>
I think it's not that easy considering the associated data. You need
to swap them to restart from the latest version of data from rev 20
to copy to 29. Explicitely removing that version makes sense in that
context. Have an unrevert command won't convey that notion.<br>
<br>
Didier<br>
<blockquote type="cite">
<div dir="ltr">
<div>
<div><br>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2016-10-27 14:13 GMT+08:00 Didier Roche
<span dir="ltr"><<a href="mailto:didrocks@ubuntu.com" target="_blank">didrocks@ubuntu.com</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Le
27/10/2016 à 03:01, Marcos Alano a écrit :<br>
> Hello guys,<br>
<br>
Hey Marcos,<br>
<span>><br>
><br>
> Sorry if I'm in the wrong mailing list. That's the
only one about snap i<br>
> could found. The question is: how I revert-revert
(un-revert) a snap? I<br>
> can install a snap:<br>
><br>
> (sudo snap install hello) after thatr I can upgrade a
snap (snap refresh<br>
> hello --channel=beta hello) and finally revert (sudo
snap revert hello).<br>
> But after that if I try to re-upgrade I just can't:<br>
><br>
> $ sudo snap refresh --beta hello<br>
><br>
> error: cannot refresh "hello": snap "hello" has no
updates available<br>
><br>
> I'm doing something wrong?<br>
<br>
</span>You are not doing it wrong :) The revert command
"blacklists" this<br>
particular snap revisions on purpose, so that you don't
reupdate to it.<br>
However, there is a way to get back to it! You can remove
explicitely<br>
that revision (without removing the current snap). Data
associated to<br>
the reverted revision will be cleaned up as well.<br>
Then, you can refresh.<br>
<br>
In a concrete example with the hello snap:<br>
20 is the revision in the stable channel, 29 corresponds to
the revision<br>
in the beta channel.<br>
<br>
# Install and update<br>
$ snap install hello<br>
$ snap list hello<br>
Name Version Rev Developer Notes<br>
hello 2.10 20 canonical -<br>
$ snap refresh hello --beta<br>
$ snap list hello<br>
Name Version Rev Developer Notes<br>
hello 2.10.1 29 canonical -<br>
<br>
# Revert<br>
$ snap revert hello<br>
$ snap list hello<br>
Name Version Rev Developer Notes<br>
hello 2.10 20 canonical -<br>
<br>
# Remove reverted version (and associated data)<br>
$ snap remove hello --revision=29<br>
hello removed<br>
$ snap list hello<br>
Name Version Rev Developer Notes<br>
hello 2.10 20 canonical -<br>
<br>
# Reupdate<br>
$ snap refresh hello --beta<br>
$ snap list hello<br>
Name Version Rev Developer Notes<br>
hello 2.10.1 29 canonical -<br>
<br>
I hope that answer your questions :)<br>
Cheers,<br>
Didier<br>
<div class="m_-1435563596784843981m_1459970374427891903m_1958393794466342425HOEnZb">
<div class="m_-1435563596784843981m_1459970374427891903m_1958393794466342425h5"><br>
<br>
--<br>
Snapcraft mailing list<br>
<a href="mailto:Snapcraft@lists.snapcraft.io" target="_blank">Snapcraft@lists.snapcraft.io</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/snapcraft" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mailm<wbr>an/listinfo/snapcraft</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="m_-1435563596784843981m_1459970374427891903m_1958393794466342425mimeAttachmentHeader"></fieldset>
<br>
</blockquote>
<p><br>
</p>
</div>
<br>--<br>
Snapcraft mailing list<br>
<a href="mailto:Snapcraft@lists.snapcraft.io" target="_blank">Snapcraft@lists.snapcraft.io</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/snapcraft" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mailm<wbr>an/listinfo/snapcraft</a><br>
<br></blockquote></div></div>
</div></div><br>--<br>
Snapcraft mailing list<br>
<a href="mailto:Snapcraft@lists.snapcraft.io" target="_blank">Snapcraft@lists.snapcraft.io</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/snapcraft" rel="noreferrer" target="_blank">https://lists.ubuntu.com/mailm<wbr>an/listinfo/snapcraft</a><br>
<br></blockquote></div><br></div>
</div></div><br>--<br>
Snapcraft mailing list<br>
<a href="mailto:Snapcraft@lists.snapcraft.io">Snapcraft@lists.snapcraft.io</a><br>
Modify settings or unsubscribe at: <a href="https://lists.ubuntu.com/mailman/listinfo/snapcraft" rel="noreferrer" target="_blank">https://lists.ubuntu.com/<wbr>mailman/listinfo/snapcraft</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">gustavo @ <a href="http://niemeyer.net" target="_blank">http://niemeyer.net</a></div>
</div>