--- - branch: MAIN date: Sun Jun 24 08:05:26 UTC 2018 files: - new: '1.39' old: '1.38' path: pkgsrc/lang/rust/Makefile pathrev: pkgsrc/lang/rust/Makefile@1.39 type: modified - new: '1.27' old: '1.26' path: pkgsrc/lang/rust/distinfo pathrev: pkgsrc/lang/rust/distinfo@1.27 type: modified - new: '1.1' old: '0' path: pkgsrc/lang/rust/patches/patch-src_vendor_libc_src_unix_solaris_mod.rs pathrev: pkgsrc/lang/rust/patches/patch-src_vendor_libc_src_unix_solaris_mod.rs@1.1 type: added id: 20180624T080526Z.bba11908e22e6a6b2f2ed385d6239830ac08f8ad log: | Update to 1.27.0 * SunOS parts are from jperkin@. Changelog: Version 1.27.0 (2018-06-21) Language Removed 'proc' from the reserved keywords list. This allows proc to be used as an identifer. The dyn syntax is now available. This syntax is equivalent to the bare Trait syntax, and should make it clearer when being used in tandem with impl Trait. Since it is equivalent to the following syntax: &Trait == &dyn Trait, &mut Trait == &mut dyn Trait, and Box == Box. Attributes on generic parameters such as types and lifetimes are now stable. e.g. fn foo<#[lifetime_attr] 'a, #[type_attr] T: 'a>() {} The #[must_use] attribute can now also be used on functions as well as types. It provides a lint that by default warns users when the value returned by a function has not been used. Compiler Added the armv5te-unknown-linux-musl target. Libraries SIMD (Single Instruction Multiple Data) on x86/x86_64 is now stable. This includes arch::x86 & arch::x86_64 modules which contain SIMD intrinsics, a new macro called is_x86_feature_detected!, the #[target_feature(enable="")] attribute, and adding target_feature = "" to the cfg attribute. A lot of methods for [u8], f32, and f64 previously only available in std are now available in core. The generic Rhs type parameter on ops::{Shl, ShlAssign, Shr} now defaults to Self. std::str::replace now has the #[must_use] attribute to clarify that the operation isn't done in place. Clone::clone, Iterator::collect, and ToOwned::to_owned now have the #[must_use] attribute to warn about unused potentially expensive allocations. Stabilized APIs DoubleEndedIterator::rfind DoubleEndedIterator::rfold DoubleEndedIterator::try_rfold Duration::from_micros Duration::from_nanos Duration::subsec_micros Duration::subsec_millis HashMap::remove_entry Iterator::try_fold Iterator::try_for_each NonNull::cast Option::filter String::replace_range Take::set_limit hint::unreachable_unchecked os::unix::process::parent_id process::id ptr::swap_nonoverlapping slice::rsplit_mut slice::rsplit slice::swap_with_slice Cargo cargo-metadata now includes authors, categories, keywords, readme, and repository fields. Added the --target-dir optional argument. This allows you to specify a different directory than target for placing compilation artifacts. Cargo will be adding automatic target inference for binaries, benchmarks, examples, and tests in the Rust 2018 edition. If your project specifies specific targets e.g. using [[bin]] and have other binaries in locations where cargo would infer a binary, Cargo will produce a warning. You can disable this feature ahead of time by setting any of the following autobins, autobenches, autoexamples, autotests to false. Cargo will now cache compiler information. This can be disabled by setting CARGO_CACHE_RUSTC_INFO=0 in your environment. Misc Added "The Rustc book" into the official documentation. "The Rustc book" documents and teaches how to use the rustc compiler. All books available on doc.rust-lang.org are now searchable. Compatibility Notes Calling a CharExt or StrExt method directly on core will no longer work. e.g. ::core::prelude::v1::StrExt::is_empty("") will not compile, "".is_empty() will still compile. Debug output on atomic::{AtomicBool, AtomicIsize, AtomicPtr, AtomicUsize} will only print the inner type. e.g. print!("{:?}", AtomicBool::new(true)) will print true not AtomicBool(true). The maximum number for repr(align(N)) is now 2^29. Previously you could enter higher numbers but they were not supported by LLVM. Up to 512MB alignment should cover all use cases. module: pkgsrc subject: 'CVS commit: pkgsrc/lang/rust' unixtime: '1529827526' user: ryoon