> This is tricky.
> 
> I'm going to ask Richard to weigh in here. We touched on this briefly in:
> 
> https://bugzilla.mozilla.org/show_bug.cgi?id=949260
> 
> I need to review the sync again to remind myself how it all works.

Got a bug number (or earlier email) to point me to?


> On Jan 9, 2014, at 5:41 PM, Mark Hammond <mhamm...@skippinet.com.au> wrote:
> 
>> I sent this a little too early - the patches are totally flawed :(  In 
>> particular, resetSync() isn't the place where we should "reset" the identity 
>> provider - startOver() in services/sync/modules/services.js looks a better 
>> bet (which is exposed in the UI as "unlink this device").  Either way, I 
>> think this is going to be tricky to get right.  So while I'm almost 
>> certainly going to make that patch obsolete, it would still be very helpful 
>> if you could try and get your head around some of the issues it tries to 
>> address (ie, determine if sync is unconfigured, configured for old sync, or 
>> configured for new sync,

Don't forget "configured for old sync with a custom server", and perhaps 
"configured for old sync with no other devices".


>> and have sync re-configure itself based on the user "unlinking" the device 
>> from a legacy account, which should them enable them to create a new Fxa 
>> based account)

I encourage you to have an existing user go through setup before you replace 
their legacy account with a new account. For three reasons:

• If they abort the process (or can't complete it due to maintenance or 
something — or because we screwed up and need to push out a point release!), 
you didn't just leave them in a bad state. "Reformat and reinstall" is less 
friendly than "repair Windows".

• You can offer a better user experience if you can directly look at their 
existing settings (e.g., check their enabled engines, pre-fill their existing 
email address), and you can't do that if you tell them to unlink their device 
first.

• If you still have their old credentials around when you finish FxA setup, you 
can write a migration sentinel into the old account, rather than flipping them 
a giant bird and making them do all of this work again on their other devices. 
We definitely want to take this step when we're encouraging migration of 
existing users, so engineering things such that it's hard to do in the short 
term is probably the wrong call. Even if you don't write a migration sentinel, 
you should delete the remote client and tabs records. (There's already a method 
for this.)

We'll be writing a migration sentinel on Android, so symmetry on desktop would 
be pleasant — doesn't make sense that it's way more usable to set up Sync on 
your phone rather than your desktop.
_______________________________________________
Sync-dev mailing list
Sync-dev@mozilla.org
https://mail.mozilla.org/listinfo/sync-dev

Reply via email to