Skip to content

Binários de Pacotes

Detalhes sobre o processo de instalação de binários de pacotes.

Local de Download Personalizado

Internamente, volta install <tool> usa resolução no estilo npm para determinar quais versões estão disponíveis e onde baixar os binários dos pacotes. Portanto, para redirecionar e usar repositórios internos (ou seja, instalar ferramentas internas de repositórios privados), você pode criar um arquivo .npmrc em seu diretório home. As opções especificadas lá serão seguidas ao resolver e baixar ferramentas, bem como ao resolver as dependências de uma ferramenta dada.

Versão Node Fixa

Como descrito em Entendendo o Volta, quando uma ferramenta é instalada, o Volta fixará uma versão Node para que a ferramenta continue funcionando mesmo que a versão Node padrão mude. O processo usado para determinar qual versão deve ser fixada é o seguinte:

Antes do Volta 0.6.8

  • Se o pacote especifica engines no package.json, use a versão mais recente do Node que satisfaça os requisitos de engines
  • Caso contrário, use a versão mais recente do Node

Volta 0.6.8 até Volta 0.8.7

  • Se o pacote especifica engines no package.json, use a versão LTS mais recente do Node que satisfaça os requisitos
  • Se nenhuma versão LTS satisfaz os requisitos, use a versão geral mais recente que satisfaça engines
  • Se engines não estiver disponível, use a versão LTS mais recente do Node

Volta 0.9.0 e Superior

A partir do Volta 0.9.0, o Volta fixará o pacote à sua versão Node padrão atual (no momento da instalação da ferramenta). Você pode alterar essa versão alterando a versão padrão ou executando a instalação com volta run:

bash
volta run --node 15 npm i -g ember-cli

Gerenciamento Global de Pacotes

Quando você instala um pacote global usando o Volta, ele cria um shim em seu diretório bin do Volta, apontando para a versão específica do pacote que você instalou. Isso permite que você:

  1. Use o pacote de qualquer lugar do sistema
  2. Garanta que o pacote sempre execute com a versão Node da instalação
  3. Instale múltiplos pacotes globais que precisam de diferentes versões Node

Usando npm ou Yarn para Gerenciar Pacotes Globais

A partir do Volta 0.9.0, você pode usar comandos padrão do npm ou Yarn para gerenciar pacotes globais:

bash
# Instalar pacote global com npm
npm install -g typescript

# Instalar pacote global com Yarn
yarn global add eslint

# Desinstalar pacote global com npm
npm uninstall -g typescript

# Desinstalar pacote global com Yarn
yarn global remove eslint

O Volta intercepta esses comandos e garante que os pacotes sejam instalados corretamente no ecossistema Volta, criando os shims necessários.

Verificar Pacotes Instalados

Para ver os pacotes globais atualmente instalados, use:

bash
volta list packages

Resolução de Binários de Pacotes

Quando você executa um binário de pacote (como tsc do TypeScript), o Volta segue estes passos:

  1. Verifica se o binário está em um projeto com instalação local do pacote
  2. Se encontrado localmente, usa essa versão
  3. Se não encontrado localmente, usa a versão instalada globalmente
  4. Se não instalado globalmente, exibe uma mensagem de erro

Este processo de resolução garante que você sempre use a versão correta da ferramenta para cada projeto.