Firefox/Meeting/22-Nov-2016
From MozillaWiki
Contents
Actions from last meeting
- Skipping in 2 weeks (MozAloha)
- mconley running in 4 weeks.
General Topics / Roundtable
(tips/tricks/FYI, productivity improvements, industry news)
- Avoid using async / await in production code, but JS team says it’s okay to use in tests
- If you’re using async functions, you may need to add `{ parserOptions: { ecmaVersion: 8 } }` to your `.eslintrc.js` to avoid getting backed out for eslint failures.
- I (Florian) am working in bug 1316187 on a test to detect unused files we are shipping. 300+ files are reported as potentially unreferenced, and I need help to go through the list and file bugs where needed: https://docs.google.com/spreadsheets/d/1lthM18DHQUy2Spn1IN8w-nXHjxU9ion91p996GoAH94/edit
Friends of the Firefox team
(Give a shoutout/thanks to people for helping fix and test bugs. Introductions)
- Please welcome Joe Hildebrand, who has joined Mozilla as Director of Engineering for the Firefox browsers.
- Resolved bugs (excluding employees): https://mzl.la/2gcieyv
- New Contributors
Project Updates
General
- [pdol] ESR 52 will be the last version to support WinXP. Some discussion on the mailing list about Windows Embedded.
- [gbrown] OrangeFactor Robot comments will now include the push count, failure rate, top 50 rank, and call-out for high-frequency failures.
- [armenzg] Faster build times on Try!
- [whimboo] Marionette improvements.
Add-ons
- Blog post on what’s new in Firefox 52
- Sessions, topSites, omniBox APIs
- Currently testing out chrome.storage.sync and working on getting back end storage into release quality.
- Looking to get involved in hawaii?
Context Graph
- [mconley] (Just relaying this, since I sit near the team) - the Activity Stream is not going to be able to land in central by Hawaii as they had originally hoped. They’ve started to investigate performance issues (and moving the functionality off of the SDK)
E10s
- [mconley] Turning on e10s-multi on Nightly
- Blocked by Talos regressions. Expect this soon; it should be in Nightly 53, but will hold for now. Also fixing test timeouts.
- [mconley] Experiment slated for Beta that will turn on e10s for people with add-ons that have not opted out. (Good chunk of our population).
- Need to look at numbers once experiment begins, but looking at larger scale rollouts.
Firefox Core Engineering
- [ddurst] There is going to be an aggressive push to update “orphaned” Firefox installs (44-47, inclusive) between now and the end of 2016.
- We’ve done this for 43.0.1, and 44.x (so that’s non-system-add-on and system add-on, respectively)
- Results were mixed: bug 1308251, bug 1307568
- Sometimes, system addons didn’t make it to people. Moving ahead with third method; not enough time to gather info for 45.
- We’re addressing 45 this week, and then using those results to use one of these three approaches on 47, 46, 44 (and possibly 43 and 42, TBD).
- Concerted effort to encourage people to update from 42-47 to current (50). 42-25 isn’t a huge chunk, but this is a much more aggressive push.
- FYI: “Orphaned” = not updated since 2 versions back.
- What causes orphans?
- Some are just users being slow to update.
- Blocked by security suite. (Avast was trying to update on users’ behalf). Some are worked out with vendors, some are actual problems.
- Some are related to network latency (bugs have been filed and fixed), but ddurst’s team just got a machine that’s not updating and not affected by latency.
- “Couldn’t update” vs. “didn’t update”.
- [RyanVM] WebSense: optimistic. Firefox works around it as much as it can; more data coming today. (Also had to work around updater issues. Fall into bucket where we don’t know what’s going on).
- 3.x upgrades?
- Issuing updates as minor for 3.x and lower, hopefully (see bug 998721)
-
aus3 cert expires in September of 2017 (FF4.0 - 35), can't renew in a way that works with our pinning for aus3. -
aus4 cert expires in December of 2018 (FF36.0 - 41.0). -
There are going to be many issues for users below these ranges. We can do one last hurrah; after that, we’ll probably need to let them go. For the users in these ranges, we have until those expiration dates to encourage them to update/install. -
^ Note that the aus3 change affects from 4.0 - 35. This means that the lower bound for issuing updates will be greater than 35 (likely 42). What we can do for users below even 4 is probably going to be captured by bug 998721 and the regular orphan remediation process.- CLARIFICATION: I was wrong on these ^ points. While it’s true that certs will result in some users being “stuck” “forever” -- there are things we can do, at the very least for users who are on version s that support hotfixes. So we are focusing our current efforts on 42-current (where we have telemetry), and then we will need to measure the <42 audience sizes and determine what and if we can do for them.
Form Autofill
- Discussing overlap with Web Payments profile UI this week
- See intent to implement for DOM Web Payments API. Coordinating schedules with team. (Front-end UI development isn’t starting yet).
- In Progress
- bug 1300990 - Implement an API in the parent process to decide which values of an autofill profile would be filled in which field
- bug 1304634 - Support populating autocomplete results from form autofill code
Go Faster
Platform UI and other Platform Audibles
- [mconley] The ability to style -moz-appearance: none checkbox and radio input form fields has landed on central! Aiming to try to uplift to 52.
- daleharvey made it so that we can show the login manager autocomplete popup on focus (this bug was reported 10 years ago!)
- scottwu has a patch up for review that adds a datepicker (to complement the timepicker that was recently added). Link to detailed spec.
- A patch from MSU students Fred_ and miguel to combine the e10s and non-e10s <select> dropdown mechanisms will likely land this week (but preffed off)
- A patch by MSU student beachjar that vertically centers the <select> dropdown at the selected element will re-land soon now that he’s fixed this bug
Privacy/Security
- [flo] 🔥 New doorhanger UI landed! \o/ \o/ \o/ \o/ 🔥
- Permission prompts are no longer accidentally dismissable.
- Available actions are more prominent, not just the main one.
- Working on followups in mozilla-central, elm is now decommissioned.
- [nhnt11] Simplified the way we open captive portal tabs.
- [flo, MattN] The insecure password warning in the URL bar will ship in 51. Work on the contextual warning made great progress and is currently slated for 52. Flip security.insecure_field_warning.contextual.enabled to true and signon.autofillForms.http to false to test the feature. Many changes to the autocomplete popup have been made to support this.
Quality of Experience
- [mikedeboer] Firefox Theming
- Demo building phase nearly finished
- Engineering Plan in the making (almost ready for feedback rounds)
- Looking at performance measures now (memory, new window creation, tab opening, etc)
- [dolske] Onboarding
- Beta now live with latest automigration test/data-gathering. (No wizard on startup, migrates and gives option to undo. Looking at telemetry for this).
- Gijs starting work on allowing automigration-undo even after activating Sync
- Discussions with verdi about an updated first-run experience (nutshell: simplified, focus on new-tab page so user can quickly see familiar automigrated data, starting point for low-key introduction of features)
- Less tabs, sign in to FxA, and then directly to about:newtab. (If you migrated from Chrome, your top sites will be there. Familiarity; encourage people to stick around).
- Funnelcake for February 2017. Implementing and uplifting behind a pref.
Search
- [flo] Unified Search study is live.
- Recent Places changes improved the performance of coloring visited links in a page and the performance of searching through history.
- Fixed the display of Open Search providers on sites that provide a huge amount of them.
Sync/FxA
- Sync tracker improvements have landed! Please file bugs if you have bookmark sync enabled and see missing or scrambled bookmarks.
- 4 Mozillians have tried the About Sync validator and filed bugs. Keep them coming. (Email to kcambridge@mozilla.com)
- A new Sync storage server written in Go is coming soon
- Interesting name - prolly not supposed to read ‘synchronous storage’, right? ;-) [We could bring the Weave name back! :-)]
= Video control visual update
Storage Management
Content Handling Enhancement
Project Mortar (PDF)
This week I learned
- [mconley] Contain Blob’s createObjectURL usage where possible in privileged code - this can lead to resource leaks if you forget to revokeObjectURL, and the “origin” is null (a.k.a, created via system principal).
Doing this with the system principal means it’ll never be GCed. (revokeObjectURL is OK to omit for web content, when the document goes away, but not OK for privileged code! System principal windows are never unloaded).
- [Gijs] File a metabug to audit uses of this. Filed bug 1319460
- You can send Blob’s directly through the message managers, apparently.