Rust 1.36

Ekipa razvijalcev z veseljem predstavlja Rust 1.36!

Kaj je novega v Rust 1.36?
Stabiliziran je trait Future, iz novega: crate alloc, MaybeUninit, NLL za Rust 2015, nova implementacija HashMap in nova zastavica —offline za Cargo.


Zdaj pa podrobneje:

  • V Rust 1.36 končno stabiliziramo trait Future.
  • Crate alloc.
    Od Rust 1.36 so deli std, ki so odvisni od globalnega allocatorja (na primer, Vec), v crate alloc. Sedaj std ponovno izvozi te dele. Več o tem.
  • MaybeUninit namesto mem::uninitialized.
    V prejšnjih izdajah je mem::uninitialized omogočal, da ste obšli preverjanje inicializacije, uporabljal se je za leno alokacijo tabel, vendar je ta funkcija precej nevarna (več informacij), zato je bil stabiliziran tip MaybeUninit, ki je varnejši.
    In ker je MaybeUninit varnejša alternativa, bo od Rust 1.38 mem::uninitialized zastarela funkcija.
    Če želite izvedeti več o neinicializirani spominu, lahko preberete objavo na blogu (Alexis Beingessner).
  • NLL za Rust 2015.
    V napovedi Rust 1.31.0 so razvijalci govorili o NLL (Non-Lexical Lifetime), izboljšavi jezika, ki naredi borrow checker pametnejši in prijaznejši do uporabnikov. Primer:
    fn main() {
    let mut x = 5;
    let y = &x;
    let z = &mut x; // To pred 1.31.0 ni bilo dovoljeno.
    }

    V 1.31.0 je NLL deloval le v Rust 2018, s obljubo, da bodo razvijalci dodali podporo tudi za Rust 2015.
    Če želite izvedeti več o NLL, lahko preberete več v tej objavi na blogu (Felix Klocks).

  • Nova zastavica za Cargo — —ofline.
    V Rust 1.36 je bila stabilizirana nova zastavica za Cargo. Zastavica —offline pove Cargo, da uporablja lokalno predpomnjene odvisnosti, da jih je mogoče pozneje uporabiti brez interneta. Ko potrebne odvisnosti niso na voljo brez povezave, in če je internet vseeno potreben, bo Cargo vrnil napako. Da bi vnaprej prenesli odvisnosti, lahko uporabite ukaz cargo fetch, ki prenese vse odvisnosti.
  • Tukaj lahko preberete bolj podroben pregled sprememb.

Prav tako so spremembe v standardni knjižnici:

Druge spremembe Rust, Cargo in Clippy.

Izvor: linux.org.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster