Kalawang 1.36

Ang development team ay nasasabik na ipakilala ang Rust 1.36!

Ano ang bago sa Rust 1.36?
Ang hinaharap na katangian ay nagpapatatag, mula sa bago: alloc crate, MaybeUninit , NLL para sa Rust 2015, isang bagong pagpapatupad ng HashMap at isang bagong flag -offline para sa Cargo.


At ngayon nang mas detalyado:

  • Sa wakas sa Rust 1.36 nagpapatatag katangian Kinabukasan.
  • Crate alloc.
    Mula sa Rust 1.36, ang mga bahagi ng std na nakadepende sa global allocator (gaya ng Vec ), ay nasa alloc crate. Ngayon ay muling ie-export ng std ang mga bahaging ito. Higit pa tungkol dito.
  • SiguroUnit sa halip na mem::uninitialized.
    Sa mga nakaraang release, pinahintulutan ka ng mem::uninitialized na i-bypass ang initialization check, ginamit ito para sa lazy array allocation, ngunit ang function na ito ay medyo mapanganib (pa), kaya na-stabilize ang uri ng MaybeUninit , na mas ligtas.
    Well, since MaybeUninit ay isang mas ligtas na alternatibo, pagkatapos mula sa Rust 1.38, mem::uninitialized ay isang hindi na ginagamit na tampok.
    Kung gusto mong matuto nang higit pa tungkol sa hindi nasimulang memorya, maaari mong basahin ang post sa blog na ito ni Alexis Beingessner.
  • NLL para sa Rust 2015.
    Sa anunsyo Kalawang 1.31.0 Sinabi sa amin ng mga developer ang tungkol sa NLL (Non-Lexical Lifetime), isang pagpapabuti para sa wikang ginagawang mas matalino at mas madaling gamitin ang borrow checker. Halimbawa:
    fn main() {
    hayaan ang mut x = 5;
    hayaan ang y = &x;
    hayaan ang z = &mut x; // Ito ay hindi pinapayagan bago ang 1.31.0.
    }

    Sa 1.31.0, nagtrabaho lang ang NLL sa Rust 2018, na may pangako na magdaragdag ang mga developer ng suporta sa Rust 2015.
    Kung gusto mong malaman ang higit pa tungkol sa NLL, maaari kang magbasa ng higit pa dito mga entry sa blog (Felix Klocks).

  • Ang bagong bandila para sa Cargo ay β€”ofline.
    Pinatatag ng Rust 1.36 ang isang bagong bandila para sa Cargo. Ang --offline na flag ay nagsasabi sa Cargo na gumamit ng mga lokal na naka-cache na dependencies upang magamit ang mga ito offline sa ibang pagkakataon. Kapag hindi available offline ang mga kinakailangang dependency, at kung kailangan pa rin ng Internet, magbabalik ng error ang Cargo. Upang mag-pre-download ng mga dependency, maaari mong gamitin ang command na pagkuha ng cargo, na magda-download ng lahat ng mga dependency.
  • Dito maaari kang magbasa ng mas detalyadong pangkalahatang-ideya ng mga pagbabago.

Mayroon ding mga pagbabago sa karaniwang aklatan:

Iba pang mga pagbabago Kalawang, Karga ΠΈ Clippy.

Pinagmulan: linux.org.ru

Magdagdag ng komento