Highlights
- The WebExtensions team has been working with other browser vendors to make it easier for extension authors to migrate to Manifest v3
- To allow extensions developers to use the same manifest.json file across multiple browser vendors, extensions with a manifest.json file including both background.service_worker and background.scripts will load successfully instead of failing at install time, a warning will be logged and background.scripts will take precedence over the currently unsupported background.service_worker – Bug 1860304
- The Ubuntu Snap improvements for the browser migration wizard have gotten a green light from QA! It will be riding the trains out in Firefox 120, and hopefully will make it easier for users on Ubuntu migrate data from other browsers.
- Some excellent improvements have landed for the Firefox Profiler
- The profile size upload limit has been increased from 50MB to 150MB. This should make it easier for people to submit profiles with more data.
- A LargestContentfulPaint marker added, and FirstContentfulPaint is now visible as a vertical line in the Network track (example profile). This will make it easier for our performance team to optimise for rendering websites more quickly.
- Nicolas from the DevTools team has been making some great progress on the DevTools Accessibility project (bug, bug, bug, bug). The most recent visible one is that a thick, noticeable focus indicator was added to focusable elements across the toolbox
Friends of the Firefox team
Introductions/Shout-Outs
- Welcome to Nikki Sharpley! Nikki is joining the Information Management team, and will be focusing on Firefox View.
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
- Ganna
- Jonas Jenwald [:Snuffleupagus]
New contributors (🌟 = first patch)
- 🌟 astrid removed extra ‘;’ after member function definition in updater.cpp
- 🌟 nzaih18 removed browser.translations.autoTranslate preference
Project Updates
Add-ons / Web Extensions
WebExtensions Framework
- Thanks to Gregory Pappas for investigating and contributing a fix for Bug 1859236 – `event.getCoalescedEvents` not working in content script (fixed in the 120 cycle, the same nightly cycle where the regression was introduced as a side effect of the changes for Bug 1858434)
- As part of improvements to the migration path to Manifest Version 3 and from persistent background pages to the event pages:
- The lifetime of the event page is going to be implicitly extended by WebExtensions API calls originated by the event page itself – Bug 1844041
- Remaining bits of the WebExtensions telemetry are being ported to Glean (and get data for these metrics on Firefox for Android builds as a side effect of that):
Addon Manager & about:addons
-
- Investigated and fixed failures hit by AddonManager mochitest-browser tests in a11_checks jobs Bug 1859035
Developer Tools
DevTools
- Alex added error message when evaluating unknown commands (bug)
- Alex fixed logging SharedArrayBuffer from Worklets and Workers (bug)
WebDriver BiDi
- Sasha added support for userActivation parameter in script evaluation (bug)
- Sasha added support for the origin argument in the browsingContext.captureScreenshot command, allowing a script to, for example, take a screenshot of part of the page that is not visible (bug) …
- … which also allowed to remove the now unnecessary scrollIntoView argument usage in browsingContext.captureScreenshot (bug)
- Finally, Sasha added a context property on WindowProxy serialized object (bug)
- Julian fixed an issue where browsingContext.navigate would not return the expected navigation id when wait=none was passed (bug)
ESMification status
- Arai converted the remaining reftest harness modules.
- Mike Conley is working on reworking the new tab tests and converting to ES modules.
- ESMified status:
- browser: 88%
- toolkit: 99%
- Total: 96.33% (up from 96.13%)
- #esmification on Matrix
Lint, Docs and Workflow
- The CI task, source-test-doc-generate, now has improved summaries on treeherder for when there’s more warnings than expected.
- Previously, the summary would only show some random issues, and not the actual “x new warnings” line.
- The line is now exposed, but only gives the amount of new warnings. Currently you need to compare with a passing run to figure out what the new warnings actually are. There is a bug filed for improving this further.
- Logan extended the licence linter to also check idl and webidl files.
- The reject-importGlobalProperties rule has been extended to apply to sjs files, and to reject more unnecessary cases in privileged scopes.
- The valid-jsdoc environment has been enabled on more parts of the browser/ code.
Migration Improvements
- The last vestiges of the old XUL-based migration dialog have now been removed.
- In Device Migration land, we’re primed to add helpful email and calendar reminders to our switching-devices SUMO page to make it easier for users to remember to download Firefox on their new devices! Emails are just going through localization, but we aim to have this enabled by the end of the month.
New Tab Page
- mconley is:
- Next things:
- Talking to the Onboarding team about moving the ASRouter code (starting with the administrative tool) out from about:newtab into its own about: page.
Performance Tools (aka Firefox Profiler)
- Test jobs now upload resource use profiles too (similar to build jobs).
- Example profile of a mochitest job
- In addition to markers for the names of the tests, there are also markers showing the name of the test folders, making it clear which tests take long, when we restart the browser, and if the time was used with the CPU busy or idle.
- Example profile of an xpcshell job
- This profile makes it easy to see which tests ran in parallel.
- Example profile of a mochitest job
Search and Navigation
Enhanced Cross-Platform Suggest, which expands our Firefox Suggest capabilities and brings Suggest to mobile browsers
- Drew removed adM/wikipedia suggestions from memory. Before these suggestions were sticking around even when disabled. 1832198.
- Drew has added tests and refactors for Firefox Suggest in 1859389 and 1861540.
- Dao implemented the layout for Firefox Suggest Opt-in Experiment in 1852055.
General improvements
- Marc Seibert fixed a bug where the container label was not properly displayed in a bookmark result. 1859810
- Marc Seibert fixed a bug where a part of the url is crossed out when the security padlock is clicked. This bug happens when browser.urlbar.trimHttps is enabled. 1860528.
- Dale and Dao refactored CSS to use `moz-bool-pref` for richSuggestions in 1862704 and 1862930.
Search and SERP (Search Engine Result Page) telemetry
- Mandy added telemetry to track search service failures. 1849013.
- James added remote settings listeners for when SearchSERPTelemetry was updated in 1785104.
- Standard8 extended SERP telemetry config for mobile. 1861676.
- Standard8 updated Yahoo! Auctions branding. 1861925
- Stephanie fixed broken marionette tests for search. 1863023
Consolidated Search Configuration
- This is an initiative that consolidates search engine configurations across our desktop and mobile browsers
- Mandy and Standard8 have just started rewriting the configuration to address some limitations of the previous configuration, and to allow it to be shared with our mobile products.
- Mandy added a new application search engine class in 1861080 and 1863360.
- Standard8 added search engine config schema v2. 1854965
- Standard8 updated search tests in 1862287 , 1862462 and 1863023.
- Standard8 updated the new and old search engine selectors to use the right keys. 1862679
- Standard8 enables spell check for schemas and docs in search. 1862624
Midori wrote on