Categories: News

These Weeks in Firefox: Issue 55

Highlights

  • We published a blog post about student contributions to Firefox!
  • The new Firefox QuantumBar can now be instantly toggled and tested by setting browser.urlbar.quantumbar to true in about:config – please give it a shot, and please file bugs if you see anything unusual.
  • Meridel from the Firefox UX team  blogged about their work on the new certificate error pages!
  • The DevTools team has been adding some amazing new goodies in the last few weeks:
    • Worker debugging and column breakpoints are slated to ship in Firefox 67.
    • The DevTools Network panel now has resizeable columns, currently hidden behind a pref, but we are looking for feedback (bug) – set devtools.netmonitor.features.resizeColumns to true in about:config to test this out!
    • When copying inner or outer HTML from the Inspector (right-click a node and use the copy sub-menu), it is now possible to auto-prettify the HTML. For now this works by setting the devtools.markup.beautifyOnCopy preference to true in about:config (bug).
    • The all new and improved about:debugging is getting close to shipping (try it by enabling devtools.aboutdebugging.new-enabled or going to about:debugging-new). This new version allows you to debug Gecko running on devices over USB without launching WebIDE, amongst many other improvements.
        • If you test it and find bugs, please file them here and we’ll take care of them.
      The new about:debugging page showing which devices can be connected to, and which tabs and extensions are loaded on that device.

      The new about:debugging page is coming along nicely!

    • Lots of speed improvements thanks to not loading DevTools modules in fresh compartments anymore (bug):
      • Inspector opening is up to 40% faster against complex documents!
      • Inspector actions like expanding a DOM Element children or updating the inspector after a page reload are more than 40% faster!
      • Debugger is also faster to step in/out (20 to 30% faster)!
      • The unittest asserting base RDP protocol performance is 20% faster!
      • The console is up to 15% faster to show object attributes when expanding an object!
      • Otherwise, almost all other tests report between 2 to 10% improvement on all panels!
      • 🔥🔥🔥🔥

Friends of the Firefox team

Resolved bugs (excluding employees)

Fixed more than one bug
  • Aaditya Arora
  • akshitha shetty
  • Bisola Omisore (Sola)
  • Erik Carrillo [:E_Carr]
  • Helena Moreno (aka helenatxu)
  • Heng Yeow (:tanhengyeow)
  • Ian Moody [:Kwan] (UTC+0)
  • Jawad Ahmed [:jawad]
  • Laphets [:Laphets]
  • lloan:[lloan]
  • Manish [:manishkk]
  • Masatoshi Kimura [:emk]
  • Mellina Y.
  • LMonika Maheshwari [:MonikaMaheshwari]
  • Oriol Brufau [:Oriol]
  • PhoenixAbhishek
  • Shivam Singhal [ :championshuttler ]
New contributors (🌟 = first patch)

Project Updates

Activity Stream

  • Landed CFR Pin Tab (first non-addon recommendation) triggered by visiting select sites frequently
    • A panel is showing a user instructions on how to pin their current tab.

      Because knowledge is power.

  • Also added a notification when the tab is pinned and an option in the page action menu to pin/unpin the tab.
    • A panel tells the user that they've just pinned a tab, and tells them how to un-pin it.

      The tab has been pinned!

  • Working with the Performance team to ensure quality of new Pocket experience as we prepare to turn on for more users outside of Nightly for select regions for Firefox 68.
  • Dark theme added for new Pocket experience, so users who were excluded from the Nightly experiment because of having the dark theme enabled will be enrolled soon (but can still opt-out in about:preferences while the team works to bring the new page to feature parity).

Add-ons / Web Extensions

  • addons.mozilla.org:
    • Now 100% supporting COSE signatures on production!
    • Removal of support for lightweight themes (LWTs, aka “personas”) continues.
  • Firefox:
    • 68
      • Migration of search engines to WebExtensions is targeting 68. (Thanks to Dale Harvey and Shane Caraveo for slogging through this, and to Andrew Swan for his help.)
        • [Note: open question about testing cold start times reliably/for regressions, see bug 1529321.]
      • Bugs landing for the rewrite of about:addons in HTML, targeting 68.
      • User Scripts API will be pref’d on in 68 (but you can flip the pref and check it out in 67 and 66 too: extensions.webextensions.userScripts.enabled).
    • 67
    • 66
      • Return To AMO, via installer attribution and Activity Stream, has been approved for release in 66!
      • (As a result of enabling IndexedDB for the backend of storage.local in 66 (bug 1488825), this also closes a perf issue (bug 1371255).)
    • Kris Maglione fixed a small 67 blocker and a not-small 66 blocker (race between new tab page and extension controlling new tab page).
    • Contributions from Oriol, championshuttler, violet.bugreport, jawad, zombie! Thanks!

Applications

Lockbox

Developer Tools

Debugger
  • Log points have the correct source location now
  • Event breakpoints are in-progress and coming along nicely
  • Try now runs Jest and Flow tests for the debugger.
Network
Lots of returning contributors
  • [sachdev.hemaksshi] Bug 1474207 – Network Monitor response payload testing method variances
  • [sachdev.hemakshi] Bug 1514750 – Network monitor params plain text
  • [pong7219] Bug 1508241 – Improve zebra table colors (Network)
  • [amy_yyc] Bug 1498565 – Showing XML response payload freezes Firefox
  • [tanhengyeow] Bug 1530140 – Change Netmonitor’s localization access keys to lower case
  • [tanhengyeow] Bug 1485416 – Highlight tracker in the Headers side panel
Console
Lots of returning contributors
  • [Helena Moreno] Bug 1532939 – Support Ctrl/Cmd + K to clear the console
  • [Helena Moreno] Bug 1466040 – Ctrl/Cmd + click on a network log in console output should open the link in a new tab
  • [Neha] Bug 1523290 – Test for JSTerm menu in Browser Console
  • [Yzen] Made ObjectInspector focusable in the console, which means you can navigate to and through them using keyboard Bug 1424159
  • [Kelly] is working on adapting the console toolbar layout depending on its width Bug 1523864
Layout Tools
  • Track Changes now has a “Copy rule” (bug) and “Copy all changes” (bug) buttons
Technical debt
  • Deprecation notice for Canvas Inspector, Shader Editor and Web Audio Editor landed – a link providing more information is displayed on the settings for each tool, and also over the panel itself (bug).
  • The panels will be removed after the code freeze (so they ship in the next version). We’re also removing old shared components that aren’t used anymore. As Yulia said: “Deleted code has no bugs”
Remote Debugging
  • You can now debug service workers in e10s multi-process if you are also running the new ServiceWorkers implementation (dom.serviceWorkers.parent_intercept) (bug)
  • We are now using the regular toolbox (and not the browser toolbox) to debug local addons (bug)
  • Fixed inconsistent runtime name for Reference Browser (it appeared as nightly and fennec) (bug)

Fission

Lint

Password Manager

Performance

  • dthayer
  • Felipe
  •  Florian
    • Adding a lot of more markers to the profile (See those in the Marker Chart and Marker Table)
      • A profile is shown with a grid of markers indicating important events occurring during the profile.

        These profiler markers make it much easier to understand what’s happening inside of a profile, which is good for diagnosing performance problems.

      • New things include loading of subscript JS, Cu.import, notifyObservers, etc
      • Main-thread IO (stat, open/close, read)
      • This has already been helping us file and fix a ton of bugs!
    • Writing a test to capture and whitelist all the main-thread IO that happens during startup so that we don’t add more.
  •  Gijs
    • Kicking off preloading of about:newtab more intelligently
      • Limits the number of preloaded tabs across all browser windows
      • Initiates it from an idle task
    • Browser Adjustment study is wrapping up:
      • Contrary to what we initially thought, it wasn’t getting the impacts on page load time that we expected
      • Trying to see what can be reused from that for potential power savings improvements
  •  mconley
    • Added a new talos test (called startup_about_home_paint) to measure time for about:home to render top sites
    • Made the PageStyleChild populate the menu off an idle callback, and not do it for about:* pages, which was showing up in about:home profiles
    • Plans to run a pref-flip study on Beta to ensure that the Process Priority Manager doesn’t have any ill effects on page load time or retention

Performance tools

  • FileIO markers have file names on all platforms more consistently now.
  • Memory-related markers are now separated out in the timeline and integrated in the memory track.
    • A profile shows a separate track for garbage collection activity. The mouse cursor hovers one marked as "minor".

      A “minor garbage collection” is occurring in this profile.

  • Symbolicate unsymbolicated profiles at load time.
  • Have a timeline toolbar and hidden tracks indicator now.
    • An indicator in the profiler UI shows how many tracks are being hidden by default, and offers to show them.

      This should make it easier to realize that there are hidden tracks that might have interesting information in them.

  • Future Google Summer of Code applicants tackle some “polish” bugs. Expect some small but useful changes!

Policy Engine

Privacy/Security

Search and Navigation

Search
Quantum Bar
  • Quality Engineering completed first pass on Nightly 67, positive results (93% pass)
  • Test coverage largely improved. Also layout reflow tests and Talos verified.
  • Preparing to run a Nightly partial study to check impact.
  • Added accessibility events when arrowing among search results. Still working on a11y.
  • Many bugs fixed, not listing all of them (See the tracking bug).
  • Initial design of first future experiments.

2 comments on “These Weeks in Firefox: Issue 55”

Post a comment

  1. Robi wrote on

    it is hard to find documentation on what the QuantumBar does or is supposed to do, but here is a link to what is behind the idea of the QuantumBar / AddressBar:

    https://firefox-source-docs.mozilla.org/browser/browser/AddressBar.html

    Reply

    1. naman wrote on

      Thanks! I was looking for this 🙂

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *