Skip to content

Instantly share code, notes, and snippets.

@dfkaye
Last active August 29, 2015 13:57
Show Gist options
  • Save dfkaye/9901659 to your computer and use it in GitHub Desktop.
Save dfkaye/9901659 to your computer and use it in GitHub Desktop.
dependency bloat example

I installed serve which has the following dependencies

"dependencies": {
    "connect": "2.3.x"
  , "stylus": "*"
  , "jade": "*"
  , "less-middleware": "*"
  , "commander": "0.6.1"
}

Here's what happened

$ npm install -g serve
npm http GET https://registry.npmjs.org/serve
npm http 200 https://registry.npmjs.org/serve
npm http GET https://registry.npmjs.org/serve/-/serve-1.4.0.tgz
npm http 200 https://registry.npmjs.org/serve/-/serve-1.4.0.tgz
npm http GET https://registry.npmjs.org/jade
npm http GET https://registry.npmjs.org/less-middleware
npm http GET https://registry.npmjs.org/connect
npm http GET https://registry.npmjs.org/stylus
npm http GET https://registry.npmjs.org/commander/0.6.1
npm http 200 https://registry.npmjs.org/less-middleware
npm http 200 https://registry.npmjs.org/connect
npm http 200 https://registry.npmjs.org/commander/0.6.1
npm http GET https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
npm http GET https://registry.npmjs.org/less-middleware/-/less-middleware-0.2.1-beta.tgz
npm http GET https://registry.npmjs.org/connect/-/connect-2.3.9.tgz
npm http 200 https://registry.npmjs.org/jade
npm http GET https://registry.npmjs.org/jade/-/jade-1.3.0.tgz
npm http 200 https://registry.npmjs.org/commander/-/commander-0.6.1.tgz
npm http 200 https://registry.npmjs.org/stylus
npm http 200 https://registry.npmjs.org/connect/-/connect-2.3.9.tgz
npm http GET https://registry.npmjs.org/stylus/-/stylus-0.42.3.tgz
npm http 200 https://registry.npmjs.org/jade/-/jade-1.3.0.tgz
npm http 200 https://registry.npmjs.org/less-middleware/-/less-middleware-0.2.1-beta.tgz
npm http 200 https://registry.npmjs.org/stylus/-/stylus-0.42.3.tgz
npm http GET https://registry.npmjs.org/node.extend
npm http GET https://registry.npmjs.org/less
npm http GET https://registry.npmjs.org/mkdirp
npm http 200 https://registry.npmjs.org/node.extend
npm http 304 https://registry.npmjs.org/mkdirp
npm http GET https://registry.npmjs.org/node.extend/-/node.extend-1.0.10.tgz
npm http GET https://registry.npmjs.org/commander/2.1.0
npm http GET https://registry.npmjs.org/transformers/2.1.0
npm http GET https://registry.npmjs.org/character-parser/1.2.0
npm http GET https://registry.npmjs.org/monocle/1.1.51
npm http GET https://registry.npmjs.org/with
npm http GET https://registry.npmjs.org/constantinople
npm http 200 https://registry.npmjs.org/less
npm http GET https://registry.npmjs.org/less/-/less-1.6.3.tgz
npm http 200 https://registry.npmjs.org/node.extend/-/node.extend-1.0.10.tgz
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/css-parse
npm http GET https://registry.npmjs.org/sax
npm http GET https://registry.npmjs.org/glob
npm http 200 https://registry.npmjs.org/commander/2.1.0
npm http GET https://registry.npmjs.org/commander/-/commander-2.1.0.tgz
npm http GET https://registry.npmjs.org/crc/0.2.0
npm http GET https://registry.npmjs.org/cookie/0.0.4
npm http GET https://registry.npmjs.org/bytes/0.1.0
npm http GET https://registry.npmjs.org/send/0.0.3
npm http 200 https://registry.npmjs.org/transformers/2.1.0
npm http 200 https://registry.npmjs.org/monocle/1.1.51
npm http 200 https://registry.npmjs.org/character-parser/1.2.0
npm http 200 https://registry.npmjs.org/with
npm http GET https://registry.npmjs.org/fresh/0.1.0
npm http 200 https://registry.npmjs.org/debug
npm http 200 https://registry.npmjs.org/constantinople
npm http 200 https://registry.npmjs.org/commander/-/commander-2.1.0.tgz
npm http 304 https://registry.npmjs.org/glob
npm http 200 https://registry.npmjs.org/css-parse
npm http GET https://registry.npmjs.org/qs/0.4.2
npm http GET https://registry.npmjs.org/formidable/1.0.11
npm http GET https://registry.npmjs.org/transformers/-/transformers-2.1.0.tgz
npm http GET https://registry.npmjs.org/character-parser/-/character-parser-1.2.0.tgz
npm http GET https://registry.npmjs.org/debug/-/debug-0.8.0.tgz
npm http GET https://registry.npmjs.org/with/-/with-3.0.0.tgz
npm http GET https://registry.npmjs.org/constantinople/-/constantinople-2.0.0.tgz
npm http GET https://registry.npmjs.org/monocle/-/monocle-1.1.51.tgz
npm http 200 https://registry.npmjs.org/cookie/0.0.4
npm http GET https://registry.npmjs.org/cookie/-/cookie-0.0.4.tgz
npm http 200 https://registry.npmjs.org/crc/0.2.0
npm http GET https://registry.npmjs.org/crc/-/crc-0.2.0.tgz
npm http 200 https://registry.npmjs.org/bytes/0.1.0
npm http 200 https://registry.npmjs.org/send/0.0.3
npm http GET https://registry.npmjs.org/send/-/send-0.0.3.tgz
npm http GET https://registry.npmjs.org/bytes/-/bytes-0.1.0.tgz
npm http 200 https://registry.npmjs.org/transformers/-/transformers-2.1.0.tgz
npm http 200 https://registry.npmjs.org/debug/-/debug-0.8.0.tgz
npm http 200 https://registry.npmjs.org/fresh/0.1.0
npm http GET https://registry.npmjs.org/fresh/-/fresh-0.1.0.tgz
npm http 200 https://registry.npmjs.org/with/-/with-3.0.0.tgz
npm http 200 https://registry.npmjs.org/qs/0.4.2
npm http GET https://registry.npmjs.org/qs/-/qs-0.4.2.tgz
npm http 200 https://registry.npmjs.org/less/-/less-1.6.3.tgz
npm http 200 https://registry.npmjs.org/character-parser/-/character-parser-1.2.0.tgz
npm http 200 https://registry.npmjs.org/constantinople/-/constantinople-2.0.0.tgz
npm http 200 https://registry.npmjs.org/cookie/-/cookie-0.0.4.tgz
npm http 200 https://registry.npmjs.org/formidable/1.0.11
npm http GET https://registry.npmjs.org/formidable/-/formidable-1.0.11.tgz
npm http 200 https://registry.npmjs.org/send/-/send-0.0.3.tgz
npm http 200 https://registry.npmjs.org/bytes/-/bytes-0.1.0.tgz
npm http 200 https://registry.npmjs.org/crc/-/crc-0.2.0.tgz
npm http 200 https://registry.npmjs.org/monocle/-/monocle-1.1.51.tgz
npm http 200 https://registry.npmjs.org/sax
npm http 200 https://registry.npmjs.org/qs/-/qs-0.4.2.tgz
npm http 200 https://registry.npmjs.org/formidable/-/formidable-1.0.11.tgz
npm http 200 https://registry.npmjs.org/fresh/-/fresh-0.1.0.tgz
npm http GET https://registry.npmjs.org/readdirp
npm http GET https://registry.npmjs.org/promise
npm http GET https://registry.npmjs.org/css
npm http 200 https://registry.npmjs.org/promise
npm http GET https://registry.npmjs.org/promise/-/promise-2.0.0.tgz
npm http GET https://registry.npmjs.org/uglify-js
npm http GET https://registry.npmjs.org/uglify-js
npm http GET https://registry.npmjs.org/uglify-js
npm http 200 https://registry.npmjs.org/promise/-/promise-2.0.0.tgz
npm http 200 https://registry.npmjs.org/uglify-js
npm http 200 https://registry.npmjs.org/css
npm http 200 https://registry.npmjs.org/readdirp
npm http GET https://registry.npmjs.org/css/-/css-1.0.8.tgz
npm http GET https://registry.npmjs.org/readdirp/-/readdirp-0.2.5.tgz
npm http 200 https://registry.npmjs.org/uglify-js
npm http 200 https://registry.npmjs.org/uglify-js
npm http GET https://registry.npmjs.org/inherits
npm http 200 https://registry.npmjs.org/css/-/css-1.0.8.tgz
npm http 200 https://registry.npmjs.org/readdirp/-/readdirp-0.2.5.tgz
npm http 304 https://registry.npmjs.org/inherits
npm http GET https://registry.npmjs.org/minimatch
npm http 304 https://registry.npmjs.org/minimatch
npm http GET https://registry.npmjs.org/is-promise
npm http GET https://registry.npmjs.org/css-parse/1.0.4
npm http GET https://registry.npmjs.org/css-stringify/1.0.5
npm http 200 https://registry.npmjs.org/css-stringify/1.0.5
npm http GET https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz
npm http 200 https://registry.npmjs.org/css-parse/1.0.4
npm http GET https://registry.npmjs.org/css-parse/-/css-parse-1.0.4.tgz
npm http GET https://registry.npmjs.org/uglify-to-browserify
npm http 200 https://registry.npmjs.org/css-stringify/-/css-stringify-1.0.5.tgz
npm http GET https://registry.npmjs.org/async
npm http 200 https://registry.npmjs.org/css-parse/-/css-parse-1.0.4.tgz
npm http 200 https://registry.npmjs.org/uglify-to-browserify
npm http GET https://registry.npmjs.org/source-map
npm http 200 https://registry.npmjs.org/async
npm http 200 https://registry.npmjs.org/is-promise
npm http GET https://registry.npmjs.org/is-promise/-/is-promise-1.0.0.tgz
npm http 200 https://registry.npmjs.org/source-map
npm http 200 https://registry.npmjs.org/is-promise/-/is-promise-1.0.0.tgz
npm http GET https://registry.npmjs.org/mime/1.2.6
npm http GET https://registry.npmjs.org/lru-cache
npm http GET https://registry.npmjs.org/range-parser/0.0.4
npm http 200 https://registry.npmjs.org/mime/1.2.6
npm http GET https://registry.npmjs.org/sigmund
npm http GET https://registry.npmjs.org/mime/-/mime-1.2.6.tgz
npm http 304 https://registry.npmjs.org/lru-cache
npm http 200 https://registry.npmjs.org/range-parser/0.0.4
npm http GET https://registry.npmjs.org/range-parser/-/range-parser-0.0.4.tgz
npm http 304 https://registry.npmjs.org/sigmund
npm http 200 https://registry.npmjs.org/mime/-/mime-1.2.6.tgz
npm http 200 https://registry.npmjs.org/range-parser/-/range-parser-0.0.4.tgz
npm http GET https://registry.npmjs.org/optimist
npm http 200 https://registry.npmjs.org/optimist
npm http GET https://registry.npmjs.org/amdefine
npm http GET https://registry.npmjs.org/wordwrap
npm http 200 https://registry.npmjs.org/wordwrap
npm http 200 https://registry.npmjs.org/amdefine
npm http GET https://registry.npmjs.org/minimatch
npm http 304 https://registry.npmjs.org/minimatch
npm http GET https://registry.npmjs.org/lru-cache
npm http GET https://registry.npmjs.org/sigmund
npm http 304 https://registry.npmjs.org/lru-cache
npm http 304 https://registry.npmjs.org/sigmund
npm http GET https://registry.npmjs.org/is
npm http 200 https://registry.npmjs.org/is
npm http GET https://registry.npmjs.org/is/-/is-0.3.0.tgz
npm http 200 https://registry.npmjs.org/is/-/is-0.3.0.tgz
npm http GET https://registry.npmjs.org/clean-css
npm http GET https://registry.npmjs.org/source-map
npm http GET https://registry.npmjs.org/mime
npm http GET https://registry.npmjs.org/request
npm http 304 https://registry.npmjs.org/source-map
npm http 200 https://registry.npmjs.org/mime
npm http 200 https://registry.npmjs.org/request
npm http 200 https://registry.npmjs.org/clean-css
npm http GET https://registry.npmjs.org/request/-/request-2.34.0.tgz
npm http GET https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz
npm http 200 https://registry.npmjs.org/request/-/request-2.34.0.tgz
npm http 200 https://registry.npmjs.org/clean-css/-/clean-css-2.0.8.tgz
npm http GET https://registry.npmjs.org/tough-cookie
npm http GET https://registry.npmjs.org/aws-sign2
npm http GET https://registry.npmjs.org/tunnel-agent
npm http GET https://registry.npmjs.org/json-stringify-safe
npm http GET https://registry.npmjs.org/forever-agent
npm http GET https://registry.npmjs.org/oauth-sign
npm http GET https://registry.npmjs.org/hawk
npm http 200 https://registry.npmjs.org/aws-sign2
npm http GET https://registry.npmjs.org/http-signature
npm http GET https://registry.npmjs.org/form-data
npm http GET https://registry.npmjs.org/qs
npm http GET https://registry.npmjs.org/node-uuid
npm http 200 https://registry.npmjs.org/tunnel-agent
npm http GET https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz
npm http GET https://registry.npmjs.org/commander
npm http GET https://registry.npmjs.org/amdefine
npm http 200 https://registry.npmjs.org/oauth-sign
npm http 200 https://registry.npmjs.org/forever-agent
npm http 200 https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz
npm http GET https://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz
npm http 200 https://registry.npmjs.org/tough-cookie
npm http GET https://registry.npmjs.org/tough-cookie/-/tough-cookie-0.12.1.tgz
npm http 200 https://registry.npmjs.org/hawk
npm http 200 https://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz
npm http 200 https://registry.npmjs.org/json-stringify-safe
npm http 200 https://registry.npmjs.org/qs
npm http 200 https://registry.npmjs.org/form-data
npm http 200 https://registry.npmjs.org/tough-cookie/-/tough-cookie-0.12.1.tgz
npm http 304 https://registry.npmjs.org/amdefine
npm http 200 https://registry.npmjs.org/node-uuid
npm http GET https://registry.npmjs.org/form-data/-/form-data-0.1.2.tgz
npm http 200 https://registry.npmjs.org/commander
npm http 200 https://registry.npmjs.org/http-signature
npm http 200 https://registry.npmjs.org/form-data/-/form-data-0.1.2.tgz
npm http GET https://registry.npmjs.org/async
npm http GET https://registry.npmjs.org/combined-stream
npm http 304 https://registry.npmjs.org/async
npm http 200 https://registry.npmjs.org/combined-stream
npm http GET https://registry.npmjs.org/assert-plus/0.1.2
npm http 200 https://registry.npmjs.org/assert-plus/0.1.2
npm http GET https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.2.tgz
npm http GET https://registry.npmjs.org/boom
npm http GET https://registry.npmjs.org/sntp
npm http GET https://registry.npmjs.org/ctype/0.5.2
npm http GET https://registry.npmjs.org/asn1/0.1.11
npm http 200 https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.2.tgz
npm http GET https://registry.npmjs.org/hoek
npm http GET https://registry.npmjs.org/punycode
npm http 200 https://registry.npmjs.org/sntp
npm http 200 https://registry.npmjs.org/asn1/0.1.11
npm http 200 https://registry.npmjs.org/ctype/0.5.2
npm http GET https://registry.npmjs.org/cryptiles
npm http 200 https://registry.npmjs.org/boom
npm http GET https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz
npm http GET https://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz
npm http 200 https://registry.npmjs.org/hoek
npm http 200 https://registry.npmjs.org/cryptiles
npm http 200 https://registry.npmjs.org/punycode
npm http GET https://registry.npmjs.org/punycode/-/punycode-1.2.4.tgz
npm http 200 https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz
npm http 200 https://registry.npmjs.org/ctype/-/ctype-0.5.2.tgz
npm http 200 https://registry.npmjs.org/punycode/-/punycode-1.2.4.tgz
npm http GET https://registry.npmjs.org/delayed-stream/0.0.5
npm http 200 https://registry.npmjs.org/delayed-stream/0.0.5
npm http GET https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz
npm http 200 https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment