Ember CLI / NPM Install / Insane number of packages installed


#1

Ember CLI 2.4.1

Create a new project, delete the node_modules dir, run npm install. There number of npm packages installed the second time (from npm install) is ABSURD compared to what was generated by ember new. I believe this is because ember-cli requires a few npm packages, very version specific, such as npm@2.14.21. Since I have npm 3.8.1 installed globally, it’s installing 2.14.21 in my node_modules directory. This didn’t happen with previous releases.

I’m not an NPM expert. Lil help here?

Thanks, Adam

Before:

Ye-Olde-Lappy:Web AK$ ls testi/node_modules
broccoli-asset-rev			ember-cli-htmlbars-inline-precompile	ember-disable-proxy-controllers
ember-ajax				ember-cli-inject-live-reload		ember-export-application-global
ember-cli				ember-cli-qunit				ember-inflector
ember-cli-app-version			ember-cli-release			ember-load-initializers
ember-cli-babel				ember-cli-sri				ember-resolver
ember-cli-dependency-checker		ember-cli-uglify			loader.js
ember-cli-htmlbars			ember-data

After:

Ye-Olde-Lappy:testi AK$ ls node_modules/
abbrev						is-integer
accepts						is-my-json-valid
acorn						is-property
after						is-relative
align-text					is-type
alter						is-typedarray
amd-name-resolver				is-utf8
amdefine					isarray
ansi						isbinaryfile
ansi-regex					isexe
ansi-styles					isstream
ansicolors					jodid25519
are-we-there-yet				js-tokens
argparse					js-yaml
array-equal					jsbn
array-flatten					jsesc
array-to-error					jshint
array-to-sentence				json-schema
arraybuffer.slice				json-stable-stringify
asn1						json-stringify-safe
assert-plus					json3
ast-traverse					json5
ast-types					jsonfile
async						jsonify
async-disk-cache				jsonpointer
aws-sign2					jsprim
aws4						kind-of
babel-core					klassy
babel-plugin-constant-folding			klaw
babel-plugin-dead-code-elimination		lazy-cache
babel-plugin-eval				lcid
babel-plugin-feature-flags			leek
babel-plugin-filter-imports			left-pad
babel-plugin-htmlbars-inline-precompile		leven
babel-plugin-inline-environment-variables	line-numbers
babel-plugin-jscript				linkify-it
babel-plugin-member-expression-literals		livereload-js
babel-plugin-property-literals			loader.js
babel-plugin-proto-to-assign			lodash
babel-plugin-react-constant-elements		lodash-node
babel-plugin-react-display-name			lodash._arraycopy
babel-plugin-remove-console			lodash._arrayeach
babel-plugin-remove-debugger			lodash._baseassign
babel-plugin-runtime				lodash._baseclone
babel-plugin-undeclared-variables-check		lodash._basecopy
babel-plugin-undefined-to-void			lodash._basedifference
babylon						lodash._baseflatten
backbone					lodash._basefor
backo2						lodash._baseuniq
balanced-match					lodash._bindcallback
base64-arraybuffer				lodash._createassigner
base64id					lodash._createset
basic-auth					lodash._getnative
benchmark					lodash._isiterateecall
better-assert					lodash._setcache
bl						lodash._stack
blank-object					lodash.assign
blob						lodash.clonedeep
bluebird					lodash.debounce
body-parser					lodash.flatten
boom						lodash.isarguments
bower						lodash.isarray
bower-config					lodash.isplainobject
bower-endpoint-parser				lodash.istypedarray
brace-expansion					lodash.keys
breakable					lodash.keysin
broccoli-asset-rev				lodash.merge
broccoli-asset-rewrite				lodash.omit
broccoli-babel-transpiler			lodash.pad
broccoli-caching-writer				lodash.padend
broccoli-clean-css				lodash.padstart
broccoli-concat					lodash.repeat
broccoli-config-loader				lodash.rest
broccoli-config-replace				lodash.restparam
broccoli-file-creator				lodash.toplainobject
broccoli-filter					lodash.tostring
broccoli-funnel					lodash.uniq
broccoli-funnel-reducer				longest
broccoli-jshint					lru-cache
broccoli-kitchen-sink-helpers			lru-queue
broccoli-merge-trees				make-array
broccoli-persistent-filter			makeerror
broccoli-plugin					markdown-it
broccoli-sane-watcher				markdown-it-terminal
broccoli-slow-trees				marked
broccoli-source					marked-terminal
broccoli-sri-hash				matcher-collection
broccoli-uglify-sourcemap			md5-hex
broccoli-viz					md5-o-matic
broccoli-writer					mdurl
bser						media-typer
bytes						memoizee
callsite					merge
camelcase					merge-defaults
can-symlink					merge-descriptors
cardinal					methods
caseless					mime
center-align					mime-db
chalk						mime-types
charm						minimatch
clean-base-url					minimist
clean-css					mkdirp
clean-css-promise				mktemp
cli						moment
cli-color					moment-timezone
cli-table					morgan
cli-usage					mout
cliui						ms
clone						mustache
color-convert					mute-stream
colors						negotiator
combined-stream					next-tick
commander					node-emoji
commoner					node-int64
component-bind					node-modules-path
component-emitter				node-notifier
component-inherit				node-uuid
compressible					nopt
compression					npm
concat-map					npm-git-info
configstore					npmlog
connect						number-is-nan
console-browserify				oauth-sign
consolidate					object-assign
content-disposition				object-component
content-type					on-finished
convert-source-map				on-headers
cookie						once
cookie-signature				optimist
copy-dereference				options
core-js						os-homedir
core-object					os-locale
core-util-is					os-tmpdir
cpr						osenv
cross-spawn-async				output-file-sync
cryptiles					parsejson
d						parseqs
dashdash					parseuri
date-now					parseurl
debug						path-exists
decamelize					path-is-absolute
defined						path-posix
defs						path-to-regexp
delayed-stream					pinkie
delegates					pinkie-promise
depd						pleasant-progress
destroy						portfinder
detect-indent					printf
detective					private
did_it_work					process-nextick-args
diff						process-relative-require
dom-serializer					promise-map-series
domelementtype					proxy-addr
domhandler					pseudomap
domutils					q
ecc-jsbn					qs
ee-first					quick-temp
ember-ajax					qunitjs
ember-cli					range-parser
ember-cli-app-version				raw-body
ember-cli-babel					readable-stream
ember-cli-broccoli				readline2
ember-cli-dependency-checker			recast
ember-cli-get-component-path-option		redeyed
ember-cli-htmlbars				regenerate
ember-cli-htmlbars-inline-precompile		regenerator
ember-cli-inject-live-reload			regexpu
ember-cli-is-package-missing			regjsgen
ember-cli-normalize-entity-name			regjsparser
ember-cli-path-utils				repeat-string
ember-cli-preprocess-registry			repeating
ember-cli-qunit					request
ember-cli-release				requires-port
ember-cli-sri					resolve
ember-cli-string-utils				right-align
ember-cli-test-info				rimraf
ember-cli-uglify				rsvp
ember-cli-valid-component-name			sane
ember-cli-version-checker			semver
ember-data					send
ember-disable-proxy-controllers			serve-static
ember-export-application-global			shebang-regex
ember-inflector					shelljs
ember-load-initializers				shellwords
ember-qunit					sigmund
ember-resolver					silent-error
ember-router-generator				simple-fmt
ember-test-helpers				simple-is
engine.io					slash
engine.io-client				slide
engine.io-parser				sntp
entities					socket.io
es5-ext						socket.io-adapter
es6-iterator					socket.io-client
es6-symbol					socket.io-parser
es6-weak-map					source-map
escape-html					source-map-support
escape-string-regexp				source-map-url
esprima-fb					spawnback
esutils						sprintf-js
etag						sri-toolbox
event-emitter					sshpk
eventemitter3					stable
events-to-array					statuses
exec-sh						string_decoder
exists-sync					stringmap
exit						stringset
express						stringstream
extend						strip-ansi
extsprintf					strip-bom
fast-ordered-set				strip-json-comments
fast-sourcemap-concat				styled_string
faye-websocket					sum-up
fb-watchman					supports-color
fileset						symlink-or-copy
finalhandler					tap-parser
findup						temp
findup-sync					testem
fireworm					through
forever-agent					timers-ext
form-data					tiny-lr
forwarded					tmp
fresh						tmpl
fs-extra					to-array
fs-monitor-stack				to-fast-properties
fs-readdir-recursive				tough-cookie
fs-tree-diff					tree-sync
gauge						trim-right
generate-function				try-resolve
generate-object-property			tryor
get-caller-file					tunnel-agent
get-stdin					tweetnacl
git-repo-info					type-is
git-repo-version				uc.micro
git-tools					uglify-js
glob						uglify-to-browserify
globals						ultron
graceful-fs					underscore
graceful-readlink				underscore.string
growly						unpipe
handlebars					untildify
har-validator					user-home
has-ansi					utf8
has-binary					util-deprecate
has-color					utils-merge
has-cors					uuid
has-unicode					vary
hash-for-dep					verror
hawk						walk-sync
hoek						walker
home-or-tmp					watch
htmlparser2					websocket-driver
http-errors					websocket-extensions
http-proxy					which
http-signature					window-size
iconv-lite					wordwrap
imurmurhash					wrappy
indexof						write-file-atomic
inflection					ws
inflight					xdg-basedir
inherits					xmldom
inline-source-map-comment			xmlhttprequest-ssl
inquirer					xtend
invert-kv					y18n
ipaddr.js					yallist
is-absolute					yam
is-buffer					yargs
is-finite					yeast
is-git-url

#2

Here is the full npm install output:

Ye-Olde-Lappy:testi AK$ npm install
npm WARN deprecated lodash-node@2.4.1: This package has been discontinued in favor of lodash@^4.0.0.
npm WARN deprecated graceful-fs@3.0.8: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN prefer global marked@0.3.5 should be installed with -g
npm WARN prefer global npm@2.14.21 should be installed with -g
npm WARN prefer global jshint@2.9.1 should be installed with -g
testi@0.0.0 /Users/AK/Web/testi
├─┬ broccoli-asset-rev@2.4.2 
│ ├── broccoli-asset-rewrite@1.0.11 
│ ├─┬ broccoli-filter@1.2.3 
│ │ ├─┬ broccoli-kitchen-sink-helpers@0.2.9 
│ │ │ └── glob@5.0.15 
│ │ └── copy-dereference@1.0.0 
│ ├─┬ json-stable-stringify@1.0.1 
│ │ └── jsonify@0.0.0 
│ ├─┬ matcher-collection@1.0.1 
│ │ └── minimatch@2.0.10 
│ └── rsvp@3.0.21 
├── ember-ajax@0.7.1 
├─┬ ember-cli@2.4.1 
│ ├── amd-name-resolver@0.0.2 
│ ├── bower@1.7.7 
│ ├─┬ bower-config@1.3.0 
│ │ ├── graceful-fs@4.1.3 
│ │ ├── mout@0.12.0 
│ │ ├─┬ optimist@0.6.1 
│ │ │ └── wordwrap@0.0.2 
│ │ ├─┬ osenv@0.1.3 
│ │ │ └── os-homedir@1.0.1 
│ │ └── untildify@2.1.0 
│ ├── bower-endpoint-parser@0.2.2 
│ ├─┬ broccoli-babel-transpiler@5.5.0 
│ │ ├─┬ babel-core@5.8.35 
│ │ │ ├── babel-plugin-constant-folding@1.0.1 
│ │ │ ├── babel-plugin-dead-code-elimination@1.0.2 
│ │ │ ├── babel-plugin-eval@1.0.1 
│ │ │ ├── babel-plugin-inline-environment-variables@1.0.1 
│ │ │ ├── babel-plugin-jscript@1.0.4 
│ │ │ ├── babel-plugin-member-expression-literals@1.0.1 
│ │ │ ├── babel-plugin-property-literals@1.0.1 
│ │ │ ├── babel-plugin-proto-to-assign@1.0.4 
│ │ │ ├── babel-plugin-react-constant-elements@1.0.3 
│ │ │ ├── babel-plugin-react-display-name@1.0.3 
│ │ │ ├── babel-plugin-remove-console@1.0.1 
│ │ │ ├── babel-plugin-remove-debugger@1.0.1 
│ │ │ ├── babel-plugin-runtime@1.0.7 
│ │ │ ├─┬ babel-plugin-undeclared-variables-check@1.0.2 
│ │ │ │ └── leven@1.0.2 
│ │ │ ├── babel-plugin-undefined-to-void@1.1.6 
│ │ │ ├── babylon@5.8.35 
│ │ │ ├── bluebird@2.10.2 
│ │ │ ├── convert-source-map@1.2.0 
│ │ │ ├── core-js@1.2.6 
│ │ │ ├─┬ detect-indent@3.0.1 
│ │ │ │ ├── get-stdin@4.0.1 
│ │ │ │ └── minimist@1.2.0 
│ │ │ ├── esutils@2.0.2 
│ │ │ ├── fs-readdir-recursive@0.1.2 
│ │ │ ├── globals@6.4.1 
│ │ │ ├─┬ home-or-tmp@1.0.0 
│ │ │ │ └── user-home@1.1.1 
│ │ │ ├─┬ is-integer@1.0.6 
│ │ │ │ └─┬ is-finite@1.0.1 
│ │ │ │   └── number-is-nan@1.0.0 
│ │ │ ├── js-tokens@1.0.1 
│ │ │ ├── json5@0.4.0 
│ │ │ ├─┬ line-numbers@0.2.0 
│ │ │ │ └── left-pad@0.0.3 
│ │ │ ├── minimatch@2.0.10 
│ │ │ ├─┬ output-file-sync@1.1.1 
│ │ │ │ └── xtend@4.0.1 
│ │ │ ├── path-exists@1.0.0 
│ │ │ ├── private@0.1.6 
│ │ │ ├─┬ regenerator@0.8.40 
│ │ │ │ ├─┬ commoner@0.10.4 
│ │ │ │ │ ├─┬ detective@4.3.1 
│ │ │ │ │ │ ├── acorn@1.2.2 
│ │ │ │ │ │ └── defined@1.0.0 
│ │ │ │ │ └── q@1.4.1 
│ │ │ │ ├─┬ defs@1.1.1 
│ │ │ │ │ ├─┬ alter@0.2.0 
│ │ │ │ │ │ └── stable@0.1.5 
│ │ │ │ │ ├── ast-traverse@0.1.1 
│ │ │ │ │ ├── breakable@1.0.0 
│ │ │ │ │ ├── simple-fmt@0.1.0 
│ │ │ │ │ ├── simple-is@0.2.0 
│ │ │ │ │ ├── stringmap@0.2.2 
│ │ │ │ │ ├── stringset@0.2.1 
│ │ │ │ │ ├── tryor@0.1.2 
│ │ │ │ │ └─┬ yargs@3.27.0 
│ │ │ │ │   ├─┬ os-locale@1.4.0 
│ │ │ │ │   │ └─┬ lcid@1.0.0 
│ │ │ │ │   │   └── invert-kv@1.0.0 
│ │ │ │ │   ├── window-size@0.1.4 
│ │ │ │ │   └── y18n@3.2.0 
│ │ │ │ ├── esprima-fb@15001.1001.0-dev-harmony-fb 
│ │ │ │ └─┬ recast@0.10.33 
│ │ │ │   └── ast-types@0.8.12 
│ │ │ ├─┬ regexpu@1.3.0 
│ │ │ │ ├── esprima@2.7.2 
│ │ │ │ ├── regenerate@1.2.1 
│ │ │ │ ├── regjsgen@0.2.0 
│ │ │ │ └─┬ regjsparser@0.1.5 
│ │ │ │   └── jsesc@0.5.0 
│ │ │ ├── repeating@1.1.3 
│ │ │ ├── shebang-regex@1.0.0 
│ │ │ ├── slash@1.0.0 
│ │ │ ├── source-map@0.5.3 
│ │ │ ├─┬ source-map-support@0.2.10 
│ │ │ │ └── source-map@0.1.32 
│ │ │ ├── to-fast-properties@1.0.1 
│ │ │ ├── trim-right@1.0.1 
│ │ │ └── try-resolve@1.0.1 
│ │ └── clone@0.2.0 
│ ├─┬ broccoli-concat@2.2.0 
│ │ ├─┬ broccoli-caching-writer@2.2.1 
│ │ │ └── broccoli-plugin@1.1.0 
│ │ ├─┬ fast-sourcemap-concat@0.2.7 
│ │ │ ├─┬ chalk@0.5.1 
│ │ │ │ ├── ansi-styles@1.1.0 
│ │ │ │ ├─┬ has-ansi@0.1.0 
│ │ │ │ │ └── ansi-regex@0.2.1 
│ │ │ │ ├── strip-ansi@0.3.0 
│ │ │ │ └── supports-color@0.2.0 
│ │ │ └─┬ source-map@0.4.4 
│ │ │   └── amdefine@1.0.0 
│ │ ├─┬ lodash.merge@4.3.2 
│ │ │ ├── lodash._baseclone@4.5.3 
│ │ │ ├── lodash._stack@4.1.1 
│ │ │ ├── lodash.isplainobject@4.0.3 
│ │ │ ├── lodash.keysin@4.1.3 
│ │ │ └── lodash.rest@4.0.1 
│ │ ├─┬ lodash.omit@4.1.0 
│ │ │ ├─┬ lodash._basedifference@4.4.0 
│ │ │ │ └── lodash._setcache@4.1.1 
│ │ │ └── lodash._baseflatten@4.1.1 
│ │ ├─┬ lodash.uniq@4.2.0 
│ │ │ └─┬ lodash._baseuniq@4.5.0 
│ │ │   └── lodash._createset@4.0.1 
│ │ └── minimatch@2.0.10 
│ ├── broccoli-config-loader@1.0.0 
│ ├─┬ broccoli-config-replace@1.1.1 
│ │ ├── broccoli-kitchen-sink-helpers@0.3.1 
│ │ └── fs-extra@0.24.0 
│ ├─┬ broccoli-funnel@1.0.1 
│ │ ├── array-equal@1.0.0 
│ │ ├── blank-object@1.0.1 
│ │ ├── fast-ordered-set@1.0.2 
│ │ ├── fs-tree-diff@0.3.1 
│ │ ├── minimatch@2.0.10 
│ │ └── path-posix@1.0.0 
│ ├── broccoli-funnel-reducer@1.0.0 
│ ├── broccoli-kitchen-sink-helpers@0.3.1 
│ ├─┬ broccoli-merge-trees@1.1.1 
│ │ ├─┬ can-symlink@1.0.0 
│ │ │ └── tmp@0.0.28 
│ │ └── fs-tree-diff@0.4.4 
│ ├── broccoli-plugin@1.2.1 
│ ├─┬ broccoli-sane-watcher@1.1.4 
│ │ └── broccoli-slow-trees@1.1.0 
│ ├── broccoli-source@1.1.0 
│ ├── broccoli-viz@2.0.1 
│ ├─┬ chalk@1.1.1 
│ │ ├─┬ ansi-styles@2.2.0 
│ │ │ └── color-convert@1.0.0 
│ │ ├─┬ has-ansi@2.0.0 
│ │ │ └── ansi-regex@2.0.0 
│ │ ├── strip-ansi@3.0.1 
│ │ └── supports-color@2.0.0 
│ ├── clean-base-url@1.0.0 
│ ├─┬ compression@1.6.1 
│ │ ├─┬ accepts@1.3.1 
│ │ │ ├── mime-types@2.1.10 
│ │ │ └── negotiator@0.6.0 
│ │ ├── bytes@2.2.0 
│ │ ├─┬ compressible@2.0.7 
│ │ │ └── mime-db@1.22.0 
│ │ ├── on-headers@1.0.1 
│ │ └── vary@1.1.0 
│ ├─┬ configstore@1.4.0 
│ │ ├── object-assign@4.0.1 
│ │ ├── os-tmpdir@1.0.1 
│ │ ├── uuid@2.0.1 
│ │ ├─┬ write-file-atomic@1.1.4 
│ │ │ ├── imurmurhash@0.1.4 
│ │ │ └── slide@1.1.6 
│ │ └── xdg-basedir@2.0.0 
│ ├─┬ core-object@0.0.2 
│ │ └── lodash-node@2.4.1 
│ ├─┬ cpr@0.4.2 
│ │ └─┬ rimraf@2.4.5 
│ │   └── glob@6.0.4 
│ ├─┬ debug@2.2.0 
│ │ └── ms@0.7.1 
│ ├── diff@1.4.0 
│ ├─┬ ember-cli-broccoli@0.16.9 
│ │ ├─┬ commander@2.9.0 
│ │ │ └── graceful-readlink@1.0.1 
│ │ ├── connect@3.4.1 
│ │ ├─┬ handlebars@4.0.5 
│ │ │ ├── source-map@0.4.4 
│ │ │ └─┬ uglify-js@2.6.2 
│ │ │   ├── async@0.2.10 
│ │ │   └─┬ yargs@3.10.0 
│ │ │     ├─┬ cliui@2.1.0 
│ │ │     │ ├─┬ center-align@0.1.3 
│ │ │     │ │ ├─┬ align-text@0.1.4 
│ │ │     │ │ │ ├─┬ kind-of@3.0.2 
│ │ │     │ │ │ │ └── is-buffer@1.1.2 
│ │ │     │ │ │ ├── longest@1.0.1 
│ │ │     │ │ │ └── repeat-string@1.5.4 
│ │ │     │ │ └── lazy-cache@1.0.3 
│ │ │     │ └── right-align@0.1.3 
│ │ │     └── window-size@0.1.0 
│ │ └── mime@1.3.4 
│ ├── ember-cli-get-component-path-option@1.0.0 
│ ├── ember-cli-is-package-missing@1.0.0 
│ ├── ember-cli-normalize-entity-name@1.0.0 
│ ├── ember-cli-path-utils@1.0.0 
│ ├─┬ ember-cli-preprocess-registry@2.0.0 
│ │ ├─┬ broccoli-clean-css@1.1.0 
│ │ │ ├─┬ clean-css-promise@0.1.1 
│ │ │ │ ├─┬ array-to-error@1.0.0 
│ │ │ │ │ └── array-to-sentence@1.0.4 
│ │ │ │ ├─┬ clean-css@3.4.10 
│ │ │ │ │ ├── commander@2.8.1 
│ │ │ │ │ └── source-map@0.4.4 
│ │ │ │ └─┬ pinkie-promise@2.0.0 
│ │ │ │   └── pinkie@2.0.4 
│ │ │ └─┬ inline-source-map-comment@1.0.5 
│ │ │   ├── minimist@1.2.0 
│ │ │   └── sum-up@1.0.2 
│ │ ├── lodash@3.10.1 
│ │ └── process-relative-require@1.0.0 
│ ├── ember-cli-string-utils@1.0.0 
│ ├── ember-cli-test-info@1.0.0 
│ ├── ember-cli-valid-component-name@1.0.0 
│ ├─┬ ember-router-generator@1.2.0 
│ │ └─┬ recast@0.9.18 
│ │   ├── ast-types@0.6.16 
│ │   ├── esprima-fb@10001.1.0-dev-harmony-fb 
│ │   └── source-map@0.1.43 
│ ├── escape-string-regexp@1.0.5 
│ ├── exists-sync@0.0.3 
│ ├── exit@0.1.2 
│ ├─┬ express@4.13.4 
│ │ ├─┬ accepts@1.2.13 
│ │ │ └── negotiator@0.5.3 
│ │ ├── array-flatten@1.1.1 
│ │ ├── content-disposition@0.5.1 
│ │ ├── content-type@1.0.1 
│ │ ├── cookie@0.1.5 
│ │ ├── cookie-signature@1.0.6 
│ │ ├── depd@1.1.0 
│ │ ├── escape-html@1.0.3 
│ │ ├── etag@1.7.0 
│ │ ├─┬ finalhandler@0.4.1 
│ │ │ └── unpipe@1.0.0 
│ │ ├── fresh@0.3.0 
│ │ ├── merge-descriptors@1.0.1 
│ │ ├── methods@1.1.2 
│ │ ├─┬ on-finished@2.3.0 
│ │ │ └── ee-first@1.1.1 
│ │ ├── parseurl@1.3.1 
│ │ ├── path-to-regexp@0.1.7 
│ │ ├─┬ proxy-addr@1.0.10 
│ │ │ ├── forwarded@0.1.0 
│ │ │ └── ipaddr.js@1.0.5 
│ │ ├── qs@4.0.0 
│ │ ├── range-parser@1.0.3 
│ │ ├─┬ send@0.13.1 
│ │ │ ├── destroy@1.0.4 
│ │ │ ├── http-errors@1.3.1 
│ │ │ └── statuses@1.2.1 
│ │ ├── serve-static@1.10.2 
│ │ ├─┬ type-is@1.6.12 
│ │ │ └── media-typer@0.3.0 
│ │ ├── utils-merge@1.0.0 
│ │ └── vary@1.0.1 
│ ├─┬ findup@0.1.5 
│ │ ├── colors@0.6.2 
│ │ └── commander@2.1.0 
│ ├─┬ findup-sync@0.2.1 
│ │ └─┬ glob@4.3.5 
│ │   └── minimatch@2.0.10 
│ ├─┬ fs-extra@0.26.2 
│ │ ├── jsonfile@2.2.3 
│ │ └── klaw@1.1.3 
│ ├── fs-monitor-stack@1.1.0 
│ ├── fs-tree-diff@0.4.4 
│ ├── get-caller-file@1.0.1 
│ ├── git-repo-info@1.1.2 
│ ├─┬ glob@5.0.13 
│ │ ├─┬ inflight@1.0.4 
│ │ │ └── wrappy@1.0.1 
│ │ ├── inherits@2.0.1 
│ │ ├── minimatch@2.0.10 
│ │ ├── once@1.3.3 
│ │ └── path-is-absolute@1.0.0 
│ ├─┬ http-proxy@1.13.2 
│ │ ├── eventemitter3@1.1.1 
│ │ └── requires-port@1.0.0 
│ ├── inflection@1.8.0 
│ ├─┬ inquirer@0.5.1 
│ │ ├── async@0.8.0 
│ │ ├─┬ chalk@0.4.0 
│ │ │ ├── ansi-styles@1.0.0 
│ │ │ ├── has-color@0.1.7 
│ │ │ └── strip-ansi@0.1.1 
│ │ ├─┬ cli-color@0.3.3 
│ │ │ ├── d@0.1.1 
│ │ │ ├─┬ es5-ext@0.10.11 
│ │ │ │ ├── es6-iterator@2.0.0 
│ │ │ │ └── es6-symbol@3.0.2 
│ │ │ ├─┬ memoizee@0.3.9 
│ │ │ │ ├─┬ es6-weak-map@0.1.4 
│ │ │ │ │ ├── es6-iterator@0.1.3 
│ │ │ │ │ └── es6-symbol@2.0.1 
│ │ │ │ ├── event-emitter@0.3.4 
│ │ │ │ ├── lru-queue@0.1.0 
│ │ │ │ └── next-tick@0.2.2 
│ │ │ └── timers-ext@0.1.0 
│ │ ├── lodash@2.4.2 
│ │ └── mute-stream@0.0.4 
│ ├── is-git-url@0.2.3 
│ ├── isbinaryfile@2.0.4 
│ ├─┬ leek@0.0.21 
│ │ ├─┬ lodash.assign@3.2.0 
│ │ │ ├─┬ lodash._baseassign@3.2.0 
│ │ │ │ └── lodash._basecopy@3.0.1 
│ │ │ ├─┬ lodash._createassigner@3.1.1 
│ │ │ │ ├── lodash._bindcallback@3.0.1 
│ │ │ │ ├── lodash._isiterateecall@3.0.9 
│ │ │ │ └── lodash.restparam@3.6.1 
│ │ │ └── lodash.keys@3.1.2 
│ │ └─┬ request@2.69.0 
│ │   ├── aws-sign2@0.6.0 
│ │   ├─┬ aws4@1.3.2 
│ │   │ └── lru-cache@4.0.0 
│ │   ├── bl@1.0.3 
│ │   ├── caseless@0.11.0 
│ │   ├─┬ combined-stream@1.0.5 
│ │   │ └── delayed-stream@1.0.0 
│ │   ├── extend@3.0.0 
│ │   ├── forever-agent@0.6.1 
│ │   ├── form-data@1.0.0-rc3 
│ │   ├─┬ har-validator@2.0.6 
│ │   │ └─┬ is-my-json-valid@2.13.1 
│ │   │   ├── generate-function@2.0.0 
│ │   │   ├─┬ generate-object-property@1.2.0 
│ │   │   │ └── is-property@1.0.2 
│ │   │   └── jsonpointer@2.0.0 
│ │   ├─┬ hawk@3.1.3 
│ │   │ ├── boom@2.10.1 
│ │   │ ├── cryptiles@2.0.5 
│ │   │ ├── hoek@2.16.3 
│ │   │ └── sntp@1.0.9 
│ │   ├─┬ http-signature@1.1.1 
│ │   │ ├── assert-plus@0.2.0 
│ │   │ ├─┬ jsprim@1.2.2 
│ │   │ │ ├── extsprintf@1.0.2 
│ │   │ │ ├── json-schema@0.2.2 
│ │   │ │ └── verror@1.3.6 
│ │   │ └─┬ sshpk@1.7.4 
│ │   │   ├── asn1@0.2.3 
│ │   │   ├─┬ dashdash@1.13.0 
│ │   │   │ └── assert-plus@1.0.0 
│ │   │   ├── ecc-jsbn@0.1.1 
│ │   │   ├── jodid25519@1.0.2 
│ │   │   ├── jsbn@0.1.0 
│ │   │   └── tweetnacl@0.14.1 
│ │   ├── is-typedarray@1.0.0 
│ │   ├── isstream@0.1.2 
│ │   ├── json-stringify-safe@5.0.1 
│ │   ├── oauth-sign@0.8.1 
│ │   ├── qs@6.0.2 
│ │   ├── stringstream@0.0.5 
│ │   ├── tough-cookie@2.2.1 
│ │   └── tunnel-agent@0.4.2 
│ ├── lodash@4.6.1 
│ ├─┬ markdown-it@4.3.0 
│ │ ├─┬ argparse@1.0.6 
│ │ │ └── sprintf-js@1.0.3 
│ │ ├── entities@1.1.1 
│ │ ├── linkify-it@1.2.0 
│ │ ├── mdurl@1.0.1 
│ │ └── uc.micro@1.0.0 
│ ├─┬ markdown-it-terminal@0.0.3 
│ │ ├─┬ cardinal@0.5.0 
│ │ │ ├── ansicolors@0.2.1 
│ │ │ └─┬ redeyed@0.5.0 
│ │ │   └── esprima-fb@12001.1.0-dev-harmony-fb 
│ │ ├─┬ cli-table@0.3.1 
│ │ │ └── colors@1.0.3 
│ │ ├─┬ lodash.merge@3.3.2 
│ │ │ ├── lodash._arraycopy@3.0.0 
│ │ │ ├── lodash._arrayeach@3.0.0 
│ │ │ ├── lodash._getnative@3.9.1 
│ │ │ ├── lodash.isarguments@3.0.8 
│ │ │ ├── lodash.isarray@3.0.4 
│ │ │ ├─┬ lodash.isplainobject@3.2.0 
│ │ │ │ └── lodash._basefor@3.0.3 
│ │ │ ├── lodash.istypedarray@3.0.5 
│ │ │ ├── lodash.keysin@3.0.8 
│ │ │ └─┬ lodash.toplainobject@3.0.0 
│ │ │   └── lodash.keysin@3.0.8 
│ │ └── markdown-it@4.4.0 
│ ├─┬ merge-defaults@0.2.1 
│ │ └── lodash@2.4.2 
│ ├─┬ minimatch@3.0.0 
│ │ └─┬ brace-expansion@1.1.3 
│ │   ├── balanced-match@0.3.0 
│ │   └── concat-map@0.0.1 
│ ├─┬ mkdirp@0.5.1 
│ │ └── minimist@0.0.8 
│ ├─┬ morgan@1.7.0 
│ │ └── basic-auth@1.0.3 
│ ├── node-modules-path@1.0.1 
│ ├── node-uuid@1.4.7 
│ ├─┬ nopt@3.0.6 
│ │ └── abbrev@1.0.7 
│ ├─┬ npm@2.14.21 
│ │ ├── abbrev@1.0.7 
│ │ ├── ansi@0.3.1 
│ │ ├── ansi-regex@2.0.0 
│ │ ├── ansicolors@0.3.2 
│ │ ├── ansistyles@0.1.3 
│ │ ├── archy@1.0.0 
│ │ ├── async-some@1.0.2 
│ │ ├── block-stream@0.0.8 
│ │ ├── char-spinner@1.0.1 
│ │ ├── chmodr@1.0.2 
│ │ ├── chownr@1.0.1 
│ │ ├── cmd-shim@2.0.2 
│ │ ├─┬ columnify@1.5.4 
│ │ │ └─┬ wcwidth@1.0.0 
│ │ │   └─┬ defaults@1.0.3 
│ │ │     └── clone@1.0.2 
│ │ ├─┬ config-chain@1.1.10 
│ │ │ └── proto-list@1.2.4 
│ │ ├─┬ dezalgo@1.0.3 
│ │ │ └── asap@2.0.3 
│ │ ├── editor@1.0.0 
│ │ ├── fs-vacuum@1.2.7 
│ │ ├─┬ fs-write-stream-atomic@1.0.8 
│ │ │ └── iferr@0.1.5 
│ │ ├── fstream@1.0.8 
│ │ ├─┬ fstream-npm@1.0.7 
│ │ │ └── fstream-ignore@1.0.3 
│ │ ├── github-url-from-git@1.4.0 
│ │ ├── github-url-from-username-repo@1.0.2 
│ │ ├─┬ glob@5.0.15 
│ │ │ └── path-is-absolute@1.0.0 
│ │ ├── graceful-fs@4.1.3 
│ │ ├── hosted-git-info@2.1.4 
│ │ ├── imurmurhash@0.1.4 
│ │ ├── inflight@1.0.4 
│ │ ├── inherits@2.0.1 
│ │ ├── ini@1.3.4 
│ │ ├─┬ init-package-json@1.9.3 
│ │ │ ├─┬ glob@6.0.4 
│ │ │ │ └── path-is-absolute@1.0.0 
│ │ │ └── promzard@0.3.0 
│ │ ├── lockfile@1.0.1 
│ │ ├─┬ lru-cache@3.2.0 
│ │ │ └── pseudomap@1.0.1 
│ │ ├─┬ minimatch@3.0.0 
│ │ │ └─┬ brace-expansion@1.1.1 
│ │ │   ├── balanced-match@0.2.1 
│ │ │   └── concat-map@0.0.1 
│ │ ├─┬ mkdirp@0.5.1 
│ │ │ └── minimist@0.0.8 
│ │ ├─┬ node-gyp@3.3.0 
│ │ │ ├─┬ glob@4.5.3 
│ │ │ │ └─┬ minimatch@2.0.10 
│ │ │ │   └─┬ brace-expansion@1.1.3 
│ │ │ │     ├── balanced-match@0.3.0 
│ │ │ │     └── concat-map@0.0.1 
│ │ │ ├─┬ minimatch@1.0.0 
│ │ │ │ ├── lru-cache@2.7.3 
│ │ │ │ └── sigmund@1.0.1 
│ │ │ └─┬ path-array@1.0.1 
│ │ │   └─┬ array-index@1.0.0 
│ │ │     ├─┬ debug@2.2.0 
│ │ │     │ └── ms@0.7.1 
│ │ │     └─┬ es6-symbol@3.0.2 
│ │ │       ├── d@0.1.1 
│ │ │       └─┬ es5-ext@0.10.11 
│ │ │         └── es6-iterator@2.0.0 
│ │ ├── nopt@3.0.6 
│ │ ├── normalize-git-url@3.0.1 
│ │ ├─┬ normalize-package-data@2.3.5 
│ │ │ └─┬ is-builtin-module@1.0.0 
│ │ │   └── builtin-modules@1.1.0 
│ │ ├── npm-cache-filename@1.0.2 
│ │ ├── npm-install-checks@1.0.7 
│ │ ├── npm-package-arg@4.1.0 
│ │ ├─┬ npm-registry-client@7.0.9 
│ │ │ ├─┬ concat-stream@1.5.1 
│ │ │ │ ├─┬ readable-stream@2.0.4 
│ │ │ │ │ ├── core-util-is@1.0.2 
│ │ │ │ │ ├── isarray@0.0.1 
│ │ │ │ │ ├── process-nextick-args@1.0.6 
│ │ │ │ │ ├── string_decoder@0.10.31 
│ │ │ │ │ └── util-deprecate@1.0.2 
│ │ │ │ └── typedarray@0.0.6 
│ │ │ └── retry@0.8.0 
│ │ ├── npm-user-validate@0.1.2 
│ │ ├─┬ npmlog@2.0.2 
│ │ │ ├─┬ are-we-there-yet@1.0.6 
│ │ │ │ └── delegates@1.0.0 
│ │ │ └─┬ gauge@1.2.5 
│ │ │   ├── has-unicode@2.0.0 
│ │ │   ├─┬ lodash.pad@3.2.2 
│ │ │   │ └─┬ lodash.repeat@3.2.0 
│ │ │   │   └── lodash._root@3.0.1 
│ │ │   ├─┬ lodash.padleft@3.1.1 
│ │ │   │ ├── lodash._basetostring@3.0.1 
│ │ │   │ └── lodash._createpadding@3.6.1 
│ │ │   └── lodash.padright@3.1.1 
│ │ ├── once@1.3.3 
│ │ ├── opener@1.4.1 
│ │ ├─┬ osenv@0.1.3 
│ │ │ ├── os-homedir@1.0.0 
│ │ │ └── os-tmpdir@1.0.1 
│ │ ├── path-is-inside@1.0.1 
│ │ ├─┬ read@1.0.7 
│ │ │ └── mute-stream@0.0.5 
│ │ ├─┬ read-installed@4.0.3 
│ │ │ ├── debuglog@1.0.1 
│ │ │ ├── readdir-scoped-modules@1.0.2 
│ │ │ └── util-extend@1.0.1 
│ │ ├─┬ read-package-json@2.0.3 
│ │ │ ├─┬ glob@6.0.4 
│ │ │ │ └── path-is-absolute@1.0.0 
│ │ │ └─┬ json-parse-helpfulerror@1.0.3 
│ │ │   └── jju@1.2.1 
│ │ ├─┬ readable-stream@1.1.13 
│ │ │ ├── core-util-is@1.0.1 
│ │ │ ├── isarray@0.0.1 
│ │ │ └── string_decoder@0.10.31 
│ │ ├── realize-package-specifier@3.0.1 
│ │ ├─┬ request@2.69.0 
│ │ │ ├── aws-sign2@0.6.0 
│ │ │ ├─┬ aws4@1.2.1 
│ │ │ │ └── lru-cache@2.7.3 
│ │ │ ├─┬ bl@1.0.2 
│ │ │ │ └─┬ readable-stream@2.0.5 
│ │ │ │   ├── core-util-is@1.0.2 
│ │ │ │   ├── isarray@0.0.1 
│ │ │ │   ├── process-nextick-args@1.0.6 
│ │ │ │   ├── string_decoder@0.10.31 
│ │ │ │   └── util-deprecate@1.0.2 
│ │ │ ├── caseless@0.11.0 
│ │ │ ├─┬ combined-stream@1.0.5 
│ │ │ │ └── delayed-stream@1.0.0 
│ │ │ ├── extend@3.0.0 
│ │ │ ├── forever-agent@0.6.1 
│ │ │ ├─┬ form-data@1.0.0-rc3 
│ │ │ │ └── async@1.5.2 
│ │ │ ├─┬ har-validator@2.0.6 
│ │ │ │ ├─┬ chalk@1.1.1 
│ │ │ │ │ ├── ansi-styles@2.1.0 
│ │ │ │ │ ├── escape-string-regexp@1.0.4 
│ │ │ │ │ ├── has-ansi@2.0.0 
│ │ │ │ │ └── supports-color@2.0.0 
│ │ │ │ ├─┬ commander@2.9.0 
│ │ │ │ │ └── graceful-readlink@1.0.1 
│ │ │ │ ├─┬ is-my-json-valid@2.12.4 
│ │ │ │ │ ├── generate-function@2.0.0 
│ │ │ │ │ ├─┬ generate-object-property@1.2.0 
│ │ │ │ │ │ └── is-property@1.0.2 
│ │ │ │ │ ├── jsonpointer@2.0.0 
│ │ │ │ │ └── xtend@4.0.1 
│ │ │ │ └─┬ pinkie-promise@2.0.0 
│ │ │ │   └── pinkie@2.0.4 
│ │ │ ├─┬ hawk@3.1.3 
│ │ │ │ ├── boom@2.10.1 
│ │ │ │ ├── cryptiles@2.0.5 
│ │ │ │ ├── hoek@2.16.3 
│ │ │ │ └── sntp@1.0.9 
│ │ │ ├─┬ http-signature@1.1.1 
│ │ │ │ ├── assert-plus@0.2.0 
│ │ │ │ ├─┬ jsprim@1.2.2 
│ │ │ │ │ ├── extsprintf@1.0.2 
│ │ │ │ │ ├── json-schema@0.2.2 
│ │ │ │ │ └── verror@1.3.6 
│ │ │ │ └─┬ sshpk@1.7.3 
│ │ │ │   ├── asn1@0.2.3 
│ │ │ │   ├── dashdash@1.12.2 
│ │ │ │   ├── ecc-jsbn@0.1.1 
│ │ │ │   ├── jodid25519@1.0.2 
│ │ │ │   ├── jsbn@0.1.0 
│ │ │ │   └── tweetnacl@0.13.3 
│ │ │ ├── is-typedarray@1.0.0 
│ │ │ ├── isstream@0.1.2 
│ │ │ ├── json-stringify-safe@5.0.1 
│ │ │ ├─┬ mime-types@2.1.9 
│ │ │ │ └── mime-db@1.21.0 
│ │ │ ├── node-uuid@1.4.7 
│ │ │ ├── oauth-sign@0.8.1 
│ │ │ ├── qs@6.0.2 
│ │ │ ├── stringstream@0.0.5 
│ │ │ ├── tough-cookie@2.2.1 
│ │ │ └── tunnel-agent@0.4.2 
│ │ ├── retry@0.9.0 
│ │ ├─┬ rimraf@2.5.2 
│ │ │ └─┬ glob@7.0.0 
│ │ │   └── path-is-absolute@1.0.0 
│ │ ├── semver@5.1.0 
│ │ ├─┬ sha@2.0.1 
│ │ │ └─┬ readable-stream@2.0.2 
│ │ │   ├── core-util-is@1.0.1 
│ │ │   ├── isarray@0.0.1 
│ │ │   ├── process-nextick-args@1.0.3 
│ │ │   ├── string_decoder@0.10.31 
│ │ │   └── util-deprecate@1.0.1 
│ │ ├── slide@1.1.6 
│ │ ├── sorted-object@1.0.0 
│ │ ├── spdx-license-ids@1.2.0 
│ │ ├── strip-ansi@3.0.0 
│ │ ├── tar@2.2.1 
│ │ ├── text-table@0.2.0 
│ │ ├── uid-number@0.0.6 
│ │ ├── umask@1.1.0 
│ │ ├─┬ validate-npm-package-license@3.0.1 
│ │ │ ├── spdx-correct@1.0.2 
│ │ │ └─┬ spdx-expression-parse@1.0.2 
│ │ │   └── spdx-exceptions@1.0.4 
│ │ ├─┬ validate-npm-package-name@2.2.2 
│ │ │ └── builtins@0.0.7 
│ │ ├─┬ which@1.2.4 
│ │ │ ├─┬ is-absolute@0.1.7 
│ │ │ │ └── is-relative@0.1.3 
│ │ │ └── isexe@1.1.1 
│ │ ├── wrappy@1.0.1 
│ │ └── write-file-atomic@1.1.4 
│ ├── pleasant-progress@1.1.0 
│ ├─┬ portfinder@0.4.0 
│ │ └── async@0.9.0 
│ ├── promise-map-series@0.2.2 
│ ├─┬ quick-temp@0.1.5 
│ │ ├── mktemp@0.3.5 
│ │ ├── rimraf@2.2.8 
│ │ └── underscore.string@2.3.3 
│ ├─┬ readline2@0.1.1 
│ │ └─┬ strip-ansi@2.0.1 
│ │   └── ansi-regex@1.1.1 
│ ├── resolve@1.1.7 
│ ├─┬ rimraf@2.5.2 
│ │ └── glob@7.0.3 
│ ├─┬ sane@1.3.3 
│ │ ├── exec-sh@0.2.0 
│ │ ├─┬ fb-watchman@1.9.0 
│ │ │ └─┬ bser@1.0.2 
│ │ │   └── node-int64@0.4.0 
│ │ ├─┬ minimatch@0.2.14 
│ │ │ ├── lru-cache@2.7.3 
│ │ │ └── sigmund@1.0.1 
│ │ ├── minimist@1.2.0 
│ │ ├─┬ walker@1.0.7 
│ │ │ └─┬ makeerror@1.0.11 
│ │ │   └── tmpl@1.0.4 
│ │ └── watch@0.10.0 
│ ├── semver@5.1.0 
│ ├── silent-error@1.0.0 
│ ├── symlink-or-copy@1.0.1 
│ ├─┬ temp@0.8.3 
│ │ └── rimraf@2.2.8 
│ ├─┬ testem@1.4.3 
│ │ ├── async@1.5.2 
│ │ ├─┬ backbone@1.3.1 
│ │ │ └── underscore@1.8.3 
│ │ ├── charm@1.0.0 
│ │ ├─┬ consolidate@0.14.0 
│ │ │ └── bluebird@3.3.3 
│ │ ├─┬ cross-spawn-async@2.1.9 
│ │ │ ├─┬ lru-cache@4.0.0 
│ │ │ │ ├── pseudomap@1.0.2 
│ │ │ │ └── yallist@2.0.0 
│ │ │ └─┬ which@1.2.4 
│ │ │   ├─┬ is-absolute@0.1.7 
│ │ │   │ └── is-relative@0.1.3 
│ │ │   └── isexe@1.1.2 
│ │ ├── did_it_work@0.0.6 
│ │ ├─┬ fileset@0.2.1 
│ │ │ └── minimatch@2.0.10 
│ │ ├─┬ fireworm@0.7.0 
│ │ │ ├── async@0.2.10 
│ │ │ ├─┬ is-type@0.0.1 
│ │ │ │ └── core-util-is@1.0.2 
│ │ │ ├── lodash.debounce@3.1.1 
│ │ │ ├─┬ lodash.flatten@3.0.2 
│ │ │ │ └── lodash._baseflatten@3.1.4 
│ │ │ └── minimatch@0.2.14 
│ │ ├─┬ js-yaml@3.5.3 
│ │ │ └── esprima@2.7.2 
│ │ ├── lodash@4.6.1 
│ │ ├── mustache@2.2.1 
│ │ ├─┬ node-notifier@4.5.0 
│ │ │ ├─┬ cli-usage@0.1.2 
│ │ │ │ ├── marked@0.3.5 
│ │ │ │ ├─┬ marked-terminal@1.6.1 
│ │ │ │ │ └── node-emoji@0.1.0 
│ │ │ │ └── minimist@0.2.0 
│ │ │ ├── growly@1.2.0 
│ │ │ ├─┬ lodash.clonedeep@3.0.2 
│ │ │ │ └── lodash._baseclone@3.3.0 
│ │ │ ├── minimist@1.2.0 
│ │ │ ├── semver@5.1.0 
│ │ │ └── shellwords@0.1.0 
│ │ ├─┬ npmlog@2.0.2 
│ │ │ ├── ansi@0.3.1 
│ │ │ ├─┬ are-we-there-yet@1.0.6 
│ │ │ │ └── delegates@1.0.0 
│ │ │ └─┬ gauge@1.2.7 
│ │ │   ├── has-unicode@2.0.0 
│ │ │   ├─┬ lodash.pad@4.1.0 
│ │ │   │ ├── lodash.repeat@4.0.0 
│ │ │   │ └── lodash.tostring@4.1.2 
│ │ │   ├── lodash.padend@4.2.0 
│ │ │   └── lodash.padstart@4.2.0 
│ │ ├── printf@0.2.3 
│ │ ├─┬ socket.io@1.4.5 
│ │ │ ├─┬ engine.io@1.6.8 
│ │ │ │ ├─┬ accepts@1.1.4 
│ │ │ │ │ ├─┬ mime-types@2.0.14 
│ │ │ │ │ │ └── mime-db@1.12.0 
│ │ │ │ │ └── negotiator@0.4.9 
│ │ │ │ ├── base64id@0.1.0 
│ │ │ │ ├─┬ engine.io-parser@1.2.4 
│ │ │ │ │ ├── after@0.8.1 
│ │ │ │ │ ├── arraybuffer.slice@0.0.6 
│ │ │ │ │ ├── base64-arraybuffer@0.1.2 
│ │ │ │ │ ├── blob@0.0.4 
│ │ │ │ │ ├── has-binary@0.1.6 
│ │ │ │ │ └── utf8@2.1.0 
│ │ │ │ └─┬ ws@1.0.1 
│ │ │ │   ├── options@0.0.6 
│ │ │ │   └── ultron@1.0.2 
│ │ │ ├─┬ has-binary@0.1.7 
│ │ │ │ └── isarray@0.0.1 
│ │ │ ├─┬ socket.io-adapter@0.4.0 
│ │ │ │ └─┬ socket.io-parser@2.2.2 
│ │ │ │   ├── debug@0.7.4 
│ │ │ │   └── json3@3.2.6 
│ │ │ ├─┬ socket.io-client@1.4.5 
│ │ │ │ ├── backo2@1.0.2 
│ │ │ │ ├── component-bind@1.0.0 
│ │ │ │ ├── component-emitter@1.2.0 
│ │ │ │ ├─┬ engine.io-client@1.6.8 
│ │ │ │ │ ├── component-inherit@0.0.3 
│ │ │ │ │ ├── has-cors@1.1.0 
│ │ │ │ │ ├── parsejson@0.0.1 
│ │ │ │ │ ├── parseqs@0.0.2 
│ │ │ │ │ ├── xmlhttprequest-ssl@1.5.1 
│ │ │ │ │ └── yeast@0.1.2 
│ │ │ │ ├── indexof@0.0.1 
│ │ │ │ ├── object-component@0.0.3 
│ │ │ │ ├─┬ parseuri@0.0.4 
│ │ │ │ │ └─┬ better-assert@1.0.2 
│ │ │ │ │   └── callsite@1.0.0 
│ │ │ │ └── to-array@0.1.4 
│ │ │ └─┬ socket.io-parser@2.2.6 
│ │ │   ├── benchmark@1.0.0 
│ │ │   ├── component-emitter@1.1.2 
│ │ │   └── json3@3.3.2 
│ │ ├── styled_string@0.0.1 
│ │ ├─┬ tap-parser@1.2.2 
│ │ │ ├── events-to-array@1.0.2 
│ │ │ └─┬ readable-stream@2.0.5 
│ │ │   ├── process-nextick-args@1.0.6 
│ │ │   ├── string_decoder@0.10.31 
│ │ │   └── util-deprecate@1.0.2 
│ │ └── xmldom@0.1.22 
│ ├── through@2.3.8 
│ ├─┬ tiny-lr@0.2.1 
│ │ ├─┬ body-parser@1.14.2 
│ │ │ ├── iconv-lite@0.4.13 
│ │ │ ├── qs@5.2.0 
│ │ │ └── raw-body@2.1.5 
│ │ ├─┬ faye-websocket@0.10.0 
│ │ │ └─┬ websocket-driver@0.6.4 
│ │ │   └── websocket-extensions@0.1.1 
│ │ ├── livereload-js@2.2.2 
│ │ └── qs@5.1.0 
│ ├─┬ tree-sync@1.1.0 
│ │ └── fs-tree-diff@0.4.4 
│ ├── walk-sync@0.2.6 
│ └─┬ yam@0.0.18 
│   ├─┬ fs-extra@0.16.5 
│   │ └── graceful-fs@3.0.8 
│   └─┬ lodash.merge@3.3.2 
│     ├── lodash.isplainobject@3.2.0 
│     └── lodash.keysin@3.0.8 
├─┬ ember-cli-app-version@1.0.0 
│ └── git-repo-version@0.3.0 
├─┬ ember-cli-babel@5.1.6 
│ ├── clone@1.0.2 
│ └── ember-cli-version-checker@1.1.6 
├─┬ ember-cli-dependency-checker@1.2.0 
│ ├─┬ chalk@0.5.1 
│ │ ├── ansi-styles@1.1.0 
│ │ ├─┬ has-ansi@0.1.0 
│ │ │ └── ansi-regex@0.2.1 
│ │ ├── strip-ansi@0.3.0 
│ │ └── supports-color@0.2.0 
│ ├── is-git-url@0.2.0 
│ └── semver@4.3.6 
├─┬ ember-cli-htmlbars@1.0.3 
│ ├─┬ broccoli-persistent-filter@1.1.8 
│ │ ├── async-disk-cache@1.0.3 
│ │ ├── hash-for-dep@1.0.2 
│ │ └─┬ md5-hex@1.2.1 
│ │   └── md5-o-matic@0.1.1 
│ └─┬ strip-bom@2.0.0 
│   └── is-utf8@0.2.1 
├─┬ ember-cli-htmlbars-inline-precompile@0.3.1 
│ └── babel-plugin-htmlbars-inline-precompile@0.0.5 
├── ember-cli-inject-live-reload@1.4.0 
├─┬ ember-cli-qunit@1.3.0 
│ ├─┬ broccoli-jshint@1.1.2 
│ │ ├─┬ chalk@0.4.0 
│ │ │ ├── ansi-styles@1.0.0 
│ │ │ └── strip-ansi@0.1.1 
│ │ ├── findup-sync@0.3.0 
│ │ ├─┬ jshint@2.9.1 
│ │ │ ├─┬ cli@0.6.6 
│ │ │ │ └─┬ glob@3.2.11 
│ │ │ │   └── minimatch@0.3.0 
│ │ │ ├─┬ console-browserify@1.1.0 
│ │ │ │ └── date-now@0.1.4 
│ │ │ ├─┬ htmlparser2@3.8.3 
│ │ │ │ ├── domelementtype@1.3.0 
│ │ │ │ ├── domhandler@2.3.0 
│ │ │ │ ├─┬ domutils@1.5.1 
│ │ │ │ │ └─┬ dom-serializer@0.1.0 
│ │ │ │ │   └── domelementtype@1.1.3 
│ │ │ │ ├── entities@1.0.0 
│ │ │ │ └── readable-stream@1.1.13 
│ │ │ ├── lodash@3.7.0 
│ │ │ ├── minimatch@2.0.10 
│ │ │ ├── shelljs@0.3.0 
│ │ │ └── strip-json-comments@1.0.4 
│ │ └── mkdirp@0.4.2 
│ ├─┬ ember-qunit@0.4.20 
│ │ └─┬ ember-test-helpers@0.5.22 
│ │   └── klassy@0.1.3 
│ └── qunitjs@1.22.0 
├─┬ ember-cli-release@0.2.8 
│ ├─┬ git-tools@0.1.4 
│ │ └── spawnback@1.0.0 
│ ├── make-array@0.1.2 
│ ├── merge@1.2.0 
│ └─┬ moment-timezone@0.3.1 
│   └── moment@2.11.2 
├─┬ ember-cli-sri@2.1.0 
│ └─┬ broccoli-sri-hash@2.1.0 
│   ├── rsvp@3.2.1 
│   └── sri-toolbox@0.2.0 
├─┬ ember-cli-uglify@1.2.0 
│ └─┬ broccoli-uglify-sourcemap@1.2.0 
│   ├── broccoli-writer@0.1.1 
│   ├── source-map-url@0.3.0 
│   ├─┬ uglify-js@2.5.0 
│   │ ├── async@0.2.10 
│   │ ├── uglify-to-browserify@1.0.2 
│   │ └─┬ yargs@3.5.4 
│   │   ├── camelcase@1.2.1 
│   │   ├── decamelize@1.2.0 
│   │   └── window-size@0.1.0 
│   └── walk-sync@0.1.3 
├─┬ ember-data@2.4.0 
│ ├── babel-plugin-feature-flags@0.2.0 
│ ├── babel-plugin-filter-imports@0.2.0 
│ ├── broccoli-file-creator@1.1.0 
│ ├── ember-inflector@1.9.4 
│ ├── npm-git-info@1.0.2 
│ └── semver@5.1.0 
├── ember-disable-proxy-controllers@1.0.1 
├── ember-export-application-global@1.0.5 
├── ember-load-initializers@0.5.1 
├── ember-resolver@2.0.3 
└── loader.js@4.0.1

#3

Related issue: https://github.com/ember-cli/ember-cli/issues/5082