على عكس عملاء 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 packageInvalidExe
للسماح لـ 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راجع الوثائق > مدير الحزم > التبعيات الموثوقة للحصول على الوثائق الكاملة للتبعيات الموثوقة.