Neighbour Problem Manager

    npm-install-version

    6.0.2 • Public • Published

    npm-install-version

    npm-version build-status dependencies dev-dependencies

    Installs node modules to versioned or custom directories.

    Very useful if you want to use multiple versions of the same package as top-level dependencies.

    CLI Usage

    Install globally: npm install npm-install-version -g

    Example Usage

    $ niv csjs@1.0.0
    # installs csjs@1.0.0 to node_modules/csjs@1.0.0/
     
    $ niv csjs@1.0.0 --destination csjs-v1
    # installs csjs@1.0.0 to node_modules/csjs-v1/
     
    $ niv scott113341/csjs#some-branch --overwrite
    # installs https://github.com/scott113341/csjs#some-branch to node_modules/scott113341-csjs#some-branch/
    # notice how the installation directory is sanitized (the "/" is replaced with a "-")
    # overwrites the previously installed version there, which is useful if I just updated "some-branch"

    Full Usage

    usage: niv <package> [options...]
     
    required:
     
      package
        the package to be installed
        gets passed directly to "npm install <package>"
     
    optional:
     
      --destination, -d
        the destination install directory inside node_modules/
        default: sanitized <package>
     
      --overwrite, -o
        overwrite if there is already a package at [destination]
        default: false
     
      --quiet, -q
        suppress informational output
        default: false
     
      --help, -h
        display this message

    Programmatic Usage

    Install locally: npm install npm-install-version --save-dev

    Basic Example

    Let's say we want to benchmark a few versions of csjs against each other:

    const niv = require('npm-install-version');
    const benchmark = require('./some-benchmark-function.js');
     
    niv.install('csjs@1.0.0');
    // installs csjs@1.0.0 to node_modules/csjs@1.0.0/
     
    niv.install('csjs@1.0.1');
    // installs csjs@1.0.1 to node_modules/csjs@1.0.1/
     
    const csjs_old = niv.require('csjs@1.0.0');
    const csjs_new = niv.require('csjs@1.0.1');
    // require the old and new versions of csjs
     
    benchmark([csjs_old, csjs_new], 'some-test-input');
    // run our fake benchmark function on the old and new versions of csjs

    Advanced Example

    const niv = require('npm-install-version');
     
    niv.install('csjs@1.0.0', { destination: 'some-dir' });
    // installs csjs@1.0.0 to node_modules/some-dir/
     
    niv.install('csjs@1.0.1', { destination: 'some-dir' });
    // doesn't do anything because node_modules/some-dir/ already exists
     
    niv.install('csjs@1.0.1', { destination: 'some-dir', overwrite: true });
    // installs csjs@1.0.1 to node_modules/some-dir/, overwriting the existing install

    Install

    npm i npm-install-version

    DownloadsWeekly Downloads

    4,988

    Version

    6.0.2

    License

    MIT

    Last publish

    Collaborators

    • scott113341