1.1.4 • Published 10 years ago

pkgresolve v1.1.4

Weekly downloads
589
License
MIT
Repository
github
Last release
10 years ago

pkgresolve

Resolve a dependency from within the context of another package.

Build Status

Useful for hacks, monkeypatching or wrappers that require manipulation of the exact dependency that would be loaded by a package.

Installation

npm install --save pkgresolve

Example

var resolve = require('pkgresolve')

// Resolve 'through' from locally installed 'tape'
resolve('through').from('tape', function(err, pkgPath) {
  // pkgPath - path to through or null
})

// Resolve 'npmconf' from globally installed 'npm'
resolve('npmconf').fromGlobal('npm', function(err, pkgPath) {
  // pkgPath - path to npmconf or null
})

CLI

# Resolve 'through' from locally installed 'tape'
pkgresolve tape through

# Resolve 'npmconf' from globally installed 'npm'
pkgresolve --global npm npmconf

Why not require('parent/node_modules/child')?

Due to deduplication, child is not guaranteed to exist at that location. You don't even need to call npm dedupe for this to happen – npm will not install something that is already installed in the hierarchy. pkgresolve is a more robust method.

Use Responsibly.

This intentially breaks the encapsulation provided by node/npm's module system. Don't use this unless you have to.

See Also

License

MIT

1.1.4

10 years ago

1.1.3

12 years ago

1.1.2

12 years ago

1.1.1

12 years ago

1.1.0

12 years ago

1.0.0

12 years ago