SUSE-RU-2025:39484-1: moderate: Recommended update for rust, rust1.88
SLE-UPDATES
null at suse.de
Thu Jul 17 16:30:01 UTC 2025
# Recommended update for rust, rust1.88
Announcement ID: SUSE-RU-2025:39484-1
Release Date: 2025-07-17T15:06:50Z
Rating: moderate
References:
* jsc#PED-11411
* jsc#SLE-18626
Affected Products:
* Development Tools Module 15-SP6
* Development Tools Module 15-SP7
* openSUSE Leap 15.3
* openSUSE Leap 15.4
* openSUSE Leap 15.5
* openSUSE Leap 15.6
* SUSE Linux Enterprise Desktop 15 SP6
* SUSE Linux Enterprise Desktop 15 SP7
* SUSE Linux Enterprise High Performance Computing 15 SP4
* SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4
* SUSE Linux Enterprise High Performance Computing LTSS 15 SP4
* SUSE Linux Enterprise Real Time 15 SP6
* SUSE Linux Enterprise Real Time 15 SP7
* SUSE Linux Enterprise Server 15 SP4
* SUSE Linux Enterprise Server 15 SP4 LTSS
* SUSE Linux Enterprise Server 15 SP6
* SUSE Linux Enterprise Server 15 SP7
* SUSE Linux Enterprise Server for SAP Applications 15 SP4
* SUSE Linux Enterprise Server for SAP Applications 15 SP6
* SUSE Linux Enterprise Server for SAP Applications 15 SP7
An update that contains two features can now be installed.
## Description:
This update for rust fixes the following issues:
* Update to version 1.88.0 - for details see the rust1.88 package
# Version 1.88.0 (2025-06-26)
Language:
* Stabilize `#![feature(let_chains)]` in the 2024 edition. This feature allows
`&&`-chaining `let` statements inside `if` and `while`, allowing
intermixture with boolean expressions. The patterns inside the `let` sub-
expressions can be irrefutable or refutable.
* Stabilize `#![feature(naked_functions)]`. Naked functions allow writing
functions with no compiler-generated epilogue and prologue, allowing full
control over the generated assembly for a particular function.
* Stabilize `#![feature(cfg_boolean_literals)]`. This allows using boolean
literals as `cfg` predicates, e.g. `#[cfg(true)]` and `#[cfg(false)]`.
* Fully de-stabilize the `#[bench]` attribute. Usage of `#[bench]` without
`#![feature(custom_test_frameworks)]` already triggered a deny-by-default
future-incompatibility lint since Rust 1.77, but will now become a hard
error.
* Add warn-by-default `dangerous_implicit_autorefs` lint against implicit
autoref of raw pointer dereference. The lint will be bumped to deny-by-
default in the next version of Rust.
* Add `invalid_null_arguments` lint to prevent invalid usage of null pointers.
This lint is uplifted from `clippy::invalid_null_ptr_usage`.
* Change trait impl candidate preference for builtin impls and trivial where-
clauses.
* Check types of generic const parameter defaults
Compiler:
* Stabilize `-Cdwarf-version` for selecting the version of DWARF debug
information to generate.
Platform Support:
* Demote `i686-pc-windows-gnu` to Tier 2.
Refer to Rust's platform support page for more information on Rust's tiered
platform support.
Libraries:
* Remove backticks from `#[should_panic]` test failure message.
* Guarantee that `[T; N]::from_fn` is generated in order of increasing
indices, for those passing it a stateful closure.
* The libtest flag `--nocapture` is deprecated in favor of the more consistent
`--no-capture` flag.
* Guarantee that `{float}::NAN` is a quiet NaN.
Stabilized APIs:
* `Cell::update` https://doc.rust-
lang.org/stable/std/cell/struct.Cell.html#method.update
* `impl Default for *const T` https://doc.rust-
lang.org/nightly/std/primitive.pointer.html#impl-Default-for-*const+T
* `impl Default for *mut T` https://doc.rust-
lang.org/nightly/std/primitive.pointer.html#impl-Default-for-*mut+T
* `HashMap::extract_if` https://doc.rust-
lang.org/stable/std/collections/struct.HashMap.html#method.extract_if
* `HashSet::extract_if` https://doc.rust-
lang.org/stable/std/collections/struct.HashSet.html#method.extract_if
* `proc_macro::Span::line` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.line
* `proc_macro::Span::column` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.column
* `proc_macro::Span::start` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.start
* `proc_macro::Span::end` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.end
* `proc_macro::Span::file` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.file
* `proc_macro::Span::local_file` https://doc.rust-
lang.org/stable/proc_macro/struct.Span.html#method.local_file
These previously stable APIs are now stable in const contexts:
* `NonNull<T>::replace` https://doc.rust-
lang.org/stable/std/ptr/struct.NonNull.html#method.replace
* `<*mut T>::replace` https://doc.rust-
lang.org/stable/std/primitive.pointer.html#method.replace
* `std::ptr::swap_nonoverlapping`
* `Cell::{replace, get, get_mut, from_mut, as_slice_of_cells}`
Cargo:
* Stabilize automatic garbage collection.
* use `zlib-rs` for gzip compression in rust code
Rustdoc:
* Doctests can be ignored based on target names using `ignore-*` attributes.
* Stabilize the `--test-runtool` and `--test-runtool-arg` CLI options to
specify a program (like qemu) and its arguments to run a doctest.
Compatibility Notes:
* Finish changing the internal representation of pasted tokens. Certain
invalid declarative macros that were previously accepted in obscure
circumstances are now correctly rejected by the compiler. Use of a `tt`
fragment specifier can often fix these macros.
* Fully de-stabilize the `#[bench]` attribute. Usage of `#[bench]` without
`#![feature(custom_test_frameworks)]` already triggered a deny-by-default
future-incompatibility lint since Rust 1.77, but will now become a hard
error.
* Fix borrow checking some always-true patterns. The borrow checker was overly
permissive in some cases, allowing programs that shouldn't have compiled.
* Update the minimum external LLVM to 19.
* Make it a hard error to use a vector type with a non-Rust ABI without
enabling the required target feature.
## 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.3
zypper in -t patch 39484=1
* openSUSE Leap 15.4
zypper in -t patch 39484=1
* openSUSE Leap 15.5
zypper in -t patch 39484=1
* openSUSE Leap 15.6
zypper in -t patch openSUSE-SLE-15.6-2025-39484=1
* Development Tools Module 15-SP6
zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP6-2025-39484=1
* Development Tools Module 15-SP7
zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP7-2025-39484=1
* SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4
zypper in -t patch SUSE-SLE-Product-HPC-15-SP4-ESPOS-2025-39484=1
* SUSE Linux Enterprise High Performance Computing LTSS 15 SP4
zypper in -t patch SUSE-SLE-Product-HPC-15-SP4-LTSS-2025-39484=1
* SUSE Linux Enterprise Server 15 SP4 LTSS
zypper in -t patch SUSE-SLE-Product-SLES-15-SP4-LTSS-2025-39484=1
* SUSE Linux Enterprise Server for SAP Applications 15 SP4
zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP4-2025-39484=1
## Package List:
* openSUSE Leap 15.3 (aarch64 ppc64le s390x x86_64 i586)
* rust-1.88.0-150300.21.60.1
* cargo-1.88.0-150300.21.60.1
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* openSUSE Leap 15.3 (aarch64 ppc64le s390x x86_64 i586 nosrc)
* rust1.88-1.88.0-150300.7.3.2
* openSUSE Leap 15.3 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* openSUSE Leap 15.3 (nosrc)
* rust1.88-test-1.88.0-150300.7.3.2
* openSUSE Leap 15.4 (aarch64 ppc64le s390x x86_64 i586)
* rust-1.88.0-150400.24.51.2
* cargo-1.88.0-150400.24.51.2
* openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 i586)
* rust-1.88.0-150500.27.43.1
* cargo-1.88.0-150500.27.43.1
* openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64)
* rust-1.88.0-150500.27.43.1
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150500.27.43.1
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64 nosrc)
* rust1.88-1.88.0-150300.7.3.2
* openSUSE Leap 15.6 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* Development Tools Module 15-SP6 (aarch64 ppc64le s390x x86_64)
* rust-1.88.0-150500.27.43.1
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150500.27.43.1
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* Development Tools Module 15-SP6 (aarch64 ppc64le s390x x86_64 nosrc)
* rust1.88-1.88.0-150300.7.3.2
* Development Tools Module 15-SP6 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* Development Tools Module 15-SP7 (aarch64 ppc64le s390x x86_64)
* rust-1.88.0-150500.27.43.1
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150500.27.43.1
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* Development Tools Module 15-SP7 (aarch64 ppc64le s390x x86_64 nosrc)
* rust1.88-1.88.0-150300.7.3.2
* Development Tools Module 15-SP7 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (aarch64
x86_64)
* rust-1.88.0-150400.24.51.2
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150400.24.51.2
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (aarch64 nosrc
x86_64)
* rust1.88-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing ESPOS 15 SP4 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (aarch64
x86_64)
* rust-1.88.0-150400.24.51.2
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150400.24.51.2
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (aarch64 nosrc
x86_64)
* rust1.88-1.88.0-150300.7.3.2
* SUSE Linux Enterprise High Performance Computing LTSS 15 SP4 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server 15 SP4 LTSS (aarch64 ppc64le s390x x86_64)
* rust-1.88.0-150400.24.51.2
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150400.24.51.2
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server 15 SP4 LTSS (aarch64 ppc64le s390x x86_64
nosrc)
* rust1.88-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server 15 SP4 LTSS (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server for SAP Applications 15 SP4 (ppc64le x86_64)
* rust-1.88.0-150400.24.51.2
* rust1.88-debuginfo-1.88.0-150300.7.3.2
* cargo1.88-1.88.0-150300.7.3.2
* cargo-1.88.0-150400.24.51.2
* cargo1.88-debuginfo-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server for SAP Applications 15 SP4 (nosrc ppc64le
x86_64)
* rust1.88-1.88.0-150300.7.3.2
* SUSE Linux Enterprise Server for SAP Applications 15 SP4 (noarch)
* rust1.88-src-1.88.0-150300.7.3.2
## 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/20250717/f29d66a7/attachment.htm>
More information about the sle-updates
mailing list