Firefox/Meeting/01-Dec-2020

From MozillaWiki
Jump to: navigation, search

Today’s meeting leader is: mtigley

General Topics / Roundtable

  • [jaws] Firefox engineering productivity tools/scripts lightning talks? Waiting a few weeks to see if January All Hands is on, if it is on then we will request a slot within the All Hands, otherwise we will find our own time

Friends of the Firefox team

Introductions/Shout-Outs

Resolved bugs (excluding employees)

Fixed more than one bug

New contributors (🌟 = first patch)

Project Updates

Add-ons / Web Extensions

Addon Manager & about:addons

  • Mark Striemer did land the remaining small changes needed to remove XUL deck usage from about:addons (Bug 1674890) and ntim did some more cleanups on the about:addons (Bug 1677582, Bug 1677571, Bug 1677526), in preparation to move the HTML views to the top level document (Bug 1525179).

WebExtensions Framework

  • Starting from Firefox 85 users can manage the current homepage and newtab from about:preferences and switch between the default Firefox pages and the overridden ones provided by the installed extension without having to disable the entire extension that is currently managing the homepage and/or newtab pages (Bug 1595858). Thanks to Erica Wright for working on these changes.

Manage homepage and new tab pages on Firefox 85 (Bug 1595858) - Link to image

WebExtension APIs

  • Liz Krane contributed changes to browser.tabs.remove to make sure that (after an extension did call it to remove multiple tabs at once) “Undo Close Tabs” will be able to reopen all of them at once (Bug 1650956). Thanks Liz for contributing this small enhancement!!!
  • browser.browsingData.removePluginData API method is a no-op starting from Firefox 85 (Bug 1675106), part of the cleanup related to removing all flash plugin support in mozilla-central (tracked by Bug 1677160).
  • Christoph Kerschbaumer added a new browser.privacy.network.httpsOnlyMode read-only privacy browser setting, which will allow an extension to be aware if the https only mode is currently enabled (Bug 1678306).

Bookmarks

  • Option to hide the “Other Bookmarks” folder is available through the bookmarks toolbar context menu (bug). We have a follow-up (bug) to move remove the menu item from the main toolbar (View → Toolbars → Bookmarks Toolbar) and only show it for the bookmarks toolbar - Screenshot online

Developer Tools

  • Console Panel - New pretty-print button introduced for multiline editor in the Console panel (bug) - Screenshot online

Fission

  • Neil is working on:

    • Smarter tab unloading

    • UI to make it easier to submit crash reports for crashed subframes

Form Autofill

Installer & Updater

Mobile

New Tab Page

Nimbus

NodeJS

New Tab Page

Password Manager

PDFs & Printing

Performance

Performance Tools

  • Firefox Profiler has a new and more powerful C++ marker API now! You can create your own custom marker type and specify how to display it in the front-end without touching any front-end code. Take a look at the docs to see how to use it.

Example code:

// Record a simple marker with the category of DOM.
PROFILER_MARKER_UNTYPED("Marker Name", DOM);

// Create a marker with some additional text information.
PROFILER_MARKER_TEXT("Marker Name", JS, MarkerOptions{}, "Additional text information");

// Record a custom marker of type `ExampleNumberMarker` (see definition in the documentation).
PROFILER_MARKER("Number", OTHER, MarkerOptions{}, ExampleNumberMarker, 42);

Example:

let startTime = performance.now();
…
ChromeUtils.addProfilerMarker(“Marker Name”, {startTime, captureStack: true, category: “Test“}, “Marker text”);

Currently supported values for the category are "Idle", "Other", "Test", "Layout", "JavaScript", "GC / CC", "Network", "Graphics", "DOM", "IPC", "Media". Using an unknown category name will fallback to the “Other” category.

Picture-in-Picture

Pocket

Privacy/Security

Push

Search and Navigation

  • Fixed a race condition leaving the address bar in Search Mode when switching tabs - Bug 1675926
  • The address bar doesn’t default to search anymore for strings like www.something - Bug 1643850
  • It’s now possible to hide/unhide local shortcut buttons (bookmarks, history, tabs) in the results panel, using Search Preferences - Bug 1657790 - and now they show their restriction char as keyword - Bug 1678770
  • URL autofill is now properly case-insensitive - Bug 1606231
  • QuickSuggest is the project name for contextual suggestions in the urlbar, things like weather, unit conversion, or shopping helpers fall into this project. The team is working on experiments that will run in the next few weeks, and various partners are involved.
  • Some regressions related to Korean IME have been reported, we’re looking into them. - Bug 1673669, Bug 1679697

Sync

User Journey

This week I learned

  • [mak / gijs] Repeat from last week (because it’s that confusing it’s worth bringing up twice!): Promises created in windows may never be resolved if the window is destroyed. Or more generally Promises are not resolved/rejected if their global is destroyed. Pay particular attention when collecting promises from a window into a jsm module that has a longer life, common examples are Sqlite.jsm and AsyncShutdown.jsm. If the module awaits one of these promises, it will be stuck and eventually crash on async shutdown.