À propos du projet

Ce dépôt contient la source de « The Rust Programming Language », le livre d'introduction canonique pour le langage Rust. Le livre final est publié en version imprimée par No Starch Press et est également disponible gratuitement en ligne, fourni avec les versions stable, bêta et nightly de Rust (bien que ces copies groupées puissent être en retard sur les corrections apportées ici). Une page de versions fournit le code téléchargeable pour tous les extraits qui apparaissent dans le livre. Le livre est rédigé en Markdown et rendu avec mdBook, le générateur de sites statiques pour livres de la communauté Rust. La compilation nécessite d'installer une version spécifique de mdBook (correspondant à celle épinglée dans l'outillage rustbook de rust-lang/rust) via `cargo install mdbook --locked --version <version_num>`, puis d'exécuter `mdbook build` pour produire un site statique dans le sous-répertoire `book`, consultable dans n'importe quel navigateur. Le README documente les commandes de lancement du navigateur pour Firefox et Chrome sous Linux, macOS et Windows (à la fois PowerShell et Cmd). Les tests pour les exemples de code se trouvent sous `packages/trpl` et sont exécutés avec `mdbook test --library-path packages/trpl/target/debug/deps`. Les contributions sont bienvenues via les directives CONTRIBUTING.md, mais parce que le livre est imprimé et que les mainteneurs visent à garder la version en ligne proche de l'édition imprimée, les révisions sont regroupées autour des sorties des éditions de Rust. Entre ces révisions majeures, seules des corrections d'erreurs strictes sont fusionnées, donc les demandes de tirage non liées à des erreurs peuvent attendre des mois ou des années. Les traductions sont suivies via un label Translations et de nouveaux efforts linguistiques peuvent être ouverts comme problèmes, bien que la fusion attende le support multilingue de mdBook. Un script `ci/spellcheck.sh` ainsi qu'un dictionnaire `ci/dictionary.txt` prennent en charge la vérification orthographique, avec les faux positifs (tels que les identifiants comme `BTreeMap`) ajoutés au dictionnaire dans un ordre trié. Dans l'ensemble, il s'agit d'un projet de documentation et d'éducation plutôt que d'un outil d'exécution : sa valeur pour les utilisateurs réside dans le fait qu'il constitue la ressource d'apprentissage faisant autorité pour Rust, avec un pipeline de compilation bien documenté, un harnais de test pour les exemples de code, et un flux de travail structuré pour les contributions et les traductions.