IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Rédacteur technique
    Inscrit en
    juin 2016
    Messages
    1 582
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juin 2016
    Messages : 1 582
    Points : 38 198
    Points
    38 198
    Par défaut Rust 1.49.0 est disponible avec l'amélioration des supports de Linux ARM 64 bits
    Rust 1.49.0 est disponible avec l'amélioration des supports de Linux ARM 64 bits
    macOS et Windows ARM 64 bits

    Rust est un langage de programmation open source, dont le code source est disponible sur GitHub, qui permet à chacun de créer des logiciels fiables et efficaces. L'équipe de développement de Rust a publié Rust 1.49.0 ce 31 décembre 2020 pour clôturer l'année avec quelques modifications. Dans cette version, elle a amélioré la prise en charge de l'architecture ARM 64 bits pour Linux, macOS et Windows et a également amélioré le framework de test. Voici ci-dessous les modifications les plus notables dans Rust 1.49.0.

    Nom : z1.png
Affichages : 9583
Taille : 55,8 Ko

    Linux ARM 64 bits atteint le niveau 1

    Selon l'équipe de Rust, le compilateur Rust prend en charge une grande variété de cibles, mais elle ne peut pas fournir le même niveau de support pour toutes. Pour indiquer clairement le niveau de prise en charge de chaque cible, elle utilise un système de hiérarchisation :

    • les cibles de niveau 3 sont techniquement supportées par le compilateur, mais l'équipe ne vérifie pas si leur code est construit ou s'il passe les tests nécessaires. En outre, l'équipe ne fournit pas de binaires préconstruits pour ses versions ;
    • les cibles de niveau 2 sont garanties à la construction et l'équipe de Rust fournie des binaires préconstruits, mais elle n'exécute pas la suite de tests sur ces plateformes, ce qui signifie que les binaires produits peuvent ne pas fonctionner ou présenter des bogues ;
    • les cibles de niveau 1 offrent la meilleure garantie de support, et l'équipe de Rust exécute tous les tests sur ces plateformes pour chaque modification fusionnée dans le compilateur. Des binaires préconstruits sont également disponibles.

    Rust 1.49.0 promeut la cible aarch64-unknown-linux-gnu au niveau 1 de support, apportant ainsi les plus hautes garanties de l'équipe aux utilisateurs de systèmes ARM 64 bits sous Linux. « Nous espérons que ce changement bénéficiera aux charges de travail allant des systèmes embarqués aux ordinateurs de bureau et aux serveurs. C'est une étape importante pour le projet, car c'est la première fois qu'une cible non x86 atteint le niveau 1 de prise en charge : nous espérons que cela ouvrira la voie à d'autres cibles pour atteindre notre niveau le plus élevé à l'avenir », a déclaré l'équipe.

    En outre, l'équipe de Rust a déclaré qu'Android n'est pas concerné par ce changement, car il utilise une cible de niveau 2 différente.

    macOS et Windows ARM 64 bits atteignent le niveau 2

    Avec la sortie de Rust 1.49.0, la cible aarch64-apple-darwin apporte le support de Rust sur les systèmes Apple M1. De même, la cible aarch64-pc-windows-msvc apporte le support de Rust sur les appareils ARM 64 bits fonctionnant sous Windows. Selon l'équipe de Rust, les développeurs peuvent s'attendre à ce que ces deux cibles aient des binaires précompilés installables avec rustup à partir de maintenant. Toutefois, l'équipe n'a pas exécuté les tests sur ces plateformes, il pourrait donc y avoir des bogues ou des instabilités.

    Les autres améliorations et changements dans Rust 1.49.0

    Langage

    • Unions peut désormais mettre en œuvre Drop, et vous pouvez désormais avoir un champ dans un "union" avec ManuallyDrop<T> ;
    • vous pouvez maintenant transformer des énumérations non utilisées en nombres entiers ;
    • vous pouvez maintenant lier par référence et par déplacement dans des modèles. Cela vous permet d'emprunter de manière sélective les composants individuels d'un type.

    Compilateur


    • ajout du support de niveau 1 pour aarch64-unknown-linux-gnu ;
    • ajout du support de niveau 2 pour aarch64-apple-darwin ;
    • ajout du support de niveau 2 pour aarch64-pc-windows-msvc ;
    • ajout du support de niveau 3 pour mipsel-unknown-none ;
    • augmentation de la version LLVM minimale supportée à LLVM 9 ;
    • la sortie des threads générés lors des tests est maintenant capturée ;
    • changement des valeurs de "os" et de "vendor" à "none" et "unknown" pour certaines cibles.

    Bibliothèques

    • RangeInclusive vérifie désormais l'épuisement des appels lors de la composition et de l'indexation ;
    • ToString::to_string ne réduit plus le tampon interne dans l'implémentation par défaut ;
    • les ops::{Index, IndexMut} sont maintenant implémentées pour les tableaux de taille fixe, quelle que soit leur longueur.

    Les API stabilisées

    • slice::select_nth_unstable ;
    • slice::select_nth_unstable_by ;
    • slice::select_nth_unstable_by_key.

    Cargo

    • ajout de la variable d'environnement CARGO_PRIMARY_PACKAGE pour le temps de construction. Cette variable sera définie si la caisse (crate) en cours de construction est une caisse que l'utilisateur a choisi de construire, soit avec -p, soit par défaut ;
    • vous pouvez maintenant utiliser des modèles globaux lors de la spécification de paquets et de cibles.

    Source : Note de version de Rust 1.49.0

    Et vous ?

    Que pensez-vous de Rust 1.49.0 ?

    Voir aussi

    Rust 1.48.0 est disponible avec quelques modifications dans rustdoc pour rendre la rédaction de documentation encore plus facile

    Rust 1.47.0 est disponible et s'accompagne de la prise en charge par défaut de LLVM 11, ainsi que de neuf API qui passent en version stable dans la bibliothèque

    Rust 1.46.0 est disponible et s'accompagne de plusieurs nouveautés dans const fn, ainsi que de deux nouvelles API dans la bibliothèque standard

    Rust 1.45.0 est disponible avec la correction du problème de la conversion entre des entiers et des flottants et de nombreuses fonctionnalités
    Images attachées Images attachées  
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Membre expérimenté Avatar de denisys
    Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    946
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mai 2002
    Messages : 946
    Points : 1 383
    Points
    1 383
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    C:\Users\denisys>rustc --version
    rustc 1.49.0 (e1884a8e3 2020-12-29)
    En fait , après avoir fait l'installation , il est préférable de faire une mise a jour systématique de la version.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\Users\denisys>rustup update
    Ne pas savoir n’est pas une faute si l’on cherche à combler ses lacunes.

    "Il n'y a pas d'obstacles infranchissables , il y a des volontés plus ou moins énergiques voilà tous" Jules Vernes

  3. #3
    Membre expérimenté Avatar de denisys
    Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    946
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mai 2002
    Messages : 946
    Points : 1 383
    Points
    1 383
    Par défaut
    Intéressant ce sujet !!
    Sur l'une de mes VM , lorsque je vérifie la version de Rust.
    j’obtiens le résultat suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    C:\Users\denisys>rustc --version
    rustc 1.48.0 (7eac88abb 2020-11-16)
    Et effectivement , je n'avais pas fait de mise a jour de la version .
    Ce qu'il y a d'intéressant a constater .
    dans l'identification de la version , il y a :
    1. un ID
    2. un numéro de version
    3. une date de publication (format : ISO 8601)
    Et si je me réfère a la date de la publication de l'information
    Rust 1.48.0
    @rustbot rustbot released this on 19 Nov 2020
    ---
    https://github.com/rust-lang/rust/releases/tag/1.48.0
    -*-*-
    A première vue , il y a un décalage entre l'annonce , et , le mise en service , de la version .
    Ne pas savoir n’est pas une faute si l’on cherche à combler ses lacunes.

    "Il n'y a pas d'obstacles infranchissables , il y a des volontés plus ou moins énergiques voilà tous" Jules Vernes

  4. #4
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    avril 2002
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : avril 2002
    Messages : 4 073
    Points : 12 308
    Points
    12 308
    Par défaut
    C'est simplement le système de "release cadidate" qui est en fait un fonctionnement très commun dans le logiciel. La version qui est supposée devenir la version officielle est mise a disposition des testeurs quelques jours avant la publication officielle. Si aucun problème bloquant n'est détecté, cette version est promue en tant que version finale, en l'état, ce qui explique le décalage de date.

    Par exemple voici l'annonce de pré-test pour la version 1.49 : https://blog.rust-lang.org/inside-ru...rerelease.html

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/11/2020, 09h19
  2. Réponses: 3
    Dernier message: 17/07/2020, 20h07
  3. Réponses: 1
    Dernier message: 24/04/2020, 19h47
  4. Réponses: 0
    Dernier message: 11/12/2019, 08h30
  5. Réponses: 0
    Dernier message: 02/12/2019, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo