- 1 General Topics / Roundtable
- 2 Friends of the Firefox team
- 3 Project Updates
- 3.1 Add-ons
- 3.2 Activity Stream
- 3.3 Browser Architecture
- 3.4 Firefox Core Engineering
- 3.5 Form Autofill
- 3.6 Lint
- 3.7 Photon
- 3.8 Platform Audibles
- 3.9 Privacy/Security
- 3.10 Search and Navigation
- 3.11 Sync / Firefox Accounts
- 3.12 Test Pilot
- 3.13 Web Payments
- 4 This week I learned
General Topics / Roundtable
- [georg] Telemetry: data preference changes
- data preference behavior is streamlined in 58
- now splitting into release & prerelease data
- current limited release data on public TMO dashboard & aggregates is going away
- [mconley] ABP and Chrome Store Foxified have been made 57+ compatible!
- [MattN] Has anyone seen ContentTask.spawn failing due to its loadFrameScript not working?
- [Pike] Nightlies scheduled in UTC - an hour earlier now that summer time is over
Friends of the Firefox team
- Resolved bugs (excluding employees): https://mzl.la/2iC1Iqy
More than one bug fixed:
- Tim Nguyen :ntim
New contributors (🌟 = First Patch!)
- 🌟 Manish Kumar updated some variable names used by Sync to make them more consistent
- 🌟 Andrea Casaccia fixed a Library panel glitch when middle-clicking on items in “Recent Highlights”
- 🌟 Mithilan Sivanesan enabled ESLint for the /chro about:newtab me folder
- 🌟 Nicole Byer fixed expiry dates of session cookies in session restore
- Extensions can now request to disable desktop notifications.
- The tabs API now supports a discard method.
- The theme API now has support for more color properties and can return information about the current theme.
- Final decision has been made to ship AS on about:home andin Firefox 57 🎉🎉🎉🎉🥂
- We are launching studies in 57 to study how Activity Stream affects long-term Firefox retention for both new and existing users
- The focus for Firefox 58 has been performance:
- Landed improved image caching for better about:home perf
- Landed streamlined localized string processing for faster startup
- Working on a number of improvements to reduce dependency on Thumbnail service by using canned or harvested High Res icons more frequently
- De-XBL is moving forwards
- Support for custom elements in XUL is in review
- Tracking XBL binding usage: https://arewexblstill.com/
- Mhowell heroics via a last-minute rename of the Windows shortcut from “Mozilla Firefox” to “Firefox” in 57, but it was backed out. Now targeting 58.
- Updated the installer icon for 57.
- Still aiming to land CFI support for client-side stackwalking in 58.
- Fixed a few compatible issues (e.g. amazon.com, groupon.com, sears.com)
- Fixed a footer issue that affects form-history
- Fixed a preview issue on <select> element
- Fixed credit card sync related bugs
- Credit card sync engine has been enabled by default (align with credit card autofill feature)
- Credit Card - Got pre-beta QA sign off (GREEN)
- Will do the gradual rollout on Fx58 beta
- Enable localization on mozilla-central - Done
- Done but a few UI polishing bugs remain
- Clear button in the autocomplete dropdown - Almost done
- Bug 1407508 - [Form Autofill] Create result for clear button menu if clicked on filled field in `startSearch`
- Ready to land but waiting for a blocker
- Bug 1410821 - [Form Autofill] Consider calling startSearch again instead of returning cached mResults when press arrow-down key after the focused input has just been auto-filled
- Ready for review
- Additional country support - On going
- Bug 1411509 - [Form Autofill] Create a parser that processes the fmt attribute and returns which address fields are visible
- Section support - On going
- Bug 1339731 - [Form Autofill] Refactor FormAutofillHandler to support multiple section mechanism
- Ready for review
- ESLint 4 upgrade coming soon - aiming for after 58 branches.
- Better configuration options that should help reduce the number of .eslintrc.js files
- Processor plugins can be updated to include autofix support (we have a couple).
- ./mach try should be running Linting tasks again by default
- No-cpows-in-tests has been improved and enabled for browser mochitests across the tree.
- The “use-services” rule continues being rolled out and is enabled for all of toolkit/components (as well as browser/components).
- [mconley] Tab warming got another round of review, and now investigating test failures after applying the feedback.
- [mconley] Working on the tab strip scrolling speed regression when not working on tab warming
- Mike, together with Drew fixed up the panels in cases where scrollbars would overlap the content, instead of properly show it.
- Mike made it so that adding a bookmark now defaults to ‘Other Bookmarks’ from everywhere.
- Sam fixed and is still working on polish issues with the new panel transition.
- Jared removed unused PanelUI-popup code.
- Mike updated the Send to Device icon in the Page Actions menu.
- Drew spent quite a bit effort on reconciling WebExtension page actions and Photon page actions.
- Gijs made it so that private browsing and other titlebar placeholder icons (like minimize/ maximize buttons!) can not be opted to be pinned to the overflow menu.
- Jared is getting close with animating the opening/closing of the sidebar
- Nihanth enabled the vibrancy effect from the default theme in the light theme on OSX.
- Johann made the overflow menu get larger when opened through touch, like the other Photon menus.
- Bug 1299286 just landed and enables users to touch-drag customize mode items on Windows touch devices. If it sticks, this makes it easy to add touch support to other drag interfaces by adding a DOM attribute (next up is dragging tabs in the tabstrip).
- Some more bug fixes.
- “1. This removes on average 43 ms of every page load. (while being effective on ~50% of the page loads)
2. Talos benchmarks reports a 15% improvement on google.com.
3. On a personal Window computer with PGO, my personal Facebook page load improved from 641ms to 522ms.”
- Since IndexedDB access has been managed via the cookie permission for some time now, Prathiksha removed the IndexedDB row in the “Permissions” section of page info. Next up is getting rid of the dead permission prompts and other remnants of this permission.
- You no longer need to restart your browser to change the Tracking Protection blocklist.
Address Bar & Search
- Remote search engines now can use icons larger than 10KB (up to 20KB, then they will be rescaled if possible). Fixes a recent regression with the Baidu engine icon.
- Fixed the Address Bar results right alignment, lost when maximizing the window.
- We now make better choices when picking favicons from pages. Fixes some blurry icons (including Youtube).
- The Places Async Transactions prefs have been set to ride the train to release 58:
- deleting lots of bookmarks at once is now faster
- More fixes are planned for moving lots of bookmarks at once
- Improved performance when removing history , due to orphan icons removals
- Reliability project
- Validation of bookmark backups is more lenient. It will try to restore as many bookmarks as possible from the backup, fixing up invalid data when possible
- Fixed filename sanitization for downloads with Content-Disposition: inline
- Removed the image XBL binding
Sync / Firefox Accounts
- `chrome.storage.sync` works again: the server is now handling about 50k requests per minute.
- Thom fixed a bug where we’d schedule five unnecessary follow-up syncs in a row if the current sync failed.
- Lots of code cleanup: unifying our HTTP request wrappers, removing dead code, refactoring how we download records.
- Currently photonizing the Test Pilot website
- Minvid experiment preparing for Shield study
- Screenshots update:
- Screenshots, Github, Bugzilla: we are rethinking our workflow. A doc has been circulating, comments welcome
- Engagement research: Jared added uploads/downloads to main Telemetry ping
- Optimization work continues:
- Jared has a patch open to instrument the steps in the shot creation flow, next we’ll work to shorten response time for each click in the flow.
- Barry has a patch open to generate thumbnails at shot creation time and use thumbnails on the My Shots page
- Site-specific engagement experiments: Ian landed a patch to enable running multiple A/B tests on the site at the same time. We’re hoping to run 3 this quarter.
- Usage: remarkably steady over last 30 days, downloads slightly stronger than uploads. 14M shots total created in the last 30 days.
- Retention looks particularly good for downloaders (~4% weekly retention) vs uploaders (~2.5% retention)
- Showing the total and origin in the payment dialog
- Prototyped a large portion of the dialog using Custom Elements with a Redux-like data subscription to evaluate the approach.
- Next step is to get feedback on this approach and then start implementing the UX spec
This week I learned
- [MattN] Some more convenient DOM APIs exist (since Fx49) as alternatives to appendChild and insertBefore. They support strings to create text nodes and take a variable number of arguments. Example: let is = new Image(); myNode.after(“This”, is, “awesome”)