- 1 General Topics / Roundtable
- 2 Friends of the Firefox team
- 3 Project Updates
- 3.1 Add-ons / Web Extensions
- 3.2 Developer Tools
- 3.3 WebDriver BiDi M3 Completed
- 3.4 Downloads Panel
- 3.5 Fluent
- 3.6 Form Autofill
- 3.7 Lint, Docs and Workflow
- 3.8 macOS Spotlight
- 3.9 New Tab Page
- 3.10 Nimbus / Experiments
- 3.11 NodeJS
- 3.12 Password Manager
- 3.13 PDFs & Printing
- 3.14 Picture-in-Picture
- 3.15 Performance
- 3.16 Performance Tools (aka Firefox Profiler)
- 3.17 Privacy/Security
- 3.18 Search and Navigation
- 3.19 Screenshots
- 3.20 Storybook / Reusable components
- 3.21 Community
- 3.22 ESMification status
General Topics / Roundtable
Friends of the Firefox team
Volunteers that fixed more than one bug
- Shane Hughes [:aminomancer]
New contributors (🌟 = first patch)
- Max added PiP Video-Adapter for handling Dailymotion Subtitles
- 🌟 Jon Rutter removed unnecessary instances of "Object.assign" in "test_getAdaptedProfiles.js
- Noel Lefevre changed width for Reader mode color-scheme-buttons
- Luke Swiderski added log and Edit log on breakpoint in sidebar should scroll line into view
- manisha.singh2019 added covering Focus Ring of text area in Add Address dialog and moved the trending icon used by about:newtab to the shared icon library in browser/themes/shared/icons and made title-text for saved addresses and credit cards readable in dark/light mode
- 🌟 ryu.devcreations centered the pop-up window of Remove All Logins in "about:logins"
- Gijs, Neil, mconley and jteow are this month's Firefox / Toolkit::General triagers!
Add-ons / Web Extensions
Addon Manager & about:addons
- Thanks to Eemeli some remaining localized strings used in about:addons have been migrated to Fluent - Bug 1507471
WebExtensions Framework and APIs
- As part of the deprecation of the “network.cookie.lifetimePolicy” Firefox about:config preference (Bug 1681493), the privacy.websites.cookieConfig WebExtension API JSONSchema has been updated to mark the “nonPersistentCookies” option as deprecated - Bug 1754924
As part of the ongoing ManifestVersion 3 work:
Fixed missing “action” WebExtensions API namespace on Android builds - Bug 1768839
Introduced new telemetry probes related to the extension startupCache usage - Bug 1767336
Enforced host permissions checks on content scripts registered using the scripting APIs - Bug 1760451
Enabled “scripting” WebExtensions API for ManifestVersion 2 extensions
- Part of changes introduced for ManifestVersion 2 extensions to help extension developers with transitioning their addons to ManifestVersion 3.
Reset the event pages idle timeout when the event page does still have “webRequest.filterReponseData” filters attached to intercepted web requests - Bug 1759300
- Added filter for list of stylesheets in Browser Toolbox (bug) (Style Editor panel). The user can also use Ctrl/Cmd + p shortcut to focus the input field (bug)
- Show frames under their related content process ID (bug)
- Don’t add expressions evaluated in the Console panel (command line) to history if the browser is running in private mode (bug)
WebDriver BiDi M3 Completed
Milestone 3 was all about browsing context APIs. The main focus was to deliver the browsingContext.navigate command, which as you can expect allows you to navigate a tab to a given URL. To go along with navigation, we implemented commands to get, create and close browsing contexts. We also added the browsingContext.contextCreated event to be notified about new tabs or windows.
With the help of the GeckoView team, WebDriver webplatform tests (wdspec) were enabled on Android and we can already test WebDriver BiDi on this platform.
New command-line arguments were added so that users can specify allowed host and origin headers, which will help to use WebDriver BiDi with various clients or environments.
Finally, after conducting a security review WebDriver BiDi was enabled on all channels in Firefox 101. Thanks to this, third party tools such as Selenium will now be able to use WebDriver BiDi to control / interact with Firefox.
With the request from the Application Update team we added support for window-less mode in Marionette. It allows consumers to verify silent restarts of Firefox on MacOS, which means that no browser window will be opened after the restart.
- Thanks to manisha.singh2019 for fixing a visual focus ring issue in the Add Address dialog!
- Thanks to Jon Rutter for removing unnecessary instances of "Object.assign" in "test_getAdaptedProfiles.js"
- Form Autofill now ignores autocomplete="off" and will try to fill this fields after heuristics have determined the type of these fields
- :tgiles fixed Form Autofill autofilling into disabled form fields
- :tgiles fixed an issue where forms would be filled with the incorrect expiry date format
- :tgiles fixed an issue where credit cards were not being filled correctly on walmart.com
Lint, Docs and Workflow
- (no voice update this week)
- The ESLint rule no-constant-binary-expression has now been enabled alongside fixing the existing instances where it caught issues.
New Tab Page
- Amy [:achurchwell] removed the placeholder colorways section from about:newtab’s personalized panel. Bug 1767017 .
- Drew [:adw] added a new feature where we exclude URLs with the AMP query parameter from appearing as tiles in the new tab page. Bug 1768529
- Scott [sdowne] reduced the number of I/O operations on the new tab page by reducing the attempt to create personality-provider folders. This fix increased performance. Bug 1768911
- Thanks to ryu.devcreations for fixing an alignment issue with the "Remove All Logins" pop-up window
- :sgalich enabled showing the save login panel only when the user has interacted with the page
PDFs & Printing
- janvi01 added a new video wrapper + subtitles support for SonyLiv and Hotstar
- Max added new video wrapper + subtitles support for Dailymotion
- mhowell and emilio addressed an issue with PiP toggle not appearing in SMPToucan Player
- niklas resolved subtitles support issues with Netflix (Bug 1768818, Bug 1768202)
- kpatenio enabled forward/backward seeking via keyboard shortcuts on Netflix
Performance Tools (aka Firefox Profiler)
- Daisuke fixed a bug on Win64 where Ctrl-L Delete / CTRL-L Backspace does not clear the address bar when done extremely fast. Bug 1457149
- James [:jteow] fixed a bug where autofill was broken for URLs such as localhost:8888/foo. Bug 1560676
- Daisuke and Drew [:adw] have been working on autofill so that it fills urls not only origins. Bug 1597791
- Daisuke fixed Bug 1633924 where adaptive results were case sensitive. This was changed so it’s case insensitive. If you typed FIRE or fire the url https://www.reddit.com/r/firefox/ will be shown in results
- Mandy [:mcheang] Fixed a bug where DDG Ads on Search Result Pages was reported inconsistently. Bug 1673868
- Mandy [:mcheang] Did some work to show an infobar for when an application default search engine is removed from configuration. Bug 1759207
- [jamie] Fixed a bug for accessibility screen readers. The reader read the first result twice. Bug 1761154
- Daisuke fixed Bug 1761154 where the address bar does not convert negative temperatures. Now it does. If you type in -30C to F, it converts it to -22 F. This feature is only available with browser.urlbar.unitConversion.enabled set to true.
- Drew [:adw] Added a Nimbus variable to load Fx Suggest suggestions with a different type on Remote settings. Bug 1765595
- Mark [:standard8] removed osfile.jsm usage from search because of new linting rules. Bug 1769047 .
- [niklas] I landed the initial patch for the draggable overlay. Set `screenshots.browser.component.enabled` to true to test out the new screenshots component!
Storybook / Reusable components
- A prototype of loading ESM modules has landed inbug 1432901, it is now possible to load modules synchronously for system code (in progress example for a content/system component).
- The team is working on a lazy module API similar to defineLazyModuleGetters & co.
- There are a couple of questions around the API and naming that are currently being explored.
- We are looking at a migration in H2.
- We are looking for feedback. Please get in touch with yulia (@yulia on matrix, firstname.lastname@example.org) if you would like to discuss any of the above.