Skip to content

Ao contrário de outros clientes npm, o Bun não executa scripts de ciclo de vida arbitrários para dependências instaladas, como postinstall e builds node-gyp. Esses scripts representam um risco potencial de segurança, pois podem executar código arbitrário em sua máquina.

NOTE

O Bun inclui uma lista de permissões padrão de pacotes populares contendo scripts `postinstall` que são conhecidos como seguros. Você pode ver esta lista [aqui](https://github.com/oven-sh/bun/blob/main/src/install/default-trusted-dependencies.txt).

Se você estiver vendo um dos seguintes erros, provavelmente está tentando usar um pacote que usa postinstall para funcionar corretamente:

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

Para permitir que o Bun execute scripts de ciclo de vida para um pacote específico, adicione o pacote a trustedDependencies no seu arquivo package.json. Você pode fazer isso automaticamente executando o comando bun pm trust <pkg>.

NOTE

Note que isso só permite scripts de ciclo de vida para o pacote específico listado em `trustedDependencies`, _não_ as dependências dessa dependência!
json
{
  "name": "my-app",
  "version": "1.0.0",
  "trustedDependencies": ["my-trusted-package"] 
}

Uma vez que isso é adicionado, execute uma nova instalação. O Bun irá reinstalar suas dependências e instalá-las corretamente

sh
rm -rf node_modules
rm bun.lock
bun install

Veja Docs > Package manager > Trusted dependencies para documentação completa de dependências confiáveis.

Bun by www.bunjs.com.cn edit