Firefox/Meeting/5-May-2020

From MozillaWiki
Jump to: navigation, search

Today’s meeting leader is: mconley

General Topics / Roundtable

Friends of the Firefox team

Introductions/Shout-Outs

Resolved bugs (excluding employees)

Fixed more than one bug

  • aarushivij
  • Andrew Swan [:aswan]
  • Artem
  • Atique Ahmed Ziad [:atiqueahmedziad]
  • Itiel
  • Jayati Shrivastava
  • Julian Shomali
  • Obayagbona Uwagbae Alexander
  • Oriol Brufau [:Oriol]
  • Ratnabali Dutta
  • Tim Nguyen :ntim
  • Tom Schuster [:evilpie]

New contributors (🌟 = first patch)

  • <Will be filled in after the meeting>

Project Updates

Accessibility

Add-ons / Web Extensions

WebExtensions Framework

  • Permissions:

    • Many more permission can be used as optional_permission in Firefox >= 77, in particular the “management” (Bug 1630419), “pkcs11” (Bug 1630418), “browsingData” (Bug 1630417), “sessions” (Bug 1630414), “proxy” (Bug 1548011) and “devtools” (Bug 1606862)

    • Starting from Firefox >= 77 “unlimitedStorage” doesn’t trigger the permission prompt anymore (Bug 1630413)

  • First bits of the new rust-based browser.storage.sync backend are being landed (1629689, 1626506, 1634257), Thanks to :lina, :markh and :lougenia!
  • webRequest and filterResponseData:

    • Removed support for data:URLs in the webRequest API (Bug 1631933), this change has the side-effect of improving performance (e.g. see Bug 1630737), at the cost of removing the limited, as read-only, and not often used support for the data urls in the webRequest API

    • content-security-policy headers provided by multiple extensions are now merged (Bug 1462989). Thanks to tobias for contributing a fix for this long standing enhancement request

    • Fixed some webRequest.filterResponseData issues (e.g. when intercepting js scripts which are in the bytecode cache, Bug 1530408, on requests handled by service workers Bug 1595197, and on Fission process switch, Bug 1597159)

  • Other fixes:

    • Fix add-ons issues when running with network-cookie.sameSite.laxByDefault set to true (Bug 1629436)

    • Fixed browserAction.setTitle issues on titles with newline chars (Bug 1624238). Thanks nhnt11 for contributing this fix.


WebExtension APIs

  • browser.permissions.onAdded/onRemoved API events are supported in Firefox >= 77 (Bug 1444294)
  • Thanks to Atique Firefox >= 77 supports tabs.goForward/goBack (Bug 1603796), part of new tab API methods recently introduced in Chrome 72
  • Thanks to Ariasuni browser.tabs.duplicate() can now specify index and active property (Bug 1560218)
  • Thanks to evilpie browsingData can now be used to clear ServiceWorkers and IndexedDB by hostname (Bug 1632990, Bug 1551301)


Addon Manager & about:addons

  • Fixed permissions prompt not being shown (and new permissions silently allowed) when an update was found in the background (Bug 1544890)
  • Fixed issues with Firefox starting with all themes disabled (Bug 1630694)
  • Fixed an issue related to system addon updates (Bug 557710, part of Addon Manager changes needed for Normandy)

Applications

Firefox Accounts

Sync and Storage

  • Over 4.5 million users are now routed to the new Rust based sync backend (“Durable Sync”). We’re planning to start migrating existing user accounts over the next few months. You can follow along with updates to our migration logic here.

Push

Developer Tools


453x247px
Screenshot: https://imgur.com/UpEkxHA with caption

Fission

  • 6 bugs left in M5. Starting to move on to M6, currently scheduled for August.
  • Work on fission performance is ramping up. Charts are available!
  • Remote Page Manager has been converted to use JSWindowActors. Some about pages are already using it: about:neterror, protections, privatebrowsing, plugins, and tabcrashed.
  • Search field handling on about pages have also been converted to use JSWindowActors.
  • Translation bar is now fission compatible.
  • fission.autostart to true to try it out

Installer & Updater

Lint

New Tab Page

  • Pocket stories experiment in the UK is finished, final decision is being made, but we’re likely to turn this on for 100% of the UK in 77.
  • Pocket collections experiment wrapping up. This is a feature where we show three similar pocket stories grouped together for a limited time.
  • In 76 we’re going to run the personalization v2 in webworker experiment.
  • In 77 we’re going to run two new experiments.

    • A hero layout where the pocket story card is larger and the next four are smaller. This is a variant to an experiment we ran many releases ago. It shows promise in engagement.

    • We’re also experimenting with an email signup in the second row of stories. This works like sponsored content and also can be dismissed and opted out of.

  • In 78 we’re going to be experimenting with pocket stories that are video content.
  • In 78 we’re going to be experimenting with popular topics element positioning. Which right now is pretty low on the page.

NodeJS

Password Manager

PDFs & Printing

Performance

Performance Tools

  • Better support for Chrome profile data import.

    • A reminder that you can import linux perf and Chrome profile formats into Firefox Profiler by just dragging and dropping the file.

  • Paul Adenot added a "Media" preset to the profiler capturing UI and he wrote a great blog post on how to profile media workloads in Firefox!

    • You can file a bug if you would like us to add another preset to the capture UI.

274x217px
Click to the settings select box to choose a different preset in the profiler capturing UI

  • Now Firefox Profiler keeps audio threads visible even if there's only a few samples.

Picture-in-Picture

Privacy/Security

Remote Protocol (Chrome DevTools Protocol subset)

  • Page.getFrameTree now returns all the frames of the current tab target and is now also Fission compatible.
  • Page.navigate now waits until the response of the initial document request has been received and is therefore able to return errorText when navigation fails.

Search and Navigation

Search

  • The modern search configuration is now aiming to be shipped in 78, as we have parity with the existing ABSearch/legacy configuration.

    • Parts of the work to allow updating of the search engine WebExtensions have been split out to a separate bug to be shipped soon.

  • The first part of centralising region code should be landing this iteration.

Address Bar

  • Typing long math operations should now return proper results in search suggestions - Bug 1618769
  • The bookmarks toolbar has been adjusted, so it’s easier to use with touch screens and mouse, and it’s not covered by the address bar expansion - Bug 1628243

    • Also the shadow when results are closed has been reduced - Bug 1630506

  • It’s now possible to directly search for strings like “class.method” without having to prefix them with a question mark, and we correct the most common suffix typos, like mozilla.ogr - Bug 1080682

    • Use browser.fixup.domainwhitelist.YOUR_DOMAIN prefs to exclude special domains with invalid public suffixes

    • Use browser.fixup.dns_first_for_single_words to always go through an enterprise DNS

    • We are introducing a suffix whitelist in Bug 1634650

  • browser.urlbar.oneOffSearches has been removed, as original intended; use the checkboxes in about:preferences#search to hide one-off buttons - Bug 1628926
  • More deduping of similar results - Bug 1632804, Bug 1626946
  • Pinned Top Sites show a pinned badge to better indicate their source - Bug 1631844
  • Url wrapping to a second line happens sooner when shrinking the urlbar - Bug 1629928
  • Various improvements to RTL and text overflow masks
  • Added a forced search result when a string looking like an e-mail address is typed - Bug 1412985

User Journey

This week I learned

  • [MattN] event.composed (boolean) if true, it bubbles past the shadow root and up to the rest of the document. Some standard events are composed, some are not. If it is composed, and you look at event.target, it’d be the host element normally. If you want to know about the inner element, it’s event.composedTarget.