Karat 1.36

Tim pengembangan dengan senang hati memperkenalkan Rust 1.36!

Apa yang baru di Rust 1.36?
Sifat masa depan stabil, dari yang baru: mengalokasikan peti, MungkinUninit , NLL untuk Karat 2015, implementasi baru dari HashMap dan bendera baru -offline untuk Cargo.


Dan sekarang lebih detail:

  • Akhirnya di Rust 1.36 stabil sifat Masa Depan.
  • Alokasi peti.
    Pada Rust 1.36, bagian dari std yang bergantung pada pengalokasi global (seperti Vec ), ada di peti alokasi. Sekarang std akan mengekspor kembali bagian-bagian ini. Lebih lanjut tentang itu.
  • MungkinUnit alih-alih mem::tidak diinisialisasi.
    Dalam rilis sebelumnya, mem::uninitialized memungkinkan Anda melewati pemeriksaan inisialisasi, ini digunakan untuk alokasi array yang lambat, tetapi fungsi ini cukup berbahaya (lebih), jadi tipe MaybeUninit distabilkan , mana yang lebih aman.
    Ya, sejak MaybeUninit adalah alternatif yang lebih aman, maka pada Rust 1.38, mem::uninitialized akan menjadi fitur yang tidak digunakan lagi.
    Jika Anda ingin mempelajari lebih lanjut tentang memori yang tidak diinisialisasi, Anda dapat membaca postingan blog oleh Alexis Beingessner ini.
  • NLL untuk Karat 2015.
    Dalam pengumuman tersebut Karat 1.31.0 Para pengembang memberi tahu kami tentang NLL (Non-Lexical Lifetime), sebuah peningkatan pada bahasa yang menjadikan pemeriksa pinjaman lebih cerdas dan lebih ramah pengguna. Contoh:
    fn utama() {
    misalkan mut x = 5;
    misalkan y = &x;
    misalkan z = &mut x; // Ini tidak diperbolehkan sebelum versi 1.31.0.
    }

    Di 1.31.0, NLL hanya berfungsi di Rust 2018, dengan janji bahwa pengembang akan menambahkan dukungan di Rust 2015.
    Jika Anda ingin tahu lebih banyak tentang NLL, Anda bisa membaca lebih lanjut di sini entri blog (Felix Klocks).

  • Bendera baru untuk Cargo adalah β€”offline.
    Rust 1.36 telah menstabilkan bendera baru untuk Cargo. Bendera --offline memberitahu Cargo untuk menggunakan dependensi yang di-cache secara lokal sehingga dapat digunakan secara offline nanti. Ketika dependensi yang diperlukan tidak tersedia secara offline, dan jika Internet masih diperlukan, maka Cargo akan mengembalikan kesalahan. Untuk mengunduh dependensi terlebih dahulu, Anda dapat menggunakan perintah pengambilan kargo, yang akan mengunduh semua dependensi.
  • Di sini Anda dapat membaca ikhtisar perubahan yang lebih detail.

Ada juga perubahan di perpustakaan standar:

Perubahan lainnya Karat, Muatan ΠΈ Clippy.

Sumber: linux.org.ru

Tambah komentar