Si vous avez une version précédente de Rust installée via rustup, vous pouvez obtenir 1.69.0 avec :
Code : | Sélectionner tout |
$ rustup update stable
Si vous ne l'avez pas encore, vous pouvez obtenir rustup à partir de la page appropriée, et consulter les notes de version détaillées pour la 1.69.0 sur GitHub.
Si vous souhaitez aider en testant les futures versions, vous pouvez envisager une mise à jour locale pour utiliser le canal beta (rustup default beta) ou le canal nightly (rustup default nightly). N'hésitez pas à signaler les bugs que vous pourriez rencontrer !
Ce qu'il y a dans la version 1.69.0 stable
Rust 1.69.0 n'introduit pas de nouvelles fonctionnalités majeures. Cependant, elle contient de nombreuses petites améliorations, y compris plus de 3 000 commits de plus de 500 contributeurs.
Cargo propose désormais de corriger automatiquement certains avertissements
Rust 1.29.0 a ajouté la sous-commande cargo fix pour corriger automatiquement certains avertissements simples du compilateur. Depuis, le nombre d'avertissements pouvant être corrigés automatiquement continue d'augmenter régulièrement. En outre, la prise en charge de la correction automatique de certains avertissements simples de Clippy a également été ajoutée.
Afin d'attirer l'attention sur ces capacités accrues, Cargo suggère désormais d'exécuter cargo fix ou cargo clippy --fix lorsqu'il détecte des avertissements pouvant être corrigés automatiquement :
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 | warning: unused import: `std::hash::Hash` --> src/main.rs:1:5 | 1 | use std::hash::Hash; | ^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default warning: `foo` (bin "foo") generated 1 warning (run `cargo fix --bin "foo"` to apply 1 suggestion) |
Notez que l'invocation complète de Cargo montrée ci-dessus n'est nécessaire que si vous souhaitez appliquer précisément des correctifs à une seule caisse. Si vous souhaitez appliquer des correctifs à tous les membres par défaut d'un espace de travail, une simple invocation de cargo fix (sans arguments supplémentaires) suffira.
Les informations de débogage ne sont plus incluses par défaut dans les scripts de compilation
Pour améliorer la vitesse de compilation, Cargo évite maintenant d'émettre des informations de débogage dans les scripts de compilation par défaut. Il n'y aura pas d'effet visible lorsque les scripts de compilation s'exécutent avec succès, mais les backtraces dans les scripts de compilation contiendront moins d'informations.
Si vous voulez déboguer un script de compilation, vous pouvez ajouter ce snippet à votre Cargo.toml pour émettre à nouveau des informations de débogage :
Code : | Sélectionner tout |
1 2 3 4 | [profile.dev.build-override] debug = true [profile.release.build-override] debug = true |
API stabilisées
Ces API sont maintenant stables dans les contextes constants :
- SocketAddr::new
- SocketAddr::ip
- SocketAddr::port
- SocketAddr::is_ipv4
- SocketAddr::is_ipv6
- SocketAddrV4::new
- SocketAddrV4::ip
- SocketAddrV4::port
- SocketAddrV6::new
- SocketAddrV6::ip
- SocketAddrV6::port
- SocketAddrV6::flowinfo
- SocketAddrV6::scope_id
Autres changements
Découvrez tout ce qui a changé dans Rust, Cargo et Clippy.
Source : Rust
Et vous ?
Que pensez-vous du langage Rust, et de sa popularité croissante ?
Quelles sont les nouveautés que vous trouvez intéressantes ?
Voir aussi
Le langage de programmation Rust gagne en popularité parmi les développeurs et fait son entrée dans le top 20, selon Tiobe. Python, Java, C et C++ s'accaparent à eux seuls de 55% de parts de marché
Rust est devenu si populaire qu'une équipe dédiée a été présentée pour la définition du style de codage Rust par défaut, afin que les développeurs se sentent le plus à l'aise possible
Rust 1.68 : le protocole de registre "sparse" de Cargo est désormais disponible en version stable, cette mouture s'accompagne d'une nouvelle macro pin
Rust 1.66.0 est disponible, elle apporte les discriminants explicites sur les enums avec champs et l'utilitaire cargo remove pour supprimer les dépendances
Rust 1.63 est disponible et s'accompagne des fils d'exécution délimités, des propriété Rust pour les descripteurs de fichiers