Skip to content

على عكس عملاء npm الآخرين، لا ينفذ Bun نصوص دورة حياة تعسفية للتبعيات المثبتة، مثل postinstall وعمليات بناء node-gyp. تمثل هذه النصوص خطرًا أمنيًا محتملًا، حيث يمكنها تنفيذ كود تعسفي على جهازك.

NOTE

يتضمن Bun قائمة سماح افتراضية للحزم الشائعة التي تحتوي على نصوص `postinstall` معروفة بأنها آمنة. يمكنك رؤية هذه القائمة [هنا](https://github.com/oven-sh/bun/blob/main/src/install/default-trusted-dependencies.txt).

إذا كنت ترى أحد الأخطاء التالية، فمن المحتمل أنك تحاول استخدام حزمة تستخدم postinstall للعمل بشكل صحيح:

  • error: could not determine executable to run for package
  • InvalidExe

للسماح لـ Bun بتنفيذ نصوص دورة الحياة لحزمة معينة، أضف الحزمة إلى trustedDependencies في ملف package.json الخاص بك. يمكنك القيام بذلك تلقائيًا عن طريق تشغيل الأمر bun pm trust <pkg>.

NOTE

لاحظ أن هذا يسمح فقط بنصوص دورة الحياة للحزمة المحددة المدرجة في `trustedDependencies`، _ليس_ تبعيات تلك التبعية!
json
{
  "name": "my-app",
  "version": "1.0.0",
  "trustedDependencies": ["my-trusted-package"] 
}

بمجرد إضافة هذا، قم بتشغيل تثبيت جديد. سيعيد Bun تثبيت تبعياتك وتثبيتها بشكل صحيح

sh
rm -rf node_modules
rm bun.lock
bun install

راجع الوثائق > مدير الحزم > التبعيات الموثوقة للحصول على الوثائق الكاملة للتبعيات الموثوقة.

Bun بواسطة www.bunjs.com.cn تحرير