File _patchinfo of Package patchinfo.33181
<patchinfo incident="33181">
<issue tracker="bnc" id="1222047">rust compiler on sle15 pulls gcc 12 which is soon EOL</issue>
<packager>firstyear</packager>
<rating>moderate</rating>
<category>recommended</category>
<summary>Recommended update for rust, rust1.77</summary>
<description>This update for rust, rust1.77 fixes the following issues:
Changes in rust1.77:
- update gcc minimum to 13 for SLE (bsc#1222047)
Version 1.77.0 (2024-03-21)
==========================
Language
--------
- Reveal opaque types within the defining body for exhaustiveness checking.
- Stabilize C-string literals.
- Stabilize THIR unsafeck.
- Add lint `static_mut_refs` to warn on references to mutable statics.
- Support async recursive calls (as long as they have indirection).
- Undeprecate lint `unstable_features` and make use of it in the compiler.
- Make inductive cycles in coherence ambiguous always.
- Get rid of type-driven traversal in const-eval interning
only as a [future compatiblity lint
- Deny braced macro invocations in let-else.
Compiler
--------
- Include lint `soft_unstable` in future breakage reports.
- Make `i128` and `u128` 16-byte aligned on x86-based targets.
- Use `--verbose` in diagnostic output.
- Improve spacing between printed tokens.
- Merge the `unused_tuple_struct_fields` lint into `dead_code`.
- Error on incorrect implied bounds in well-formedness check
with a temporary exception for Bevy.
- Fix coverage instrumentation/reports for non-ASCII source code.
- Fix `fn`/`const` items implied bounds and well-formedness check.
- Promote `riscv32{im|imafc}-unknown-none-elf` targets to tier 2.
Libraries
---------
- Implement `From<&[T; N]>` for `Cow<[T]>`.
- Remove special-case handling of `vec.split_off(0)`.
Stabilized APIs
---------------
- `array::each_ref` https://doc.rust-lang.org/stable/std/primitive.array.html#method.each_ref
- `array::each_mut` https://doc.rust-lang.org/stable/std/primitive.array.html#method.each_mut
- `core::net` https://doc.rust-lang.org/stable/core/net/index.html
- `f32::round_ties_even` https://doc.rust-lang.org/stable/std/primitive.f32.html#method.round_ties_even
- `f64::round_ties_even` https://doc.rust-lang.org/stable/std/primitive.f64.html#method.round_ties_even
- `mem::offset_of!` https://doc.rust-lang.org/stable/std/mem/macro.offset_of.html
- `slice::first_chunk` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.first_chunk
- `slice::first_chunk_mut` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.first_chunk_mut
- `slice::split_first_chunk` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_first_chunk
- `slice::split_first_chunk_mut` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_first_chunk_mut
- `slice::last_chunk` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.last_chunk
- `slice::last_chunk_mut` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.last_chunk_mut
- `slice::split_last_chunk` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_last_chunk
- `slice::split_last_chunk_mut` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_last_chunk_mut
- `slice::chunk_by` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.chunk_by
- `slice::chunk_by_mut` https://doc.rust-lang.org/stable/std/primitive.slice.html#method.chunk_by_mut
- `Bound::map` https://doc.rust-lang.org/stable/std/ops/enum.Bound.html#method.map
- `File::create_new` https://doc.rust-lang.org/stable/std/fs/struct.File.html#method.create_new
- `Mutex::clear_poison` https://doc.rust-lang.org/stable/std/sync/struct.Mutex.html#method.clear_poison
- `RwLock::clear_poison` https://doc.rust-lang.org/stable/std/sync/struct.RwLock.html#method.clear_poison
Cargo
-----
- Extend the build directive syntax with `cargo::`.
- Stabilize metadata `id` format as `PackageIDSpec`.
- Pull out `cargo-util-schemas` as a crate.
- Strip all debuginfo when debuginfo is not requested.
- Inherit jobserver from env for all kinds of runners.
- Deprecate rustc plugin support in cargo.
Rustdoc
-----
- Allows links in markdown headings.
- Search for tuples and unit by type with `()`.
- Clean up the source sidebar's hide button.
- Prevent JS injection from `localStorage`.
Misc
----
- Recommend version-sorting for all sorting in style guide.
</description>
</patchinfo>