Ho una domanda simile a questa , ma non è la stessa cosa.
Vorrei che l'utente della mia app lo installasse con qualsiasi dipendenza sia necessaria per il modo in cui vorrebbe usarlo. Ad esempio, se vogliono persistere su MongoDB, verranno installate solo le librerie relative a Mongo, ma se vogliono persistere su Redis, verranno installate solo le librerie relative a Redis. Non voglio farli scaricare e installare librerie che non useranno.
So che posso farlo per scopi di sviluppo devDependencies
, ma questo va oltre. Come dice la risposta alla domanda sopra, questo è più strettamente correlato ai profili di Python setuptools
extras_require
e Clojure leiningen
. Qualcosa del genere in npm? Credo davvero che devDependencies
dovrebbe essere il dev
profilo di un modo più versatile di specificare le dipendenze.
package.json
risolta in altri gestori di pacchetti.
MyPackage-Core
MyPackage-Db-Mongo
MyPackage-Db-Redis
ecc ... in modo molto simile a come fanno le persone a formare moduli che hanno lo scopo di estendere angularjs .