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