Out of Process Web Extensions in Firefox Nightly

Firefox Nightly users on Windows may configure the web browser to move Web Extensions to their own process in the most recent builds.

Mozilla's work on Firefox's multi-process architecture continues. The organization rolled out the new architecture to Firefox Stable this year, and increased the number of multi-process content processes in the recently released Firefox 54 for some systems as well.

The separation of Firefox core from websites and plugins improves stability of the browser, as crashes or slow downs that are caused by sites open in the browser won't affect the core process anymore.

Downside to this is an increase in RAM usage.

Out of Process Web Extensions in Firefox Nightly

firefox out of process web extensions

Firefox users may flip a switch in the most recent Nightly versions of the web browser to move Web Extensions to their own process as well.

This benefits browser stability and sandboxing as well, and it should improve the responsiveness of the main user interface further. All WebExtensions are moved to a single content process when the feature is enabled.  This means that they are less likely to crash or hang Firefox, and that security issues in WebExtensions are harder to exploit on top of that.

Firefox Nightly users may enable out of process Web Extensions in Firefox in the following way:



  • Load about:config?filter=extensions.webextensions.remote in the Firefox address bar. This should display the extensions.webextensions.remote on about:config directly.
  • Double-click on the preference to set it to true.
  • Restart the web browser.

A value of true enables out of process WebExtensions in Firefox. You can undo the change at any time by setting the preference to false.

Read also:  WebExtension Vimium-FF brings Vim-like controls to Firefox

When set to true, Firefox will use a content process for WebExtensions that are installed in the web browser. Note that this appears to be limited to WebExtensions; this means that legacy add-ons appear to still run in the main Firefox process.

firefox extensions out of process

Firefox supports another preference that users may set to change the number of extension processes.

  • Load about:config?filter=dom.ipc.processCount.extension in the Firefox address bar.
  • The default value is 1. You can modify it by double-clicking on the value. Enter another value, e.g. 4 for four extension processes.
  • Restart the browser.

Note that the preference depends on extensions.webextensions.remote.

Closing Words

Moving WebExtensions to their own content process improves Firefox in several significant ways. I'm not sure if the new feature applies to system add-ons that are WebExtensions as well, or if this is limited to user installed WebExtensions. If the former is the case, the move will benefit all users of the browser; if the latter is the case, only users who have installed WebExtensions will benefit from it.

Now You: What's your take on this?

Summary
Article Name
Out of Process Web Extensions in Firefox Nightly
Description
Firefox Nightly users on Windows may configure the web browser to move Web Extensions to their own process in the most recent builds.
Author
Publisher
Ghacks Technology News
Logo

Please share this article

Facebooktwittergoogle_plusredditlinkedinmail



Responses to Out of Process Web Extensions in Firefox Nightly

  1. HK-Rapper July 11, 2017 at 12:25 pm #

    These are all excellent news! Firefox might be on the right track again. Happily sacrificing my empty RAM for speed and stability. Also an update on cleaning of LocalStorage through the BrowsingDataAPI:
    https://bugzilla.mozilla.org/show_bug.cgi?id=1355576#c15

    There is now quite some activity. If Firefox 57 will support the full feature set of "Self Destructing Cookies" it become finally usable thanks to: https://github.com/mrdokenny/Cookie-AutoDelete/issues/44

    Clearing cookies and evercookies is as important as ublock origin and grease/tampermonkey, the latter two luckily already working. I might be able to leave the Firefox 52 ESR exile if Mozilla lets me.

  2. Creep July 11, 2017 at 12:28 pm #

    Note: I'm not sure someone who has both legacy add-ons and webextensions installed will notice much of a difference.

    • Martin Brinkmann July 11, 2017 at 1:45 pm #

      Depends on the WebExtensions installed. This is off by default and will probably be more useful once Firefox hits 57 Stable.

  3. Richard Allen July 11, 2017 at 4:39 pm #

    With the latest update to Nightly (2017-7-11) the default for 'extensions.webextensions.remote' is now 'True'. Haven't noticed any change in browser startup time or performance and now have a default total of 7 processes with 3 tabs open. I have five extensions enabled and only two are webextensions, Tampermonkey and Magic Actions for YouTube, so having the about:config entry set to True isn't really doing much for me, yet. But, Tampermonkey and for that matter Greasemonkey are not known for skimping on memory use, in the future I see it definitely making a difference.

    I saw on the mozillaZine forum that with 'extensions.webextensions.remote' set to true it's possible for there to be a bug with webextensions and or their drop down lists, I haven't seen that on my end.
    http://forums.mozillazine.org/viewtopic.php?f=23&t=3031673

  4. someone July 11, 2017 at 5:25 pm #

    some indispensable addons don't have a replacement WebExtension... It is very unfortunate that you either have to sacrifice productivity and abandon these addons or sacrifice security/stability. I guess I will stick with my productivity and Firefox ESR for as long as possible.

  5. pd July 23, 2017 at 5:28 am #

    FWIW, this is possible in the current release/stable version (54.0.1 64-bit Windows) however the doorhanger-like panels that drop down from many addon toolbar buttons become blank. Otherwise it works a treat, LOL.

  6. Ascar July 23, 2017 at 4:30 pm #

    Tested several times:

    If you happen to have buttons for Evernote, Pushbullet and SnoozTabs (Mozilla Test Pilot version) on the navigation toolbar and you change the dom.ipc.processCount.extension value to anything above the default value of 1 you will lose the buttons - they will become "invisible" so clipping, pushing and snoozing will become impossible.

  7. Ascar July 24, 2017 at 10:21 am #

    Also noticed:

    If the value of extensions.webextensions.remote changed from the default (false) to true the WhatsApp Web tab starts "forgetting" the session settings and every time Firefox is restarted I have to re-scan the QR Code in the tab in order to connect browser tab to my phone

Leave a Reply