3 Rust tooling
This chapter covers
- Introducing core Rust language tools:
rust-analyzer, Rustfmt, Clippy, andsccache - Integrating Rust tools with VS Code
- Using stable versus nightly toolchains
- Exploring additional non-core tools you may find useful
Mastery of any language depends on mastering its tooling. In this chapter, we’ll explore some of the critical tools you need to be effective with Rust.
Rust has a number of tools available to improve productivity and reduce the amount of busywork required to produce high quality software. Rust’s compiler, rustc, is built upon LLVM, so Rust inherits the rich tools included with LLVM, such as LLVM’s debugger, LLDB. In addition to the tools you expect to find from other languages, Rust includes a number of its own Rust-specific tools, which are discussed in this chapter.
The main tools discussed in this chapter are rust-analyzer, rustfmt, Clippy, and sccache. These are tools you’ll likely use every time you work with Rust. Additionally, I have included instructions for a few other tools, which you may find yourself using occasionally: cargo-update, cargo-expand, cargo-fuzz, cargo-watch, and cargo-tree.