Rust 1.36

Utviklingsteamet er glade for å introdusere Rust 1.36!

Hva er nytt i Rust 1.36?
Fremtidig egenskap stabilisert, fra ny: alloc kasse, MaybeUninit , NLL for Rust 2015, en ny implementering av HashMap og et nytt flagg -offline for Cargo.


Og nå mer detaljert:

  • Endelig i Rust 1.36 stabilisert egenskap Fremtid.
  • Kassetildeling.
    Fra og med Rust 1.36, deler av standarden som er avhengig av den globale allokatoren (som Vec ), er i tildelingskassen. Nå vil std re-eksportere disse delene. Mer om det.
  • Kanskje Unit i stedet for mem::uinitialisert.
    I tidligere utgivelser tillot mem::uninitialized deg å omgå initialiseringskontrollen, den ble brukt til lat arrayallokering, men denne funksjonen er ganske farlig (mer), så MaybeUninit-typen ble stabilisert , som er tryggere.
    Vel, siden MaybeUninit er et sikrere alternativ, fra og med Rust 1.38 vil mem::uninitialized være en utdatert funksjon.
    Hvis du vil lære mer om uinitialisert minne, kan du lese dette blogginnlegget av Alexis Beingessner.
  • NLL for Rust 2015.
    I kunngjøringen Rust 1.31.0 Utviklerne fortalte oss om NLL (Non-Lexical Lifetime), en forbedring for språket som gjør lånesjekken smartere og mer brukervennlig. Eksempel:
    fn main() {
    la mut x = 5;
    la y = &x;
    la z = &mut x; // Dette var ikke tillatt før 1.31.0.
    }

    I 1.31.0 fungerte NLL kun i Rust 2018, med løftet om at utviklerne vil legge til støtte i Rust 2015.
    Vil du vite mer om NLL kan du lese mer i denne blogginnlegg (Felix Klocks).

  • Det nye flagget for Cargo er —offline.
    Rust 1.36 har stabilisert et nytt flagg for Cargo. --offline-flagget forteller Cargo å bruke lokalt bufrede avhengigheter slik at de kan brukes offline senere. Når de nødvendige avhengighetene ikke er tilgjengelig offline, og hvis Internett fortsatt er nødvendig, vil Cargo returnere en feil. For å forhåndslaste ned avhengigheter, kan du bruke lasthentingskommandoen, som vil laste ned alle avhengigheter.
  • Her du kan lese en mer detaljert oversikt over endringene.

Det er også endringer i standardbiblioteket:

Andre endringer Rust, Cargo и Clippy.

Kilde: linux.org.ru

Legg til en kommentar