Skip to content

Instantly share code, notes, and snippets.

@brophdawg11
Created December 21, 2016 21:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save brophdawg11/ff156e0e6b28da3c66af63b871051d8c to your computer and use it in GitHub Desktop.
Save brophdawg11/ff156e0e6b28da3c66af63b871051d8c to your computer and use it in GitHub Desktop.
npm 4.1.1 Nested dependency resolution issue with hapi@15.2.0
~/working> mkdir hapi-npmv4-issue
~/working> cd hapi-npmv4-issue/
~/working/hapi-npmv4-issue> npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (hapi-npmv4-issue)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)
About to write to /Users/brophym1/working/hapi-npmv4-issue/package.json:
{
"name": "hapi-npmv4-issue",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
Is this ok? (yes)
~/working/hapi-npmv4-issue> sudo npm install -g npm@4.1.1 > /dev/null
~/working/hapi-npmv4-issue> npm --version
4.1.1
~/working/hapi-npmv4-issue> npm install --save hapi@15.2.0
hapi-npmv4-issue@1.0.0 /Users/brophym1/working/hapi-npmv4-issue
└─┬ hapi@15.2.0
├── accept@2.1.2
├── ammo@2.0.2
├── boom@4.0.0
├── call@3.0.3
├── catbox@7.1.2
├── catbox-memory@2.0.3
├── cryptiles@3.0.2
├── heavy@4.0.2
├── hoek@4.0.2
├── iron@4.0.3
├── items@2.1.1
├─┬ joi@9.0.4
│ ├── isemail@2.2.1
│ └── moment@2.14.1
├─┬ mimos@3.0.3
│ └── mime-db@1.23.0
├── podium@1.2.3
├── shot@3.3.2
├── statehood@5.0.0
├─┬ subtext@4.3.0
│ ├── content@3.0.2
│ ├─┬ pez@2.1.2
│ │ ├── b64@3.0.2
│ │ └─┬ nigel@2.0.2
│ │ └── vise@2.0.2
│ └── wreck@10.0.0
└── topo@2.0.2
npm WARN hapi-npmv4-issue@1.0.0 No description
npm WARN hapi-npmv4-issue@1.0.0 No repository field.
~/working/hapi-npmv4-issue> rm -rf node_modules/
~/working/hapi-npmv4-issue> sudo npm install -g npm@3.10.9 > /dev/null
~/working/hapi-npmv4-issue> npm --version
3.10.9
~/working/hapi-npmv4-issue> npm install --save hapi@15.2.0
hapi-npmv4-issue@1.0.0 /Users/brophym1/working/hapi-npmv4-issue
└─┬ hapi@15.2.0
├─┬ accept@2.1.2
│ └── boom@3.2.2
├─┬ ammo@2.0.2
│ └── boom@3.2.2
├── boom@4.0.0
├─┬ call@3.0.3
│ └── boom@3.2.2
├─┬ catbox@7.1.2
│ └── boom@3.2.2
├── catbox-memory@2.0.3
├─┬ cryptiles@3.0.2
│ └── boom@3.2.2
├─┬ heavy@4.0.2
│ └── boom@3.2.2
├── hoek@4.0.2
├─┬ iron@4.0.3
│ └── boom@3.2.2
├── items@2.1.1
├─┬ joi@9.0.4
│ ├── isemail@2.2.1
│ └── moment@2.14.1
├─┬ mimos@3.0.3
│ └── mime-db@1.23.0
├── podium@1.2.3
├── shot@3.3.2
├─┬ statehood@5.0.0
│ └── boom@3.2.2
├─┬ subtext@4.3.0
│ ├─┬ content@3.0.2
│ │ └── boom@3.2.2
│ ├─┬ pez@2.1.2
│ │ ├── b64@3.0.2
│ │ ├── boom@3.2.2
│ │ └─┬ nigel@2.0.2
│ │ └── vise@2.0.2
│ └── wreck@10.0.0
└── topo@2.0.2
npm WARN hapi-npmv4-issue@1.0.0 No description
npm WARN hapi-npmv4-issue@1.0.0 No repository field.
@brophdawg11
Copy link
Author

The problematic scenario is line 59 (npm@4.1.1) versus lines 107-108 (npm@3.10.9), in which the latter is correct

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment