Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

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