Coming in Firefox 65: Dedicated Profiles Per Install and Profile Downgrade Protection

643 views
Skip to first unread message

Dave Townsend

unread,
Oct 18, 2018, 3:32:52 PM10/18/18
to dev-platform, Firefox Dev
In Firefox 65 we intend to ship two new features to help prevent user frustration caused by using profiles created by newer versions of Firefox.

Why

Firefox stores all of its settings in the user’s profile and unless certain command line arguments are used Firefox always launches with the same profile. Periodically as Firefox upgrades it makes changes to the settings that can render the profile unusable by earlier versions of Firefox. This can cause anything from certain features of Firefox being broken after a downgrade to Firefox crashing on startup.

To protect against this two new features will be landing in Nightly soon.

Dedicated Profiles Per Install

A common cause of users switching between different versions of Firefox is having Firefox installed multiple times. This most often happens when users have different channels installed at the same time like ESR and Release. It is a common request to be able to run the different installs at the same time. In Firefox 35 this was made possible for the developer edition by giving it a dedicated profile. The new dedicated profiles per install feature extends this and will give every install of Firefox on the computer a dedicated profile by default.

Users will be able to run different installs of Firefox simultaneously. Each will use a different profile for its settings. Upgrading an install of Firefox will keep it using the same settings.

We’re tracking work on this feature in bug 1474285.

Profile Downgrade Protection

For cases where users manually downgrade an install of Firefox or attempt to forcefully use an older version of Firefox with a newer profile the profile downgrade protection feature will now tell the user that the profile is too new to use with this Firefox giving them the option to create a new profile to use or to quit.

We’re tracking work on this feature in bug 1455707.

Developer Implications

As developers it is quite common to switch between different builds for example when testing different built versions of Firefox and doing regression testing. To support these use-cases a new command line argument “--allow-downgrade” will allow skipping the downgrade protection.

Conclusions

While some users may be impacted by this change we believe that most users will be unaffected and those that are will see less problems caused by downgrades than previously. This will give us the ability to ignore the possibility of downgrades when implementing new features and fixing bugs going forwards. Being able to make the assumption that this code works as designed will allow us flexibility in other changes downstream.

mhoye

unread,
Oct 19, 2018, 9:43:28 AM10/19/18
to Dave Townsend, dev-platform, Firefox Dev


------ Original Message ------
From: "Dave Townsend" <dtow...@mozilla.com>
To: "dev-platform" <dev-pl...@lists.mozilla.org>; "Firefox Dev" <firef...@mozilla.org>
Sent: 2018-10-18 3:32:36 PM
Subject: Coming in Firefox 65: Dedicated Profiles Per Install and Profile Downgrade Protection

In Firefox 65 we intend to ship two new features to help prevent user frustration caused by using profiles created by newer versions of Firefox.

This has been a serious problem from a community participation perspective for a while now. Making it safe and easy to flip back and forth between versions of Firefox will make casual participation in testing and QA, among many other things, hugely easier and more accessible; I'm quite grateful that we're doing this work.


- mhoye

bruno ais

unread,
Oct 19, 2018, 1:02:57 PM10/19/18
to mh...@mozilla.com, dev-platform, Firefox Dev, dtow...@mozilla.com
When creating a new profile to accomodate the downgrade, is the previous data deleted? Are there options to keep the old profile for just in case or selecting to use a new profile cleans the old one completely?

_______________________________________________
firefox-dev mailing list
firef...@mozilla.org
https://mail.mozilla.org/listinfo/firefox-dev

Dave Townsend

unread,
Oct 19, 2018, 1:05:08 PM10/19/18
to brun...@gmail.com, dev-platform, Firefox Dev
The new profile will be clean and empty. Since we know the previous profile is from a newer version of Firefox there isn't a way to copy its data without running the same risks as current downgrades. Users can use Firefox Sync if they want to share data between profiles. The old profile is not deleted though.

bruno ais

unread,
Oct 19, 2018, 1:07:26 PM10/19/18
to dtow...@mozilla.com, dev-platform, Firefox Dev
The old profile is not deleted though.
Ok, thanks.That's what I wanted to confirm.

Dave Townsend

unread,
Oct 22, 2018, 6:21:51 PM10/22/18
to Mike Hommey, dev-platform, Firefox Dev
On Mon, Oct 22, 2018 at 3:20 PM Mike Hommey <m...@glandium.org> wrote:
Does this also mean we can actively remove old data from profiles after
this work lands? My profile is very old, and there is a non-negligible
amount of data that has accumulated that's just leftover from old data
formats that have changed and are now stored in different files. We've
never cleaned those up presumably to support downgrades. It seems to me
with downgrades officially being unsupported, we should have an active
policy of removing old profile data when we migrate to new formats.

I certainly think so. What's more we can be more proactive about not leaving that stuff around going forwards. 

Michael Verdi

unread,
Oct 23, 2018, 10:08:31 AM10/23/18
to dev-platform, firefox-dev, Dave Townsend
Is there a way migrate data from one profile to another? We occasionally run user tests and ask people to install beta or nightly so that they can test a feature with their current data (bookmarks, history, preferences, etc). Will Firefox show up in the import wizard?
Thanks,
Michael
--
Michael Verdi • Firefox Search UX • Slack: verdi

Eric Shepherd (Sheppy)

unread,
Oct 23, 2018, 10:18:44 AM10/23/18
to dev-platform, firefox-dev, Michael Verdi, Dave Townsend
Michael,

Should be able to just enable sync in each copy of Firefox and sync the items you need across profiles that way. Is that good enough?


--
Eric Shepherd
Senior Technical Writer
MDN Web Docs

Eric Shepherd (Sheppy)

unread,
Oct 23, 2018, 10:21:21 AM10/23/18
to bruno ais, mve...@mozilla.com, dev-platform, dtow...@mozilla.com, Firefox Dev
No… although you could turn sync off again after the initial sync is complete, I guess.


--
Eric Shepherd
Senior Technical Writer
MDN Web Docs

On Oct 23, 2018, 10:20 AM -0400, bruno ais <brun...@gmail.com>, wrote:
Can sharing with firefox sync be done just one way?

Michael Verdi

unread,
Oct 23, 2018, 10:24:27 AM10/23/18
to Shepherd, Eric, brun...@gmail.com, dev-platform, Dave Townsend, firefox-dev
No - sync is too complicated for a 15 minute test.

bruno ais

unread,
Oct 23, 2018, 10:56:38 AM10/23/18
to dtow...@mozilla.com, Mike Hommey, dev-platform, Firefox Dev
Can firefox be setup to make profile backups before each update? I certainly wouldn't like having a surprise update to the degree of firefox 57 (which thankfully I was ready for) and then lose everything I had setup just because firefox updated.

bruno ais

unread,
Oct 23, 2018, 10:56:53 AM10/23/18
to eshe...@mozilla.com, mve...@mozilla.com, dev-platform, dtow...@mozilla.com, Firefox Dev
Can sharing with firefox sync be done just one way?

On Tue, Oct 23, 2018 at 3:18 PM Eric Shepherd (Sheppy) <eshe...@mozilla.com> wrote:

Dave Townsend

unread,
Oct 23, 2018, 11:12:49 AM10/23/18
to bruno ais, dev-platform, Firefox Dev
Not currently no.

Michael Verdi

unread,
Oct 23, 2018, 11:34:21 AM10/23/18
to Dave Townsend, dev-platform, firefox-dev
Dave could there be a way/option to migrate safe data to the new profile similar to what we do with a refresh?

_______________________________________________
firefox-dev mailing list
firef...@mozilla.org
https://mail.mozilla.org/listinfo/firefox-dev

Matthew N.

unread,
Oct 23, 2018, 12:25:14 PM10/23/18
to Michael Verdi, dev-platform, firefox-dev, Dave Townsend
Our current Firefox migrator (used for a Firefox Refresh) just copies files so wouldn't be suitable for a downgrade scenario as it could introduce problems that we're trying to avoid with this approach. We could rewrite it to be more like other migrators where it would read individual records from the old profile and then insert them into the new file/DB but that would be a fair amount of work.

For the case of testing a newer version like you mentioned (going from Release to Beta or Nightly), copying the files should be safe and so you could use the `-migration` command line option to migrate from the old profile to the new one. There is no UI for this so you'd want to provide a .bat file for the user to run your testing Firefox build with the command line argument. We've done similar things for user testing before.

Cheers,
Matthew

Dave Townsend

unread,
Oct 31, 2018, 1:32:25 PM10/31/18
to dev-platform, Firefox Dev
Just a heads up, we've decided to defer this change to a later release to make sure we get the experience right for our users. I'll post another update once we have a better idea of when this will land.

Dave Townsend

unread,
Jan 10, 2019, 5:45:52 PM1/10/19
to dev-platform, Firefox Dev
As promised here is that update. We have cleaned up the experience so that it only impacts nightly until it rides the trains and added a snazzy new first-run UI that explains what is going on. The plan is to land this at the start of the 67 nightly cycle.
Reply all
Reply to author
Forward
0 new messages