Firefox/Meeting/19-August-2025
Aug 19, 2025
General Topics / Roundtable
- [jdescottes] From :whimboo Bug 1967525 - Mac workers (since macOS 14.7.1) show a 500ms to 1.5s delay for web content process creation due to sandbox restrictions was fixed ~10 days ago. More details on slack #performance-wins and in the bug. Very long investigation, but should lead to shorter job durations on macos, which hopefully means those workers will be less overloaded and easier to use for your own CI runs.
- [luca] if you plan to use Services.fog.registerRuntimeMetric (FOG aka. Firefox on Glean) you may want to be aware about the interaction with jogfile metrics loaded automatically in artifacts builds, which would be clearing runtime registered metrics if registered before the jogfile is loaded (Bug 1983674)
Friends of the Firefox team
Introductions/Shout-Outs
- [mconley] Welcome back Irene Ni (:ireneni), who is joining the New Tab team!
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
New contributors (🌟 = first patch)
- (will be filled in after meeting)
General triage
Project Updates
Accessibility
Add-ons / Web Extensions
Addon Manager & about:addons
- As part of work to remove the deprecated InstallTrigger API, more tests have been migrated away from the deprecated API to keep the underlying test coverage (Bug 1982131 / Bug 1980604 / Bug 1980926 / Bug 1980950 / Bug 1980972 / Bug 1981193) Thanks to Gregory Pappas for their invaluable help on keep moving this work forward!
WebExtensions Framework
- a new ExtensionUtils.isExtensionUrl internal helper has been introduced to ensure consistency in how we internally detect if a given url is an Extension url (Bug 1780581). Thanks to Christina for contributing this small but very much appreciated improvement to our internals.
- As part of introducing support for WPT WebExtensions API tests (Bug 1949012), test WebExtensions API has been adjusted to match the behaviors expected when used in WPT WebExtensions tests based on the latest specs agreed with the other browser vendors (Bug 1970440)
WebExtension APIs
- In Firefox versions >= 143 omnibox.onInputEntered API event is going to be recognized as user interaction (and access to the active tab for extensions that have the activeTab permission granted). Thanks to alex.stout55555 for contributing this enhancement for the omnibox WebExtensions API!
- Following up their previous contributed patch to introduce the new browser.storage getKeys API method (Bug 1910669), Nate Gross has contributed a new `get_keys` method on the Rust webext sync storage backend and then updated browser.storage.sync.getKeys implementation to use the new Rust implementation (Bug 1978718). Thanks to Nate for contributing this additional enhancement to the storage sync WebExtensions API.
DevTools
Chris Vander Linden improved the Fonts panel by truncating long font names (#1947950)
Sebastian Zartner [:sebo] added an Inactive CSS warning when anchor-name is used on an element that does not generate a principal box (e.g. display: contents) (#1895181)
- Artem Manushenkov fixed an issue where Shift + clicking a color swatch (to cycle through units), could trigger text selection in the rule (#1982760)
- Gaétan Fine Add a keyboard shortcut (Ctrl+Shift+Y on Windows/Linux, Cmd+Shift+Y on Mac) to start the eyedropper when the Inspector is focused (#1177108)
- Holger Benl [:hbenl] fixed the color picker in RDM on pages with iframes with touch simulation enabled (#1971685)
Nicolas Chevobbe [:nchevobbe] added support for ::before::marker and ::after::marker in the Inspector (#1980858)
- Nicolas Chevobbe [:nchevobbe] improved performance of the Rules view by 5% to 10% on pages with lots of rules and/or declarations (see alert) (#1979011)
- Julian Descottes [:jdescottes] chased and fixed a funny bug where DevTools could steal the focus of the page and break the handle of resizable elements in the content page (#1911627)
- Nicolas Chevobbe [:nchevobbe] fixed a crash that would happen in the Debugger if there was a variable or parameter named __proto__ in the paused scope (#1980263)
- Hubert Boma Manilla (:bomsy) fixed the Debugger sources tree on pages using turbopack:// URLs (#1908463)
Julian Descottes [:jdescottes] made styling of cached 200 HTTP responses consistent with other cached responses (#1542789)
WebDriver BiDi
- Thanks to Liam DeBeasi who implemented the logic to emit backfill events for "browsingContext.contextCreated". Now, when clients subscribe to this event, they will also get an initial "backfill" event for existing browsing contexts.
Julian implemented a set of new "network" commands which allow capturing and retrieve the response content of a network request.
Clients can use "network.addDataCollector" to specify which requests should be collected. The command parameters accept browsing contexts, user contexts (aka Firefox containers), as well as a maximum content size.
After that, the “network.getData” command can be used to retrieve an already collected network body.
To perform clean up, use "network.removeDataCollector" - to remove a collector rule - and "network.disownData" - to wipe a specific collected data.
A hardcoded size is allocated for network data collection in WebDriver BiDi. Once the limit is reached, previous network bodies are evicted: first in, first out.
- Holger fixed a bug that removed basic authentication information from the URL in the "browsingContext.navigationCommitted" event.
- Julian fixed a bug where various WebDriver BiDi commands would fail if the browser had an unloaded tab.
Desktop Integrations
Downloads Panel
Credential Management
Fluent
Form Autofill
Lint, Docs and Workflow
- Jon added a mechanism for our Stylelint linter to be able to manage roll-outs of new rules.
Information Management
macOS Spotlight
Migration Improvements
New Tab Page
[mconley] Our first train-hop pilot to Beta launched last week! A small percentage of our Beta 142 population got updated to New Tab 143, and our telemetry is showing that the deployment mechanism is working! As part of this, we’re also testing rollback / escape hatch mechanisms
One rollout has already ended, so enrolled clients should revert back to the built-in newtab
One rollout is running, but is having the “escape hatch” pref set with a separate rollout, which should cause the built-in newtab to be preferred
One rollout is running to test that the built-in newtab will be preferred after the next major version bump.
Terminology: “newtab train-hop compatibility” means the ability for Nightly’s newtab to run correctly on the current versions of Beta and Release. We’re pivoting to start enforcing this now. One way we’ve done this is to introduce a linting rule that prevents usage of resource://newtab and chrome://newtab from non-newtab code. Thanks Standard8 for the coaching on that one!
- Shout-out to Nina, who’s been on a tear ripping out old configurations and mechanisms from New Tab that we no longer need (particularly now that Pocket has been sunset).
- Productivity widgets (timer, TODO list) are aiming to make these available to some users on the release channel in the near future. We’re also currently planning on making these opt-in from Firefox Labs.
Nimbus / Experiments
Password Manager
PDFs & Printing
Picture-in-Picture
Thanks to hsohaney for adding a new PiP shortcut that closes PiP windows without pausing videos!
To give it a try, hold the shift key before closing the window with the X button or Escape key.
Performance
Performance Tools (aka Firefox Profiler)
ChromeUtils.addProfilerMarker now takes start timestamps from the new ChromeUtils.now() method instead of needing to pick performance.now() in windows and workers and Cu.now() in JS modules.
Cu.now() will be removed soon.
Places (read-only)
Privacy & Security
Profile Management
Reader Mode
Screenshots
Suggest
Moritz has been working on displaying relevant dates (such as Mother's Day) in Firefox Suggest (1981717,[1]1981723,[2]1981240,[3]1979854,[4]1981966,[5]1981716,[6]1981716), will be run in an experiment with certain locales
Daisuke continued to work on adding real-time stock information in the address bar when users search for market related queries. (1982027,[7]1981761,[8]1981739,[9]1980538)
General Address Bar
Search
Drew and Mark added the ability to use Google Lens via the context menu, allowing users the ability to search images with the context menu. (1976991,[13]1981787,[14]1980758,[15]1980310,[16]1981216,[17]1981037,[18]1980678)
We’ll run an experiment with users, but you can experiment with it using browser.search.visualSearch.featureGate
Storybook/Reusable Components/Acorn Design System
Tab Groups
This week I learned
[florian] Treeherder has several useful keyboard shortcuts:
r Retrigger selected job
n / p Select next/previous failure
l Open the logviewer for the selected job