- New in Nightly – Firefox Translations! Firefox can now often detect if you’re viewing a page written in a language not matching the one matching your locale, and for some languages offer to translate the page for you.
- This happens entirely client-side. This means the URL of the page, nor any of the page data ever leaves your computer. The trade-off is the need to download “translation engines”, which can be done at translation-time, or you can manage them yourself in about:preferences:
- This is the direct successor to the venerable Firefox Translations add-on and builds on the research done with that project.
- Bonus capability: visit about:translations to translate your own text as well
- This is ready for Nightly testing. Found a bug? You can file a new one blocking this metabug.
- New support for Picture-in-Picture captions – thanks to janvi for the patches:
- Hubert enabled the Firefox Devtools debugger feature to ignore specific lines while debugging, as opposed to ignoring just files (bug)
- Nicolas enabled the CSS compatibility tooltip feature on Nightly! (bug)
Friends of the Firefox team
Volunteers that fixed more than one bug
- Gregory Pappas [:gregp]
- Janvi Bajoria [:janvi01]
- Magnus Melin [:mkmelin]
New contributors (🌟 = first patch)
- 🌟 LyScott123 changed hasModule to hasModuleClass
- 🌟 Martín González Gómez updated viewport size information from RulerHighlighter into its own class: ViewportSizeHighlighter
- 🌟 michael s refactored remote UUID Usage to a Shared UUID Module
- Pushpanjali converted toolkit/components/url-classifier to ES modules
- Victoria Ajala to use timer from Timer.sys.mjs to prevent throttling in background tabs
- Zach Harris added infrastructure for importing payment methods from Chrome-based browsers
Add-ons / Web Extensions
Addon Manager & about:addons
- As part of the Colorways Migration: in Firefox >= 115, we are allowing Colorways builtin themes to be auto-updated to the corresponding non-builtin Colorway themes hosted on addons.mozilla.org for users not yet migrated because of the extensions.update.autoUpdateDefault pref being set to false (Bug 1830337)
- Thanks to Eemeli, the localized strings related to the extension permissions have been migrated to Fluent (Bug 1793557, Bug 1632091)
- Thanks to :ochameau and :peterv for their work to introduce the nsIConsoleService.callFunctionAndLogException helper in Bug 1810582
- This new helper is going to be used in a separate followup, Bug 1810582, to make sure we include a full error stack trace when logging the exceptions raised from extension callbacks executed in response to the WebExtensions API events being emitted.
- Thanks to Kris’ work in Bug 1769763, string labels (anonymized and non-anonymized) can now be associated with the StructureCloneHolder instances (which is going to be very helpful to determine what the StructureCloneHolder instances belongs to in about:memory reports)
- Thanks to Shane Hughes for reporting and fixing a slightly annoying glitch in the extensions panel (Bug 1810509)
- Thanks to Gregory Pappas for contributing a nice cleanup of the downloads API internals (Bug 1834338)
- As part of the browser_style deprecation (started in Firefox 114), in Firefox 115 options_ui.browser_style and sidebar_action.browser_style will default to false for all Manifest Version 3 extensions (Bug 1830710).
- Thanks to Gregory Pappas for contributing the changes needed to introduce a new browser.commands.onChanged WebExtensions API event, which will allow the extensions to be notified when a users changes a shortcut associated to the extensions commands in about:addons (Bug 1801531)
- Other teams
- Hubert added support for hiding sources based on the source maps x_google_ignoreList field (bug)
- Hubert added an option to hide the ignored (blackboxed) sources Bug 1824703 – Add an option to hide / show blackboxed sources
- Hubert also fixed a bug where adding a breakpoint would automatically unignore a source (bug)
- Nicolas updated the links in our compatibility panel to be more explicit and added an MDN icon for links to MDN (bug)
- Nicolas also fixed more performance issues with the CSS compatibility tooltip (bug)
- Alex fixed a bug where the icons in the debugger would randomly flicker when selecting a source (bug)
- Alex addressed a performance regression on the Debugger (bug)
- Victoria Ajala fixed a bug to use the Timer module instead of window.setTimeout in various Remote Protocol modules (bug)
- Other teams
- Dan Robertson fixed the actions code to properly end wheel transactions, which allows us to stop disabling dom.event.wheel-event-groups.enabled for our users (bug)
- Henrik removed the experimental flag from the input.performActions and input.releaseActions commands, which means they are now available to all WebDriver BiDi users (bug)
- Julian fixed a bug where we would raise the incorrect exception when using a non-element Node as the origin of an action (bug)
- Eemeli continues to burn down our .properties strings. We’re down to 4200 .properties strings (we had ~4400 at the start of this month)
- ESMified status:
- browser: 71%
- toolkit: 88%
- Total: 85.3% (up from 81.6%)
- #esmification on Matrix
- Migration Document (with a walkthrough!)
Lint, Docs and Workflow
- Prettier has now been upgraded to the latest version and enabled on production (x)HTML files.
- We have skipped test HTML files for now as there are complexities around the amount of files, avoiding breaking existing tests and making sure there’s no specially crafted tests.
- hjones and mconley have been working on a mechanism to help people migrate off of old devices to new devices
- There’s a Help menu item, starting in Firefox 114, “Switching to a new device”, which sends the user to this SUMO page.
- We’ve built a “setup assistant” to walk the user through creating a Firefox Account and setting up sync. Finally, the user is presented with a URL to download a version of Firefox that, after install, is configured to first present the user with a Firefox Account login prompt during onboarding (for Firefox 114+).
- We hope this will help people easily and securely move their data from old computers to newer ones.
- Thanks to tgiles and mstriemer, we’ve got patches up to add support for importing history from Safari and importing bookmarks from HTML files (and JSON files)!
- Special thanks to Evan Liang from CalState LA for getting us started on the Safari patch
- mconley landed a patch to get payment method import working for Chrome-based browsers
- Special thanks to Zach Harris from CalState LA for getting us started on that patch
- mconley fixed a performance issue with importing form history entries from Chrome-based browsers
- dwalker landed a patch that allows a video with no audio to be PiP-able
- kpatenio updated the PiP fullscreen button tooltip to include the fullscreen keyboard shortcut (F key for en-US locales)
- Itiel fixed the “This video is playing in Picture-in-Picture mode” prompt to be properly displayed in RTL mode
Search and Navigation
- Daisuke has been working on an experiment to test Addon suggestions in the urlbar – see bugs 1833750, 1833760, 1833966
- Drew has switched the result menu in the urlbar to use native context menu on mac – see bug 1831760
- Mark updated the Gule sider search engine url – see bug 1834066
- James and Stephanie have worked on various new recordings and bug fixes to search telemetry – see bugs 1816733, 1816738, 1823683, 1833245
- Daisuke fixed pasted strings being overwritten – see bug 1834218