<div class="container">
<h1>Recommended update for rust, rust1.73</h1>
<table class="table table-striped table-bordered">
<tbody>
<tr>
<th>Announcement ID:</th>
<td>SUSE-RU-2023:4067-1</td>
</tr>
<tr>
<th>Rating:</th>
<td>moderate</td>
</tr>
<tr>
<th>References:</th>
<td>
<ul>
</ul>
</td>
</tr>
<tr>
<th>Affected Products:</th>
<td>
<ul class="list-group">
<li class="list-group-item">Development Tools Module 15-SP4</li>
<li class="list-group-item">Development Tools Module 15-SP5</li>
<li class="list-group-item">openSUSE Leap 15.4</li>
<li class="list-group-item">openSUSE Leap 15.5</li>
<li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP4</li>
<li class="list-group-item">SUSE Linux Enterprise Desktop 15 SP5</li>
<li class="list-group-item">SUSE Linux Enterprise High Performance Computing 15 SP4</li>
<li class="list-group-item">SUSE Linux Enterprise High Performance Computing 15 SP5</li>
<li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP4</li>
<li class="list-group-item">SUSE Linux Enterprise Real Time 15 SP5</li>
<li class="list-group-item">SUSE Linux Enterprise Server 15 SP4</li>
<li class="list-group-item">SUSE Linux Enterprise Server 15 SP5</li>
<li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP4</li>
<li class="list-group-item">SUSE Linux Enterprise Server for SAP Applications 15 SP5</li>
<li class="list-group-item">SUSE Manager Proxy 4.3</li>
<li class="list-group-item">SUSE Manager Retail Branch Server 4.3</li>
<li class="list-group-item">SUSE Manager Server 4.3</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p>An update that can now be installed.</p>
<h2>Description:</h2>
<p>This update for rust, rust1.73 fixes the following issues:</p>
<p>Changes in rust1.73:</p>
<h1>Version 1.73.0 (2023-10-05)</h1>
<h2>Language</h2>
<ul>
<li>Uplift clippy::fn_null_check lint as useless_ptr_null_checks.</li>
<li>Make noop_method_call warn by default.</li>
<li>Support interpolated block for try and async in macros.</li>
<li>Make unconditional_recursion lint detect recursive drops.</li>
<li>Future compatibility warning for some impls being incorrectly considered not overlapping.</li>
<li>The invalid_reference_casting lint is now <strong>deny-by-default</strong> (instead of allow-by-default)</li>
</ul>
<h2>Compiler</h2>
<ul>
<li>Write version information in a .comment section like GCC/Clang.</li>
<li>Add documentation on v0 symbol mangling.</li>
<li>Stabilize extern "thiscall" and "thiscall-unwind" ABIs.</li>
<li>Only check outlives goals on impl compared to trait.</li>
<li>Infer type in irrefutable slice patterns with fixed length as array.</li>
<li>Discard default auto trait impls if explicit ones exist.</li>
<li>
<p>Add several new tier 3 targets:</p>
<ul>
<li>aarch64-unknown-teeos</li>
<li>csky-unknown-linux-gnuabiv2</li>
<li>riscv64-linux-android</li>
<li>riscv64gc-unknown-hermit</li>
<li>x86_64-unikraft-linux-musl</li>
<li>x86_64-unknown-linux-ohos</li>
</ul>
</li>
<li>
<p>Add wasm32-wasi-preview1-threads as a tier 2 target.
Refer to Rust's platform support page
for more information on Rust's tiered platform support.</p>
</li>
</ul>
<h2>Libraries</h2>
<ul>
<li>Add Read, Write and Seek impls for Arc<File>.</li>
<li>Merge functionality of io::Sink into io::Empty.</li>
<li>Implement RefUnwindSafe for Backtrace</li>
<li>Make ExitStatus implement Default</li>
<li>impl SliceIndex<str> for (Bound<usize>, Bound<usize>)</li>
<li>Change default panic handler message format.</li>
<li>Cleaner assert_eq! & assert_ne! panic messages.</li>
<li>Correct the (deprecated) Android stat struct definitions.</li>
</ul>
<h2>Stabilized APIs</h2>
<ul>
<li>Unsigned {integer}::div_ceil https://doc.rust-lang.org/stable/std/primitive.u32.html#method.div_ceil</li>
<li>Unsigned {integer}::next_multiple_of https://doc.rust-lang.org/stable/std/primitive.u32.html#method.next_multiple_of</li>
<li>Unsigned {integer}::checked_next_multiple_of https://doc.rust-lang.org/stable/std/primitive.u32.html#method.checked_next_multiple_of</li>
<li>std::ffi::FromBytesUntilNulError https://doc.rust-lang.org/stable/std/ffi/struct.FromBytesUntilNulError.html</li>
<li>std::os::unix::fs::chown https://doc.rust-lang.org/stable/std/os/unix/fs/fn.chown.html</li>
<li>std::os::unix::fs::fchown https://doc.rust-lang.org/stable/std/os/unix/fs/fn.fchown.html</li>
<li>std::os::unix::fs::lchown https://doc.rust-lang.org/stable/std/os/unix/fs/fn.lchown.html</li>
<li>LocalKey::<Cell<T>>::get https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.get</li>
<li>LocalKey::<Cell<T>>::set https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.set</li>
<li>LocalKey::<Cell<T>>::take https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.take</li>
<li>LocalKey::<Cell<T>>::replace https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.replace</li>
<li>LocalKey::<RefCell<T>>::with_borrow https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.with_borrow</li>
<li>LocalKey::<RefCell<T>>::with_borrow_mut https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.with_borrow_mut</li>
<li>LocalKey::<RefCell<T>>::set https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.set-1</li>
<li>LocalKey::<RefCell<T>>::take https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.take-1</li>
<li>LocalKey::<RefCell<T>>::replace https://doc.rust-lang.org/stable/std/thread/struct.LocalKey.html#method.replace-1</li>
</ul>
<p>These APIs are now stable in const contexts:</p>
<ul>
<li>rc::Weak::new https://doc.rust-lang.org/stable/alloc/rc/struct.Weak.html#method.new</li>
<li>sync::Weak::new https://doc.rust-lang.org/stable/alloc/sync/struct.Weak.html#method.new</li>
<li>NonNull::as_ref https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.as_ref</li>
</ul>
<h2>Cargo</h2>
<ul>
<li>Encode URL params correctly for SourceId in Cargo.lock.</li>
<li>Bail out an error when using cargo:: in custom build script.</li>
</ul>
<h2>Compatibility Notes</h2>
<ul>
<li>Update the minimum external LLVM to 15.</li>
<li>Check for non-defining uses of return position impl Trait.</li>
</ul>
<p>Changes in rust:</p>
<ul>
<li>Update to version 1.73.0 - for details see the rust1.73 package</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.4
<br/>
<code>zypper in -t patch SUSE-2023-4067=1 openSUSE-SLE-15.4-2023-4067=1</code>
</li>
<li class="list-group-item">
openSUSE Leap 15.5
<br/>
<code>zypper in -t patch openSUSE-SLE-15.5-2023-4067=1</code>
</li>
<li class="list-group-item">
Development Tools Module 15-SP4
<br/>
<code>zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP4-2023-4067=1</code>
</li>
<li class="list-group-item">
Development Tools Module 15-SP5
<br/>
<code>zypper in -t patch SUSE-SLE-Module-Development-Tools-15-SP5-2023-4067=1</code>
</li>
</ul>
<h2>Package List:</h2>
<ul>
<li>
openSUSE Leap 15.4 (aarch64 ppc64le s390x x86_64 i586)
<ul>
<li>rust1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>cargo1.73-1.73.0-150400.9.3.1</li>
<li>cargo-1.73.0-150400.24.27.1</li>
<li>cargo1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>rust-1.73.0-150400.24.27.1</li>
</ul>
</li>
<li>
openSUSE Leap 15.4 (aarch64 ppc64le s390x x86_64 i586 nosrc)
<ul>
<li>rust1.73-1.73.0-150400.9.3.1</li>
</ul>
</li>
<li>
openSUSE Leap 15.4 (nosrc)
<ul>
<li>rust1.73-test-1.73.0-150400.9.3.1</li>
</ul>
</li>
<li>
openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64)
<ul>
<li>rust1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>cargo1.73-1.73.0-150400.9.3.1</li>
<li>cargo-1.73.0-150400.24.27.1</li>
<li>cargo1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>rust-1.73.0-150400.24.27.1</li>
</ul>
</li>
<li>
openSUSE Leap 15.5 (aarch64 ppc64le s390x x86_64 nosrc)
<ul>
<li>rust1.73-1.73.0-150400.9.3.1</li>
</ul>
</li>
<li>
Development Tools Module 15-SP4 (aarch64 ppc64le s390x x86_64)
<ul>
<li>rust1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>cargo1.73-1.73.0-150400.9.3.1</li>
<li>cargo-1.73.0-150400.24.27.1</li>
<li>cargo1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>rust-1.73.0-150400.24.27.1</li>
</ul>
</li>
<li>
Development Tools Module 15-SP4 (aarch64 ppc64le s390x x86_64 nosrc)
<ul>
<li>rust1.73-1.73.0-150400.9.3.1</li>
</ul>
</li>
<li>
Development Tools Module 15-SP5 (aarch64 ppc64le s390x x86_64)
<ul>
<li>rust1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>cargo1.73-1.73.0-150400.9.3.1</li>
<li>cargo-1.73.0-150400.24.27.1</li>
<li>cargo1.73-debuginfo-1.73.0-150400.9.3.1</li>
<li>rust-1.73.0-150400.24.27.1</li>
</ul>
</li>
<li>
Development Tools Module 15-SP5 (aarch64 ppc64le s390x x86_64 nosrc)
<ul>
<li>rust1.73-1.73.0-150400.9.3.1</li>
</ul>
</li>
</ul>
</div>