다른 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 이 라이프사이클 스크립트를 실행하도록 허용하려면 package.json 파일의 trustedDependencies 에 패키지를 추가하세요. 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신뢰할 수 있는 의존성에 대한 전체 문서는 문서 > 패키지 관리자 > 신뢰할 수 있는 의존성 을 참조하세요.