Sobre a análise de dependência
Revisão de dependências ajuda você a entender as alterações de dependência e o impacto de segurança dessas alterações em cada pull request. Ele fornece uma visualização facilmente compreensível de mudanças de dependência, com um diff avançado na aba "Arquivos alterados" de uma solicitação de pull. A revisão de dependências informa você:
- Quais dependências foram adicionadas, removidas ou atualizadas, junto com as datas de lançamento
- Quantos projetos usam esses componentes
- Dados de vulnerabilidade para essas dependências
A revisão de dependência ajuda você a encontrar dependências vulneráveis antes que elas cheguem à produção. Consulte Análise de dependência.
Você pode usar o ação de revisão de dependência para ajudar a aplicar revisões de dependências em pull requests no seu repositório. O ação de revisão de dependência verifica as solicitações de pull em busca de alterações de dependência e gera um erro quando novas dependências têm vulnerabilidades conhecidas. A ação tem o suporte de um ponto de extremidade de API que compara as dependências entre duas revisões e relata as diferenças.
Para obter mais informações sobre a ação e o ponto de extremidade da API, confira a documentação dependency-review-action e Pontos de extremidade da API REST para revisão de dependências.
Você pode configurar o ação de revisão de dependência para atender melhor às suas necessidades ao especificar o tipo de vulnerabilidade de dependência que deseja detectar. Consulte Configurando a ação de revisão de dependências.
Revisar as dependências em um pull request
-
Abaixo do nome do repositório, clique em Pull requests.

-
Na lista de solicitações pull, clique na solicitação pull que você quer revisar.
-
Na pull request, clique em Files changed.

-
Se o pull request contiver muitos arquivos, use o menu suspenso Filtro de arquivo para colapsar todos os arquivos que não registram dependências. Isso facilita o foco da revisão nas alterações de dependência.

Observação
As diferenciações ricas de revisão de dependência não estão disponíveis para arquivos confirmados de JavaScript estáticos, como jquery.js.
-
Para exibir a análise de dependências, clique em à direita do cabeçalho de um manifesto ou arquivo de bloqueio.

-
Verifique as dependências listadas na revisão sobre dependências.

Quaisquer dependências adicionadas ou alteradas com vulnerabilidades são listadas primeiro, ordenadas por gravidade e, posteriormente, pelo nome da dependência. Isso significa que as dependências de severidade mais elevada estão sempre no topo de uma análise de dependências. Outras dependências estão listadas em ordem alfabética pelo nome das dependências.
O ícone ao lado de cada dependência indica se a dependência foi adicionada (), atualizada () ou removida () nessa solicitação de pull.
Outras informações incluem:
- A versão ou intervalo de versão da dependência nova, atualizada ou excluída.
- Para uma versão específica de uma dependência:
- A idade daquela versão da dependência.
- O número de projetos que dependem desse software. Essa informação é tirada do gráfico de dependências. Verificar o número de dependentes pode ajudar você a evitar adicionar acidentalmente a dependência incorreta.
- A licença usada por esta dependência, se estas informações estiverem disponíveis. Isso é útil se você quiser evitar o uso de código com determinadas licenças em seu projeto.
Quando uma dependência tem uma vulnerabilidade conhecida, a mensagem de aviso inclui:
- Uma breve descrição da vulnerabilidade.
- Um número de identificação CVE (Vulnerabilidades e Exposições Comuns) ou GitHub Security Advisories (GHSA). Você pode clicar nesse ID para saber mais sobre a vulnerabilidade.
- A gravidade da vulnerabilidade.
- A versão da dependência na qual a vulnerabilidade foi corrigida. Se você estiver revisando um pull request para alguém, você pode pedir ao contribuidor para atualizar a dependência para a versão corrigida ou para uma versão posterior.
-
É possível que você também queira revisar o diff da fonte, porque pode haver alterações no manifesto ou arquivo de bloqueio que não mudam as dependências, ou pode haver dependências que GitHub não pode analisar e que, consequentemente, não aparecem na revisão de dependências.
Para voltar à exibição de comparação de origem, clique no botão .
