Re: [Tails-dev] extension specification

Delete this message

Reply to this message
Author: Giorgio Maone
Date:  
To: The Tails public development discussion list
Subject: Re: [Tails-dev] extension specification
On 12/05/2015 18:54, sajolida wrote:
>
> B. It's not the latest version of the extension. This version is
> incompatible with the version of the page. We can't go forward or
> otherwise stuff won't work:
>
> - How can we detect that? Through a version number in the URL as you
> are proposing? Wouldn't a version number in the code of the page be more
> simple?

I vote for a version string at a fixed location (<div
id="ui-version">1.0</div>) of the HTML.
Of course, we can keep it user-invisible via CSS (#ui-version { display:
none }).

> - Then what do we do once we detected that incompatibility? Redirect
> to a compatible version of the page that we're keeping on the website
> for backward compatibility?

The extension can detect the incompatibility and ask the user that if
she wants to proceed by upgrading the downloader first ([Upgrade
Downloader] / [Abort]).
On [Upgrade Downloader], the extension forces its own upgrade to be
performed quietly (with no further prompts / warning unless something
goes wrong, e.g. if AMO's SSL certificate is bogus) and goes on with the
download+verify process.
>
> C. It's not the latest version of the extension. This version is
> compatible with the version of the page but we did a security upgrade of
> the extension and we want to force people to update. In that case, we
> need something on the page that says which version of the extension is
> expected and asks for an upgrade if it doesn't match. That would be a
> different version of slide 3 but to "update" instead of "install".

Same as B above.

Of course all of this is particularly relevant for those who have
automatic add-ons updates disabled, such as Tor Browser users AFAIK.
"Regular" Firefox users would usually receive the most recent version of
the extension silently and timely through AMO.

--
Giorgio Maone
https://maone.net