What's new in this version: Rust 1.38.0 Language: - The #[global_allocator] attribute can now be used in submodules - The #[deprecated] attribute can now be used on macros
Compiler: - Added pipelined compilation support to rustc. This will improve compilation times in some cases. For further information please refer to the "Evaluating pipelined rustc compilation" thread - Added tier 3 support for the aarch64-uwp-windows-msvc, i686-uwp-windows-gnu, i686-uwp-windows-msvc, x86_64-uwp-windows-gnu, and x86_64-uwp-windows-msvc targets - Added tier 3 support for the armv7-unknown-linux-gnueabi and armv7-unknown-linux-musleabi targets - Added tier 3 support for the hexagon-unknown-linux-musl target - Added tier 3 support for the riscv32i-unknown-none-elf target
Libraries: - ascii::EscapeDefault now implements Clone and Display - Derive macros for prelude traits (e.g. Clone, Debug, Hash) are now available at the same path as the trait. (e.g. The Clone derive macro is available at std::clone::Clone). This also makes all built-in macros available in std/core root. e.g. std::include_bytes! - str::Chars now implements Debug - slice::{concat, connect, join} now accepts &[T] in addition to &T - *const T and *mut T now implement marker::Unpin - Arc<[T]> and Rc<[T]> now implement FromIterator<T>. - Added euclidean remainder and division operations (div_euclid, rem_euclid) to all numeric primitives. Additionally checked, overflowing, and wrapping versions are available for all integer primitives - thread::AccessError now implements Clone, Copy, Eq, Error, and PartialEq - iter::{StepBy, Peekable, Take} now implement DoubleEndedIterator
Stabilized APIs: - <*const T>::cast - <*mut T>::cast - Duration::as_secs_f32 - Duration::as_secs_f64 - Duration::div_duration_f32 - Duration::div_duration_f64 - Duration::div_f32 - Duration::div_f64 - Duration::from_secs_f32 - Duration::from_secs_f64 - Duration::mul_f32 - Duration::mul_f64 - any::type_name
Cargo: - Added pipelined compilation support to cargo - You can now pass the --features option multiple times to enable multiple features
Misc: - rustc will now warn about some incorrect uses of mem::{uninitialized, zeroed} that are known to cause undefined behaviour
Compatibility Notes: - The x86_64-unknown-uefi platform can not be built with rustc 1.38.0 - The armv7-unknown-linux-gnueabihf platform is known to have issues with certain crates such as libc
Rust 1.37.0 Language: - #[must_use] will now warn if the type is contained in a tuple, Box, or an array and unused. - You can now use the cfg and cfg_attr attributes on generic parameters. - You can now use enum variants through type alias. e.g. You can write the following: - type MyOption = Option; - fn increment_or_zero(x: MyOption) -> u8 { - match x { - MyOption::Some(y) => y + 1, - MyOption::None => 0, - You can now use _ as an identifier for consts. e.g. You can write const _: u32 = 5;. - You can now use #[repr(align(X)] on enums. - The ? Kleene macro operator is now available in the 2015 edition.
Compiler: You can now enable Profile-Guided Optimization with the -C profile-generate and -C profile-use flags. For more information on how to use profile - guided optimization, please refer to the rustc book. - The rust-lldb wrapper script should now work again.
Libraries: - mem::MaybeUninit is now ABI-compatible with T. - Stabilized APIs: - BufReader::buffer - BufWriter::buffer - Cell::from_mut - Cell<[T]>::as_slice_of_cells - DoubleEndedIterator::nth_back - Option::xor - Wrapping::reverse_bits - i128::reverse_bits - i16::reverse_bits - i32::reverse_bits - i64::reverse_bits - i8::reverse_bits - isize::reverse_bits - slice::copy_within - u128::reverse_bits - u16::reverse_bits - u32::reverse_bits - u64::reverse_bits - u8::reverse_bits - usize::reverse_bits
Cargo: - Cargo.lock files are now included by default when publishing executable crates with executables. - You can now specify default-run="foo" in [package] to specify the default executable to use for cargo run.
Rust 1.38.0 相關參考資料
1.38.0 pre-release is ready for testing - announcements - Rust ...
The 1.38.0 pre-release is ready for testing. Rust 1.38.0 is scheduled to be released on Thursday September 26th. Release notes can be found here: ...
https://internals.rust-lang.or
Announcing Rust 1.36.0 | Rust Blog
The Rust team is happy to announce a new version of Rust, 1.36.0. Rust is a programming language that is empowering everyone to build ...
https://blog.rust-lang.org
Announcing Rust 1.38.0 | Rust Blog
9 小時前 - The Rust team is happy to announce a new version of Rust, 1.38.0. Rust is a programming language that is empowering everyone to build ...
https://blog.rust-lang.org
Crater runs for Rust 1.38.0 · Issue #63628 · rust-langrust ...
cc @rust-lang/release. ... Crater runs for Rust 1.38.0 #63628. Open ... ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem.
https://github.com
Rust 1.38.0 is released! - rust - Reddit
Compile speeds are nice. As is the deprecated macro. I was actually waiting for Euclidean remainder and division operators to go stable so that is great to see.
https://www.reddit.com
Rust 1.38.0 is released! : programming - Reddit
Rust 1.38.0 is released! r/rust. •. Posted by. u/Mark-Simulacrum · 14 hours ago · Rust 1.38.0 is released! blog.rust-lang.org/2019/0... 0 points. 2 comments.
https://www.reddit.com
Rust 1.38.0 pre-release testing : rust - Reddit
3 天前 - The Rust 1.38.0 pre-release is ready for testing! The binaries are the same that will be released on Thursday 26th unless critical issues are ...
https://www.reddit.com
Stabilize `async_await` in Rust 1.38.0 : rust - Reddit
r/rust: A place for all things related to the Rust programming language—an open-source systems language that emphasizes performance, reliability …
https://www.reddit.com
Updated RELEASES.md for 1.38.0 by XAMPPRocky · Pull ...
Rendered r? @Mark-Simulacrum cc @rust-lang/release. ... Updated RELEASES.md for 1.38.0 #64283. Open. XAMPPRocky wants to merge 1 ...
https://github.com
【Rust日报】2019-09-25 Nushell 0.3.0 发布- Rust语言中文社区
1 天前 - Rust 1.38.0 计划在9 月26 日发布,发布日志可以查看https://github.com/rust-lang/rust/blob/master/RELEASES.md. 可以通过以下方式尝试:
https://rust.cc
|