Highlights
- We added more of an explanation to the Symantec distrust cert errors.
- Speaking of certificates, April King created an add-on for viewing security certificate details called Certainly Something. Requires Firefox 62+, and now works on Firefox for Android!
- The Activity Stream team just landed the first parts of the new CFR (Contextual Feature Recommender) system. Expect some UI tweaks over the next few weeks as the team iterates on feedback.
- Full design spec – for the first iteration we will recommend useful add-ons
- Thanks to nchevobbe and bgrins, we now have syntax highlighting in the Console for input and logged statements!
Friends of the Firefox team
- Welcome DevTools to this meeting! DevTools contributors are now included in the lists below 🎉
Resolved bugs (excluding employees)
- Fixed more than one bug
- Arshad Kazmi
- Diego Pino
- ExE Boss
- Florens Verschelde
- Sahil Bhosale
- Thi Huynh
- New contributors (🌟 = first patch)
- 🌟 Arshad Kazmi swapped out a promiseWaitForCondition with TestUtils.waitForCondition, and got rid of the unneeded BrowserOpenSyncTabs function in browser.js!
- 🌟 Christian Salinas got rid of an unnecessary fill rule in our Content Blocking CSS code!
- 🌟 Diego Pino got rid of an unneeded utility function in our search code, and also made sure that the search service properly iterates elements in searchplugin XML!
- 🌟 Guangyu Song made the sidebar header text look much better on macOS!
- 🌟 Jennifer Wilde converted some of our DevTools code to use modern Promise semantics, rather than the “defer” model!
- 🌟 Sahil Bhosale added some ES6 default parameters to updateBrowserRemotenessByURL, and also got rid of some unneeded styles!
- 🌟 Sriharsha also got rid of some unnecessary CSS rules!
Project Updates
Add-ons / Web Extensions
Activity Stream
- We added support for Remote Settings in Activity Stream Router
- This offers us the possibility of pushing messages out of band to users (like we do with snippets)
Browser Architecture
- Published the 7th XUL/XBL Replacement Newsletter.
Developer Tools
- Thank you Florens Verschelde for making icons & alignment consistently styled in Console
- :honza landed support in Network panel for marking resources that will be affected by content blocking.
- :victoria called for UX contributors, and they came to contribute designs!
- First prefers-reduced-motion use to disable animation in devtools toolbox tabs by :hiro & :mantaroh. Also used in Shadow DOM slot animation by :ladybenko.
- :yulia wrote about about the new :screenshot command for console (Bonus: Eric Meyer did too!)
- :gl landed the new design for Responsive Design Mode (RDM)
- New left-aligned viewport mode
- Next: Updating device list & new manager interface
- :jlast massively improved performance for opening the debugger, and cutting out main thread impact when keeping it open in the background
- :jimb fixed Open in Debugger link for Firefox frontend Custom Elements
Fluent
- Work is continuing to implement document.l10n through webidl for UI pages. Patch is basically r+ but needs some changes to fix a performance regression before it can land.
- A student project will be starting this week to migrate strings from dtd/properties to Fluent
Lint
- As discussed on firefox-dev, ESLint rule comma-dangle will be enabled on Friday (31st Aug) for browser/ services/ taskcluster/ toolkit/, with commas being inserted where necessary (~1576 files). The rest will be enabled ahead of the 64 merges.
Performance
- Harald
- perf.html improvements:
- Improved hiding-idle-threads landed based on category information, works better for Workers
- Previews of WIP timeline features
- Network track (preview, pull request)
- Screenshot track (preview, pull request)
- Sidebar for JIT optimizations (preview, pull request)
- perf.html improvements:
- felipe
- Has started research on implementing the Photon designs for tab opening and closing animations. This should move the animations off of the main thread, and onto the compositor, and should improve perceived performance in tab operations.
- Gijs
- Is making it so that the initial browser is inserted dynamically, which takes us a good chunk of the way towards avoiding the initial about:blank load when creating new windows
- Browser adjustment research continues apace – a metabug has been filed.
- mconley
- Got writing metadata on downloaded files off of the main thread for macOS
- Is fiddling with re-organizing browser.xul so that the tabs and menu toolbars are inside the titlebar, in order to move as much of the layout work for tabs in titlebar into our layout engine (and out of browser-tabsintitlebar.js where we’re flushing a bunch!)
Policy Engine
- We will soon be prioritizing new policies.
- Autoconfig Sandbox moved behind a pref for 63, no timeline for removal yet due to Talos dependencies
Privacy/Security
- Ehsan and Tanvi have been working on a new Content Blocking category that gives you more options for blocking third party cookies (such as only third party cookies from trackers).
- jkt has been digging deep into how we pass triggeringPrincipals (principals that are used to open websites) in the last months. The end goal is to avoid any implicitness in what principals we use and never fall back to system principal as default.
- This means that you’ll see (and probably have already seen) a lot more “triggeringPrincipals” being required in your function calls.
- A recent example: Bug 1362034 – Have addTab() provide the correct triggeringPrincipal
- This bug is the final boss: Bug 1333030 – [meta] Assert nsDocShell::loadURIWithOptions receives a non null triggeringPrincipal
Search and Navigation
Address Bar & Search
- Bug fixes:
- Top Search feature from the New Tab Page:
- The follow-on system add-on has been removed (now part of the core code)
- The Search from Address Bar Onboarding Study has been deployed to english locales (for now)
Places
- Page annotations are now asynchronous and managed through the History API
- Fixed a regression where the native menu bar bookmarks menu is not shown if there’s no browser window
Test Pilot
- Test Pilot server recently upgraded a ton of old dependencies
- Discovered that non-deterministic dependency resolution can be mitigated by only using exact dependency definitions in package.json (no carats), in addition to checking in our package-lock.json
- Depcheck was a useful tool for discovering unused and missing packages
- Webpack 4 had many breaking changes for us, Les Orchard powered through those changes.
- Flowtype updates forced us to fix a lot of our type definitions which exposed some bugs which were fixed in the process !!
- Screenshots
- Bootstrap removal continues; see this metabug on github
- Using the new Mozilla-only WebExtension Telemetry API to submit events to main ping
- Moved Page Action from Photon to WebExtension and back until 63 branches, we discovered a few UI bugs late in the cycle (see these blockers)
- UI redesign + FxA work continues on the server (see FxA bugs on github)
Web Payments
- Thanks to Prathiksha for finishing bug 1475760 after her internship ended!
- Completed
- PaymentRequestService doesn’t clear requests from closed documents
- Address add/edit page error handling fixes
- Fix scrollable area for the payment request page-body
- Need to show in-field labels (small text and placeholder)
- The standard shipping option (default) is “null” for the worldwide multi-option shipping without pre-selection
- Form fields shouldn’t be marked invalid immediately for an add form, only an edit form
- paymentDetails attributes should default to an empty arrays
- Payer/contact picker dropdown labels need to take @address-fields into account
- Figure out why add/edit form strings don’t appear on Nightly builds
- Perma TV dom/payments/test/test_currency_amount_validation.html | Currency of PaymentItem total should be ‘USD’, but got BOB.
- In Progress
- Bug 1477105 – Add a card network dropdown to the credit card add/edit screen
- Bug 1470207 – Finalize images for error screens
- Bug 1480717 – Credit card form can be saved without a billing address
- Bug 1472026 – Implement PaymentResponse.prototype.onpayerdetailchange
- Bug 1483470 – Navigating during paymentRequest.show() crashes the parent process
- Bug 1435161 – Implement PaymentResponse.retry() method
- Bug 1463545 – Replace grid layout of <rich-option> subclasses with new UI spec
Eric A. Meyer wrote on
mconley wrote on