Firefox/Meeting/13-June-2023
Contents
General Topics / Roundtable
- [mconley] See Mossop’s email to firefox-dev about his proposal for deprecating the chrome:// and resource:// protocols
Friends of the Firefox team
Introductions/Shout-Outs
- [mconley] Shout to to Gregory Pappas [:gregp] for leading the charge on retiring old preferences!
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
- Ganna
- Gregory Pappas [:gregp]
- Itiel
- Masatoshi Kimura [:emk]
New contributors (🌟 = first patch)
- Alvin fixed NS_ERROR_MALFORMED_URI errors in the browser console when importing from Safari
- 🌟 patrickkettner increased setUninstallURL length limit to 1023
General triage
mconley, mhowell, fchasen, and niklas are this month’s Firefox / Toolkit :: General triagers!
We’ve recently slotted some names in to get more even coverage and distribution.
Project Updates
Add-ons / Web Extensions
Addon Manager & about:addons
- Thanks to Jules Simplicio’s work on Bug 1798404, the add-on card toggle button style issues in High Contrast Mode are now fixed (Bug 1722643)
WebExtensions Framework
Conversion of the WebExtensions and Add-on manager JSM modules into ESM modules (Bug 1824613, Bug 1830814, Bug 1836482)
Investigated and fixed a regression hit by the addons-related RDP protocol methods (Bug 1837185)
Converting the jsm files from toolkit/mozapps/extensions/internal has been deferred to a separate followup (Bug 1836480), because these modules are being unloaded for testing purposes from AddonTestUtils (which is not supported by the ESM module loader)
Initial implementation of the Quarantined Domains feature has landed Nightly 115 (Bug 1834825, Bug 1832791, Bug 1835013, Bug 1835016, Bug 1833209, Bug 1833438, Bug 1835155, Bug 1835161, Bug 1836224, Bug 1836448, Bug 1836771)
ongoing work in Nightly 116 to introduce UI to allow users to exempt specific extensions from the restrictions applied on quarantined domains.
WebExtension APIs
- Updated runtime.setInstallURL url length limit to 1023 characters (Bug 1835723), thanks Patrick Kettner for contributing this enhancement!
- Fixed a regression when loading native messaging manifest files that include an UTF-8 BOM character (Bug 1835790. Fix uplifted to Firefox 114 because the regression was introduced in Bug 1772932.
Developer Tools
DevTools
Contributors
Thanks to Gregory Pappas for fixing the inspector event tooltip, where overlay scrollbars could interfere with the event listener toggles (bug)
Other teams
Marco replaced Preferences.sys.mjs usage with Services.prefs in DevTools (bug)
- Alex fixed memoization in debugger selectors (bug), and made changes to avoid unnecessary rendering of the Tab component (bug). Those made opening large file in the debugger 30% faster and project search 5% faster (perf alert)
- Hubert reverted a performance regression that happened when we enabled the Blackbox Lines feature (bug)
- Nicolas fixed a bug in the Debugger tooltip where it wasn't possible to expand properties (bug)
- Hubert added documentation for blackboxing lines (doc, bug) and for the source-maps ignore list (doc, bug)
- Julian made DevTools HAR handle multiple navigations (bug), and also fixed an issue where HAR wasn't recording all requests if there was an active filter in the Network panel UI (bug)
- Julian also added a setting to disable the F12 keyboard shortcut to open DevTools (bug). F12 is easy to trigger and leads to unwanted opening of DevTools, which might confuse non-developer users. We plan some follow up to have some kind of onboarding UI on first usage of F12.
- Nicolas fixed an issue with WebConsole autocomplete on proxies where you could end up hanging the browser (bug)
WebDriver BiDi
- Sasha implemented capability matching for features for the session.new command (bug)
- Julian renamed network events originTime to timeOrigin to match the spec (bug)
- Henrik fixed a regression where Element reference could be unknown after navigation (bug)
- Julian enable unlimited stack trace capturing for BiDi realms (it was limited to 50 throw by realm before) (bug)
ESMification status
- We now have the first ChromeWorker using ES modules landed in the tree.
ESMified status:
browser: 76%
toolkit: 99%
Total: 91.9% (up from 85.3%)
- #esmification on Matrix
- Migration Document (with a walkthrough!)
Lint, Docs and Workflow
- Gijs fixed issues with stylelint not running on Windows when passing a path.
Migration Improvements
- The new migration wizard has been enabled by default! It’s being slowly rolled out to the release channel for users on Firefox 114, and will be fully enabled for Firefox 115. Big thank you to everybody who got us here - especially all of the CalState LA students!
negin is shipping an experiment this week that embeds the new migration wizard in about:welcome during onboarding, rather than sending the user to a dialog / other tab!
- mstriemer has made it possible to import history from modern Safari
- Alvin Lew fixed a spurious error message logged when importing bookmarks from Safari
mconley made it so that the new migration wizard is used when performing a profile reset or launching the migrator from the command line
Then made it so that Firefox profiles appear with a Firefox icon when appearing in the migration wizard when run via the command line
mconley added an item to the migration wizard to make it possible to import bookmarks from HTML files
Then fixed a bug where previous import counts were still displayed when doing multiple bookmarks file imports
We’ve started putting shovels into the ground to support migrating extensions from Chrome! tgiles is working on changes to the wizard and MigrationUtils, and wdurand is working on AddonManager changes to support this.
This will work by downloading a file from AMO that maps Chrome extension IDs to equivalent Firefox extension IDs, and then performing a download, install and enable.
- Special shout-out to Serg and Neil for working on bugs to make password syncing more reliable! This work will soon allow us to set signon.management.page.fileImport.enabled to true, which allows for Password import from CSV in the migration wizard, and Safari password import from CSV.
Picture-in-Picture
- Shoutout to niklas for updating our telemetry probes
- Thanks to mhowell for quickly removing expiring telemetry probes
Karandeep fixed users being unable to exclude custom search engines with a comma in their name from being one-click engines in the address bar
- Mandy made it so that users can still use Firefox in a limited mode if the search service fails to initialise properly
- James made the address bar preserve the user-typed value when a tab is moved into a new window
Various improvements around Search Engine Result Page telemetry by Stephanie and James:
Bug 1825058 - Handle the case where a user clicks on a non-ad link on a SERP
Bug 1829953 - Add follow_on_from_refine_on_SERP to the impression event
Bug 1834701 - Update SearchSERPTelemetryChild to cache information more specifically
Bug 1836507 - Tab history from one SERP to another can be recorded as a non-ad click
Daisuke and Drew continued implementing add-on suggestions in the Address bar:
Bug 1836005 - Implement second UI treatment for addon suggestions
Bug 1835224 - The firefox add-on suggestion is cut-off instead of using faded text
Bug 1835598 - Fx add-on suggestion is displayed in different section depending on keyword used
Bug 1835979 - Add the "Feedback" label to the addon suggestion result menu button
Bug 1836582 - Update the matching behavior of addon suggestions
Bug 1836585 - Change the "Top pick" label to "Firefox extension" for addon suggestions
- Dale made it so that Nightly users can set custom search params via prefs to make testing easier
- Mark added schema validation testing for search-configuration and search-telemetry-v2 remote settings
Storybook/Reusable Components
Thanks to Anna for refactoring more SUMO links to use the moz-support-link widget
This week I learned
[kpatenio] If you’re trying to run a beta simulation and you’re getting the following error when building Firefox locally: error: unable to create target: 'No available targets are compatible with triple "wasm32-unknown-wasi"'
Try adding ac_add_options --enable-artifact-builds to your mozconfig and rebuild
It seems that the command disables bootstrap by default. It ends up using the system clang, which might or might not support WASM (at least on MacOS).
Thanks to ahochheiden and glandium for helping me find a workaround