Rost 1.36

Utvecklingsteamet är glada över att ge dig Rust 1.36!

Vad är nytt i Rust 1.36?
Framtida egenskap stabiliserad, från ny: alloc, MaybeUninit trait , NLL för Rust 2015, en ny HashMap-implementering och en ny --offline-flagga för Cargo.


Och nu mer i detalj:

  • I Rust 1.36 äntligen stabiliserats egenskap Framtid.
  • Alloc låda.
    Från och med Rust 1.36, delar av std som är beroende av en global allokator (som Vec ) finns i allokeringslådan. Nu kommer std att återexportera dessa delar. Mer om det.
  • Kanske Uninit istället för mem::oinitialiserad.
    I tidigare utgåvor tillät mem::uninitialized dig att kringgå initieringskontroller, den användes för lazy arrayallokering, men den här funktionen är ganska farlig (mer), så MaybeUninit-typen har stabiliserats vilket är säkrare.
    Tja, sedan MaybeUninit är ett säkrare alternativ, mem::uninitialized kommer att fasas ut från och med Rust 1.38.
    Om du vill veta mer om oinitierat minne kan du läsa blogginlägget (Alexis Beingessner).
  • NLL för Rust 2015.
    I tillkännagivandet Rost 1.31.0 utvecklare har berättat för oss om NLL (Non-Lexical Lifetime), en språkförbättring som gör lånecheckaren smartare och mer användarvänlig. Exempel:
    fn main() {
    låt mut x = 5;
    låt y = &x;
    låt z = &mut x; // Detta var inte tillåtet före 1.31.0.
    }

    I 1.31.0 fungerade NLL bara i Rust 2018, med löftet att utvecklare kommer att lägga till stöd till Rust 2015 också.
    Vill du veta mer om NLL kan du läsa mer i detta blogginlägg (Felix Klocks).

  • Den nya flaggan för Cargo är --offline.
    Rust 1.36 stabiliserade en ny flagga för Cargo. --offline-flaggan talar om för Cargo att använda lokalt cachade beroenden så att de kan användas offline senare. När de nödvändiga beroendena inte är tillgängliga offline, och om Internet fortfarande behövs, kommer Cargo att returnera ett fel. För att förhämta beroenden kan du använda kommandot lasthämtning, som laddar ner alla beroenden.
  • Här du kan läsa en mer detaljerad översikt över förändringarna.

Det finns också ändringar i standardbiblioteket:

Andra förändringar Rust, Laddning и Clippy.

Källa: linux.org.ru

Lägg en kommentar