Ruoste 1.36

Kehitystiimi esittelee innolla Rust 1.36:n!

Mitä uutta Rust 1.36:ssa?
Future-ominaisuus on vakiintunut uudesta: crate alloc, MaybeUninit, NLL ruosteelle 2015, uusi HashMap -toteutus ja uusi lippu -offline Cargolle.


Ja nyt tarkemmin:

  • Lopulta ruosteessa 1.36 vakiintunut ominaisuus Tulevaisuus.
  • Laatikon allok.
    Rust 1.36:sta lähtien std:n osat, jotka riippuvat globaalista allokaattorista (kuten Vec), ovat allokointilaatikossa. Nyt std vie nämä osat uudelleen. Lisää siitä.
  • MaybeUninit mem::uniniitialized sijaan.
    Aiemmissa julkaisuissa mem::uninitialized antoi mahdollisuuden ohittaa alustustarkistuksen, sitä käytettiin laiskaan taulukon varaukseen, mutta tämä toiminto on melko vaarallinen (lisää), joten MaybeUninit-tyyppi vakiintui, mikä on turvallisempaa.
    No, koska MaybeUninit on turvallisempi vaihtoehto, alkaen Rust 1.38:sta, mem::uninitialized on vanhentunut toiminto.
    Jos haluat oppia lisää alustamattomasta muistista, voit lukea tämän Alexis Beingessnerin blogiviestin.
  • NLL ruosteelle 2015.
    Ilmoituksessa Ruoste 1.31.0 Kehittäjät kertoivat meille NLL:stä (Non-Lexical Lifetime), kielen parannuksesta, joka tekee lainaustarkistuksesta älykkäämmän ja käyttäjäystävällisemmän. Esimerkki:
    fnmain() {
    olkoon mut x = 5;
    olkoon y = &x;
    olkoon z = &mut x; // Tämä ei ollut sallittu ennen 1.31.0.
    }

    1.31.0:ssa NLL toimi vain Rust 2018:ssa ja lupasi, että kehittäjät lisäävät tuen Rust 2015:een.
    Jos haluat tietää lisää NLL:stä, voit lukea lisää tästä blogimerkintöjä (Felix Klocks).

  • Cargon uusi lippu on offline.
    Rust 1.36 on vakiinnuttanut uuden lipun Cargolle. --offline-lippu kehottaa Cargoa käyttämään paikallisesti välimuistissa olevia riippuvuuksia, jotta niitä voidaan käyttää offline-tilassa myöhemmin. Kun tarvittavat riippuvuudet eivät ole käytettävissä offline-tilassa ja jos Internetiä tarvitaan edelleen, Cargo palauttaa virheilmoituksen. Riippuvuuksien esilataamiseksi voit käyttää cargo fetch -komentoa, joka lataa kaikki riippuvuudet.
  • Täällä voit lukea tarkemman yleiskatsauksen muutoksista.

Myös vakiokirjastossa on muutoksia:

Muut muutokset Ruoste, lasti и Clippy.

Lähde: linux.org.ru

Lisää kommentti