No exemplo da aula, foi corrigida uma vulnerabilidade de uma dependência do projeto, entretanto, boa parte das demais foram encontradas nas subdependências, nesse caso, como pode ser atualizada uma lib que o projeto não usa diretamente?
No exemplo da aula, foi corrigida uma vulnerabilidade de uma dependência do projeto, entretanto, boa parte das demais foram encontradas nas subdependências, nesse caso, como pode ser atualizada uma lib que o projeto não usa diretamente?
Oii, Michel, tudo bem?
Sua pergunta é muito boa!
Atualizar as dependências ou subdependências é um modo importante para corrigir vulnerabilidades.
Além disso, forçar o uso de uma certa versão da subdependência pode também ajudar nessa questão. Por exemplo, no npm você pode usar o resolutions
no package.json
para especificar a versão exato de uma subdependência que você queira e ache mais segura.
Se outra dúvida surgir, estamos aqui.
Abraços!
Olá Maria, obrigado pelo retorno.
Contudo, as subdependências em questão, pelo menos no meu caso que é real, não estão listadas no package.json, mas sim no pnpm-lock.yml e a ferramenta que temos aponta uma série de subdependências com vulnerabilidade...
O que fazer nesse caso?
Oi, Michel! Perdão pela demora.
No Pnpm você pode, além de atualizar sempre que possível (com o pnpm update
), atualizar pelo nível de profundidade. Por exemplo, usando o comando pnpm up --depth 2
para o nível de profundidade 2 (ou seja, a dependência A, subdependência A.1, A.2, subdependência B1 etc).
Você também pode editar o pnpm-lock.yaml
diretamente para especificar versões seguras. Mas isso deve ser feito com cuidado, já que pode quebrar dependências ou o projeto.
Se outra dúvida surgir, estamos aqui.
Abraços!