SUSE-RU-2024:1159-1: moderate: Recommended update for rust, rust1.77
# Recommended update for rust, rust1.77 Announcement ID: SUSE-RU-2024:1159-1 Rating: moderate References: * bsc#1222047 Affected Products: * Development Tools Module 15-SP5 * openSUSE Leap 15.5 * SUSE Linux Enterprise Desktop 15 SP5 * SUSE Linux Enterprise High Performance Computing 15 SP5 * SUSE Linux Enterprise Real Time 15 SP5 * SUSE Linux Enterprise Server 15 SP5 * SUSE Linux Enterprise Server for SAP Applications 15 SP5 An update that has one fix can now be installed. ## Description: This update for rust, rust1.77 fixes the following issues: Changes in rust1.77: * update gcc minimum to 13 for SLE (bsc#1222047) # Version 1.77.0 (2024-03-21) ## Language * Reveal opaque types within the defining body for exhaustiveness checking. * Stabilize C-string literals. * Stabilize THIR unsafeck. * Add lint `static_mut_refs` to warn on references to mutable statics. * Support async recursive calls (as long as they have indirection). * Undeprecate lint `unstable_features` and make use of it in the compiler. * Make inductive cycles in coherence ambiguous always. * Get rid of type-driven traversal in const-eval interning only as a [future compatiblity lint * Deny braced macro invocations in let-else. ## Compiler * Include lint `soft_unstable` in future breakage reports. * Make `i128` and `u128` 16-byte aligned on x86-based targets. * Use `--verbose` in diagnostic output. * Improve spacing between printed tokens. * Merge the `unused_tuple_struct_fields` lint into `dead_code`. * Error on incorrect implied bounds in well-formedness check with a temporary exception for Bevy. * Fix coverage instrumentation/reports for non-ASCII source code. * Fix `fn`/`const` items implied bounds and well-formedness check. * Promote `riscv32{im|imafc}-unknown-none-elf` targets to tier 2. ## Libraries * Implement `From<&[T; N]>` for `Cow<[T]>`. * Remove special-case handling of `vec.split_off(0)`. ## Stabilized APIs * `array::each_ref` https://doc.rust- lang.org/stable/std/primitive.array.html#method.each_ref * `array::each_mut` https://doc.rust- lang.org/stable/std/primitive.array.html#method.each_mut * `core::net` https://doc.rust-lang.org/stable/core/net/index.html * `f32::round_ties_even` https://doc.rust- lang.org/stable/std/primitive.f32.html#method.round_ties_even * `f64::round_ties_even` https://doc.rust- lang.org/stable/std/primitive.f64.html#method.round_ties_even * `mem::offset_of!` https://doc.rust- lang.org/stable/std/mem/macro.offset_of.html * `slice::first_chunk` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.first_chunk * `slice::first_chunk_mut` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.first_chunk_mut * `slice::split_first_chunk` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.split_first_chunk * `slice::split_first_chunk_mut` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.split_first_chunk_mut * `slice::last_chunk` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.last_chunk * `slice::last_chunk_mut` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.last_chunk_mut * `slice::split_last_chunk` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.split_last_chunk * `slice::split_last_chunk_mut` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.split_last_chunk_mut * `slice::chunk_by` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.chunk_by * `slice::chunk_by_mut` https://doc.rust- lang.org/stable/std/primitive.slice.html#method.chunk_by_mut * `Bound::map` https://doc.rust- lang.org/stable/std/ops/enum.Bound.html#method.map * `File::create_new` https://doc.rust- lang.org/stable/std/fs/struct.File.html#method.create_new * `Mutex::clear_poison` https://doc.rust- lang.org/stable/std/sync/struct.Mutex.html#method.clear_poison * `RwLock::clear_poison` https://doc.rust- lang.org/stable/std/sync/struct.RwLock.html#method.clear_poison ## Cargo * Extend the build directive syntax with `cargo::`. * Stabilize metadata `id` format as `PackageIDSpec`. * Pull out `cargo-util-schemas` as a crate. * Strip all debuginfo when debuginfo is not requested. * Inherit jobserver from env for all kinds of runners. * Deprecate rustc plugin support in cargo. ## Rustdoc * Allows links in markdown headings. * Search for tuples and unit by type with `()`. * Clean up the source sidebar's hide button. * Prevent JS injection from `localStorage`. ## Misc * Recommend version-sorting for all sorting in style guide. ## Patch Instructions: To install this SUSE update use the SUSE recommended installation methods like YaST online_update or "zypper patch". Alternatively you can run the command listed for your product: * openSUSE Leap 15.5 zypper in -t patch SUSE-2024-1159=1 openSUSE-SLE-15.5-2024-1159=1 * Development Tools Module 15-SP5 zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP5-2024-1159=1 ## Package List: * openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 i586) * cargo1.77-1.77.0-150500.11.3.1 * rust1.77-debuginfo-1.77.0-150500.11.3.1 * cargo-1.77.0-150500.27.9.1 * cargo1.77-debuginfo-1.77.0-150500.11.3.1 * rust-1.77.0-150500.27.9.1 * openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 i586 nosrc) * rust1.77-1.77.0-150500.11.3.1 * openSUSE Leap 15.5 (nosrc) * rust1.77-test-1.77.0-150500.11.3.1 * Development Tools Module 15-SP5 (aarch64 ppc64le s390x x86_64) * cargo1.77-1.77.0-150500.11.3.1 * rust1.77-debuginfo-1.77.0-150500.11.3.1 * cargo-1.77.0-150500.27.9.1 * cargo1.77-debuginfo-1.77.0-150500.11.3.1 * rust-1.77.0-150500.27.9.1 * Development Tools Module 15-SP5 (aarch64 ppc64le s390x x86_64 nosrc) * rust1.77-1.77.0-150500.11.3.1 ## References: * https://bugzilla.suse.com/show_bug.cgi?id=1222047
participants (1)
-
OPENSUSE-UPDATES