Firefox/Meeting/16-Jul-2019
Today’s meeting leader is: MattN
Contents
- 1 General Topics / Roundtable
- 2 Friends of the Firefox team
- 3 Project Updates
- 3.1 Add-ons / Web Extensions
- 3.2 Applications
- 3.3 Firefox Accounts
- 3.4 Sync and Storage
- 3.5 Push
- 3.6 Browser Architecture
- 3.7 Developer Tools
- 3.8 Console
- 3.9 Debugger
- 3.10 Inspector
- 3.11 Network
- 3.12 Fission
- 3.13 Lint
- 3.14 New Tab Page
- 3.15 Password Manager
- 3.16 Performance
- 3.17 Performance tools
- 3.18 Picture-in-Picture
- 3.19 Policy Engine
- 3.20 Privacy/Security
- 3.21 Search and Navigation
- 3.22 User Journey
General Topics / Roundtable
[mconley] There’s a plan from the Automation and Tools team to get all of the web feature testing code out from mochitest-plain over to web-platform-test
Please don’t add new mochitest-plain tests for web platform features. Add a web-platform-test instead.
- [mconley] Is it worth firing up a firefox-dev email about setting up a reviewer group for large, general things like tabbrowser for which there isn’t a clear owner?
- [mconley] fxperf bugs have trickled down. Do you have a perf bug? Tag it with [fxperf] so that we can get it looked at. Worried that it should be marked with [qf]? Don’t worry - we’ll take care of that for you. We’ll make sure the right team sees it.
Friends of the Firefox team
Introductions/Shout-Outs
- ntim is joining us on the password manager team working on password generation and about:logins!
Resolved bugs (excluding employees)
Fixed more than one bug
- Florens Verschelde :fvsch
- Oriol Brufau [:Oriol]
New contributors (🌟 = first patch)
- Armando Ferreira cleaned up some dead code in our Grid Inspector code
- Alex R. fixed a glitch where closing the Keyboard Shortcuts modal for the Debugger would also open the split pane
- Damien fixed a visual glitch in our about:url-classifier page
- 🌟 graham.mcknight2 added some helpful logging to our WebExtension API code when the host manifest entry is missing from the Windows registry
- 🌟 Javier Olaechea got rid of a DevTools pref that we don’t need anymore
- J corrected a tooltip for the DevTools inspector
- 🌟 William Orr fixed an issue where WebExtensions native messaging would fail on OpenBSD silently
Project Updates
Add-ons / Web Extensions
[mconley] HTML re-implementation of about:addons has shipped
In the midst of some clean-up and tweaks now
mstriemer is the go-to for any questions about the about:addons implementation
- ddurst is no longer managing this group… is there somebody else here who can represent? Or can we invite someone? zombie? Maybe jimm?
Applications
Firefox Accounts
Sync and Storage
Push
Browser Architecture
Developer Tools
(I’ll remove embedded images after the meeting and keep only links)
Console
Iterate on your multi-line snippets in Console’s new editor mode
Initial layout landed, you can test it hitting Ctrl (Cmd on OSX ) + B when focused in the console input
We will put this behind a feature pref so 69 users don’t enable it by mistake
- Export output to file, thanks to Jefry Lagrange, same contributor who did Export to clipboard
Debugger
- Improve perceived performance of column breakpoint rendering
- Event Breakpoints have landed and are enabled by default
- DOM Mutation breakpoints are available as an MVP behind a feature flag.
- The Debugger API now reports detailed information on the suspension of generator and async calls (bug 1470558), a prerequisite for stepping over await and yield expressions.
Inspector
- Source links to auto-prettified minified CSS now open at the correct position in the Style Editor.
- Font Editor: Landed support for “normal” value for line-height, simplified code for using font variation instances.
Network
WebSocket Monitor (meta bug) - Support for inspecting WebSocket traffic on a page. The development happens behind a pref: devtools.netmonitor.features.webSockets
The feature will be enabled for Nightly users by default (most likely) this week.
- [Visualization of WS frames sent/received, Filtering (sent/received/all), Filtering using free text, Clear button]
Fission
- Gijs has a patch up to port the plugins code to Fission
- jdai added some initial in-tree documentation for JS Window Actors
- Abdoulaye ported DateTimePicker to be Fission-compatible
- Enn has most of Find Bar ported to Fission
- mconley has a WIP patch to port prompts to Fission
Abdoulaye has patches up to:
Lint
- dom/base/*.js* is now covered! Thank you to Sonia. Just two more dom/ directories to go which are WIP.
- Monika has been working hard on a lint rule for reducing checks against zero for length properties. We're getting close to landing, and that will hopefully be this week.
- Once Monika's patch has landed, we'll do the ESLint 6 upgrade mentioned last time.
New Tab Page
- No updates
Password Manager
Disable login autocomplete for subdomains on non-Nightly
Not ready to ride the trains and lower priority than password generation
Password Generation
Password generation is enabled by default on desktop 🎉 (tweet)
The dismissed doorhanger is shown upon filling a generated password
A "Password saved" toast is shown and the key doorhanger anchor icon turns blue upon automatically saving a generated password242x87px
Had a security review meeting but don’t have the final analysis yet.
Main work remaining for this milestone is
- unmasking the password field and tracking edits to the password after filling
- improvements to when we auto-save and how the doorhangers work
- addressing issues from QA and security
about:logins
Thank you to Dave J. and Jared H. for their help on about:logins in H1!
Fixed:
- Firefox monitor integration: Add breach indicators to saved logins
- LoginAutocomplete/Autofill should not apply on about: pages
- Improved performance: Toggle password button doesn't work in about:logins about:logins is still slow to display all the login count is greater than 100
Updating UI design:
[Dark Sorting options are not visible in the dropdown]
- Strings are now Fluent ready (but not finalized for translation yet): Review LoginItem localization with Fluent before exposing it to localization
- Accessibility issues for about:logins
- Intermittent browser/components/aboutlogins/tests/browser/browser_openPreferences.js | Test timed out -
Next up: Enabling about:logins by default should land today once we move the login autofill checkbox out of old Password Manager first
Performance
- Gijs got rid of some start-up main-thread IO, which will also help the Updater team remove even more main-thread IO. Double-whammy!
- Mandy has a patch to get rid of some main-thread IO from the crash reporter during start-up - just clearing out the last few test failures
- mconley fixed a window responsiveness issue for Windows Aero glass users
Coming up:
aswan is looking at how much start-up time we can win if we fold Firefox Monitor in as a normal browser feature instead of a system add-on
mconley and barret have been figuring out the best way of getting the cold start-up frame recording rig put into the partner lab
Gijs has been working on some plugin changes that will hopefully reduce startup impact that our plugin code causes.
Volunteer contributor fluks made it so that about:performance more clearly illustrates how much energy each entry is using
Performance tools
- Frame labels are now captured in Base Profiler. That means stacks can include labels during early startup. (Base Profiler is available in Linux and macOS only for now)
- It's possible to search markers with several strings now.
You can filter markers with comma separated search terms (https://i.imgur.com/nhDUUqf.png)
- It's easier to unhide local tracks now.
New children tracks are no longer disabled when the parent track is unchecked (https://i.imgur.com/IcIoWh0.jpg)
- Firefox profile compare tool now displays a diff track. Try it yourself: https://profiler.firefox.com/compare/ or with sample profiles: https://perfht.ml/2k2gP1z
The third track that shows the diff between track 1 and 2 (https://i.imgur.com/5z7Knpp.png)
- We are working on implementing a new buffer system that should be more efficient, and use 20% less memory than the current implementation.
Picture-in-Picture
This has shipped to Beta and Developer Edition users on Windows! Hacks post.
It’s going to hold for a bit on Beta and Developer Edition while we collect feedback and Telemetry
One finding that supports our suspicions - most users are accessing Picture-in-Picture via the toggle, and very few get there via the context menu item
- mconley has patches up to make Picture-in-Picture player window keyboard accessible
Fixed:
An issue caused by the Picture-in-Picture code that made resizing windows more difficult than it needed to be
Controls not disappearing sometimes when exiting via mouse on Windows
- Based on feedback, aiming to make the toggle disappear after any sufficient period of no mouse movement
Policy Engine
Privacy/Security
Search:
- Fixed the -search command line option
- Work on separate search engine for private browsing and modernising the search configuration continues
Quantum Bar:
- Fixed a problem with bookmarklets not being executed
- Fixed a problem where sometimes keyboard navigation was directly going to search buttons
- Fixed a problem with selecting text with the mouse
- Search suggestions highlighting has been inverted (the non-typed part is highlighted)
- Removed the legacy urlbar bindings and all the legacy tests, the browser.urlbar.quantumbar pref won’t switch anymore the implementation
User Journey
We shipped (currently preffed off) a big part of the Skyline/What’s New messaging
And a new way to add notifications-style-badges to parts of the UI which will soon be used to replace the current FxA accounts button