يشرح أمر bun why سبب تثبيت حزمة في مشروعك من خلال عرض سلسلة التبعيات التي أدت إلى تثبيتها.
الاستخدام
bash
bun why <package>المعاملات
<package>: اسم الحزمة المراد شرحها. يدعم أنماط glob مثل@org/*أو*-lodash.
الخيارات
--top: عرض تبعيات المستوى الأعلى فقط بدلاً من شجرة التبعيات الكاملة.--depth <number>: الحد الأقصى لعمق شجرة التبعيات المراد عرضها.
أمثلة
التحقق من سبب تثبيت حزمة محددة:
bash
bun why reacttxt
react@18.2.0
└─ my-app@1.0.0 (requires ^18.0.0)التحقق من سبب تثبيت جميع الحزم بنمط محدد:
bash
bun why "@types/*"txt
@types/react@18.2.15
└─ dev my-app@1.0.0 (requires ^18.0.0)
@types/react-dom@18.2.7
└─ dev my-app@1.0.0 (requires ^18.0.0)عرض تبعيات المستوى الأعلى فقط:
bash
bun why express --toptxt
express@4.18.2
└─ my-app@1.0.0 (requires ^4.18.2)الحد من عمق شجرة التبعيات:
bash
bun why express --depth 2txt
express@4.18.2
└─ express-pollyfill@1.20.1 (requires ^4.18.2)
└─ body-parser@1.20.1 (requires ^1.20.1)
└─ accepts@1.3.8 (requires ^1.3.8)
└─ (deeper dependencies hidden)فهم الإخراج
يعرض الإخراج:
- اسم الحزمة والإصدار الذي يتم الاستعلام عنه
- سلسلة التبعيات التي أدت إلى تثبيتها
- نوع التبعية (dev أو peer أو optional أو production)
- متطلب الإصدار المحدد في تبعيات كل حزمة
بالنسبة للتبعيات المتداخلة، يعرض الأمر شجرة التبعيات الكاملة افتراضيًا، مع المسافة البادئة التي تشير إلى تسلسل العلاقات.