Skip to content

import Update from "/pt/snippets/cli/update.mdx";

NOTE

Para atualizar sua versão do Bun CLI, veja [`bun upgrade`](/pt/runtime/installation#upgrading).

Para atualizar todas as dependências para as versões mais recentes:

sh
bun update

Para atualizar uma dependência específica para a versão mais recente:

sh
bun update [package]

--interactive

Para uma experiência de atualização mais controlada, use a flag --interactive para selecionar quais pacotes atualizar:

sh
bun update --interactive
bun update -i

Isso inicia uma interface de terminal interativa que mostra todos os pacotes desatualizados com suas versões atuais e alvo. Você pode então selecionar quais pacotes atualizar.

Interface interativa

A interface exibe pacotes agrupados por tipo de dependência:

txt
? Select packages to update - Space to toggle, Enter to confirm, a to select all, n to select none, i to invert, l to toggle latest

  dependencies                Current  Target   Latest
    □ react                   17.0.2   18.2.0   18.3.1
    □ lodash                  4.17.20  4.17.21  4.17.21

  devDependencies             Current  Target   Latest
    □ typescript              4.8.0    5.0.0    5.3.3
    □ @types/node             16.11.7  18.0.0   20.11.5

  optionalDependencies        Current  Target   Latest
    □ some-optional-package   1.0.0    1.1.0    1.2.0

Seções:

  • Pacotes são agrupados sob cabeçalhos de seção: dependencies, devDependencies, peerDependencies, optionalDependencies
  • Cada seção mostra cabeçalhos de coluna alinhados com os dados do pacote

Colunas:

  • Package: Nome do pacote (pode ter sufixo como dev, peer, optional para clareza)
  • Current: Versão atualmente instalada
  • Target: Versão que seria instalada (respeita restrições semver)
  • Latest: Versão mais recente disponível

Controles de teclado

Seleção:

  • Space: Alternar seleção do pacote
  • Enter: Confirmar seleções e atualizar
  • a/A: Selecionar todos os pacotes
  • n/N: Selecionar nenhum
  • i/I: Inverter seleção

Navegação:

  • ↑/↓ Teclas de seta ou j/k: Mover cursor
  • l/L: Alternar entre versão alvo e mais recente para o pacote atual

Sair:

  • Ctrl+C ou Ctrl+D: Cancelar sem atualizar

Indicadores visuais

  • Pacotes selecionados (serão atualizados)
  • Pacotes não selecionados
  • > Posição atual do cursor
  • Cores: Vermelho (major), amarelo (minor), verde (patch) mudanças de versão
  • Sublinhado: Alvo de atualização atualmente selecionado

Agrupamento de pacotes

Pacotes são organizados em seções por tipo de dependência:

  • dependencies - Dependências de runtime regulares
  • devDependencies - Dependências de desenvolvimento
  • peerDependencies - Dependências peer
  • optionalDependencies - Dependências opcionais

Dentro de cada seção, pacotes individuais podem ter sufixos adicionais ( dev, peer, optional) para clareza extra.

--recursive

Use a flag --recursive com --interactive para atualizar dependências em todos os workspaces em um monorepo:

sh
bun update --interactive --recursive
bun update -i -r

Isso exibe uma coluna "Workspace" adicional mostrando a qual workspace cada dependência pertence.

--latest

Por padrão, bun update atualizará para a versão mais recente de uma dependência que satisfaz o intervalo de versão especificado no seu package.json.

Para atualizar para a versão mais recente, independentemente de ser compatível com o intervalo de versão atual, use a flag --latest:

sh
bun update --latest

No modo interativo, você pode alternar pacotes individuais entre sua versão alvo (respeitando semver) e versão mais recente usando a tecla l.

Por exemplo, com o seguinte package.json:

json
{
  "dependencies": {
    "react": "^17.0.2"
  }
}
  • bun update atualizaria para uma versão que corresponde a 17.x.
  • bun update --latest atualizaria para uma versão que corresponde a 18.x ou posterior.

Bun by www.bunjs.com.cn edit