इस प्रोजेक्ट के बारे में

pnpm-multi-versions एक उपयोगिता टूल है जिसे pnpm लॉकफाइल को स्कैन करने और किसी प्रोजेक्ट में कई संस्करणों में स्थापित निर्भरताओं की पहचान करने के लिए डिज़ाइन किया गया है। यह लचीले एकीकरण के लिए कमांड लाइन इंटरफेस (CLI) और JavaScript API दोनों प्रदान करता है। ### CLI उपयोग CLI चलाने से कई संस्करणों वाले पैकेजों की सूची आउटपुट होती है। उपयोगकर्ता `--dependents` फ्लैग का उपयोग करके एक ट्री-जैसा विज़ुअलाइज़ेशन प्रदर्शित कर सकते हैं जो दिखाता है कि कौन से विशिष्ट पैकेज डुप्लिकेट निर्भरता के प्रत्येक संस्करण पर निर्भर हैं। ### API उपयोग प्रोग्रामेटिक रूप से, टूल एक फ़ंक्शन प्रदान करता है जो पार्स की गई लॉकफाइल और कॉन्फ़िगरेशन विकल्प लेता है। मुख्य विकल्पों में शामिल हैं: - `ignoreMajor`: मुख्य संस्करण अंतर को अनदेखा करने के लिए बूलियन। - `dependents`: प्रत्येक संस्करण के लिए निर्भरकर्ताओं की गणना और मैप करने के लिए बूलियन। API तीन मुख्य डेटा संरचनाएँ लौटाता है: - `versionsMap`: एक Map जो पैकेज नामों को स्थापित संस्करणों के Set में मैप करता है। - `dependentsMap`: एक नेस्टेड Map जो दिखाता है कि कौन से पैकेज (विशिष्ट संस्करणों के साथ) लक्ष्य पैकेजों के प्रत्येक संस्करण पर निर्भर हैं। - `multipleVersions`: एक Set जिसमें उन सभी पैकेजों के नाम शामिल हैं जिनके कई संस्करण स्थापित हैं। यह डेवलपर्स को pnpm-प्रबंधित प्रोजेक्ट्स में डुप्लिकेट निर्भरता संस्करणों की पहचान करने में मदद करता है, जो अनुकूलन और सफाई प्रयासों में सहायता करता है।