Last Comment Bug 754933 - Sync support for Reset Firefox
: Sync support for Reset Firefox
Status: NEW
: productwanted
Product: Cloud Services
Classification: Client Software
Component: Firefox Sync: Backend (show other bugs)
: unspecified
: All All
: -- normal with 1 vote (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
:
Mentors:
Depends on:
Blocks: reset-firefox
  Show dependency treegraph
 
Reported: 2012-05-14 11:27 PDT by Gregory Szorc [:gps]
Modified: 2015-10-09 07:20 PDT (History)
11 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---


Attachments

Description Gregory Szorc [:gps] 2012-05-14 11:27:07 PDT
I just noticed that "Reset Firefox" does not carry over the Firefox Sync preferences. We should consider supporting that.

mverdi: feel free to move to the appropriate bug component.
Comment 1 Gregory Szorc [:gps] 2012-08-14 11:13:24 PDT
Asa, Ibai: I just wanted to run this by Product.

I think that "Reset Firefox" from about:support should carry over basic Sync account information (in addition to whatever "Reset Firefox" carries over today. The first time a sync is performed after resetting (it will happen in the background), Sync effectively performs an initial sync, pulling down everything that is on the Sync server.

The current behavior is that Sync account info is lost when performing "Reset Firefox" and Sync needs to be reconfigured by the user. If Sync is paired with an existing account, we effectively do an initial sync (my proposal for how this should work). If Sync is configured with only a single device, I /think/ the user has to go through the reset account flow since the Recovery Key isn't available. Sub-par user experience either way, IMO.
Comment 2 Asa Dotzler [:asa] 2012-08-14 15:25:56 PDT
Yes, I think we should persist sync setup through Reset Firefox. Madhava, what do you think?
Comment 3 Verdi [:verdi] 2012-08-14 15:47:33 PDT
I'm concerned about add-on sync. If a user resets Firefox and then Sync restores the add-ons they had before the reset we could re-break what was just fixed by the reset.
Comment 4 :ibai 2012-08-14 16:04:55 PDT
But Add-on sync only works with add-ons from AMO and in general this are "ok". Correct?
Comment 5 Asa Dotzler [:asa] 2012-08-14 17:03:58 PDT
(In reply to Verdi from comment #3)
> I'm concerned about add-on sync. If a user resets Firefox and then Sync
> restores the add-ons they had before the reset we could re-break what was
> just fixed by the reset.

I agree with that concern. Could we simply un-check that item when a reset is performed? Are other sync'd items equally concerning?
Comment 6 Verdi [:verdi] 2012-08-14 17:06:02 PDT
(In reply to Asa Dotzler [:asa] from comment #5)
>  other sync'd items equally concerning?

Good point. I'm not clear on exactly what "Preferences" are synced.
Comment 7 Gregory Szorc [:gps] 2012-08-14 17:12:16 PDT
(In reply to Asa Dotzler [:asa] from comment #5)
> (In reply to Verdi from comment #3)
> > I'm concerned about add-on sync. If a user resets Firefox and then Sync
> > restores the add-ons they had before the reset we could re-break what was
> > just fixed by the reset.
> 
> I agree with that concern. Could we simply un-check that item when a reset
> is performed? Are other sync'd items equally concerning?

We could forcefully disable the add-on sync engine after a reset, yes. Sync clients have some interesting semantics on what to do when things are disabled (in some cases it will wipe server data, which may be undesirable). I'll have to refresh myself on the exact details...

(In reply to Verdi from comment #6)
> (In reply to Asa Dotzler [:asa] from comment #5)
> >  other sync'd items equally concerning?
> 
> Good point. I'm not clear on exactly what "Preferences" are synced.

The services.sync.prefs.sync.* prefs define what preferences are synchronized. Add-ons can add prefs there and cause their own prefs to be synchronized or can cause built-in preferences that aren't normally synchronized to be synchronized.
Comment 8 Verdi [:verdi] 2012-08-14 17:18:31 PDT
(In reply to Gregory Szorc [:gps] from comment #7)
> 
> The services.sync.prefs.sync.* prefs define what preferences are
> synchronized. Add-ons can add prefs there and cause their own prefs to be
> synchronized or can cause built-in preferences that aren't normally
> synchronized to be synchronized.

Here's what I'd hope we could avoid:
A user has Sync set up and then installs the Babylon translation software on their computer. That installs an add-on in Firefox and changes the home page, all search engine defaults and the new tab page url. In an attempt to recover from this, the user resets Firefox. Then, once Firefox restarts, it connects to the sync server and restores those home page, search and new tab settings to the ones defined by the Babylon toolbar.
Comment 9 Mike Connor [:mconnor] 2012-08-15 05:21:07 PDT
We only sync add-ons from AMO, as Ibai noted in comment 4.  I would assume that toolbars that do this are _not_ permitted on AMO, in which case there's no problem.
Comment 10 Philipp von Weitershausen [:philikon] 2012-08-15 14:27:06 PDT
(In reply to Verdi from comment #3)
> I'm concerned about add-on sync. If a user resets Firefox and then Sync
> restores the add-ons they had before the reset we could re-break what was
> just fixed by the reset.

I don't think this is an issue because of the aforementioned limitation to AMO addons only. Disabling add-on sync behind the user's back would create more damage than do good here, I'm pretty sure. Plus, it's not like we already tell users in all sorts of places to disable add-ons if Firefox is acting up.

(In reply to Verdi from comment #6)
> (In reply to Asa Dotzler [:asa] from comment #5)
> >  other sync'd items equally concerning?
> 
> Good point. I'm not clear on exactly what "Preferences" are synced.

There's a whitelist [1] of explicitly vetted prefs. Nothing in that list should hose your Firefox. But we can re-review that list if there are concerns.

[1] http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.js#916
Comment 11 Verdi [:verdi] 2012-08-20 13:28:39 PDT
(In reply to Gregory Szorc [:gps] from comment #7)
> > Good point. I'm not clear on exactly what "Preferences" are synced.
> 
> The services.sync.prefs.sync.* prefs define what preferences are
> synchronized. Add-ons can add prefs there and cause their own prefs to be
> synchronized or can cause built-in preferences that aren't normally
> synchronized to be synchronized.



(In reply to Philipp von Weitershausen [:philikon] from comment #10)
> 
> There's a whitelist [1] of explicitly vetted prefs. Nothing in that list
> should hose your Firefox. But we can re-review that list if there are
> concerns.
> 
> [1]
> http://mxr.mozilla.org/mozilla-central/source/browser/app/profile/firefox.
> js#916

Sorry, not following you. Here are some troublesome preferences that I'd hope would be reset to default and not changed by sync:
*home page
*all search engines (location bar, search bar, right-click)
*Application settings
*History settings
*Password settings
*Proxy settings
*Firefox update settings
*SSL settings
*All toolbars and controls

Note You need to log in before you can comment on or make changes to this bug.