<div class="container">
    <h1>Recommended update for rust1.88</h1>

    <table class="table table-striped table-bordered">
        <tbody>
        <tr>
            <th>Announcement ID:</th>
            <td>SUSE-RU-2025:02341-1</td>
        </tr>
        <tr>
            <th>Release Date:</th>
            <td>2025-07-17T10:05:04Z</td>
        </tr>
        
        <tr>
            <th>Rating:</th>
            <td>moderate</td>
        </tr>
        <tr>
            <th>References:</th>
            <td>
                <ul>
                    
                        <li style="display: inline;">
                            <a href="https://bugzilla.suse.com/show_bug.cgi?id=1243588">bsc#1243588</a>
                        </li>
                    
                    
                </ul>
            </td>
        </tr>
        
        <tr>
            <th>Affected Products:</th>
            <td>
                <ul class="list-group">
                    
                        <li class="list-group-item">openSUSE Leap 15.6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP6</li>
                    
                        <li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP7</li>
                    
                        <li class="list-group-item">SUSE Package Hub 15 15-SP6</li>
                    
                        <li class="list-group-item">SUSE Package Hub 15 15-SP7</li>
                    
                </ul>
            </td>
        </tr>
        </tbody>
    </table>

    <p>An update that has one fix can now be installed.</p>

    


    
        <h2>Description:</h2>
    
    <p>This update for rust1.88 fixes the following issues:</p>
<ul>
<li>bsc#1243588 - Update changelog to remove hyphen as a line break for source validator</li>
</ul>
<h1>Version 1.88.0 (2025-06-26)</h1>
<h2>Language</h2>
<ul>
<li><a href="https://github.com/rust-lang/rust/pull/132833">Stabilize <code>#![feature(let_chains)]</code> in the 2024 edition.</a>
  This feature allows <code>&amp;&amp;</code>-chaining <code>let</code> statements inside <code>if</code> and <code>while</code>, allowing intermixture with boolean expressions. The patterns inside the <code>let</code> sub-expressions can be irrefutable or refutable.</li>
<li><a href="https://github.com/rust-lang/rust/pull/134213">Stabilize <code>#![feature(naked_functions)]</code>.</a>
  Naked functions allow writing functions with no compiler-generated epilogue and prologue, allowing full control over the generated assembly for a particular function.</li>
<li><a href="https://github.com/rust-lang/rust/pull/138632">Stabilize <code>#![feature(cfg_boolean_literals)]</code>.</a>
  This allows using boolean literals as <code>cfg</code> predicates, e.g. <code>#[cfg(true)]</code> and <code>#[cfg(false)]</code>.</li>
<li><a href="https://github.com/rust-lang/rust/pull/134273">Fully de-stabilize the <code>#[bench]</code> attribute</a>. Usage of <code>#[bench]</code> without <code>#![feature(custom_test_frameworks)]</code> already triggered a deny-by-default future-incompatibility lint since Rust 1.77, but will now become a hard error.</li>
<li><a href="https://github.com/rust-lang/rust/pull/123239">Add warn-by-default <code>dangerous_implicit_autorefs</code> lint against implicit autoref of raw pointer dereference.</a>
  The lint <a href="https://github.com/rust-lang/rust/pull/141661">will be bumped to deny-by-default</a> in the next version of Rust.</li>
<li><a href="https://github.com/rust-lang/rust/pull/119220">Add <code>invalid_null_arguments</code> lint to prevent invalid usage of null pointers.</a>
  This lint is uplifted from <code>clippy::invalid_null_ptr_usage</code>.</li>
<li><a href="https://github.com/rust-lang/rust/pull/138176">Change trait impl candidate preference for builtin impls and trivial where-clauses.</a></li>
<li><a href="https://github.com/rust-lang/rust/pull/139646">Check types of generic const parameter defaults</a></li>
</ul>
<h2>Compiler</h2>
<ul>
<li><a href="https://github.com/rust-lang/rust/pull/136926">Stabilize <code>-Cdwarf-version</code> for selecting the version of DWARF debug information to generate.</a></li>
</ul>
<h2>Platform Support</h2>
<ul>
<li><a href="https://blog.rust-lang.org/2025/05/26/demoting-i686-pc-windows-gnu/">Demote <code>i686-pc-windows-gnu</code> to Tier 2.</a>
Refer to Rust&#x27;s <a href="https://doc.rust-lang.org/rustc/platform-support.html">platform support page</a>
for more information on Rust&#x27;s tiered platform support.</li>
</ul>
<h2>Libraries</h2>
<ul>
<li><a href="https://github.com/rust-lang/rust/pull/136160">Remove backticks from <code>#[should_panic]</code> test failure message.</a></li>
<li><a href="https://github.com/rust-lang/rust/pull/139099">Guarantee that <code>[T; N]::from_fn</code> is generated in order of increasing indices.</a>, for those passing it a stateful closure.</li>
<li><a href="https://github.com/rust-lang/rust/pull/139224">The libtest flag <code>--nocapture</code> is deprecated in favor of the more consistent <code>--no-capture</code> flag.</a></li>
<li><a href="https://github.com/rust-lang/rust/pull/139483">Guarantee that <code>{float}::NAN</code> is a quiet NaN.</a></li>
</ul>
<h2>Stabilized APIs</h2>
<ul>
<li><a href="https://doc.rust-lang.org/stable/std/cell/struct.Cell.html#method.update"><code>Cell::update</code></a></li>
<li><a href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html#impl-Default-for-*const+T"><code>impl Default for *const T</code></a></li>
<li><a href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html#impl-Default-for-*mut+T"><code>impl Default for *mut T</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/std/collections/struct.HashMap.html#method.extract_if"><code>HashMap::extract_if</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/std/collections/struct.HashSet.html#method.extract_if"><code>HashSet::extract_if</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.line"><code>proc_macro::Span::line</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.column"><code>proc_macro::Span::column</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.start"><code>proc_macro::Span::start</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.end"><code>proc_macro::Span::end</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.file"><code>proc_macro::Span::file</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/proc_macro/struct.Span.html#method.local_file"><code>proc_macro::Span::local_file</code></a>
These previously stable APIs are now stable in const contexts:</li>
<li><a href="https://doc.rust-lang.org/stable/std/ptr/struct.NonNull.html#method.replace"><code>NonNull&lt;T&gt;::replace</code></a></li>
<li><a href="https://doc.rust-lang.org/stable/std/primitive.pointer.html#method.replace"><code>&lt;*mut T&gt;::replace</code></a></li>
<li><a href="https://github.com/rust-lang/rust/pull/137280"><code>std::ptr::swap_nonoverlapping</code></a></li>
<li><a href="https://github.com/rust-lang/rust/pull/137928"><code>Cell::{replace, get, get_mut, from_mut, as_slice_of_cells}</code></a></li>
</ul>
<h2>Cargo</h2>
<ul>
<li><a href="https://github.com/rust-lang/cargo/pull/14287/">Stabilize automatic garbage collection.</a></li>
<li><a href="https://github.com/rust-lang/cargo/pull/15417/">use <code>zlib-rs</code> for gzip compression in rust code</a></li>
</ul>
<h2>Rustdoc</h2>
<ul>
<li><a href="https://github.com/rust-lang/rust/pull/137096">Doctests can be ignored based on target names using <code>ignore-*</code> attributes.</a></li>
<li><a href="https://github.com/rust-lang/rust/pull/137096">Stabilize the <code>--test-runtool</code> and <code>--test-runtool-arg</code> CLI options to specify a program (like qemu) and its arguments to run a doctest.</a></li>
</ul>
<h2>Compatibility Notes</h2>
<ul>
<li><a href="https://github.com/rust-lang/rust/pull/124141">Finish changing the internal representation of pasted tokens</a>. Certain invalid declarative macros that were previously accepted in obscure circumstances are now correctly rejected by the compiler. Use of a <code>tt</code> fragment specifier can often fix these macros.</li>
<li><a href="https://github.com/rust-lang/rust/pull/134273">Fully de-stabilize the <code>#[bench]</code> attribute</a>. Usage of <code>#[bench]</code> without <code>#![feature(custom_test_frameworks)]</code> already triggered a deny-by-default future-incompatibility lint since Rust 1.77, but will now become a hard error.</li>
<li><a href="https://github.com/rust-lang/rust/pull/139042">Fix borrow checking some always-true patterns.</a>
  The borrow checker was overly permissive in some cases, allowing programs that shouldn&#x27;t have compiled.</li>
<li><a href="https://github.com/rust-lang/rust/pull/139275">Update the minimum external LLVM to 19.</a></li>
<li><a href="https://github.com/rust-lang/rust/pull/139309">Make it a hard error to use a vector type with a non-Rust ABI without enabling the required target feature.</a></li>
</ul>



    

    <h2>Patch Instructions:</h2>
    <p>
        To install this SUSE  update use the SUSE recommended
        installation methods like YaST online_update or "zypper patch".<br/>

        Alternatively you can run the command listed for your product:
    </p>
    <ul class="list-group">
        
            <li class="list-group-item">
                openSUSE Leap 15.6
                
                    
                        <br/>
                        <code>zypper in -t patch openSUSE-SLE-15.6-2025-2341=1</code>
                    
                    
                
            </li>
        
            <li class="list-group-item">
                SUSE Package Hub 15 15-SP6
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP6-2025-2341=1</code>
                    
                    
                
            </li>
        
            <li class="list-group-item">
                SUSE Package Hub 15 15-SP7
                
                    
                        <br/>
                        <code>zypper in -t patch SUSE-SLE-Module-Packagehub-Subpackages-15-SP7-2025-2341=1</code>
                    
                    
                
            </li>
        
    </ul>

    <h2>Package List:</h2>
    <ul>
        
            
                <li>
                    openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64)
                    <ul>
                        
                            <li>rust-cbindgen-0.28.0+git0-150200.6.7.2</li>
                        
                    </ul>
                </li>
            
        
            
                <li>
                    SUSE Package Hub 15 15-SP6 (aarch64 ppc64le s390x x86_64)
                    <ul>
                        
                            <li>rust-cbindgen-0.28.0+git0-150200.6.7.2</li>
                        
                    </ul>
                </li>
            
        
            
                <li>
                    SUSE Package Hub 15 15-SP7 (aarch64 ppc64le s390x x86_64)
                    <ul>
                        
                            <li>rust-cbindgen-0.28.0+git0-150200.6.7.2</li>
                        
                    </ul>
                </li>
            
        
    </ul>

    
        <h2>References:</h2>
        <ul>
            
                
                    <li>
                        <a href="https://bugzilla.suse.com/show_bug.cgi?id=1243588">https://bugzilla.suse.com/show_bug.cgi?id=1243588</a>
                    </li>
                
            
        </ul>
    
</div>