Page MenuHomePhabricator

Update puppeteer regularly
Closed, ResolvedPublic2 Estimated Story Points

Description

puppeteer used by headless Chromium is being developed fast. Given how it hasn't hit a stable milestone, we should also updated it as part of the chromium-render service. This task is about finding a general way of updating puppeteer and updating it to the latest version too.

A/C

  • update puppeteer to the latest version

Done in rMSCR9c786153200f: Puppeteer: update to version 0.13..

  • set up a process to track updates to the puppeteer (calendar invites? add it to chore list? or anything else?)

Done in https://www.mediawiki.org/w/index.php?title=Reading%2FWeb%2FChore_list&type=revision&diff=2633356&oldid=2611334.

Event Timeline

libraries.io can notify you via email when a package is updated, e.g. click the "Subscribe to releases" button in the top-left hand corner of https://libraries.io/npm/puppeteer. Could we subscribe the team's mailing list (after asking the team first, obvs!)?

Sounds reasonable. Not sure if we want to rely on an external service for this. Otherwise we'll have to subscribe to another service that notifies us when libraries.io stops existing, ad infinitum.

We're currently using v0.11 and the latest puppeteer is v.013. We should do the performance testing using the latest version as we're going to update the puppeteer version anyway.

@ovasileva @bmansurov - can we just update the puppeteer to v.0.13 right now?

Recent versions of puppeteer seem to be updated monthly or even more frequently:

$ npm view puppeteer time
 
{ modified: '2017-11-29T09:08:44.254Z',
  created: '2013-03-23T01:44:47.039Z',
  '0.0.0': '2013-03-23T01:44:48.111Z',
  '0.9.0': '2017-08-16T15:24:41.336Z',
  '0.10.0': '2017-08-25T01:17:29.068Z',
  '0.10.1': '2017-08-26T02:43:27.787Z',
  '0.10.2': '2017-09-02T04:04:52.227Z',
  '0.11.0': '2017-09-21T05:47:11.714Z',
  '0.12.0': '2017-10-14T16:56:25.974Z',
  '0.13.0': '2017-11-11T02:24:56.507Z' }

Note that we currently don't have an update process for node.js packages in Popups or other extensions where we use node packages. I've also asked Services about their processes (in IRC) and got a confirmation that they regularly check for newer versions of packages they use. For this reason, let's keep the process simple and create an item in our chore list. The item will happen once a month, at the end of it. I've updated the chore list page.

Change 394341 had a related patch set uploaded (by Bmansurov; owner: Bmansurov):
[mediawiki/services/chromium-render@master] Puppeteer: update to version 0.13.

https://gerrit.wikimedia.org/r/394341

Change 394341 merged by Pmiazga:
[mediawiki/services/chromium-render@master] Puppeteer: update to version 0.13.

https://gerrit.wikimedia.org/r/394341

@bmansurov thank you for the update. I'm moving this task to "upcoming", so we can focus on setting up the process.

@bmansurov thank you for the update. I'm moving this task to "upcoming", so we can focus on setting up the process.

I've already set up the process. See T181097#3800314.

@bmansurov ok, that makes sense, moving to sign off. Great work. Thanks.

phuedx added a subscriber: MBinder_WMF.

@bmansurov, @pmiazga: As this is a discrete piece of work that's a direct subtask of an epic, could you provide an estimate? Thanks! /cc @MBinder_WMF

phuedx claimed this task.

Per T181097#3802326, all the AC are met. This LGTM.

bmansurov set the point value for this task to 2.Dec 1 2017, 1:16 PM