Ishlab chiqish jamoasi Rust 1.36 ni taqdim etishdan xursand!
Rust 1.36 da qanday yangiliklar bor?
Va endi batafsilroq:
- Nihoyat Rust 1.36 da barqarorlashdi xususiyat kelajak.
- Sandiqni ajratish.
Rust 1.36 holatiga ko'ra, global ajratuvchiga bog'liq bo'lgan std qismlari (masalan, Vec) ajratish qutisida. Endi std bu qismlarni qayta eksport qiladi. Bu haqda batafsil. - mem::uninitialized o'rniga MaybeUninit.
Oldingi nashrlarda mem::uninitialized ishga tushirish tekshiruvini chetlab o'tishga imkon berdi, u massivlarni dangasa ajratish uchun ishlatilgan, ammo bu funktsiya juda xavfli (batafsil ma'lumot), shuning uchun MaybeUninit turi barqarorlashdi, bu xavfsizroq.
Ehtimol, MaybeUninit xavfsizroq alternativ bo'lgani uchun Rust 1.38 dan boshlab, mem::uninitialized eskirgan funksiya bo'ladi.
Agar siz ishga tushirilmagan xotira haqida ko'proq ma'lumotga ega bo'lishni istasangiz, Aleksis Beingessnerning ushbu blog postini o'qishingiz mumkin. - Rust 2015 uchun NLL.
E'londa Pas 1.31.0 Ishlab chiquvchilar bizga NLL (Lexical Non-Lexical Lifetime) haqida gapirib berishdi, bu til uchun yaxshilanishdir, bu qarzni tekshirishni yanada aqlli va foydalanuvchilarga qulayroq qiladi. Misol:
fn main() {
mut x = 5 bo'lsin;
y = &x;
z = &mut x; // Bunga 1.31.0 dan oldin ruxsat berilmagan.
}1.31.0 da NLL faqat Rust 2018 da ishladi, ishlab chiquvchilar Rust 2015 da qo'llab-quvvatlashni qo'shishini va'da qildi.
Agar siz NLL haqida ko'proq bilmoqchi bo'lsangiz, bu haqda ko'proq o'qishingiz mumkin blog yozuvlari (Feliks Kloks). - Cargo uchun yangi bayroq β oflayn.
Rust 1.36 yuk uchun yangi bayroqni barqarorlashtirdi. --offline bayrog'i Cargo-ga mahalliy keshlangan bog'liqliklarni keyinchalik oflayn rejimda ishlatish uchun ishlatishni aytadi. Kerakli bog'liqliklar oflayn rejimda mavjud bo'lmaganda va agar Internet hali ham kerak bo'lsa, Cargo xatolikni qaytaradi. Bog'liqlarni oldindan yuklab olish uchun siz barcha bog'liqliklarni yuklab oladigan yukni olib kelish buyrug'idan foydalanishingiz mumkin. - u o'zgarishlarning batafsil sharhini o'qishingiz mumkin.
Standart kutubxonada ham o'zgarishlar mavjud:
- dbg!() makros endi bir nechta argumentlarni qabul qilishi mumkin.
- Bir nechta API endi const deb belgilangan:
- Stabillashtirilgan yangi APIlar:
- Standart kutubxonaga kiritilgan boshqa oΚ»zgarishlarni bu yerda topishingiz mumkin shu yerda.
Boshqa o'zgarishlar zang, yuk ΠΈ Klippi.
Manba: linux.org.ru