SUSE-RU-2025:02341-1: moderate: Recommended update for rust1.88
SLE-UPDATES
null at suse.de
Thu Jul 17 12:30:28 UTC 2025
# Recommended update for rust1.88
Announcement ID: SUSE-RU-2025:02341-1
Release Date: 2025-07-17T10:05:04Z
Rating: moderate
References:
* bsc#1243588
Affected Products:
* openSUSE Leap 15.6
* SUSE Linux Enterprise Desktop 15 SP6
* SUSE Linux Enterprise Desktop 15 SP7
* SUSE Linux Enterprise Real Time 15 SP6
* SUSE Linux Enterprise Real Time 15 SP7
* SUSE Linux Enterprise Server 15 SP6
* SUSE Linux Enterprise Server 15 SP7
* SUSE Linux Enterprise Server for SAP Applications 15 SP6
* SUSE Linux Enterprise Server for SAP Applications 15 SP7
* SUSE Package Hub 15 15-SP6
* SUSE Package Hub 15 15-SP7
An update that has one fix can now be installed.
## Description:
This update for rust1.88 fixes the following issues:
* bsc#1243588 - Update changelog to remove hyphen as a line break for source
validator
# 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`
* `impl Default for *const T`
* `impl Default for *mut T`
* `HashMap::extract_if`
* `HashSet::extract_if`
* `proc_macro::Span::line`
* `proc_macro::Span::column`
* `proc_macro::Span::start`
* `proc_macro::Span::end`
* `proc_macro::Span::file`
* `proc_macro::Span::local_file` These previously stable APIs are now stable
in const contexts:
* `NonNull<T>::replace`
* `<*mut T>::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.6
zypper in -t patch openSUSE-SLE-15.6-2025-2341=1
* SUSE Package Hub 15 15-SP6
zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP6-2025-2341=1
* SUSE Package Hub 15 15-SP7
zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP7-2025-2341=1
## Package List:
* openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64)
* rust-cbindgen-0.28.0+git0-150200.6.7.2
* SUSE Package Hub 15 15-SP6 (aarch64 ppc64le s390x x86_64)
* rust-cbindgen-0.28.0+git0-150200.6.7.2
* SUSE Package Hub 15 15-SP7 (aarch64 ppc64le s390x x86_64)
* rust-cbindgen-0.28.0+git0-150200.6.7.2
## References:
* https://bugzilla.suse.com/show_bug.cgi?id=1243588
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.suse.com/pipermail/sle-updates/attachments/20250717/03d15546/attachment.htm>
More information about the sle-updates
mailing list