Kutu 1.36

Timu ya maendeleo ina furaha kutambulisha Rust 1.36!

Ni nini kipya katika Rust 1.36?
Tabia ya siku zijazo imetulia, kutoka mpya: alloc crate, LabdaUninit , NLL ya Rust 2015, utekelezaji mpya wa HashMap na bendera mpya -nje ya mtandao kwa Cargo.


Na sasa kwa undani zaidi:

  • Hatimaye katika Rust 1.36 imetulia sifa Future.
  • alloc ya crate.
    Kufikia Rust 1.36, sehemu za std ambazo zinategemea kigawanyaji cha kimataifa (kama vile Vec ), ziko kwenye kreti ya alloc. Sasa std itauza tena sehemu hizi. Zaidi kuhusu hili.
  • Labda Kitengo badala ya mem::uninitialized.
    Katika matoleo ya awali, mem::uninitialized ilikuruhusu kupitisha ukaguzi wa uanzishaji, ilitumika kwa ugawaji wa safu mvivu, lakini kazi hii ni hatari sana (zaidi), kwa hivyo aina ya LabdaUninit iliimarishwa , ambayo ni salama zaidi.
    Kweli, kwani LabdaUninit ni mbadala salama, basi kuanzia Rust 1.38, mem::unitialized itakuwa kipengele kilichoacha kutumika.
    Ikiwa ungependa kujifunza zaidi kuhusu kumbukumbu ambayo haijaanzishwa, unaweza kusoma chapisho hili la blogu na Alexis Beingessner.
  • NLL ya Rust 2015.
    Katika tangazo Kutu 1.31.0 Wasanidi programu walituambia kuhusu NLL (Non-Lexical Lifetime), uboreshaji wa lugha unaofanya kikagua kukopa kuwa nadhifu na kirafiki zaidi. Mfano:
    fn kuu() {
    acha mut x = 5;
    acha y = &x;
    acha z = &mut x; // Hii haikuruhusiwa kabla ya 1.31.0.
    }

    Mnamo 1.31.0, NLL ilifanya kazi tu katika Rust 2018, kwa ahadi kwamba wasanidi programu wataongeza usaidizi katika Rust 2015.
    Ikiwa unataka kujua zaidi kuhusu NLL, unaweza kusoma zaidi katika hili maingizo ya blogu (Felix Klocks).

  • Bendera mpya ya Cargo haiko mtandaoni.
    Rust 1.36 imeimarisha bendera mpya ya Cargo. Alama ya --offline inaiambia Cargo kutumia vitegemezi vilivyoakibishwa ndani yako ili viweze kutumika nje ya mtandao baadaye. Wakati utegemezi muhimu haupatikani nje ya mtandao, na ikiwa Internet bado inahitajika, basi Cargo itarejesha hitilafu. Ili kupakua utegemezi mapema, unaweza kutumia amri ya kuchukua mizigo, ambayo itapakua tegemezi zote.
  • Hapa unaweza kusoma muhtasari wa kina zaidi wa mabadiliko.

Pia kuna mabadiliko katika maktaba ya kawaida:

Mabadiliko mengine Kutu, Cargo ΠΈ Clippy.

Chanzo: linux.org.ru

Kuongeza maoni