Ekipi i zhvilluesve me kënaqësi ju prezanton Rust 1.36!
ĂfarĂ« Ă«shtĂ« e re nĂ« Rust 1.36?
Tani në detaje:
- Në Rust 1.36 përfundimisht u stabilizua trait Future.
- Krati alloc.
Duke filluar nga Rust 1.36, pjesët e std që varen nga alokatori global (për shembull, Vec) janë në kratin alloc. Tani std ri-eksporton këto pjesë. Më shumë rreth këtij. - MaybeUninit në vend të mem::uninitialized.
Në versionet e mëparshme, mem::uninitialized ju lejonte të anashkalonit kontrollin e inicializimit, duke u përdorur për alokimin e vonuar të masivëve, por kjo funksion është mjaft e rrezikshme (më shumë), prandaj u stabilizua tipi MaybeUninit, i cili është më i sigurt.
Dhe duke qenë se MaybeUninit është një alternativë më e sigurt, duke filluar nga Rust 1.38, mem::uninitialized do të jetë një funksion i dëmtuar.
Nëse dëshiron të dish më shumë rreth memories së pa inicializuar, mund të lexosh shkrimin në blog (Alexis Beingessner). - NLL për Rust 2015.
Në njoftimin Rust 1.31.0 Zhvilluesit na treguan për NLL (Non-Lexical Lifetime), një përmirësim për gjuhën që e bën kontrolluesin e huazimeve më inteligjent dhe më miqësor për përdoruesin. Shembull:
fn main() {
let mut x = 5;
let y = &x;
let z = &mut x; // Kjo nuk lejohej më parë se versioni 1.31.0.
}Në versionin 1.31.0, NLL funksiononte vetëm në Rust 2018, me premtimin se zhvilluesit do të shtonin mbështetje edhe për Rust 2015.
NĂ«se dĂ«shironi tĂ« mĂ«soni mĂ« shumĂ« rreth NLL, mund tĂ« lexoni mĂ« shumĂ« nĂ« kĂ«tĂ« postim nĂ« blog (Felix Klocks). - NjĂ« flamur i ri pĂ«r Cargo â âoffline.
NĂ« Rust 1.36, u stabilizua flamuri i ri pĂ«r Cargo. Flamuri âoffline i thotĂ« Cargo tĂ« pĂ«rdorĂ« varĂ«sitĂ« e ruajtura lokal, pĂ«r t'i pasur mĂ« vonĂ« pa internet. Kur varĂ«sitĂ« e nevojshme nuk janĂ« tĂ« disponueshme offline, dhe nĂ«se ndonjĂ«herĂ« nevojitet interneti, Cargo do tĂ« kthejĂ« njĂ« gabim. PĂ«r tĂ« shkarkuar paraprakisht varĂ«sitĂ«, mund tĂ« pĂ«rdorni komandĂ«n cargo fetch, e cila do tĂ« shkarkojĂ« tĂ« gjitha varĂ«sitĂ«. - KĂ«tu mund tĂ« lexoni njĂ« pĂ«rmbledhje mĂ« tĂ« detajuar tĂ« ndryshimeve.
Gjithashtu ka edhe ndryshime në bibliotekën standarde:
- Tani makroja dbg!() mund të pranojë disa argumente.
- Disa API tani janë të shënuar si const:
- API të reja që janë stabilizuar:
- Ndryshime të tjera në bibliotekën standarte mund të gjenden këtu.
Ndryshime të tjera Rust, Cargo dhe Clippy.
Burimi: linux.org.ru
