他の 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
特定のパッケージのライフサイクルスクリプトの実行を許可するには、パッケージを 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信頼された依存関係の完全なドキュメントについては、ドキュメント > パッケージマネージャー > 信頼された依存関係 を参照してください。