Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Sobre as atualizações da versão do Dependabot

Você pode usar o Dependabot para manter os pacotes que usa atualizados para as versões mais recentes.

Sobre o Atualizações de versão do Dependabot

O Dependabot facilita a manutenção de suas dependências. Você pode usá-lo para garantir que seu repositório se mantenha atualizado automaticamente com as versões mais recentes dos pacotes e aplicações do qual ele depende.

Você habilita o Atualizações de versão do Dependabot verificando um arquivo de configuração no seu repositório. O arquivo de configuração especifica a localização do manifesto ou de outros arquivos de definição de pacote, armazenados no seu repositório. O Dependabot usa essas informações para verificar pacotes e aplicativos desatualizados. Dependabot determina se há uma nova versão de uma dependência observando a versão semântica (semver) da dependência para decidir se deve atualizar para essa versão. Para certos gerentes de pacote, Atualizações de versão do Dependabot também é compatível com armazenamento. Dependências de vendor (ou armazenadas) são dependências registradas em um diretório específico em um repositório, em vez de referenciadas em um manifesto. Dependências de vendor estão disponíveis no tempo de criação, ainda que os servidores de pacote estejam indisponíveis. Atualizações de versão do Dependabot pode ser configurado para verificar as dependências de vendor para novas versões e atualizá-las, se necessário.

Quando Dependabot identifica uma dependência desatualizada, ele cria uma pull request para atualizar o manifesto para a última versão da dependência. Para dependências de vendor, Dependabot levanta um pull request para substituir diretamente a dependência desatualizada pela nova versão. Você verifica se os seus testes passam, revisa o changelog e lança observações incluídas no resumo do pull request e, em seguida, faz a mesclagem. Para obter detalhes, consulte "Habilitando e desabilitando atualizações da versão."

Se você habilitar atualizações de segurança, Dependabot também promove pull requests para atualizar dependências vulneráveis. Para obter mais informações, consulte "Sobre Atualizações de segurança do Dependabot."

When Dependabot raises pull requests, these pull requests could be for security or version updates:

  • Atualizações de segurança do Dependabot are automated pull requests that help you update dependencies with known vulnerabilities.
  • Atualizações de versão do Dependabot are automated pull requests that keep your dependencies updated, even when they don’t have any vulnerabilities. To check the status of version updates, navigate to the Insights tab of your repository, then Dependency Graph, and Dependabot.

Dependabot e todos os recursos relacionados estão cobertos pelos Termos de Serviço de GitHub.

Frequência de Dependabot pull requests

Você especifica com que frequência verifica cada ecossistema para novas versões no arquivo de configuração: diariamente, semanalmente ou mensalmente.

Quando você habilitar atualizações de versão pela primeira vez, você pode ter muitas dependências que estão desatualizadas e algumas podem ser muitas versões por trás da versão mais recente. O Dependabot verifica as dependências desatualizadas assim que estiver habilitado. Você pode ver novas pull requests para atualizações de versão dentro de alguns minutos após adicionar o arquivo de configuração, dependendo do número de arquivos de manifesto para os quais você configura as atualizações. Dependabot will also run an update on subsequent changes to the configuration file.

Dependabot may also create pull requests when you change a manifest file after an update has failed. This is because changes to a manifest, such as removing the dependency that caused the update to fail, may cause the newly triggered update to succeed.

Para manter os pull requests gerenciáveis e fáceis de revisar, o Dependabot gera um máximo de cinco pull requests para começar a criar dependências até a versão mais recente. If you merge some of these first pull requests before the next scheduled update, remaining pull requests will be opened on the next update, up to that maximum. You can change the maximum number of open pull requests by setting the open-pull-requests-limit configuration option.

Se tiver habilitado atualizações de segurança, às vezes você verá atualizações de segurança extras de pull requests. Elas são acionadas por um alerta de Dependabot para uma dependência de seu branch padrão. Dependabot gera automaticamente um pull request para atualizar a dependência vulnerável.

Repositórios e ecossistemas suportados

É possível configurar atualizações de versão para repositórios que contenham um manifesto de dependência ou arquivo de bloqueio para um dos gerentes de pacotes suportados. Para alguns gerenciadores de pacotes, você também pode configurar o armazenamento para dependências. Para obter mais informações, consulte "Opções de configuração para atualizações de dependências".

Ao executar atualizações de segurança ou versão, alguns ecossistemas devem ser capazes de resolver todas as dependências de sua fonte para verificar se as atualizações foram bem-sucedidas. Se o seu manifesto ou arquivos de bloqueio contiverem dependências privadas, Dependabot deverá ser capaz de acessar o local em que essas dependências estão hospedadas. Os proprietários da organização podem conceder a Dependabot acesso a repositórios privados que contêm dependências para um projeto dentro da mesma organização. Para obter mais informações, consulte "Gerenciar configurações de segurança e análise para sua organização". You can configure access to private registries in a repository's dependabot.yml configuration file. Para obter mais informações, consulte "Opções de configuração para atualizações de dependências".

Dependabot não é compatível com as dependências privadas de GitHub para todos os gerenciadores de pacote. Veja os detalhes na tabela abaixo.

A tabela a seguir mostra, para cada gerenciador de pacotes:

  • O valor de YAML a ser usado no arquivo dependabot.yml
  • As versões compatíveis do gerenciador de pacotes
  • Whether dependencies in private GitHub repositories or registries are supported
  • Se as dependências delegadas são compatíveis
Gerenciador de pacotesValor do YAMLVersões compatíveisRepositórios privadosPrivate registriesDelegação
bundlerbundlerv1, v2
Cargocargov1
Composercomposerv1, v2
Dockerdockerv1
Hexmixv1
elm-packageelmv0.19
git submodulegitsubmoduleN/A (sem versão)
GitHub Actionsgithub-actionsN/A (sem versão)
Módulos Gogomodv1
GradlegradleN/A (no version)[1]
MavenmavenN/A (no version)[2]
npmnpmv6, v7
NuGetnuget<= 4.8[3]
pippipv20
pipenvpip<= 2018.11.26
pip-compilepip5.5.0
poetrypipv1
Terraformterraform<= 0.15
yarnnpmv1

[1] Dependabot doesn't run Gradle but supports updates to the following files: build.gradle and build.gradle.kts (for Kotlin projects).

[2] Dependabot doesn't run Maven but supports updates to pom.xml files.

[3] Dependabot doesn't run the NuGet CLI but does support most features up until version 4.8.

Para gerentes de pacote como pipenv e poetry, você precisa usar o valor do pip do YAML. Por exemplo, se você usa o poetry para gerenciar suas dependências do Python e quer que Dependabot monitore seu arquivo de manifesto de dependência para novas versões, use pacote-ecosystem: "pip" no seu arquivo dependabot.yml.

Se o seu repositório já usa uma integração para gerenciamento de dependências, você precisará desativar isso antes de habilitar o Dependabot. Para obter mais informações, consulte "Sobre integrações".

Sobre notificações para atualizações de versão para Dependabot

Você pode filtrar suas notificações em GitHub para mostrar atualizações de versão de Dependabot. Para obter mais informações, consulte "Gerenciando notificações de sua caixa de entrada".

Esse documento ajudou você? Política de Privacidade

Ajude-nos a tornar esses documentos ótimos!

Todos os documentos do GitHub são de código aberto. Você percebeu que algo que está errado ou não está claro? Envie um pull request.

Faça uma contribuição

Ou, aprenda como contribuir.