Project Fission
Fission is Mozilla's project to implement Firefox site isolation. This introduces a major architecture change in Firefox such that a unique process is allocated for the main web page and for each unique third-party iframe embedded in it, thereby safely sandboxing them and further strengthening Firefox security.
Contents
Contact
The Fission team is standing by, ready to answer your questions in the #fission:mozilla.org room on Mozilla's Matrix server.
Reporting Bugs
To file a Fission bug in Bugzilla, click here to use this Fission bug template. Or file a bug and include the word “Fission” in the bug summary. The Fission team’s bug triage will find the bug, regardless of which Bugzilla component you file it in.
- Fission meta bug 1451850
- All bugs blocking Fission Nightly
Known Issues
- Some extensions might not work fully. But please file bugs for any of these issues!
- Some video player issues on YouTube and Twitch. (bug 1619370, bug 1620341)
- Cross-site iframes appear empty when printed.
- Cross-site iframes appear empty in screenshots.
- Documents with cross-site iframes cannot enter the BFCache.
- Session history is not tracked for cross-site iframes.
- Session restore occasionally fails to restore page state, such as page zoom, scroll offset, or form data.
- DevTools support for cross-site iframes with fission is incomplete.
- Attempting to debug extensions or workers from a non-fission window can cause crashes.
- Resource exhaustion issues with large tab counts, including:
- Excessive memory usage
- File descriptor exhaustion issues
- X11 connection exhaustion on Linux
- Picture-in-Picture doesn't work on cross-origin iframes (bug 1575868)
Enabling Fission
Fission is still in active development, and can only be enabled in Firefox Nightly.
- Enable the "fission.autostart" pref in Nightly using about:config. No need to edit any other "fission.*" prefs.
- Restart Nightly.
You can verify that Fission has been enabled by hovering over a loaded tab. If the tooltip contains a "[F]", Fission is enabled.
Disabling Fission
If you encounter an issue while using Fission, it is possible to open a non-fission window within the same browsing session using the "New Non-Fission Window" item in the hamburger menu. This can be useful to determine if issues are Fission-specific, or to work around fission-specific breakage.
To disable Fission completely, reset the "fission.autostart" pref back to "false" and restart Nightly.
Milestones
Milestone | Description | Date |
---|---|---|
M1 | OOP iframe framework | 2019-02-28 |
M2 | Semi-functional OOP iframe | 2019-05-06 |
M3 | Whistler All Hands demo | 2019-06-26 |
M4 | 90% of mochitests are passing | 2019-11-12 |
M4.1 | 100% of mochitests are passing | TBD |
M5 | Fission is dogfoodable (internal Fx user testing) | 2020-05-29 |
M6 | Enable in Nightly on desktop (X% rollout) | 2020 H2 |
M7 | Enable in Beta on desktop (X% rollout) | 2020 Q4 |
MVP | Enable in Release on desktop (X% rollout) | 2021 H1 |
- | Start work on Android Fission | 2021 H1 |