عن المشروع

pnpm-multi-versions هي أداة مساعدة مصممة لفحص ملف قفل pnpm وتحديد التبعيات المثبتة بإصدارات متعددة داخل المشروع. توفر كلًا من واجهة سطر الأوامر (CLI) وواجهة برمجية بلغة جافاسكريبت للتكامل المرن. ### استخدام سطر الأوامر عند تشغيل سطر الأوامر، يتم إخراج قائمة بالحزم التي تحتوي على إصدارات متعددة مثبتة. يمكن للمستخدمين استخدام العلامة `--dependents` لعرض تمثيل شجري يوضح الحزم المحددة التي تعتمد على كل إصدار من التبعية المكررة. ### الاستخدام البرمجي برمجيًا، تكشف الأداة عن دالة تأخذ ملف قفل محللًا وخيارات التكوين. تشمل الخيارات الرئيسية: - `ignoreMajor`: قيمة منطقية لتجاهل اختلافات الإصدار الرئيسي. - `dependents`: قيمة منطقية لحساب ورسم خريطة التابعين لكل إصدار. تُرجع الواجهة البرمجية ثلاثة هياكل بيانات رئيسية: - `versionsMap`: خريطة تربط أسماء الحزم بمجموعة من الإصدارات المثبتة. - `dependentsMap`: خريطة متداخلة توضح الحزم (بإصداراتها المحددة) التي تعتمد على كل إصدار من الحزم المستهدفة. - `multipleVersions`: مجموعة تحتوي على أسماء جميع الحزم التي تحتوي على إصدارات متعددة مثبتة. يساعد هذا المطورين على تحديد إصدارات التبعيات المكررة في المشاريع المُدارة بواسطة pnpm، مما يساهم في جهود التحسين والتنظيف.