apollographql / apollographql/apollo-tooling

Node version 8 support

Open
#1,878 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
3k
Forks
460
PR merge metrics
No merged PRs in 30d

Description

**Intended outcome:**
Install apollo tooling on a system where the only possible node version is 8.x.

**Actual outcome:**
A dependent package, `mkdirp`, causes install to fail:

```
~/Web/okfrontend [master] > yarn install
yarn install v1.21.1
warning package.json: No license field
$ node ./webpack/preinstall.js
warning okfrontend@0.0.1: No license field
[1/5] 🔍 Validating package.json...
warning okfrontend@0.0.1: No license field
[2/5] 🔍 Resolving packages...
[3/5] 🚚 Fetching packages...
error mkdirp@1.0.4: The engine "node" is incompatible with this module. Expected version ">=10". Got "8.11.0"
error Found incompatible module.
```

**How to reproduce the issue:**
Assuming nvm and a package.json file with apollo > ~2.21.0 (I'm not sure where this dependency was added, but it was around there):

```
nvm use 8.11.0
yarn install
```

**Versions**
I'm using node `8.11.0` and am currently on apollo `2.18.1`.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the failure with Node 8.11.0 using nvm and yarn install, then inspect package.json and webpack/preinstall.js to identify where the incompatible mkdirp dependency enters the installation. Done means Apollo tooling installs successfully on Node 8.x without the mkdirp engine error.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js
Domain
cli, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.