Firefox Headlines (June 20th, 2017)

Johann Hofmann jhofmann at mozilla.com
Tue Jun 20 16:48:51 UTC 2017


Hello everyone,

The Firefox Desktop engineering team met today, and we have prepared
another round updates for your reading pleasure.

Thank you to Mike Conley for editing these headlines (and thanks to
everyone in the meeting for formatting their own notes so nicely).

Here we go:
Highlights

   -

   The Photon structure pref has been flipped on Nightly
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1372309>. Photon menus /
   customization etc. are now the default configuration on Nightly. See
   dolske’s blog post
   <https://dolske.wordpress.com/2017/06/15/photon-engineering-newsletter-6/>
   .
   -

      -

   We populated the onboarding overlay on about:newtab according to the UI
   spec. There are 5 tours with call-to-action buttons & you can hide the tour
   with a checkbox.
   -

      [image: 4sk1qfHf37.gif]



   -

   The stub installer is shipping in Firefox 55, and defaults to 64-bit
   <https://bugzilla.mozilla.org/show_bug.cgi?id=797208> for 64-bit OSes as
   of 55, provided it has sufficient memory
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1366860>. (Updating to
   64-bit from 32-bit is aiming to follow suit in 56.)
   -

   The reorganized preferences page
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1365133> is shipping in
   Firefox 56! Also, the search input in preferences has been enabled by
   default <https://bugzilla.mozilla.org/show_bug.cgi?id=1353954>!
   -

   Recent perf work in the Location Bar code is showing interesting gains
   in the time to return the first result (source <https://mzl.la/2rMSr6o>)
   -

      -

   Firefox Focus is now available for Android
   <https://blog.mozilla.org/blog/2017/06/20/10615/>!
   -

   We’re officially shipping e10s-multi to eligible users in Firefox 54
   <https://hacks.mozilla.org/2017/06/firefox-54-e10s-webextension-apis-css-clip-path/>!
   We’ll soon be expanding it to users with WebExtensions installed via a
   system add-on update as well.

Friends of the Firefox team

   -

   johannh wants to introduce Prathiksha [:prathiksha], our new Outreachy
   intern <https://outreachy.gnome.org/> who is working on permission
   management in about:preferences
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1275599> and other
   permission-related bugs.
   -

   mikedeboer wants to introduce Bao Quan [:beekill], the sessionstore GSoC
   intern this year! 👋
   -

   Resolved bugs (excluding employees): https://mzl.la/2ry91mG
   -

      More than one bug fixed:
      -

         Iaroslav Sheptykin
         -

         Jeongkyu Kim
         -

         Santiago Paez [:tiago]
         -

         Tomislav Jovanovic :zombie
         -

         UK92
         -

      New contributors (🌟 = First Patch!)
      -

         🌟 Perry Jiang [:perry] fixed the broken Preferences button for
         Flash <https://bugzilla.mozilla.org/show_bug.cgi?id=1357300> when
         it’s set to Never Activate! And with an automated test, too!
And it got
         uplifted to beta!
         -

         🌟 meet1995 implemented History.hasVisits
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1366231>, also with
         an automated test!

Project UpdatesAdd-ons

   -

   chrome_settings_overrides now allows an extension to add a search engine
   to Firefox <https://bugzilla.mozilla.org/show_bug.cgi?id=1301315> (but
   not change the default search engine).
   -

   downloads.open() now requires user interaction
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1369782>.
   -

   privacy.websites.referrersEnabled landed
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1362787>, allowing an
   extension to enable or disable referrers.
   -

   Methods for getting information about installed extensions
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1282981> (management.get()
   and management.getAll()) as well as events for onEnabled, onDisabled,
   onInstalled and onUninstalled were all enabled for regular extensions in
   addition to themes.
   -

   Updated WebExtensions code to put things in the permanent area in the
   overflow panel <https://bugzilla.mozilla.org/show_bug.cgi?id=1354109>
   instead of the hamburger menu.
   -

   A browser.menus namespace was added
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1333403> which becomes an
   alias for the browser.contextMenus namespace. This was added because we are
   in the process of adding APIs to add items to the main menu in addition to
   context menus.
   -

   Support for ws and wss protocols
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1367478> were added to the
   webRequest API.
   -

   WebExtension experiments are now allowed on release
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1366827>, however they
   need to be signed by AMO. This will be used by TestPilot to migrate away
   from the add-on SDK and replace unimplemented APIs with experiments.
   -

   57 release is 7 weeks away, at which point we will be disabling all
   add-ons except WebExtensions on Nightly
   <https://wiki.mozilla.org/Add-ons/Firefox57>. This doesn’t include
   internally signed legacy add-ons.

Activity Stream

   -

   June 15th Newsletter
   <https://docs.google.com/document/d/1ABsqbkbedPwXVP1S2m-ZmnkDLXD6t32Eh0aJpJ9JQms/edit?usp=sharing>
   (sent to firefox-dev, but strangely missing from the archive, so copied to
   GDocs)
   -

   Highlights:
   -

      Graduation Team has landed the about:newtab Preferences Pane, put in
      place a bunch of performance telemetry, and made some amazing progress on
      making sure all existing Firefox about:newtab tests pass.
      -

      The MVP Team has built out controls for collapsing/expanding AS
      sections, as well as landed the very cool ‘Recent Bookmarks’ section.
      -

      This iteration, we will be preffing on a minimal version of Activity
      Stream in Firefox Nightly!
      -

      -

      Shield Study to examine AS vs. Tiles starting June 26th

Electrolysis (e10s)

   -

   Windows support for e10s+accessibility has been delayed until Firefox
   56+ due to stability issues. Here’s the meta bug
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1029143> for the project. This
   bug <https://bugzilla.mozilla.org/show_bug.cgi?id=1258839> appears to be
   the major blocker.

Firefox Core Engineering <https://wiki.mozilla.org/Firefox_Core_Engineering>

   -

   Flash is set to click-to-activate (CTA) by default as of 55
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1317856>
   -

   Preliminary top crashers lists from crash stacks, broken down by process
   type, sent via crash pings on release 53+ is blocked on Spark (or user)
   errors until further notice.

Form Autofill <https://wiki.mozilla.org/Firefox/Features/Form_Autofill>

   -

   You can read a summary of the recent updates in this email
   <https://mail.mozilla.org/pipermail/firefox-dev/2017-June/005508.html>
   -

      [image: attachment-0001.gif]
      -

   We enabled the heuristics algorithm. Form Autofill now supports forms
   without @autocomplete attributes, i.e. most en-US sites.
   -

   Enabled the auto-save feature and implemented the door hanger for
   notifying users of this.
   -

   Landed preview & highlight feature. You can now preview how addresses
   will be filled in multiple fields.
   -

   Landed the footer in the suggestion dropdown, which makes users easier
   to find the preferences page.
   -

   Landed basic select element support.
   -

   Polished the dialogs in about:preferences (two-layer in-content dialog
   and select element dropmark).

PhotonPerformance

   -

   mconley is looking at Talos regressions
   -

      Fixed the sessionrestore tests
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1372292> so that they
      don’t accidentally test the wrong thing
      -

      Fixing Talos profiling in automation
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1374333> for (at least)
      pageloader tests
      -

      Have a partial explanation for recent regressions on tps
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1372261> in automation,
      still figuring out the rest.
      -

   paolo reports that we have full parity of native Promises with
   Promise.jsm <https://bugzilla.mozilla.org/show_bug.cgi?id=939636> now
   that unhandled rejections of native Promises cause browser-chrome tests
   to fail <https://bugzilla.mozilla.org/show_bug.cgi?id=1242505>.
   -

      We can stop worrying about losing test coverage when removing uses of
      Promise.jsm <https://bugzilla.mozilla.org/show_bug.cgi?id=1368456>
      and Task.jsm <https://bugzilla.mozilla.org/show_bug.cgi?id=1374282>
      from mozilla-central, and we can make Task.jsm use native Promises
      internally <https://bugzilla.mozilla.org/show_bug.cgi?id=1095267> for
      add-ons that still use it.
      -

      Failures in the browser-chrome suite will be logged in the same way
      as the xpcshell suite, with the messages:
      -

         A promise chain failed to handle a rejection
         -

         Unable to find a rejection expected by expectUncaughtRejection
         -

      Some existing failures are whitelisted using
      PromiseTestUtils.expectUncaughtRejection
      <https://dxr.mozilla.org/mozilla-central/search?q=PromiseTestUtils.expectUncaughtRejection&redirect=false>,
      but new failures often just denote a missing
      ".catch(Cu.reportError);" at the end of a Promise chain. A new ESLint
      rule <https://bugzilla.mozilla.org/show_bug.cgi?id=1362972> will help
      detecting these cases, after we've converted the deprecated usage of
      .then(null, ...) to the recommended .catch(...)
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1362970>.
      -

   florian’s been improving our start-up times:
   -

      browser_startup.js is a test everybody should know about, see this
      mail about improving start-up time
      <https://mail.mozilla.org/pipermail/firefox-dev/2017-June/005510.html>
      that florian sent to firefox-dev
      -

      We delayed initialization of Places, NSS, Task.jsm (still pending
      reviews), and the search service. They no longer block first paint.

Structure

   -

   Sidebar button changes have landed - button now just toggles the sidebar
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1360282>
   -

      One known issue with the button looking checked
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1372954> on startup
      being tracked - patch has r+, should be fixed soon.
      -

   Library panel now has a pocket list item
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1354534> and looks more
   polished <https://bugzilla.mozilla.org/show_bug.cgi?id=1370580>. The
   synced tabs view also got a small update
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1365663>.
   -

   Panels now scroll correctly when necessary
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1369095>.
   -

   Coming soon: more updates to the library panel
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1354159>, page action panel
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1374477>, and moving the
   bookmarks star (back) to the URL bar
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1352120>.

Animation

   -

   Photon-themed download icon landed, work is underway on a new revised
   download animation <https://bugzilla.mozilla.org/show_bug.cgi?id=1352065>
   -

   Arrow-panel animations
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1352075> hope to land this
   week
   -

   Stop/refresh animation
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1355924> getting close,
   going through review now and looking at Talos issues
   -

   Tab loading indicator
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1352119> looking at fixing
   Talos issues

Visuals

   -

   Thanks to UK92 for contributing several patches to photon-visual in the
   last weeks:
   -

      Updated about:about
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1125634>
      -

      Updated about:rights
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1372005>
      -

      Made the window control buttons span the entire height of the
      tabstrip in Windows 10
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1185482>
      -

   Nihanth implement new styling for the header and search box of the
   bookmarks and history sidebars
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1367242>
   -

   Johann made Firefox Touch mode (browser.uidensity=2) automatically
   enable itself in Windows Tablet Mode
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1355771> (can be turned
   off)
   -

   On OSX we’re experiencing some jumping in the tab strip if the user
   maximizes the window or goes fullscreen. Dao fixed part one of the
   problem <https://bugzilla.mozilla.org/show_bug.cgi?id=1372535> (the
   maximizing) and we’ll have to figure out the fullscreen issue
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1373581>.
   -

   The title bar will be colored by default on macOS
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1367385> (> Yosemite) from
   tomorrow’s Nightly (if it sticks)
   -

   Dale is working on the new identity block appearance
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1363502> and updating the
   toolbar background colors on OS X and Windows
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1367439>

Onboarding

   -

   The Sync tour and tour notification to land soon.

Preferences

   -

   Re-org v2 <https://bugzilla.mozilla.org/show_bug.cgi?id=1365133> is
   being actively worked on

Search <https://wiki.mozilla.org/Firefox/Search>

   -

   More polish <https://bugzilla.mozilla.org/show_bug.cgi?id=1372242> work
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1370518> on search
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1368470> suggestions
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1371331> and one-off
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1331736> buttons in the
   Location Bar. Both features are on-track to be released in version 55
   -

   A User Research experiment is ongoing on a Firefox version without a
   search bar, through an ad-hoc experimental add-on.
   -

   The follow-on Search Add-on
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1367561> is now also
   enabled <https://bugzilla.mozilla.org/show_bug.cgi?id=1371198> in Beta
   and Nightly <https://bugzilla.mozilla.org/show_bug.cgi?id=1369028>. Some
   performance issues have been hammered
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1369662>.
   -

   Follow-up work to Photon startup perf improvements by Florian: working
   on a patch to delay the whole Places connection opening
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1371677> to its first use,
   to improve cold startup times.
   -

   The Bookmarks backups are now restored using the asynchronous
   bookmarking API <https://bugzilla.mozilla.org/show_bug.cgi?id=1095426>.
   -

   Fixing some crash issues in Storage
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1371945> and Places
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1355561>
   -

   Worked with community volunteers to replace some synchronous
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1364337> history
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1366231> APIs
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1368754>.

Test Pilot <https://wiki.mozilla.org/Test_Pilot>

   -

   A new version of Firefox Screenshots landed in Nightly last night with
   some nice bug fixes
   -

   Tab Center only works up to Firefox 55
   -

      Currently best alternative is Tab Center Redux
      <https://addons.mozilla.org/en-US/firefox/addon/tab-center-redux/>,
      but it’s not perfect
      -

   Graduating July 5th:  Page Shot
   <https://testpilot.firefox.com/experiments/page-shot>, Activity Stream
   <https://testpilot.firefox.com/experiments/activity-stream>
   -

   Graduating “soon” after July 5th:  Pulse
   <https://testpilot.firefox.com/experiments/pulse>, Tab Center
   <https://testpilot.firefox.com/experiments/tab-center>
   -

   Keep your eyes open for three new experiments coming mid-July!

Below the fold

   -

   Lint
   -

      ESLint now has better path searching for node/npm
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1342715> on Windows and
      will work with the new version of MozillaBuild (with node pre-installed!)
      when it is released
      -

         Get your RC build here! Be sure to clobber after installing.
         https://bugzilla.mozilla.org/show_bug.cgi?id=1346656#c9
         -

      Work continues to harmonise rule set across mozilla-central:
      -

         Rajesh has <https://bugzilla.mozilla.org/show_bug.cgi?id=1370225>
         enabled <https://bugzilla.mozilla.org/show_bug.cgi?id=1370232>
         both comma-style <http://eslint.org/docs/rules/comma-style> and
         no-unneeded-ternary
         <http://eslint.org/docs/rules/no-unneeded-ternary> across the
         whole repository.
         -

         Next up (mentored): no-caller
         <http://eslint.org/docs/rules/no-caller>, no-tabs
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1374670>,
         no-whitespace-before-property
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1374671>
         -

   [mconley] nsIThread now has idleDispatch - this means you can now queue
   work to occur in the lowest tier priority, which is good, since it means
   that (with the Quantum DOM work going on) more important events and
   runnables will be able to occur earlier. See ehsan’s blog post for more
   details.
   <https://ehsanakhgari.org/blog/2017-06-02/quantum-flow-engineering-newsletter-11>
   -

      The API changed today:
      https://bugzilla.mozilla.org/show_bug.cgi?id=1368072
      nsIThread.idleDispatch is now Services.tm.idleDispatchToMainThread
      -

      This bug <https://bugzilla.mozilla.org/show_bug.cgi?id=1368072> also
      adds the ability to set a Timeout on the idleDispatch! Just landed in
      integration - send praise to :farre for his great work here!
      -

   [Pike] l10n repacks will get simple soon, bug is in review
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1370506> : ./mach package;
    ./mach build installers-de
   -

   [felipe] Firefox 54 is out! \o/
   -

   [felipe] Firefox Focus is now available for Android.


   -

   [mconley] Did you know that the SubScript loader
   <http://searchfox.org/mozilla-central/rev/c49a70b53f67dd5550eec8a08793805f2aca8d42/js/xpconnect/idl/mozIJSSubScriptLoader.idl#42-44>
   can load scripts asynchronously and return a Promise when the load has
   finished? Now you do!
   -

   [florian] Accessing from JavaScript a DOM node (eg. getElementById,
   firstChild, …) causes the node’s XBL binding to be attached and the
   constructor to run, even when the node is hidden (display: none). This
   caused us to construct the sidebar browser
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1369751> and 20 or so xul
   <label>s <https://bugzilla.mozilla.org/show_bug.cgi?id=1374257> before
   first paint .
   -

   [mikedeboer] mstange is working on beautiful panels on OSX:
   https://bug1348294.bmoattachments.org/attachment.cgi?id=8879305
   (blurred, transparent background)
   -

   Form Autofill In Progress:
   -

      Bug 1303515 <https://bugzilla.mozilla.org/show_bug.cgi?id=1303515> -
      Prompt a door hanger to ask users to update profile when users submit a
      modified populated form
      -

      Bug 1329628 <https://bugzilla.mozilla.org/show_bug.cgi?id=1329628> -
      Address phishing danger concerns
      -

      Bug 1352324 <https://bugzilla.mozilla.org/show_bug.cgi?id=1352324> -
      Store phone numbers in E.164 format
      -

      Bug 1365544 <https://bugzilla.mozilla.org/show_bug.cgi?id=1365544> -
      Handle filling inexact matches for select elements on "address-level1"
      (states)
      -

      Bug 1368008 <https://bugzilla.mozilla.org/show_bug.cgi?id=1368008> -
      Cache the computed fields in profileStorage
      -

      Bug 1370429 <https://bugzilla.mozilla.org/show_bug.cgi?id=1370429> -
      Implement the infrastructure of Telephone parser to support the various
      combination of telephone fields


This information, including all of the previous updates, are fully
available in this doc: https://docs.google.com/a/mozilla.com/document/d/
1u9YH3ULNRYg6G-fN-Udkvfkcvg0alJfzi_zIAfFNkL8/edit?usp=sharing

Also note that I'm really just synthesizing and humanizing the stuff that's
on the Wiki, which is freely available from here: https://wiki.mozilla.org/
Firefox/Meeting, so check that out if you want the source material. It'll
also be posted (minus the Below the Fold stuff) to the Nightly blog.

Finally, if there's a Firefox-ish team that you feel isn't being
represented here, please let them know about the above meeting so we can
get their updates.

Keep on rockin' the free web,

Johann
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/firefox-dev/attachments/20170620/a14d08f1/attachment-0001.html>


More information about the firefox-dev mailing list