Compilations Rapides en Rust : Le Secret des CI en Moins de 10 Minutes
Il est courant de se plaindre de la lenteur de compilation de Rust, mais l'auteur soutient que la plupart des projets Rust compilent beaucoup plus lentement qu'ils ne le devraient. Prenant rust-analyzer (200 000 lignes de code plus un million de lignes de dépendances) comme exemple, il a réussi à obtenir un pipeline CI de 8 minutes sur GitHub Actions. L'article détaille des stratégies pour optimiser les temps de compilation, notamment en tirant parti de la mise en cache CI, en divisant les tâches CI, en désactivant la compilation incrémentale et les informations de débogage, en réduisant les dépendances, en utilisant `cargo build -Z timings` pour le profilage, et en architecturant soigneusement le code pour éviter une instanciation excessive des génériques aux limites des crates. L'auteur souligne l'impact du temps de compilation sur la productivité des développeurs et recommande d'optimiser régulièrement les temps de compilation afin de maintenir les temps CI des grands projets Rust dans une fourchette raisonnable, par exemple, environ 10 minutes.