Fenix: WebExtensions auto-update

Created on 18 Oct 2019  Â·  7Comments  Â·  Source: mozilla-mobile/fenix

User Story

As a user, I want to choose whether I want my WebExtensions to auto-update once an updated version is available, so I have control over what's being installed in my browser.

Dependencies

A-C project board

Acceptance Criteria

  • I can choose to auto-update all WebExtensions
  • This is a global setting (not at the individual WebExtension level)
WebExtensions xs

All 7 comments

Progress report:
We’ve decided that all extensions will be auto-updated by default, and it’s not a control that users can manually turn off.

@moriyik We may consider this feature in the future. Many thanks for bringing up this point.

Could you help us understand why it sometimes makes sense for auto-update to be turned off for some extensions, and not for others?

Very good points, @moriyik. Thanks.

What if, instead of a per-addon control, we have a more strict global update policy?

  • All updates are automatic (ie. user doesn’t have to tap on “Update” button)
  • Updates will be made manual (ie. user must tap on “Update” button), on these conditions:

    • IF new version requires a new or modified set of permissions



      • THEN when you tap on the “Update” button, you must first review these new permissions



    • If new version is no longer recommended, or get delisted from the recommendation list



      • THEN when you tap on the “Update” button, we give you a message that you must review



My proposal solve some of the problems you’ve outlined above:

…new update requires more permissions than user is willing to give

But it doesn’t solve all problems:

…new updates break functionality of specific extensions
…allows users who want to audit the source changes before updating
…users can choose to use a specific version before [the latest]

I believe that we can work together to find a design that would solve these issues. Thanks for posting, and keep your feedback coming!

@brampitoyo it's been a while since we looked at this issue. Would you you please review the add-ons flow in nightly and advise whether any additional work is needed?

@vesta0 Thanks. I’ll check in with A-C Engineering, review my flow, and get back on this issue.

@vesta0 After checking with A-C Engineering (@csadilek & @Amejia481), it sounds like our current extension auto-update policy is already reasonable.

All Fenix extensions are globally set to always auto-update to the latest version, except if:

  1. New version requires new/modified set of permissions
  2. Add-on is no longer recommended, or get delisted from Recommended Extensions list

It’s true that we don’t currently have a behaviour to handle scenario 2. We’ll file this issue separately, but also think that it’s not urgent for the reason described below:

On desktop, you can install any add-on that exists on AMO. On Fenix, you can only install a select number of Recommended add-ons. Since Recommended add-ons have been vetted to be relatively safe, we feel confident that we won’t need to worry about removing them in the short term.

As for the auto-update setting on a per-app (not global) basis, desktop has switched back and forth between having and removing it. Let’s see what happens there before we make a decision on Fenix.

In other words:

  • Our current global policy works well
  • It doesn’t address the scenario where an add-on is no longer recommended, but it’s not an urgent issue to address
  • Our current per-app policy does not exist. Let’s wait on desktop to make a decision on that.

Thanks for investigating @brampitoyo ! I am good with postponing handling the second scenario.

Was this page helpful?
0 / 5 - 0 ratings