Firefox 105 is released today! Lots of goodies in there, as well as performance and stability improvements.
WebExtension Manifest Version 3 support has been enabled by default in Nightly and Early Beta builds (starting from Firefox 106) - Bug 1789796
This change will allow developers to start testing “manifest_version: 3” extensions without flipping a pref (by installing temporarily or permanently with signing checks disabled)
Again, a reminder that Mozilla plans to continue support for the Manifest v2 blocking WebRequest API (this API powers, for example, uBlock Origin) while simultaneously supporting Manifest v3.
Have a Manifest v2 WebExtension that you want to migrate? Here’s our migration guide!
The DevTools Style Editor will now clearly indicate that system stylesheets cannot be disabled (bug). The icon used to disable stylesheets was updated to have a different state when the stylesheet is disabled or not (bug).
Caption: The Style Editor in the Firefox Developer Tools is open and showing a list of applied style sheets. One of the stylesheets has a tooltip over it saying: "System style sheets can't be disabled".
New ./mach storybook commands are available for use! Check out the Storybook / Reusable components section for more information.
Janvi added more sites to be supported under our videoJS wrapper for captions support starting in Firefox 106:
Wired
Brightcove
PBS Kids
Janvi also blogged about her experience working on Picture-in-Picture for Outreachy!
With bug 1748724 Implement by-element region selection for the Screenshots component landed, the screenshots component is now at feature parity with the screenshots extension. Please enable the pref screenshots.browser.component.enabled in about:config to test out the component.
An added benefit of the component is now being able to screenshot about: pages (trigger screenshots with ctrl+shift+s until bug 1790855 lands).
Bug 1696573 - [Meta] Move screenshots into a dedicated browser component tracks this work
Welcome Schalk! Schalk has been contributing for a while and is the community manager for MDN Web Docs, and is hanging out to hear about DevTools-y things and other interesting things going on in Firefox-land to help promote them to the wider community
axtinemvsn (one of our CalState students!)
Itiel
🌟 Alvin converted browser/actors/BrowserProcessChild.jsm JSM module to ESM
🌟 axtinemvsn converted browser/actors/AboutNewTab* and browser/actors/AboutTabCrashed* JSM modules to ESMs
🌟 Brian Pham converted screenshots component from JSM to ESM
🌟 Avery removed unused PiP telemetry variables `lastScreenX` and `lastScreenY`
Eugene Simakin fixed wrong slicing of displayed WebSocket messages in devtools when 'Keep all future messages' is enabled
Zach Harris converted AboutPlugins from JSM to ESM
Fixed a regression on accessing static theme resources from other extensions (introduced in Firefox 105 by Bug 1711168, new restrictions on accessing extensions resources not explicitly set as web_accessible_resources) - Bug 1786564 (landed in Firefox 105) and Bug 1790115 (landed in Firefox 106, followup fix related to extension pages running in private browsing windows)
Small tweaks and fixes related to the unified extensions toolbar button - Bug 1790015 / Bug 1784223 / Bug 1789407
Cleanups related to the Manifest Version 3 CSP - Bug 1789751 (removed localhost from script-src directive) / Bug 1766881 (removed unnecessary object-src)
Emilio enable modern flexbox use in the about:addons page (instead of XUL layout) - Bug 1790308
Itiel has updated the about:addons accent color var to use the Photon color and updated the “Available Updates” dot badge to use the expected Photon accent color - Bug 1787651
Eugene fixed a bug with the Network Monitor Websocket inspector, where messages would disappear when using filters in combination with the "keep messages" checkbox (bug)
Alex is updating the devtools codebase to prepare for ESM-ification:
The end goal is to convert all the commonjs-style DevTools modules to ESM which will finally make DevTools consistent with the rest of our codebase.
The Network Monitor used to incorrectly show sizes in kibibytes (1024-based) instead of kilobytes (1000-based). Hubert fixed this issue and we now show the correct sizes and correct units everywhere in the Netmonitor (bug)
Alex keeps fixing bugs and UX issues around WebExtension debugging. Whenever you reloaded an extension, the Debugger would no longer show its sources. This was a recent regression, but it is now fixed and tested (bug)
Hubert fixed a bug with the new Edit and Resend panel, where we would crash if the request was too big. (bug)
Nicolas fixed a performance regression in the StyleEditor (bug), which was caused by performing too many cross compartment property access.
We added basic support for the "script.getRealms'' command which returns the information about available WindowRealms, including sandboxes. This information contains realm ids which will be used to run script evaluation commands. (bug)
We extended the Remote Agent implementation to allow Marionette and WebDriver BiDi to open and close tabs in GeckoView applications. As a result we were able to enable ~300 additional WebDriver tests on Android. (bug)
Nearly ¼ of all JSMs under browser/ have been ESMified!! Keep up the good work!
Total tree conversion: 11.5%
#esmification on Matrix
Migration Document (with a walkthrough!)
Please only disable the rule if you explicitly need to test insecure connections - and add a comment if you do disable.
You can now specify a --rule parameter to ./mach eslint (not ./mach lint -l eslint), which allows you to test turning on an ESLint rule.
We now have two new rules which are currently manually run.
The rules:
mozilla/valid-ci-uses checks that:
Ci.nsIFoo is a valid interface.
Ci.nsIFoo.CONSTANT is a valid constant available on the interface.
mozilla/valid-services-property checks that:
Services.foo.bar() is a valid property on the interface associated with Services.foo.
These will be added to run on CI as a tier-2 task in the next couple of months.
For now, they can be manually run via
MOZ_OBJDIR=objdir-ff-opt ./mach eslint --rule="mozilla/valid-services-property: error" --rule="mozilla/valid-ci-uses: error" *
There are a few non-critical existing failures which will be resolved before CI lands.
Students had a Hack Weekend the weekend before last to get up to speed with our tooling
Quite a few Good First Bugs landed to support the ESMification process
We’re starting the students off on researching the best ways of importing favicons from other browsers into Firefox. Watch this space!
Daisuke (1, 2, 3, 4, 5) and Dale (1, 2) fixed a bunch of bugs related to QuickActions in preparation for the QuickActions experiment
Dale also added a pref to disable the Private Search urlbar result and enabled seperatePrivateDefault by default (not the UI)
Daisuke also added telemetry for number of sponsored visit that can not find triggering URL
James made it so that we don’t show search terms for searches started in the search bar and landed a few followup fixes related to making the address bar show search terms instead of the default engine’s search results page URL
The ./mach storybook commands have landed!
./mach storybook install # Run this the first time
./mach storybook
./mach storybook launch # Run this in a separate shell
Opens your local build browser at http://localhost:5703
Dão, Marco, Prathiksha are this month’s Firefox::General / Toolkit::General triagers!
[sfoster] Do you have a blog? You can register it on Planet to have it syndicated to a larger feed of Mozillian blogs.
This information, including all of the previous updates, are fully available in this doc: https://docs.google.com/a/mozilla.com/document/d/1u9YH3ULNRYg6G-fN-Udkvfkcvg0alJfzi_zIAfFNkL8/edit?usp=sharing
Also note that I'm really just synthesizing and humanizing the stuff that's on the Wiki, which is freely available from here: https://wiki.mozilla.org/Firefox/Meeting, so check that out if you want the source material. It'll also be posted (minus the Below the Fold stuff) to the Nightly blog.
Finally, if there's a Firefox-ish team that you feel isn't being represented here, please let them know about the above meeting so we can get their updates.
Keep on rockin' the free web,
-Mike