मैं करने के लिए इसी तरह की एक सवाल है इस है, लेकिन से भिन्न।
मैं अपने ऐप के उपयोगकर्ता के लिए इसे स्थापित करना चाहूंगा कि जिस तरह से वह इसका उपयोग करना चाहता है, उसके लिए जो कुछ निर्भरताएं आवश्यक हैं। इसलिए, उदाहरण के लिए, यदि वे MongoDB के लिए बने रहना चाहते हैं, तो केवल Mongo- संबंधित लाइब्रेरी स्थापित की जाएंगी, लेकिन यदि वे Redis को जारी रखना चाहते हैं, तो केवल Redis- संबंधित लाइब्रेरी स्थापित की जाएंगी। मैं उन्हें उन पुस्तकालयों को डाउनलोड और इंस्टॉल नहीं करना चाहता, जिनका वे उपयोग नहीं कर रहे हैं।
मुझे पता है कि मैं विकास के उद्देश्यों के लिए ऐसा कर सकता हूं devDependencies, लेकिन यह उससे कहीं आगे जाता है। जैसा कि ऊपर दिए गए प्रश्न के उत्तर में कहा गया है, यह पायथन setuptools extras_requireऔर क्लूजुर की leiningenप्रोफाइल से अधिक निकटता से संबंधित है । Npm में ऐसा कुछ भी? मुझे वास्तव में ऐसा लगता है कि निर्भरता को निर्दिष्ट करने के अधिक बहुमुखी तरीके का devDependenciesएक devप्रोफाइल होना चाहिए ।
package.jsonजो अन्य पैकेज प्रबंधकों में हल की गई है।
MyPackage-CoreMyPackage-Db-MongoMyPackage-Db-Redisआदि ... बहुत से लोग बोवर मॉड्यूल करते हैं जो कोणीयज का विस्तार करने के लिए होते हैं ।