Rust 1.36

L'équipe de développeurs est heureuse de vous présenter Rust 1.36 !

Quoi de neuf dans Rust 1.36 ?
Le trait Future a Ă©tĂ© stabilisĂ©, parmi les nouveautĂ©s : le crate alloc, MaybeUninit, NLL pour Rust 2015, une nouvelle implĂ©mentation de HashMap et un nouveau flag —offline pour Cargo.


Maintenant, plus de détails :

  • Dans Rust 1.36, nous avons enfin stabilisĂ© le trait Future.
  • Le crate alloc.
    À partir de Rust 1.36, les parties de std qui dĂ©pendent d'un allocateur global (par exemple, Vec) se trouvent dans le crate alloc. Maintenant, std rĂ©exporte ces parties. Plus Ă  ce sujet.
  • MaybeUninit au lieu de mem::uninitialized.
    Dans les versions précédentes, mem::uninitialized vous permettait de contourner la vérification d'initialisation, cela était utilisé pour l'allocation paresseuse des tableaux, mais cette fonction est assez dangereuse (en savoir plus), donc le type MaybeUninit a été stabilisé, qui est plus sûr.
    Et puisque MaybeUninit est une alternative plus sûre, à partir de Rust 1.38, mem::uninitialized sera obsolÚte.
    Si vous voulez en savoir plus sur la mémoire non initialisée, vous pouvez lire l'article de blog (Alexis Beingessner).
  • NLL pour Rust 2015.
    Dans l'annonce Rust 1.31.0 les développeurs nous ont parlé de NLL (Non-Lexical Lifetime), une amélioration du langage qui rend le vérificateur d'emprunt plus intelligent et plus convivial. Exemple :
    fn main() {
    let mut x = 5;
    let y = &x;
    let z = &mut x; // Cela n'était pas permis avant 1.31.0.
    }

    Dans 1.31.0, NLL ne fonctionnait que dans Rust 2018, avec la promesse que les développeurs ajouteraient également le support pour Rust 2015.
    Si vous voulez en savoir plus sur NLL, vous pouvez lire davantage dans cet article de blog (Felix Klocks).

  • Un nouveau flag pour Cargo — —offline.
    Dans Rust 1.36, un nouveau flag pour Cargo a Ă©tĂ© stabilisĂ©. Le flag —offline indique Ă  Cargo d’utiliser les dĂ©pendances mises en cache localement, afin qu'elles puissent ĂȘtre utilisĂ©es sans connexion internet par la suite. Lorsque les dĂ©pendances nĂ©cessaires ne sont pas disponibles hors ligne, et si Internet est tout de mĂȘme nĂ©cessaire, Cargo renverra une erreur. Pour prĂ©-tĂ©lĂ©charger les dĂ©pendances, vous pouvez utiliser la commande cargo fetch, qui tĂ©lĂ©chargera toutes les dĂ©pendances.
  • Ici vous pouvez lire un aperçu plus dĂ©taillĂ© des changements.

Il y a également des changements dans la bibliothÚque standard :

Autres changements Rust, Cargo et Clippy.

Source : linux.org.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster