Rust, le langage de Mozilla, vient de passer en version 1.12. Il s’agit selon l’éditeur de l’une des plus importantes depuis la première. De nombreuses améliorations sont au programme, particulièrement sur la fiabilité et la gestion des erreurs.
Mozilla indique dans son billet d’annonce que le principal changement est sans aucun doute le format des messages d’erreurs émis par le compilateur Rustic (rustc). Les nouveaux messages se veulent évidemment beaucoup plus précis, en ciblant plus efficacement la source du problème et en indiquant au développeur ce qui cloche. L’idée est bien sûr d’accélérer la phase de débogage.
Code MIR ou arbre syntaxique
Signalons également la génération de code MIR (pour mid-level IR), qui permet de représenter le code d’une manière plus simple que l’arbre syntaxique classique (AST). On peut parler de langage intermédiaire (sans qu’il s’agisse réellement d’un bytecode), sur lequel il sera alors possible d’appliquer plus facilement les optimisations de LLVM (Low Level Virtual Machine). Les résultats attendus sont une charge moindre de travail pour rustc et un temps de démarrage du programme raccourci.
Parmi les autres améliorations, on trouvera de multiples ajouts dans la documentation, le support des cibles MUSL pour ARM, la possibilité d’ajouter un argument « --test-threads » pour définir le nombre de processus utilisés par les tests, l’arrivée d’une alarme pour signaler les tests durant plus de 60 secondes ou encore une stabilisation d’un certain nombre de bibliothèques. Côté Cargo, notons l’arrivée des workspaces, qui permettent à un groupe de paquets Rust de partager le même fichier Cargo.lock.
Disponible pour les trois plateformes principales
Ceux qui souhaitent en savoir davantage sur les nouveautés pourront consulter les notes de version de Rust 1.12. Rappelons que Rust est un langage créé par Mozilla pour répondre à des besoins de performances (proches du C et du C++), mais en incorporant des avantages traditionnellement liés à des langages de haut niveau, comme C# et Java. Rust est d’ailleurs maintenant utilisé par l’éditeur pour certaines parties de Firefox.
- Télécharger Rust 1.12 (pour Linux, macOS et Windows)