開發團隊很高興推出 Rust 1.36!
Rust 1.36 有什麼新功能?
現在更詳細:
- 終於在 Rust 1.36 中 穩定的 特質 未來。
- 板條箱分配。
從 Rust 1.36 開始,依賴全域分配器的 std 部分(例如 Vec ),位於分配箱內。 現在std將重新匯出這些部分。 有關此的更多信息. - 也許單位而不是 mem::uninitialized。
在先前的版本中,mem::uninitialized 允許您繞過初始化檢查,它用於惰性數組分配,但這個函數非常危險(更多), 這樣 MaybeUninit 類型就穩定了,這樣比較安全。
好吧,自從 MaybeUninit 是一個更安全的選擇,那麼從 Rust 1.38 開始,mem::uninitialized 將是一個已棄用的功能。
如果您想了解有關未初始化內存的更多信息,可以閱讀 Alexis Beingessner 的這篇部落格文章。 - Rust 2015 的 NLL。
公告中 銹1.31.0 開發人員向我們介紹了 NLL(非詞彙生命週期),這是對語言的改進,使借用檢查器更加聰明、更加用戶友好。 例子:
fn 主() {
令 mut x = 5;
令 y = &x;
令 z = &mut x; // 在 1.31.0 之前這是不允許的。
}在 1.31.0 中,NLL 僅在 Rust 2018 中工作,開發人員承諾將在 Rust 2015 中新增支援。
如果您想了解更多關於 NLL 的信息,您可以閱讀更多內容 部落格文章 (菲利克斯·克洛克斯)。 - Cargo 的新標誌是「離線」。
Rust 1.36 穩定了 Cargo 的新標誌。 --offline 標誌告訴 Cargo 使用本機快取的依賴項,以便稍後可以離線使用它們。 當必要的依賴項無法離線使用,並且仍然需要互聯網時,Cargo 將傳回錯誤。 為了預先下載依賴項,您可以使用 Cargo fetch 命令,該命令將下載所有依賴項。 - 這裡 您可以閱讀更詳細的更改概述。
標準庫也有變化:
- dbg!() 巨集現在可以接受多個參數。
- 一些 API 現在被標記為 const:
- 已穩定的新 API:
- 對標準庫的其他變更可以在這裡找到 這裡.
來源: linux.org.ru