Page MenuHomePhabricator

CX requires Node 6 because of JSDOM
Closed, ResolvedPublic

Description

The latest versions of jsdom require Node.js v6 or newer. (Versions of jsdom below v10 still work with Node.js v4, but are unsupported.)

We are using ^10.1.0

Specifically it uses destructuring assignment (const { URL } = ...) which throws an exception in Node < 6 (see http://http://node.green/)

Ideally our Node version requirements should match the rest of the services team (Parsoid/RESTBase).

Details

Related Changes in Gerrit:

Related Objects

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript

We follow the guidance from service team for this. In T170548: nodejs 6.11 the services team rolled out 6.11 as WMF production version.

Ideally our Node version requirements should match the rest of the services team (Parsoid/RESTBase).

Specifically for cxserver, using WMF production version as baseline is more important and useful IMO.

Change 379701 had a related patch set uploaded (by KartikMistry; owner: KartikMistry):
[mediawiki/services/cxserver@master] Update Node.js dependency

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

Parsoid works with v4 but production is v6 like all other services. node v4 is being EOL-ed April 2018 according to https://github.com/nodejs/Release ... so making v6 the minimum supported version seems reasonable since it is not that far away before being default anyway. For Parsoid, we'll drop official v4 support around the time it EOLs.

Change 379701 merged by jenkins-bot:
[mediawiki/services/cxserver@master] Update Node.js dependency

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

KartikMistry triaged this task as Low priority.
KartikMistry moved this task from Backlog to QA on the Language-2017-July-Sept board.