WebDriver/RemoteProtocol/Meetings/2020/01/10
Contents
Agenda
- Beta project update (mmucci)
- Backlog process review (mmucci)
- Strategy of deprecating puppeteer-firefox (“Juggler”)
Roster
- Present
- whimboo, AutomatedTester, maja_zf, mmucci, ato
- Regrets
Minutes
Beta project update
Total MVP scope is 70, so far 30% completion. Seven bugs in developemnt, 30 in backlog. Completion rate is nine bugs per milestone. Early forecast completion date is currently 9th April.
We’ve finished M1 with 21 bugs out of the six required. Completion rate was 7.0 at the beginning of the project, but it has now increased to 9.0. This consequently means the minimum milestone throughput has been reduced to 5.0, which takes some load off.
Comments
- AutomatedTester
- We thought this would happen because we put a lot of contingency in.
Backlog process review
- MVP Bugs
- In Development
- Priority - P1
- Status - Assigned
- Assignee - Yourself
- Whiteboard - [puppeteer-beta-mvp]
- In Backlog
- Priority - P2
- Status - New
- Assignee - Unassigned
- Whiteboard - [puppeteer-beta-mvp]
- In Development
- Reserve Bugs
- In Development
- Priority - P1
- Status - Assigned
- Assignee - Yourself
- Whiteboard - [puppeteer-beta-reserve]
- In Backlog
- Priority - P3
- Status - New
- Assignee - Unassigned
- Whiteboard - [puppeteer-beta-reserve]
- In Development
- Bugs marked as 'Reserve' should not be worked on while there are MVP bugs available for selection.
- If a bug marked as 'Reserve' goes into development it will be changed to an MVP bug to account for the time spent on it in the schedule.
- Contingency will be used to add the new MVP bug.
- If no contingency is available an existing MVP bug will be swapped out to account for the new MVP bug.
- MVP Bugs
What happens when you put a bug in the reserve backlog? It means it's important, but we're not committing to completing it. If you work on a reserve bug, it gets moved into the MVP because it is what we—as a team—right now think it is most important thing to work on.
- whimboo
- We have chosen the MVP bugs at the beginning of the milestone. This means we might risk losing out on some previously-prioritised MVP bugs.
- mmucci
- Yes, there’s a risk of that. But it means we accurately reflect what we are working on.
- AutomatedTester
- Logging, for example, makes everyone’s life easier.
- But having a sense of what is important is the key here. Not everything is equally important, so the initial MVP bug selection was the “optimal”.
- ato
- Several categories: improving everyone's lives; important unplanned work that turns out (permafailure on a beta simulation, for ex.); using time wisely while you are blocked
- maja_zf
- Work that is easy to do while avoiding a context switch
- ato
- Spreadsheet helps with seeing big picture and accountability
- AutomatedTester
- Remote/Milestones#High_Priority_Subset
- maja_zf
- This is a tool that is supposed to help us by triggering discussion about priorities. I’m cautious that the tool should not get in the way.
- If we think something is important, we should just work on it.
- What I’m hearing is that everything eventually gets worked on.
- AutomatedTester
- It comes down to what it is high priority and what is not.
- This is “nice to have”, maybe consider dropping it into the backlog.
- But if something comes up, we may have to swap something out.
- whimboo
- I’m under pressure to do some work on the JsWindowActor stuff before the all-hands.
- I am also trying to finishing up the device emulation, but it’s going to take more time.
- AutomatedTester
- Fission unlocks other things, so I would say returning the device metric emulation to the list.
- whimboo
- The issue is that the device metrics emulation blocks a lot of tests.
- AutomatedTester
- We can ignore the failing tests. People will look that it works, but not be so interested in the pass rate.
Strategy of deprecating puppeteer-firefox (“Juggler”)
Necessary because download numbers spiked a lot recently.
The download rate for puppeteer-firefox (Juggler) has spiked. People are now aware that Puppeteer works with Firefox, but they are mislead by the npm package.
The question is, what should be done?
Mininum: download Firefox Nightly, integrate test-skips into upstream, deprecation message in puppeteer-firefox npm package.
ACTION for AutomatedTester: Arrange meeting with Mathias to discuss Juggler deprecation.
Some open issues in the Puppeteer issue tracker are related to Juggler, and should be closed. But what is our story?
Can close the Juggler issues stating that it’s nolonger maintainer, new version available later this year.
We are ready to get early feedback from early adopters.
An aside about building on all release channels:
- ato
- I don't think we can avoid early adopters trying out our implementation…
- Follow-up question: what is priority of making it easier to use Puppeteer with Firefox?
- AutomatedTester
- Puppeteer with Chromium downloads a Chromium version kind of opaquely to the user, no backwards compat.
- maja_zf
- For now we can get away with having Puppeteer always download the latest Nightly.
- ato
- Supporting all the release channels will take six months of preparation, due the patches having to ridee the trains.
- AutomatedTester
- Just Nightly for now is OK. Later we can work with Mathias to plan Puppeteer releases with regard to supporting other release channels.
- ato
- Clarification: building Firefox versus shipping Firefox.
- We’re not building the remote agent as part of the release branch so emergency work can come up.
- No need to ship anywhere except Nightly.
- AutomatedTester
- Will talking with sheriffs help?
- ato
- I guess we know if the problem happens again, on the next beta simulation, we know we should consider fixing it by preparing to build on all branches.
- The core issue is more an annoyance than a problem: we had to disable the TaskCluster job because the browser-chrome harness dislikes having empty test manifests.
- In conclusion, this is not a huge problem and we can deal with it when/if it happens again.
Recording
None this week due to technical difficulties.
Progress
Milestone Status
- Last week (before Christmas): 48 Total; 42 Open (87.5%); 6 Resolved (12.5%); 0 Verified (0%);
- This week: 70 Total; 49 Open (70%); 21 Resolved (30%); 0 Verified (0%);
Other indicators
Changelog
% git log --date=iso --pretty=format:'%ad%x09%H' -- remote/ | awk '$0 >= "2019-12-20" && $0 <= "2020-01-10"' | awk -F $'\t' '{print $2}' | xargs git show -s --format='%h%x09%an%x09%s' 31f6c0ce8ad1 Henrik Skupin Bug 1596136 - [remote] "Emulation.setUserAgentOverride" should only affect the current target. r=remote-protocol-reviewers,ato 659919a4a79e Henrik Skupin Bug 1596136 - [remote] Remove openTab() and openWindow() helpers from target tests head.js. r=remote-protocol-reviewers,ato 71927df9089d Henrik Skupin Bug 1607461 - [remote] Implement Network.setCacheDisabled. r=remote-protocol-reviewers,ato 9b0acbb35287 Henrik Skupin Bug 1596601 - [remote] Skip some more crashing Puppeteer unit tests. r=remote-protocol-reviewers,ato ae95920b8ac4 Henrik Skupin Bug 1596601 - [remote] Add place-holder for Page.setInterceptFileChooserDialog. r=remote-protocol-reviewers,ato b4a22eb08537 Andreas Tolfsen bug 1607500: remote: preserve task name in add_agent_task() r=remote-protocol-reviewers,whimboo cc9a8b517d2f Andreas Tolfsen bug 1606612: remote: pretty-print WebSocket JSON payloads when verbose logging r=remote-protocol-reviewers,whimboo 5aef3fa3a6ec Andreas Tolfsen bug 1606612: remote: stop sanitizing JSON payloads from the HTTPD r=remote-protocol-reviewers,whimboo ef86cd2cd688 Andreas Tolfsen bug 1598286: remote: upgrade to http 0.2 r=remote-protocol-reviewers,whimboo d08cfa1bb58f Henrik Skupin Bug 1600055 - [remote] Switch from using "outerWindowID" to "browsingContext.id". r=remote-protocol-reviewers,ato 1f8e3b235446 Henrik Skupin Bug 1605650 - [remote] Temporarily skip test browser_getCookies.js for ccov tests on Windows 10. r=remote-protocol-reviewers,ato 968237412424 Andreas Tolfsen bug 1606818: remote: use nsIHttpServer for unregistering handler r=remote-protocol-reviewers,whimboo d44dd7b4938f Andreas Tolfsen bug 1565164: remote: rename Domains DomainCache r=remote-protocol-reviewers,whimboo 1553599075c3 Andreas Tolfsen bug 1565164: remote: rename Targets TargetList r=remote-protocol-reviewers,whimboo 55d9690e9938 Andreas Tolfsen bug 1606834: remote: document fdescribe(), fit(), and Mocha flags r=remote-protocol-reviewers,whimboo c832e2036249 Andreas Tolfsen bug 1606317: remote: revert "Disable Puppeteer tests in ignorehttpserrors.spec.js which crash the browser." r=remote-protocol-reviewers,whimboo c1ea3ced4d7c Coroiu Cristina Backed out 3 changesets (bug 1606317) for build bustage at build/src/security/manager/ssl/nsCertOverrideService.cpp on a CLOSED TREE a4cb6e59c5fb Andreas Tolfsen bug 1606317: remote: revert "Disable Puppeteer tests in ignorehttpserrors.spec.js which crash the browser." r=remote-protocol-reviewers,whimboo e49749c82a08 Henrik Skupin Bug 1593979 - [remote] Always include global head.js and chrome-remote-interface.js. r=remote-protocol-reviewers,ato ae7b73ae6784 Henrik Skupin Bug 1605722 - [remote] Enable target discovery by default for browser chrome tests. r=remote-protocol-reviewers,ato 23858366eee9 Brindusan Cristian Backed out 2 changesets (bug 1606612) for 'remote' failures at browser_scriptToEvaluateOnNewDocument.js. CLOSED TREE
Work
- Milestones
- Development status of Puppeteer beta
- Puppeteer Beta Dashboard - In Development
- Bugzilla queries - Puppeteer Beta
- All project work currently in development
- Available MVP work
- Completed MVP work
- Available Reserve work
- Bug overviews
- Gutenberg dependency tree
- Puppeteer examples dependency tree
- Complete Puppeteer dependency tree
- All ze boogs
PTO (❄️)
- dburns away Monday 6th January
- ato away Thursday 9th January
- maja_zf away Jan 6-9