Firefox/Meeting/30-Apr-2024
Firefox Bi-Weekly Meeting
Contents
- 1 Apr 30, 2024
- 2 General Topics / Roundtable
- 3 Friends of the Firefox team
- 4 Project Updates
- 4.1 Accessibility
- 4.2 Add-ons / Web Extensions
- 4.3 Developer Tools
- 4.4 DevTools
- 4.5 WebDriver BiDi
- 4.6 Desktop Integrations
- 4.7 Downloads Panel
- 4.8 Credential Management
- 4.9 Fluent
- 4.10 Form Autofill
- 4.11 Lint, Docs and Workflow
- 4.12 Information Management
- 4.13 macOS Spotlight
- 4.14 Migration Improvements
- 4.15 New Tab Page
- 4.16 Nimbus / Experiments
- 4.17 Password Manager
- 4.18 PDFs & Printing
- 4.19 Picture-in-Picture
- 4.20 Performance
- 4.21 Performance Tools (aka Firefox Profiler)
- 4.22 Privacy & Security
- 4.23 Profile Management (new this week!)
- 4.24 Reader Mode
- 4.25 Screenshots
- 4.26 Search and Navigation
- 4.27 Storybook/Reusable Components
Apr 30, 2024
General Topics / Roundtable
Friends of the Firefox team
Introductions/Shout-Outs
Resolved bugs (excluding employees)
Script to find new contributors from bug list
Volunteers that fixed more than one bug
Camille
gravyant
Itiel Joseph
Webster
Magnus Melin [:mkmelin]
Meera Murthy
Steve P
New contributors (đ = first patch)
Will be filled in after the meeting
General triage
Weâve updated the triage rotation scheduling folks for the next year. Check the updated calendar. If your slot is a bad month for you no problem, just find someone to switch with!
Contact Mossop, Gijs or mconley for questions.
Marco Bonardo, Luca Greco, Tim Giles, and Nathan Barrett are leading this monthâs general triage
Project Updates
Accessibility
Add-ons / Web Extensions
Addon Manager & about:addons
Starting from Firefox 127, installing new single-signed add-ons is disallowed (while already installed single-signed add-ons are still allowed to run). This behavior is currently only enabled in Nightly (Bug 1886157) but it is expected to be extended to all channels later in the 127 cycle (Bug 1886160)
Fixed a styling issue hit by extensions options pages embedded in about:addons when the Dark mode is enabled (Bug 1888866)
WebExtensions APIs
As part of the ongoing work related to improving cross-browser compatibility for Manifest Version 3 extensions:
Customized keyboard shortcuts associated to _execute_browser_action command for Manifest Version 2 extensions will be automatically associated to the _execute_action command when the same extension migrates to Manifest Version 3 (Bug 1797811). This way, the custom keyboard shortcut will keep working as expected from a user perspective.
DNR rule limits have been raised to match the limits enforced by other browsers (Bug 1803370)
DNR getDynamicRules and getSessionRules API methods will be accepting the additional ruleIds filter as a parameter and improve compatibility with DNR API in more recent Chrome versions (Bug 1820870)
Improved errors logged when a content script file does not exist (Bug 1891502)
the error is now expected to look like Unable to load script: moz-extension://UUID/path/to/script.js
Developer Tools
DevTools
Julian reverted a change a few months ago so DevTools screenshots are saved in the same location as Firefox screenshots (#1845037)
Alex fixed a Debugger crash (#1891699)
Nicolas fixed a visual glitch in the Debugger (#1891681)
Alex fixed an issue where Network request from iframe sent just before document destruction were not displayed in the Netmonitor (#1887852)
Nicolas replaced DevTools JS-based CSS lexer with a Rust-based version, using the same cssparser crate than Stylo (#1887638, #1892895)
Thanks to :willdurand, we finally released a new version of the DevTools ADB extension used by about:debugging. The extension is now shipping with notarized binaries and can be used on recent macOS versions. (#1821449)
WebDriver BiDi
Thanks to gravyant who implemented a new helper Assert.isInstance to check whether objects are instances of specific classes (#1870880)
Henrik updated mozrunner/mozprocess to use "psutil" and support the new application restart mechanism on macos (#1884401)
Sasha added support for the a11y attributes locator for the browsingContext.locateNodes command (#1885577)
Sasha added support for the devicePixelRatio parameter for the browsingContext.setViewport command (#1857961)
Henrik improved the way we check if an element is disabled when using the WebDriver ElementClear command (#1863266)
Julian updated the vendored puppeteer version to v22.6.5, which enables new network interception features in Puppeteer using WebDriver BiDi (#1891762)
Desktop Integrations
Downloads Panel
Credential Management
Fluent
Form Autofill
Lint, Docs and Workflow
No updates this week.
Information Management
macOS Spotlight
Migration Improvements
Profile backup / recovery
Weâre 95% done the staging metabug - fchasen is just trying to fix an absolute path problem we discovered in our WebExtensions code.
Weâre about half-way done with the recovery metabug. Weâre at the point where most critical data can be recovered from a decompressed backup archive. If youâre feeling adventurous, you can tinker with this at chrome://browser/content/backup/debug.html on Nightly, but no warranty implied.
Weâre working with the Glean team to come up with a mechanism of transferring the Glean client identifier from the profile that initiates recovery.
Weâve also prepared the backup management UI metabug. Thatâll be next once we complete the recovery metabug.
New Tab Page
Newtab Wallpapers have landed in Nightly and will be released as an experiment in en-US. If youâd like to enable wallpapers, set `browser.newtabpage.activity-stream.newtabWallpapers.enabled` to true.
Work continues on weather widget for newtab (borrowing logic from URL bar)
Nimbus / Experiments
Password Manager
PDFs & Printing
Picture-in-Picture
Thanks to Joseph Webster (:joe.scott.webster) for creating a brand new JWPlayer video wrapper (bug) and for adding more sites under this wrapper to expand PiP captions support (bug). New supported sites include:
Yahoo (Entertainment, Sports, Finance, News)
AOL
C-span
CPAC
reuters.com
Time
Independent.co.uk
indy100
CNBC
Performance
Performance Tools (aka Firefox Profiler)
Privacy & Security
Weâre working on a new anti-tracking feature: Bounce Tracking Protection. It works similar to the existing Cookie Purging feature in Firefox, but instead of a tracker list it relies on heuristics to detect bounce trackers.
Itâs based on the navigational-tracking-protections spec draft in the PrivacyCG
Bug 1877432 first enabled the feature in Nightly in âdry run modeâ where we donât purge tracker storage but only collect telemetry. Weâre looking to fully enable it in Nightly soon once we think itâs stable enough.
Profile Management (new this week!)
[jhirsch] We're getting underway with improvements to multiple profiles support in Firefox.
Eng discussion on Matrix: [#fx-profile-eng]
Product discussion on Slack: #fx-profile-management
Backend work in toolkit/profile behind a build flag (MOZ_SELECTABLE_PROFILES)
Frontend work in browser/components/profiles behind a pref (browser.profiles.enabled)
Bugs landed so far:
Mossop added telemetry to record the version of the profiles database on startup and the number of profiles in it (bug 1878339)
Niklas added the profiles browser component (bug 1883143)
Niklas added profiles menu items to the app menu (bug 1883155)
Coming soon: Docs, final UX, and good-first-bugs
Reader Mode
Irene landed the first part of refreshed text formatting controls, check them out by toggling reader.improved_text_menu.enabled (bug 1880658)
Screenshots
The screenshots component pref just got enabled is riding the trains in 127
Niklas added a border to the region pixel size card in the selected region
Niklas fixed a bug where the selected text would get cleared when screenshotting a region
Marco fixed editing and copying URLs when the protocol is hidden in the address bar
This was our main outstanding blocker for shipping hiding https:// instead of http://, so hopefully that should happen soon!
Dale landed a prototype of secondary actions buttons in address bar results
As part of that secondary actions buttons effort, he also fixed some bugs with the (currently disabled by default) site-specific search feature:
Stephanie and James have been working on phase 2 of implementing Search Engine Result Page Search Term Categorization, specifically:
Standard8 and Mandy continued their work on search-config-v2:
We're now rolling it out to 50% of beta users.
Daisuke implemented history flooding protection (currently disabled behind pref)
Storybook/Reusable Components
hjones fixed Bug 1803678 - Enable on-demand/lazy loading for ESModule based reusable components
if youâve ever had to use ensureCustomElements before this is relevant to you
hjones is working on re-landing Bug 1858812 - Create a icon and text variant of moz-button
jsudiaman fixed Firefox View stories in Storybook with the landing of Bug 1867614 - fxview-tab-list story is broken, shows a "ChromeUtils is not defined" error
gravyant cleaned up propertie names in moz-message-bar in Bug 1869065 - Re-visit some of the element property names used in moz-message-bar
kcochrane landed Bug 1877826 - Add MozPageNavLink custom component to MozPageNav
this will enable us to start replacing nav menus in about:addons and about:preferences to better align with the nav in Firefox View
mstriemer made it so that you can use moz-buttons as children of moz-button-group in Bug 1893218 - moz-button-group should support moz-button children
tgiles added a link to our new reusable components dashboard to Storybook Bug 1893685 - Add link to the "Reusable Component Adoption" chart in our docs
the dashboard to track adoption in Firefox can be visited here: https://firefoxux.github.io/recomp-metrics/