Utiliser rustfmt, fix et clippy
Créer ou maintenir des codes sources, c’est aussi apprendre et / ou définir des règles d’écriture et nous y tenir pour obtenir un code homogène, plus facile à lire, relire et faire évoluer.
C’est enfin tenter, autant que faire se peut, d’écrire des codes succincts et conformes aux meilleures pratiques dans le langage que nous utilisons. Ici, Rust.
Vérifier et homogénéiser le formatage du code avec rustfmt
Pour vérifier le formatage sans modification, nous utilisons la commande
cargo fmt -- --check
Pour laisser rustfmt effectuer des modifications, nous utilisons
cargo fmt
Utiliser fix (cargo fix)
La commande
cargo fix
permet de corriger automatiquement des messages d’erreur et d’alerte issus du compilateur Rust.
C’est le cas par exemple de l’oubli de la mention mut, ou à l’inverse de l’utilisation de celle-ci alors qu’elle est inutile dans notre code.
Utiliser l’analyseur statique (linter) clippy
clippy analyse la sémantique de nos codes pour y déceler des optimisations, des fautes d’inattention ou des structures non idiomatiques.
Pour effectuer l’analyse, nous utilisons
cargo clippy
Clippy catégorise ses retours :
Allow: suggestions mineures ignorées par défaut.Warn: avertissements sur des codes qui fonctionnent mais qui ne sont pas idiomatiques ou qui sont potentiellement dangereux (réglage par défaut).Deny: erreurs strictes qui bloquent la compilation.
Nous pouvons :
-
Forcer Clippy à être plus strict en bloquant tout ce qui génère un avertissement (y compris dans le compilateur
rustc) :cargo clippy -- -D warnings -
Autoriser les corrections automatiques avec la commande :
cargo clippy --fix