Il mio modulo non ha dipendenza da solo, ma per eseguire test è necessario installare jasmine-node
module. Devo includere quel modulo come dipendenza?
La maggior parte dei sistemi di gestione dei pacchetti ha un modo speciale di specificare le dipendenze che sono necessarie solo per lo sviluppo. Python setuptools
ha extras_require
, Clojure's leiningen
ha profili e npm
ha devDependencies
: vedi documenti .
devDependencies è esattamente quello che stai cercando. Tuttavia, se questo è un pacchetto che ti serve solo occasionalmente, puoi usare qualcos'altro.
Il mio pacchetto npm è install-subset
, e può essere installato globalmente con npm install -g install-subset
In primo luogo, si creano whitelist e blacklist per i sottoinsiemi di installazione con nome nel pacchetto package.json in questo modo:
"subsets": {
"build": {
"whitelist": [
"babel-cli",
"dotenv"
]
},
"test": {
"blacklist": [
"eslint",
"lint-rules",
"prettier"
]
}
}
Quindi chiamalo con, ad esempio, install-subset test
Questo riscriverà temporaneamente il tuo pacchetto.json per non installare quei pacchetti nella blacklist, quindi lo ripristinerà, che a seconda dei pacchetti può far risparmiare molto tempo e larghezza di banda.
Leggi altre domande sui tag dependencies node.js