Arenduse meeskond on rõõmuga tutvustamas Rust 1.36!
Mis on uut Rust 1.36-s?
Ja nüüd lähemalt:
- Rust 1.36-s on lõpuks stabiliseeritud trait Future.
- Crate alloc.
Alates Rust 1.36-st on std-st sõltuvad osad, mis sõltuvad globaalsetest allocator'idest (nt Vec), crate alloc'is. Nüüd on std need osad uuesti eksporditud. Rohkem selle kohta. - MaybeUninit mem::uninitialized'i asemel.
Varasemates väljaannetes võimaldas mem::uninitialized teile vältida initsialiseerimise kontrolli, mida kasutati massiivide laiskade eraldamiste jaoks, kuid see funktsioon on üsna ohtlik (täiendavalt), seetõttu on stabiliseeritud tüüp MaybeUninit, mis on ohutum.
Ja kuna MaybeUninit on turvalisem alternatiiv, siis alates Rust 1.38-st on mem::uninitialized kõrvaldatud funktsioon.
Kui soovite rohkem teada mitte-initsialiseeritud mälust, võite lugeda blogipostitust (Alexis Beingessner). - NLL Rust 2015-ks.
Rust 1.31.0 teatises. Rust 1.31.0 Arendajad rääkisid meile NLL (Non-Lexical Lifetime) täiendusest keelele, mis muudab borrow checkeri intelligentsemaks ja kasutajasõbralikumaks. Näide:
fn main() {
let mut x = 5;
let y = &x;
let z = &mut x; // Seda ei lubatud enne versiooni 1.31.0.
}Versioonis 1.31.0 toimis NLL ainult Rust 2018-s, lubades, et arendajad lisavad toetuse ka Rust 2015-le.
Kui soovite NLL-i kohta rohkem teada, saate lugeda midagi siit ajaveebipostitusest (Felix Klocks). - Uus lipp Cargo jaoks —offline.
Rust 1.36 stabiliseeriti uus lipp Cargo jaoks. Lipp —offline käsib Cargo kasutada lokaalselt vahepeal salvestatud sõltuvusi, et neid hiljem internetita kasutada. Kui vajalikud sõltuvused ei ole saadaval offline-režiimis ja internet on siiski vajalik, tagastab Cargo vea. Sõltuvuste eelnevalt allalaadimiseks saab kasutada käsku cargo fetch, mis allalaadib kõik sõltuvused. - Siit võite lugeda põhjalikumat ülevaadet muudatustest.
Samuti on muutusi ka standardbiblioteegis:
- Nüüd võib makro dbg!() võtta mitmeid argumente.
- Mõned API-d on nüüd märgitud const:
- Uued API-d, mis on stabiliseeritud:
- Üksikasju standardraamatukogu muudatuste kohta leiate siit.
Muudatused Rust, Cargo ja Clippy.
Allikas: linux.org.ru
