Firefox/Meeting/20-Nov-2018

From MozillaWiki
Jump to: navigation, search

Todayโ€™s meeting leader is: lina

General Topics / Roundtable

Friends of the Firefox team

Introductions

  • Gijs introduces Patricia Lawless (:plawless)! Welcome!

Resolved bugs (excluding employees)

Project Updates

Activity Stream

  • Launched Search Shortcuts to Germany, Italy, France, Japan and UK
  • CFR experiment (addon recommendation) in 63
  • Prefed on (in nightly) the new implementation of snippets on about:home and about:newtab

    • Same looks but removed security risks

  • Using attribution targeting to show different onboarding messages to user based on how they installed Firefox

Add-ons / Web Extensions

Application Services (Sync / Firefox Accounts / Push)

  • A lot of exciting work happening on mobile. ๐ŸฆŠ๐Ÿ“ฑ

    • Mark has history sync working between Android and Desktop! ๐Ÿ•’464x290px

    • Mark also wired up our Rust Places library to provide autocomplete suggestions for the Android awesomebar. ๐Ÿ“‡

    • Edouard and Ryan wired up the Android Components reference browser to the new client instance metadata API. This will power device names, as well as the new, faster โ€œsend tab to deviceโ€. โœ‰๏ธ

    • Thom is continuing to improve our FFI layer, which lets our Android projects (and iOS, and, some day, Desktop!) consume our Rust syncing and storage libraries. ๐Ÿ› 

    • Thom and Nick have also been working on shipping composite builds, with all the Application Services Rust components in a single library. ๐Ÿ“ฆ

    • JR is sketching out an API for a Rust Push component, which weโ€™ll use on mobile first, and eventually replace the push client on Desktop. ๐Ÿ“ฃ

    • Lina added history collection to GeckoView and the GeckoView engine in Android Components, and some fixes for new bookmark sync. ๐Ÿ“š

Browser Architecture

Developer Tools

  • End-user documentation: lots of updates; looking more consistent and up to date now. E.g.: https://developer.mozilla.org/en-US/docs/Tools
  • Console:

    • Can now invoke getters from the console (demo). Shipping in 65!

    • Autocomplete on $0 and $_ landed

    • On the server, for the autocompletion, we are now using an AST to get the property chain (e.g. `a.b[โ€œdโ€][foo].x`)

    • Work on frame grouping: context matching (i.e. mark a frame as part of a framework only if other frame match the framework in the callstack. Example: zone.js in Angular)

    • Florens made the message icon (info and error) match the Photon design system (shape + color)

    • Console now uses debugger stacktrace component (Bug 1390768)

    • Autocomplete on Number literals (e.g. `1..` or `(1).`) (Bug 1479366)602x303px

  • Debugger

    • Breakpoint server improvements 1503436, 1489892

    • Run To Completion (R2C) progress 1074448

    • Debugger splitter is works D11178

    • Column Breakpoint progress 7241

    • Buttons are back again (switched from chrome to resource)

  • Design tools:

    • Track changes milestone 1 shipping to 65 (bug)

    • Flexbox highlighter+inspector shipped to Firefox 65 too.

  • Fission:

    • Lots of work and research happening

    • Migrating fronts to proper ES6 classes + cleaning up lotsa tests

  • Remote debugging:

    • Milestone 1 was finished!! ๐ŸŽ‰

    • Next milestone: to ship something that retires the (old, current) about:debugging page

    • Now you can debug extensions in USB devices.

    • We are showing a header when debugging a USB device's tab

    • 479x143px

    • Fixed many edge cases related to zombie/inactive tabs on Android

    • Now using React Router Dom to persist the selected page (added to vendors, in case you need it for other React projects in about: pages)

    • Lots of UX discussion + work happening

    • Will work on performance panel integration on current milestone

    • favicons are back in about:debugging#tabs (bug)

    • stop debugging session when USB debugging is disabled on the device (bug)

  • Performance:

    • DAMP is now a Web Extension instead of a bootstrapped add-on (bug)

Fission

Fluent

Lint

NodeJS

Performance

  • dthayer

    • Work on document splitting is ongoing. This will allow us to eventually output these to separate framebuffers which we can hand to the OS compositor, allowing us to not have to paint the whole window every time something in the chrome changes / animates.

    • Doing some scaffolding work to support having async work inside PromiseWorkers.

  • Felipe

    • Tab animation work is ongoing

    • Try builds generated and waiting for feedback from UX

    • Cleaning up patches to start feedback/early-review cycles

  • Florian

    • QA is testing the new about:performance features.

    • Fixing more bugs (rtl, minor layout issues, etc.)

    • Working on a tool to explore BHR (background hang reporter) data - feedback welcome!

  • Gijs

    • Continuing to experiment with lowering vsync frame rate on low-end devices to improve performance there.

    • Landed a fix to make the initial tab remote immediately, to avoid loading about:blank in the parent first. Continuing work on reducing about:blank-loading overhead.

    • Chasing a Linux-only leak regression in our printing tests that seems to have to do with the focus manager holding on to a content window indefinitely.

  • mconley

Policy Engine

  • Uplifted to beta and ESR policies for:

    • Certificates

    • Locale switching

    • Startup choices (restore session, new tab page..)

    • Updating Extensions

  • Platform-level macOS support also uplifted for beta/ESR
  • Removed the concept of GPO machine-only policies, which simplifies usage and documentation

Privacy/Security

Search and Navigation

Search Shortcuts Improvements:

  • Clicking a @shortcut in the results pane fills it, instead of visiting the engine homepage (Bug 1507568)
  • Normal (non @shortcut) aliases are no more highlighted (Bug 1504847)
  • Restriction characters typed before @shortcuts had an unexpected behavior (Bug 1504552
  • Autofilled @shortcuts only show a โ€œSearch withโ€ entry. (Bug 1504854)

Quantum Bar:

  • Convert One-off buttons to a plain js object and lazily initialize them (Bug 1506261)
  • Restriction characters changes (restrict to search with โ€œ?โ€ and to urls with โ€œ$โ€) have been uplifted to Firefox 64 (Bug 1499743)
  • About to land a UnifiedComplete wrapper that allows to use the current Address Bar search component as a Quantum Bar provider (Bug 1502879)

Places:

  • Livemarks code is being removed from toolkit (Bug 1502954).

Test Pilot

Web Payments

This week I learned

  • [mconley, unvoiced] You can re-trigger non-profiling Talos jobs on Treeherder to get profiles, without having to re-push!