SUSE-RU-2025:1350-1: moderate: Recommended update for rust, rust1.86

SLE-UPDATES null at suse.de
Mon Apr 21 08:30:04 UTC 2025



# Recommended update for rust, rust1.86

Announcement ID: SUSE-RU-2025:1350-1  
Release Date: 2025-04-20T17:59:05Z  
Rating: moderate  
References:

  * jsc#PED-11411
  * jsc#SLE-18626

  
Affected Products:

  * Development Tools Module 15-SP6
  * openSUSE Leap 15.3
  * openSUSE Leap 15.4
  * openSUSE Leap 15.5
  * openSUSE Leap 15.6
  * SUSE Enterprise Storage 7.1
  * SUSE Linux Enterprise Desktop 15 SP6
  * SUSE Linux Enterprise High Performance Computing 15 SP3
  * SUSE Linux Enterprise High Performance Computing 15 SP4
  * SUSE Linux Enterprise High Performance Computing 15 SP5
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP5
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP3
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP4
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP5
  * SUSE Linux Enterprise Real Time 15 SP6
  * SUSE Linux Enterprise Server 15 SP3
  * SUSE Linux Enterprise Server 15 SP3 LTSS
  * SUSE Linux Enterprise Server 15 SP4
  * SUSE Linux Enterprise Server 15 SP4 LTSS
  * SUSE Linux Enterprise Server 15 SP5
  * SUSE Linux Enterprise Server 15 SP5 LTSS
  * SUSE Linux Enterprise Server 15 SP6
  * SUSE Linux Enterprise Server for SAP Applications 15 SP3
  * SUSE Linux Enterprise Server for SAP Applications 15 SP4
  * SUSE Linux Enterprise Server for SAP Applications 15 SP5
  * SUSE Linux Enterprise Server for SAP Applications 15 SP6

  
  
An update that contains two features can now be installed.

## Description:

This update for rust, rust1.86 fixes the following issues:

Changes in rust1.86:

# Version 1.86.0 (2025-04-03)

## Language

  * Stabilize upcasting trait objects to supertraits.
  * Allow safe functions to be marked with the `#[target_feature]` attribute.
  * The `missing_abi` lint now warns-by-default.
  * Rust now lints about double negations, to catch cases that might have
    intended to be a prefix decrement operator (`--x`) as written in other
    languages. This was previously a clippy lint, `clippy::double_neg`, and is
    [now available directly in Rust as `double_negations`.
  * More pointers are now detected as definitely not-null based on their
    alignment in const eval.
  * Empty `repr()` attribute applied to invalid items are now correctly
    rejected.
  * Inner attributes `#![test]` and `#![rustfmt::skip]` are no longer accepted
    in more places than intended.

## Compiler

  * Debug-assert that raw pointers are non-null on access.
  * Change `-O` to mean `-C opt-level=3` instead of `-C opt-level=2` to match
    Cargo's defaults.
  * Fix emission of `overflowing_literals` under certain macro environments.

## Platform Support

  * Replace `i686-unknown-redox` target with `i586-unknown-redox`.
  * Increase baseline CPU of `i686-unknown-hurd-gnu` to Pentium 4.
  * New tier 3 targets:

  * `{aarch64-unknown,x86_64-pc}-nto-qnx710_iosock` For supporting Neutrino QNX
    7.1 with `io-socket` network stack.

  * `{aarch64-unknown,x86_64-pc}-nto-qnx800` For supporting Neutrino QNX 8.0
    (`no_std`-only).
  * `{x86_64,i686}-win7-windows-gnu` Intended for backwards compatibility with
    Windows 7. `{x86_64,i686}-win7-windows-msvc` are the Windows MSVC
    counterparts that already exist as Tier 3 targets.
  * `amdgcn-amd-amdhsa`
  * `x86_64-pc-cygwin`
  * `{mips,mipsel}-mti-none-elf` Initial bare-metal support.
  * `m68k-unknown-none-elf`
  * `armv7a-nuttx-{eabi,eabihf}`, `aarch64-unknown-nuttx`, and
    `thumbv7a-nuttx-{eabi,eabihf}`

Refer to Rust's platform support page for more information on Rust's tiered
platform support.

## Libraries

  * The type of `FromBytesWithNulError` in `CStr::from_bytes_with_nul(bytes:
    &[u8]) -> Result<&Self, FromBytesWithNulError>` was changed
    from an opaque struct to an enum, allowing users to examine why the
    conversion failed.
  * Remove `RustcDecodable` and `RustcEncodable`.
  * Deprecate libtest's `--logfile` option.
  * On recent versions of Windows, `std::fs::remove_file` will now remove read-
    only files.

## Stabilized APIs

  * `{float}::next_down` https://doc.rust-
    lang.org/stable/std/primitive.f64.html#method.next_down
  * `{float}::next_up` https://doc.rust-
    lang.org/stable/std/primitive.f64.html#method.next_up
  * `<[_]>::get_disjoint_mut` https://doc.rust-
    lang.org/stable/std/primitive.slice.html#method.get_disjoint_mut
  * `<[_]>::get_disjoint_unchecked_mut` https://doc.rust-
    lang.org/stable/std/primitive.slice.html#method.get_disjoint_unchecked_mut
  * `slice::GetDisjointMutError` https://doc.rust-
    lang.org/stable/std/slice/enum.GetDisjointMutError.html
  * `HashMap::get_disjoint_mut` https://doc.rust-
    lang.org/std/collections/hash_map/struct.HashMap.html#method.get_disjoint_mut
  * `HashMap::get_disjoint_unchecked_mut` https://doc.rust-
    lang.org/std/collections/hash_map/struct.HashMap.html#method.get_disjoint_unchecked_mut
  * `NonZero::count_ones` https://doc.rust-
    lang.org/stable/std/num/struct.NonZero.html#method.count_ones
  * `Vec::pop_if` https://doc.rust-
    lang.org/std/vec/struct.Vec.html#method.pop_if
  * `sync::Once::wait` https://doc.rust-
    lang.org/stable/std/sync/struct.Once.html#method.wait
  * `sync::Once::wait_force` https://doc.rust-
    lang.org/stable/std/sync/struct.Once.html#method.wait_force
  * `sync::OnceLock::wait` https://doc.rust-
    lang.org/stable/std/sync/struct.OnceLock.html#method.wait

These APIs are now stable in const contexts:

  * `hint::black_box` https://doc.rust-
    lang.org/stable/std/hint/fn.black_box.html
  * `io::Cursor::get_mut` https://doc.rust-
    lang.org/stable/std/io/struct.Cursor.html#method.get_mut
  * `io::Cursor::set_position` https://doc.rust-
    lang.org/stable/std/io/struct.Cursor.html#method.set_position
  * `str::is_char_boundary` https://doc.rust-
    lang.org/stable/std/primitive.str.html#method.is_char_boundary
  * `str::split_at` https://doc.rust-
    lang.org/stable/std/primitive.str.html#method.split_at
  * `str::split_at_checked` https://doc.rust-
    lang.org/stable/std/primitive.str.html#method.split_at_checked
  * `str::split_at_mut` https://doc.rust-
    lang.org/stable/std/primitive.str.html#method.split_at_mut
  * `str::split_at_mut_checked` https://doc.rust-
    lang.org/stable/std/primitive.str.html#method.split_at_mut_checked

## Cargo

  * When merging, replace rather than combine configuration keys that refer to a
    program path and its arguments.
  * Error if both `--package` and `--workspace` are passed but the requested
    package is missing. This was previously silently ignored, which was
    considered a bug since missing packages should be reported.
  * Deprecate the token argument in `cargo login` to avoid shell history leaks.
  * Simplify the implementation of `SourceID` comparisons. This may potentially
    change behavior if the canonicalized URL compares differently in alternative
    registries.

## Rustdoc

  * Add a sans-serif font setting.

## Compatibility Notes

  * The `wasm_c_abi` future compatibility warning is now a hard error. Users of
    `wasm-bindgen` should upgrade to at least version 0.2.89, otherwise
    compilation will fail.
  * Remove long-deprecated no-op attributes `#![no_start]` and `#![crate_id]`.
  * The future incompatibility lint `cenum_impl_drop_cast` has been made into a
    hard error. This means it is now an error to cast a field-less enum to an
    integer if the enum implements `Drop`.
  * SSE2 is now required for "i686" 32-bit x86 hard-float targets; disabling it
    causes a warning that will become a hard error eventually. To compile for
    pre-SSE2 32-bit x86, use a "i586" target instead.

## Internal Changes

These changes do not affect any public interfaces of Rust, but they represent
significant improvements to the performance or internals of rustc and related
tools.

  * Build the rustc on AArch64 Linux with ThinLTO + PGO. The ARM 64-bit compiler
    (AArch64) on Linux is now optimized with ThinLTO and PGO, similar to the
    optimizations we have already performed for the x86-64 compiler on Linux.
    This should make it up to 30% faster.

## 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.6  
    zypper in -t patch openSUSE-SLE-15.6-2025-1350=1

  * Development Tools Module 15-SP6  
    zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP6-2025-1350=1

  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP3  
    zypper in -t patch SUSE-SLE-Product-HPC-15-SP3-LTSS-2025-1350=1

  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4  
    zypper in -t patch SUSE-SLE-Product-HPC-15-SP4-ESPOS-2025-1350=1

  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP4  
    zypper in -t patch SUSE-SLE-Product-HPC-15-SP4-LTSS-2025-1350=1

  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP5  
    zypper in -t patch SUSE-SLE-Product-HPC-15-SP5-ESPOS-2025-1350=1

  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP5  
    zypper in -t patch SUSE-SLE-Product-HPC-15-SP5-LTSS-2025-1350=1

  * SUSE Linux Enterprise Server 15 SP3 LTSS  
    zypper in -t patch SUSE-SLE-Product-SLES-15-SP3-LTSS-2025-1350=1

  * SUSE Linux Enterprise Server 15 SP4 LTSS  
    zypper in -t patch SUSE-SLE-Product-SLES-15-SP4-LTSS-2025-1350=1

  * SUSE Linux Enterprise Server 15 SP5 LTSS  
    zypper in -t patch SUSE-SLE-Product-SLES-15-SP5-LTSS-2025-1350=1

  * SUSE Linux Enterprise Server for SAP Applications 15 SP3  
    zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP3-2025-1350=1

  * SUSE Linux Enterprise Server for SAP Applications 15 SP4  
    zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP4-2025-1350=1

  * SUSE Linux Enterprise Server for SAP Applications 15 SP5  
    zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP5-2025-1350=1

  * SUSE Enterprise Storage 7.1  
    zypper in -t patch SUSE-Storage-7.1-2025-1350=1

  * openSUSE Leap 15.3  
    zypper in -t patch SUSE-2025-1350=1

  * openSUSE Leap 15.4  
    zypper in -t patch SUSE-2025-1350=1

  * openSUSE Leap 15.5  
    zypper in -t patch SUSE-2025-1350=1

## Package List:

  * openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64 nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * openSUSE Leap 15.6 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * Development Tools Module 15-SP6 (aarch64 ppc64le s390x x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * Development Tools Module 15-SP6 (aarch64 ppc64le s390x x86_64 nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * Development Tools Module 15-SP6 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP3 (aarch64
    x86_64)
    * cargo-1.86.0-150300.21.52.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150300.21.52.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP3 (aarch64 nosrc
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP3 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (aarch64
    x86_64)
    * rust-1.86.0-150400.24.42.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150400.24.42.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (aarch64 nosrc
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (aarch64
    x86_64)
    * rust-1.86.0-150400.24.42.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150400.24.42.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (aarch64 nosrc
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP5 (aarch64
    x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP5 (aarch64 nosrc
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing ESPOS 15 SP5 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP5 (aarch64
    x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP5 (aarch64 nosrc
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise High Performance Computing LTSS 15 SP5 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP3 LTSS (aarch64 ppc64le s390x x86_64)
    * cargo-1.86.0-150300.21.52.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150300.21.52.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP3 LTSS (aarch64 ppc64le s390x x86_64
    nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP3 LTSS (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP4 LTSS (aarch64 ppc64le s390x x86_64)
    * rust-1.86.0-150400.24.42.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150400.24.42.1
  * SUSE Linux Enterprise Server 15 SP4 LTSS (aarch64 ppc64le s390x x86_64
    nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP4 LTSS (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP5 LTSS (aarch64 ppc64le s390x x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * SUSE Linux Enterprise Server 15 SP5 LTSS (aarch64 ppc64le s390x x86_64
    nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server 15 SP5 LTSS (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP3 (ppc64le x86_64)
    * cargo-1.86.0-150300.21.52.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150300.21.52.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP3 (nosrc ppc64le
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP3 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP4 (ppc64le x86_64)
    * rust-1.86.0-150400.24.42.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150400.24.42.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP4 (nosrc ppc64le
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP4 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP5 (ppc64le x86_64)
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150500.27.36.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
    * cargo-1.86.0-150500.27.36.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP5 (nosrc ppc64le
    x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Linux Enterprise Server for SAP Applications 15 SP5 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * SUSE Enterprise Storage 7.1 (aarch64 x86_64)
    * cargo-1.86.0-150300.21.52.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150300.21.52.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
  * SUSE Enterprise Storage 7.1 (aarch64 nosrc x86_64)
    * rust1.86-1.86.0-150300.7.5.1
  * SUSE Enterprise Storage 7.1 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * openSUSE Leap 15.3 (aarch64 ppc64le s390x x86_64 i586)
    * cargo-1.86.0-150300.21.52.1
    * cargo1.86-debuginfo-1.86.0-150300.7.5.1
    * rust-1.86.0-150300.21.52.1
    * rust1.86-debuginfo-1.86.0-150300.7.5.1
    * cargo1.86-1.86.0-150300.7.5.1
  * openSUSE Leap 15.3 (aarch64 ppc64le s390x x86_64 i586 nosrc)
    * rust1.86-1.86.0-150300.7.5.1
  * openSUSE Leap 15.3 (noarch)
    * rust1.86-src-1.86.0-150300.7.5.1
  * openSUSE Leap 15.3 (nosrc)
    * rust1.86-test-1.86.0-150300.7.5.1
  * openSUSE Leap 15.4 (aarch64 ppc64le s390x x86_64 i586)
    * cargo-1.86.0-150400.24.42.1
    * rust-1.86.0-150400.24.42.1
  * openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 i586)
    * cargo-1.86.0-150500.27.36.1
    * rust-1.86.0-150500.27.36.1

## References:

  * https://jira.suse.com/browse/PED-11411
  * https://jira.suse.com/browse/SLE-18626

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.suse.com/pipermail/sle-updates/attachments/20250421/ddecb9fc/attachment.htm>


More information about the sle-updates mailing list