Rust
Instale Rust usando rustup, gerencie toolchains e verifique cargo para desenvolvimento local antes de fazer o upload na Discloud.
🧾 Visão Geral
Rust fornece performance, segurança de memória e uso previsível de recursos para APIs, workers e bots. Instale com rustup para gerenciar toolchains localmente antes de fazer o upload.
📥 Instalação (escolha seu SO)
Baixe o instalador: https://win.rustup.rs/ (ou execute o comando abaixo no PowerShell)
Execute e aceite os padrões (instala no perfil do usuário).
irm https://win.rustup.rs -UseBasicParsing | iexVerificar
rustc --version
cargo --versionAtualizar Toolchain
rustup updateInstale via script rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
rustc --version
cargo --versionAdicionar Build Essentials (Debian/Ubuntu)
sudo apt update
sudo apt install -y build-essential pkg-config libssl-devAtualizar
rustup updateRemover Toolchain
rustup self uninstallInstale com rustup:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source ~/.cargo/env
rustc --version
cargo --versionAdicionar ferramentas de build (se não presentes):
xcode-select --install # solicita ferramentas de desenvolvedorAtualizar:
rustup update🧰 Toolchains e Componentes
Listar instalados
rustup toolchain listAdicionar nightly (opcional)
rustup toolchain install nightlyDefinir padrão
rustup default stableAdicionar componentes (exemplo)
rustup component add clippy rustfmt🗂 Inicialização do Projeto
Criar novo projeto:
cargo new myapp
cd myapp
cargo buildExecutar:
cargo runFormatar e lintar:
cargo fmt -- --check
cargo clippy -- -D warnings🗃 Comandos Cargo Comuns
cargo new api-service # criar projeto binário
cargo build --release # build otimizado
cargo run # build + executar
cargo test # executar testes
cargo update # atualizar lock de dependências
cargo tree # gráfico de dependências (requer cargo-tree)
cargo doc --open # construir docs localmenteInstalar cargo tree (se faltar):
cargo install cargo-tree📦 Gerenciamento de Dependências
Dependências declaradas em Cargo.toml sob [dependencies]:
[dependencies]
reqwest = { version = "0.12", features = ["json"] }
serde = { version = "1", features = ["derive"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros"] }Atualizar lockfile:
cargo update🔄 Atualização
rustup update # atualizar todas as toolchains
rustup self update # atualizar rustup em siLast updated