Firefox/Meeting/15-Nov-2022

From MozillaWiki
Jump to: navigation, search

Today’s meeting leader is: kpatenio

General Topics / Roundtable

  • [mconley] Tips for growing new reviewers!

    • Step 1: Find someone you’d like to grow into a reviewer and let them know your intent

    • Step 2: For something you’ve been assigned a review for, mark the person from Step 1 as a blocking reviewer along with yourself

    • Step 3: Do an initial review of the patch(es) and note down in a review what you think the person from Step 1 should look at / watch out for

    • Step 4: Person from Step 1 does a review

    • Step 5: Then you do a full review of the patch(es). Bonus points if you set up a meeting and review the patch(es) in a Zoom meeting live in front of the person from Step 1 so that they can see what you’re doing.

Friends of the Firefox team

Resolved bugs (excluding employees)

Script to find new contributors from bug list

Volunteers that fixed more than one bug

New contributors (🌟 = first patch)

  • Thanks Kitsu and Simmo Saan for your first patches in the Firefox Profiler.

General triage

Project Updates

Add-ons / Web Extensions

WebExtensions Framework

  • As part of the work related to “Origin Controls “ and “Unified Extensions UI”:

  • “applications” manifest key is fully deprecated (and not supported anymore) in Manifest Version 3 extensions, superseded by the existing “browser_specific_settings” manifest.json property - Bug 1797050

    • Please do not use the “applications” key in manifest.json files anymore

    • Bug 1797777 - Tracking meta for updating all non-test extensions in tree to use “browser_specific_settings” in their manifest

  • In Firefox >= 108, a simplified extension version string format is now recommended (warnings only but AMO/addons-linter will enforce this new format for Manifest Version 3 extensions) - Bug 1793925

  • Fixed a regression on calling “confirm” from extension action popups (regression originally introduced in Firefox 107 from Bug 1791972, fix landed Firefox 108 and uplifted to 107) - Bug 1796972
  • Investigated and identified underlying issues of the regression reported on LastPass in Firefox Nightly 108 Bug 1791415 - LastPass extension not working

    • Turned out that the regression was triggered by the addition of the implementation for the JS Array grouping proposal (Bug 1739648)

    • Regression currently fixed by disabling the Array grouping proposal by default in Nightly (Bug 1799619)


WebExtension APIs

  • Lifting user activation requirement on the action.openPopup API method (to align it with Chromium and Safari per agreement between browser vendors part of the W3C WebExtensions Community Group) - Bug 1755763

    • Currently limited on Nightly builds (locked behind the “extensions.openPopupWithoutUserGesture.enabled" about:config pref)

    • Bug 1799344 is tracking removing the pref and enabling the new behavior on all channels.

  • Fixed an issue with browser.runtime.onStartup not being fired on event pages after the event page got suspended once - Bug 1796586
  • As part of the ongoing work on the declarativeNetRequest API, Bug 1745758 has introduced an initial version of the declarativeNetRequest rule evaluation logic (Bug 1745761 is tracking hooking up the rule evaluation logic to the network)

Developer Tools

DevTools

  • Thank you

    • Thanks to :luke.swiderski, DOM mutation breakpoints are correctly synchronized between Inspector and Debugger panels (bug).

    • Thanks to :zacnomore who fixed a JSON Viewer bug, which now correctly checks key modifiers before handling a keyboard shortcut (bug).

    • :zacnomore updated the toolbar height of the JSON Viewer to be consistent with the rest of our Toolbox UI (bug).

    • Thanks a lot to Emilio, who fixed several UI issues around flexbox in DevTools as soon as they were reported (bug 1, bug 2, bug 3)

  • Container queries

    • Nicolas (:nchevobbe) improved Container Queries support in the Inspector's Rule View:

    • Nicolas also updated the Style Editor's "Media Queries" sidebar to show all "At-rules": @container, @media and @support (bug).
      https://snipboard.io/xSo2IN.jpg

  • Improvements

    • Hubert (:bomsy) improved the Debugger's Pretty Print availability. The feature should now be more consistently available, and in the few cases where it really can't be provided, the icon is still visible but disabled with an explanatory tooltip (bug).

      https://snipboard.io/0FQnwv.jpg

    • In the Network Monitor, Hubert added a feature to copy requests in a new format: "Copy as PowerShell" (bug)

      https://snipboard.io/kRM8Na.jpg

  • Maintenance

    • Alex (:ochameau) removed the devtools-source-map bundle (bug, bug), which was manually built and checked-in by our team, and used the occasion to add performance tests for our sourcemap usage (bug, bug)

    • Hubert also fixed a memory leak in our sourcemap implementation (bug).

    • Alex fixed a regression where DevTools would no longer close when Firefox was closed (bug).

    • Julian (:jdescottes) fixed a bug where the Inspector's RuleView was blank when trying to render very long base64 URLs (bug).

    • Julian fixed the Add New Rule feature of the Inspector, which no longer worked on websites with CSPs (bug).

WebDriver BiDi

  • Sasha (:sasha) implemented a new event browsingContext.domContentLoaded, which is emitted when the document becomes interactive (bug).
  • Henrik (:whimboo) changed WebDriver BiDi to write the connection information to a JSON file called "WebDriverBiDiServer.json", which provides more details than the previous "WebDriverBiDiActivePort" (bug).
  • Henrik contributed many new web platform tests for "no such element" errors (bug)
  • Henrik fixed WebDriver:NewWindow to open new tabs on about:blank instead of about:newtab (bug)
  • Henrik updated the serialization of Document objects to follow the current WebDriver Classic specification and stop serializing them as WebElements (bug).

ESMification status

  • ESMified status:

    • browser: 39.1%

    • toolkit: 29.1%

    • Total: 38.4% (up from 31.1%)

  • #esmification on Matrix
  • Migration Document (with a walkthrough!)

Lint, Docs and Workflow

Migration Improvements (CalState LA Project)

Picture-in-Picture

Performance

Performance Tools (aka Firefox Profiler)

  • A blogpost that summarizes what happened in Q3.
  • added 2 new transforms: collapse indirect recursion, and focus category

    • Reminder: transforms are available from the right-click menu in the call tree, flame graph or stack chart. They transform the call tree to make it simpler to read.

    • (#4232) Collapse indirect recursion: this removes the nodes if they end up calling the same function. For example: From A -> B -> C -> A -> D, this keeps only A -> D. Thanks Simmo Saan!

    • (#4212) Focus category: this will keep only the nodes that belong to the same category as the currently right clicked node. Thanks Johannes Bechberger!

  • (#4286) add an item to show all local tracks for a process, and make that double clicking on the global track in the menu also shows all its local tracks.
  • (#4292) show the CPU model in the profile info panel
  • (#4295) sort the extensions list in the profile info panel
  • (#4296) fix a bug in the linux perf converter where single-letter executables wouldn't be parsed. From our contributor Kitsu.
  • (#4305) display a blue border for selected tracks
  • (#4193) display categories in the flame graph's tooltip -- only available for converters, not available for gecko profiles yet. The style for the graphs in the tooltip changed for everybody though. From our contributor Johannes Bechberger.
  • (#4261) The sourceview is now focusable, which makes it possible to copy paste text out of it.
  • (#4199) When moving between panels, the sidebar categories stays open (previously the state was forgotten). Thanks Johannes Bechberger!
  • (Bug 1788647) When we profile browsertime runs in our CI, the names in the generated zip were previously pretty bad. Now they should be much clearer.
  • Then your usual crash fixes and dependency updates, and some other minor or invisible changes.

Search and Navigation

Screenshots

  • We’re starting to identify and burn down the list of blocking issues to ship the new component implementation and replace the extension implementation
  • Check it out by flipping the `screenshots.browser.component.enabled` pref.
  • We’re starting to assemble and line up ideas for next steps for Screenshots. If you are a heavy screenshots-taker - or think you would be if only Screenshots did x - please tell us about x. We’re in #fx-screenshots in matrix, or you can post to connect.mozilla.org or file a bug in bugzilla.

This week I learned

  • [standard8] Cu.reportError does not support multiple arguments like console.error does. The second argument to Cu.reportError is for a stack.

    • Generally prefer console.error unless you know you have a specific case for reportError (if so, please let Standard8 know).

    • reportError doesn't report stdout unlike console.error (if devtools.console.stdout.* preference is set)

    • There is a bug about replacing Cu.reportError with console.error, that Standard8 is likely to get progressed via ESLint roll-out.

  • [mconley] moz-phab submit -m “Applying fixes”