Hi All, It’s been about a month since our last newsletter so here we are with more exciting updates.
Fission Experiments To meet our goal of starting Fission experiments, we finished resolving all highest priority Nightly blockers on July 31st, thereby completing our Fission milestone M6a. We resolved 121 issues in M6a <https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&list_id=15364412&o1=equals&f1=cf_fission_milestone&v1=M6a&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other>. A huge thank you to the Fission team and everyone who contributed to this success! Our next milestone is M6b to fix issues blocking us from starting a small percentage of Fission experiments in Nightly on Windows and Mac desktop versions. We are looking to start our Nightly experiment in Fx83, therefore, our M6b Nightly blockers must be fixed in Fx82 with the soft freeze date of September 17th. Here is a list of open M6b bugs <https://bugzilla.mozilla.org/buglist.cgi?list_id=15364910&f1=cf_fission_milestone&o1=equals&v1=M6b&resolution=---&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&query_format=advanced>. Please prioritize your component’s issues from this list for a successful M6b milestone. We are also tentatively aiming to kick-off a small percentage of Fission experiments on Beta in Fx85 and Fission M7 milestone is tracking all blockers for this. Here is a list of open M7 bugs <https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&resolution=---&list_id=15364956&o1=equals&f1=cf_fission_milestone&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&v1=M7> . We have also re-defined the related M6c milestone as issues that are desired to be fixed for Nightly experiments but will not block enabling the Nightly experiments. Thesee need to be fixed some time between now and M7, therefore have a target timeline of Fx82-Fx84. Here is a list of open M6c bugs <https://bugzilla.mozilla.org/buglist.cgi?o1=equals&f1=cf_fission_milestone&list_id=15364957&classification=Client%20Software&classification=Developer%20Infrastructure&classification=Components&classification=Server%20Software&classification=Other&query_format=advanced&resolution=---&v1=M6c> . Testing with Fission Fission milestones M4 and M4.1 fixed a majority of Mochitests that were broken with Fission, but there were some tests that were previously pushed out to be fixed later because of their dependencies on some unfinished Fission infrastructure pieces. In addition, :tkhan (Fission contractor whose last day at Mozilla was Aug 7th) added a cross-origin mode for Mochitests that runs the tests in a cross origin iframe (thanks Tahia!). Fission cross-origin mochitests are now running on tier2. All annotated tests that need to be fixed for Fission are tracked in this spreadsheet <https://docs.google.com/spreadsheets/d/16G5AZhHWWow3rBgim4QBHzWXMIIJiky2SzXYgDMTTKY/edit#gid=1354562828> . Call to Action: We need the help of component owners to review the test failures <https://docs.google.com/spreadsheets/d/16G5AZhHWWow3rBgim4QBHzWXMIIJiky2SzXYgDMTTKY/edit#gid=1354562828> and find out if the failure is due to the feature not working correctly (i.e. M6b Nightly blocking), or due to the test needing fixes (i.e. M7 for Beta blocking or M-Future for later). The wiki has some useful pointers <https://wiki.mozilla.org/Project_Fission/Enabling_Tests_with_Fission> to help with that. Devtools Updates There is a lot of work to be done in Devtools to make all of it Fission-compatible and the team continues to make progress. Here’s some cool new features. - In the Browser Toolbox, when inspecting XUL documents, you now get the same highlighters as in web pages. You can now see the selector and element size (bug <https://bugzilla.mozilla.org/show_bug.cgi?id=1650094>). From: To: - Fission support in DevTools is now turned on by default. You no longer need to toggle “devtools.contenttoolbox.fission” preference. - In the Inspector, the markup view (where you see the DOM element in a tree) now correctly updates when an out-of-process iframe navigates (bug <https://bugzilla.mozilla.org/show_bug.cgi?id=1628473>). What about:processes? A nice visual for all the processes that Firefox uses when Fission is enabled (fission.autostart=true) can be seen with about:processes which has recently been added by :yoric. It lists the PID, the URL loaded in that process and the resident memory used by that process, which can come in as a handy reference for a quick Fission view. We are continuing to make improvements to it so be on the lookout for a more finished look soon. Here is an example of how it currently looks. Another tip to check the process in which a particular iframe is rendered is by right clicking on any frame in a web page and selecting ‘This Frame’. The last piece of info in that menu is the PID for that iframe. Keep Calm and Document On! Can you remember a time when software development did not suffer from missing or insufficient documentation? Neither can I. :) So, following software engineering norms, we are also late with Fission documentation but better late than never, we now have some documentation on the new architecture that Fission brings on. :nika has added some very informative diagrams with brief accompanying descriptions in source-docs <https://firefox-source-docs.mozilla.org/dom/navigation/index.html>, which covers BrowsingContext, WindowContext, their relationship and a super useful table showing what gets replaced and what stays intact during different navigation scenarios <https://firefox-source-docs.mozilla.org/dom/navigation/nav_replace.html>. :farre has added some detailed information about BrowsingContext synced fields on the wiki <https://wiki.mozilla.org/Project_Fission/BrowsingContext>. Once it takes a more complete form, we intend to add this also to source-tree docs. Considering the amount and complexity of changes that have been necessary for Fission, it is not possible to document the entirety of it, but we would like to document the most important parts and the most frequently asked scenarios. As usual, if you have suggestions, questions or comments about the Fission documentation, architecture, milestones, timelines or anything else Fission-related, please reach out to the Fission team in #fission on Slack or Matrix (Element). Thanks for reading till the end and stay safe and healthy wherever in the world you are! - The Fission Team _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform