debopamsengupta / requirey Goto Github PK
View Code? Open in Web Editor NEWIntelligent multi-version dependency management for npm packages
License: MIT License
Intelligent multi-version dependency management for npm packages
License: MIT License
Right now, it is possible to initialize requirey
with an empty config like
const ry = require('requirey')();
and install any module
ry.install('react') //will install react@latest
also, it's possible to force a require call to a version like
new ry.Requirer().require('react', 'latest', true) //using the {force} param
It might be a good idea to have a strict
mode where all installs and requires must follow the initial config
which becomes the single source of truth
For integrating requirey to https://github.com/opentable/oc we would need to ensure the tests run on windows too. For OC, we use appveyor, which is free for open source, and allows to run all the tests in a windows platform too. Would you be in favour of integrating something like that here too?
I think we would be interested about using this in https://github.com/opentable/oc but we would need to ensure we have a compatible license for it. We go MIT for all the oc related stuff, would MIT be good for you too here? I can do a PR for that if you want
The main reason I ask, is that I know npm by default, is able to perform a quicker operation during npm install if the dep is already installed.
Is requirey able to do the same?
The reason I ask, is I would like to use requirey for OC. I think the integration there will include a step, during the registry start, to install the deps, but I also think we'll develop a step to perform a install separately (as a post npm install step for your registry app) - so that the install step should just be quick and the registry able to start quicker (useful for when developing multiple instances with a docker container that already contains the installed dependencies).
We would like to use this module both for a config that supports for each module an array or a specific version (for both "classic" installs or "multi" installs).
Example:
const ry = require('requirey')({ lodash: '3.4.5' });
const ry2 = require('requirey')({ lodash: ['1.2.3', '4.5.6'] });
ry.installAll();
ry2.installAll();
const l3 = require('lodash');
const l1 = ry2.require('lodash@1');
const l4 = ry2.require('lodash@4');
If it's ok, we can make a PR
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.