Rja 1.36

Razvojna ekipa z veseljem predstavlja Rust 1.36!

Kaj je novega v Rust 1.36?
Prihodnja lastnost stabilizirana, od novega: alloc crate, MaybeUninit , NLL za Rust 2015, nova implementacija HashMap in nova zastava -offline za Cargo.


In zdaj podrobneje:

  • Končno v Rust 1.36 stabiliziran lastnost Prihodnost.
  • Zaboj aloc.
    Od Rust 1.36 deli std, ki so odvisni od globalnega dodeljevalnika (kot je Vec ), so v zaboju za dodelitev. Zdaj bo std ponovno izvozil te dele. Več o tem.
  • MordaEnota namesto mem::uninitialized.
    V prejšnjih izdajah vam je mem::uninitialized omogočal, da obidete preverjanje inicializacije, uporabljali so ga za leno dodeljevanje matrike, vendar je ta funkcija precej nevarna (več), tako da je bil tip MaybeUninit stabiliziran , kar je varnejše.
    No, od MaybeUninit je varnejša alternativa, potem bo od Rust 1.38 mem::uninitialized opuščena funkcija.
    Če želite izvedeti več o neinicializiranem pomnilniku, lahko preberete to objavo v blogu avtorja Alexisa Beingessnerja.
  • NLL za Rust 2015.
    V napovedi Rja 1.31.0 Razvijalci so nam povedali o NLL (Non-Lexical Lifetime), izboljšavi jezika, zaradi katere je pregledovalnik izposoje pametnejši in uporabniku prijaznejši. primer:
    fn main() {
    naj bo x = 5;
    naj bo y = &x;
    naj bo z = &mut x; // To ni bilo dovoljeno pred 1.31.0.
    }

    V 1.31.0 je NLL deloval le v Rust 2018, z obljubo, da bodo razvijalci dodali podporo v Rust 2015.
    Če želite izvedeti več o NLL, lahko preberete več v tem vnosi v blog (Felix Klocks).

  • Nova zastavica za Cargo je —offline.
    Rust 1.36 je stabiliziral novo zastavico za Cargo. Zastavica --offline sporoči programu Cargo, naj uporabi lokalno predpomnjene odvisnosti, tako da jih je mogoče pozneje uporabiti brez povezave. Ko potrebne odvisnosti niso na voljo brez povezave in če je internet še vedno potreben, bo Cargo vrnil napako. Če želite vnaprej prenesti odvisnosti, lahko uporabite ukaz cargo fetch, ki bo prenesel vse odvisnosti.
  • Tukaj si lahko preberete podrobnejši pregled sprememb.

Spremembe so tudi v standardni knjižnici:

Druge spremembe Rust, Cargo и Clippy.

Vir: linux.org.ru

Dodaj komentar