requirey

2.2.0 • Public • Published

npm version Build Status Windows Build Status

Logo

Intelligent multi-version dependency management for npm packages.

Install

npm install --save requirey

Usage

  • #### Initialize
const ry = require('requirey')(config, options);

config - object of module names mapped to arrays of supported versions
options - extra options to override default behaviors like strict

Default behavior is strict mode enabled which will always use config to determine which versions can be installed and required

Strict mode will ignore version overrides for require calls

eg:

{
  "lodash": ['1.0.0', '2.1.2'],
  ...
}
  • #### Install
ry.installAll();

or

ry.install('lodash');
// or
ry.install('lodash', '1.0.0');
ry.install('lodash', '2.0.0');
  • #### Require
const requirer = new ry.Requirer(pkgJson);
 
requirer.require('lodash'); // ==> highest possible version supported
requirer.require('lodash@1.0.0'); // ==> version 1.0.0
requirer.require('lodash', '^2.0.0'); // ==> highest version in the range between 2.0.0 and 3.0.0
requirer.require('lodash', '~2.2.0'); // ==> highest version in the range between 2.2.0 to 2.3.0
requirer.require('lodash/fp/curry'); // ==> require sub-paths from auto-detected version
requirer.require('lodash@3.0.0/array/chunk'); // ==> require sub-paths from particular version

The require method also takes an optional third parameter:

force - boolean ==> Forces a require call for a particular version

requirer.require('lodash', '4.0.0', true);

Built Using

Package Sidebar

Install

npm i requirey

Weekly Downloads

1

Version

2.2.0

License

MIT

Last publish

Collaborators

  • debopamsengupta