Rỉ 1.36

Nhóm phát triển rất vui mừng được giới thiệu Rust 1.36!

Có gì mới trong Rust 1.36?
Đặc điểm Tương lai đã được ổn định, từ cái mới: thùng phân bổ, MaybeUninit, NLL cho Rust 2015, một triển khai mới của HashMap và một cờ mới -offline cho Cargo.


Và bây giờ chi tiết hơn:

  • Cuối cùng ở Rust 1.36 ổn định đặc điểm Tương lai.
  • Phân bổ thùng.
    Kể từ Rust 1.36, các phần của std phụ thuộc vào bộ cấp phát toàn cầu (chẳng hạn như Vec) đều nằm trong thùng cấp phát. Bây giờ std sẽ xuất lại những phần này. Thông tin thêm về điều này.
  • MaybeUninit thay vì mem::uninitialized.
    Trong các bản phát hành trước, mem::uninitialized cho phép bạn bỏ qua kiểm tra khởi tạo, nó được sử dụng để phân bổ mảng lười biếng, nhưng chức năng này khá nguy hiểm (hơn), do đó loại MaybeUninit đã được ổn định, an toàn hơn.
    Chà, vì MaybeUninit là một giải pháp thay thế an toàn hơn, bắt đầu với Rust 1.38, mem::uninitialized sẽ là một hàm không được dùng nữa.
    Nếu bạn muốn tìm hiểu thêm về bộ nhớ chưa được khởi tạo, bạn có thể đọc bài đăng trên blog này của Alexis Beingessner.
  • NLL cho Rust 2015.
    Trong thông báo Rỉ 1.31.0 Các nhà phát triển đã cho chúng tôi biết về NLL (Non-Lexical Lifetime), một cải tiến về ngôn ngữ giúp công cụ kiểm tra khoản vay thông minh hơn và thân thiện hơn với người dùng. Ví dụ:
    fn chính() {
    đặt mut x = 5;
    để y = &x;
    đặt z = &mut x; // Điều này không được phép trước 1.31.0.
    }

    Ở phiên bản 1.31.0, NLL chỉ hoạt động trong Rust 2018, với lời hứa rằng các nhà phát triển sẽ bổ sung hỗ trợ cho Rust 2015.
    Nếu bạn muốn biết thêm về NLL, bạn có thể đọc thêm trong phần này Bài viết blog (Felix Klocks).

  • Cờ mới cho Hàng hóa là —offline.
    Rust 1.36 đã ổn định cờ mới cho Hàng hóa. Cờ --offline yêu cầu Cargo sử dụng các phần phụ thuộc được lưu trong bộ nhớ đệm cục bộ để có thể sử dụng ngoại tuyến sau này. Khi các phụ thuộc cần thiết không khả dụng ngoại tuyến và nếu vẫn cần Internet thì Cargo sẽ trả về lỗi. Để tải xuống trước các phần phụ thuộc, bạn có thể sử dụng lệnh tìm nạp hàng hóa để tải xuống tất cả các phần phụ thuộc.
  • Здесь bạn có thể đọc tổng quan chi tiết hơn về những thay đổi.

Ngoài ra còn có những thay đổi trong thư viện tiêu chuẩn:

Các thay đổi khác Rust, Cargo и Clippy.

Nguồn: linux.org.ru

Thêm một lời nhận xét