Reviewer et contributeur sur le langage Rust.
Membre de :
rustdoc (team leader)
docs.rs
dev-tools
clippy-contributors
Je suis un ingénieur chez Huawei.
## Qu'est-ce qu'un linter ?
## Comment un linter Rust fonctionne ?
## Pourquoi a-t-il besoin d'être une extension du compilateur de Rust ?
## Limitations
* Fonctionne seulement sur les crates compiléees avec la même version de rustc
* L'API de rustc API n'est pas stable
* Lié à une version spécifique de rustc
* Difficile à wrapper dans une commande cargo
## Les "passes" de lints
Early vs Late
## `rustc-tools`
Fournit de l'aide pour mettre en place des lints et faciliter les intégrations dans cargo (entre autres choses...)
```toml
[dependencies]
rustc-tools = "0.3"
```
## Mise en place
`Cargo.toml`
```toml
rustc-workspace-hack = "1.0.0"
```
`rust-toolchain`
```toml
[toolchain]
channel = "nightly-2023-10-06"
components = ["rustc-dev", "rustfmt", "llvm-tools-preview"]
```