Skip to content
Latchkey

rustup vs asdf: gerenciando toolchains do Rust

O rustup é o gerenciador oficial de toolchains do Rust com components, targets e channels; o asdf gerencia o Rust como uma de muitas linguagens via um plugin.

O rustup é a forma canônica de instalar o Rust, lidando com os channels stable/beta/nightly, targets de compilação cruzada e components como clippy e rustfmt, tudo guiado pelo rust-toolchain.toml. O asdf pode instalar o Rust por meio de um plugin e fixá-lo em .tool-versions junto de outras linguagens, mas não substitui o rico gerenciamento de components e targets do rustup. Para profundidade em Rust, o rustup é essencial; o asdf serve para unificar versões em um repositório poliglota.

rustupasdf
EscopoToolchains do RustPoliglota
Channelsstable/beta/nightlyVersões fixadas
Targets / componentsNativoLimitado
Configrust-toolchain.toml.tool-versions
Melhor paraTrabalho Rust de verdadeFixações unificadas multilinguagem

No CI

Qualquer CI Rust sério usa o rustup para channels, targets e components; o asdf sozinho não consegue fazer compilação cruzada nem adicionar o clippy de forma limpa. Equipes costumam fixar a versão do Rust em .tool-versions para paridade, mas ainda dependem do rustup por baixo dos panos. A resposta prática é rustup para o Rust, com o asdf opcionalmente coordenando versões entre linguagens.

Acelere

Faça cache do registry do cargo, do git e dos diretórios de target com a chave baseada em Cargo.lock. Ambos rodam em runners de CI; runners gerenciados mais rápidos encurtam as etapas de instalação e compilação do Rust.

O veredito

Fazer desenvolvimento Rust de verdade com channels, targets ou components: rustup, que o asdf não consegue substituir totalmente. Coordenar uma versão do Rust entre muitas linguagens em um repositório poliglota: o asdf pode fixá-la, mas o rustup ainda faz o trabalho pesado. Use o rustup para o Rust; adicione o asdf apenas para consistência entre linguagens.

Guias relacionados