chore(deps): Update Rust Stable to v1.79 (#1035)

[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [STABLE](https://togithub.com/rust-lang/rust) | minor | `1.78` ->
`1.79` |

---

### Release Notes

<details>
<summary>rust-lang/rust (STABLE)</summary>

###
[`v1.79`](https://togithub.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1790-2024-06-13)

[Compare
Source](https://togithub.com/rust-lang/rust/compare/1.78.0...1.79.0)

\==========================

<a id="1.79.0-Language"></a>

## Language

- [Stabilize inline `const {}`
expressions.](https://togithub.com/rust-lang/rust/pull/104087/)
- [Prevent opaque types being instantiated twice with different regions
within the same
function.](https://togithub.com/rust-lang/rust/pull/116935/)
- [Stabilize WebAssembly target features that are in phase 4 and
5.](https://togithub.com/rust-lang/rust/pull/117457/)
- [Add the `redundant_lifetimes` lint to detect lifetimes which are
semantically
redundant.](https://togithub.com/rust-lang/rust/pull/118391/)
- [Stabilize the `unnameable_types` lint for public types that can't be
named.](https://togithub.com/rust-lang/rust/pull/120144/)
- [Enable debuginfo in macros, and stabilize `-C
collapse-macro-debuginfo` and
`#[collapse_debuginfo]`.](https://togithub.com/rust-lang/rust/pull/120845/)
- [Propagate temporary lifetime extension into `if` and `match`
expressions.](https://togithub.com/rust-lang/rust/pull/121346/)
- [Restrict promotion of `const fn`
calls.](https://togithub.com/rust-lang/rust/pull/121557/)
- [Warn against refining impls of crate-private traits with
`refining_impl_trait`
lint.](https://togithub.com/rust-lang/rust/pull/121720/)
- [Stabilize associated type bounds (RFC
2289).](https://togithub.com/rust-lang/rust/pull/122055/)
- [Stabilize importing `main` from other modules or
crates.](https://togithub.com/rust-lang/rust/pull/122060/)
- [Check return types of function types for
well-formedness](https://togithub.com/rust-lang/rust/pull/115538)
- [Rework `impl Trait` lifetime
inference](https://togithub.com/rust-lang/rust/pull/116891/)
- [Change inductive trait solver cycles to be
ambiguous](https://togithub.com/rust-lang/rust/pull/122791)

<a id="1.79.0-Compiler"></a>

## Compiler

- [Define `-C strip` to only affect binaries, not artifacts like
`.pdb`.](https://togithub.com/rust-lang/rust/pull/115120/)
- [Stabilize `-Crelro-level` for controlling runtime link
hardening.](https://togithub.com/rust-lang/rust/pull/121694/)
- [Stabilize checking of `cfg` names and values at compile-time with
`--check-cfg`.](https://togithub.com/rust-lang/rust/pull/123501/)
*Note that this only stabilizes the compiler part, the Cargo part is
still unstable in this release.*
- [Add `aarch64-apple-visionos` and `aarch64-apple-visionos-sim` tier 3
targets.](https://togithub.com/rust-lang/rust/pull/121419/)
- [Add `riscv32ima-unknown-none-elf` tier 3
target.](https://togithub.com/rust-lang/rust/pull/122696/)
- [Promote several Windows targets to tier
2](https://togithub.com/rust-lang/rust/pull/121712):
`aarch64-pc-windows-gnullvm`, `i686-pc-windows-gnullvm`, and
`x86_64-pc-windows-gnullvm`.

Refer to Rust's \[platform support page]\[platform-support-doc]
for more information on Rust's tiered platform support.

<a id="1.79.0-Libraries"></a>

## Libraries

- [Implement `FromIterator` for `(impl Default + Extend, impl Default +
Extend)`.](https://togithub.com/rust-lang/rust/pull/107462/)
- [Implement `{Div,Rem}Assign<NonZero<X>>` on
`X`.](https://togithub.com/rust-lang/rust/pull/121952/)
- [Document overrides of `clone_from()` in
core/std.](https://togithub.com/rust-lang/rust/pull/122201/)
- [Link MSVC default lib in
core.](https://togithub.com/rust-lang/rust/pull/122268/)
- [Caution against using `transmute` between pointers and
integers.](https://togithub.com/rust-lang/rust/pull/122379/)
- [Enable frame pointers for the standard
library.](https://togithub.com/rust-lang/rust/pull/122646/)

<a id="1.79.0-Stabilized-APIs"></a>

## Stabilized APIs

-
[`{integer}::unchecked_add`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_add)
-
[`{integer}::unchecked_mul`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_mul)
-
[`{integer}::unchecked_sub`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.unchecked_sub)
-
[`<[T]>::split_at_unchecked`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_unchecked)
-
[`<[T]>::split_at_mut_unchecked`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_mut_unchecked)
-
[`<[u8]>::utf8_chunks`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.utf8\_chunks)
-
[`str::Utf8Chunks`](https://doc.rust-lang.org/stable/core/str/struct.Utf8Chunks.html)
-
[`str::Utf8Chunk`](https://doc.rust-lang.org/stable/core/str/struct.Utf8Chunk.html)
- [`<*const
T>::is_aligned`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_aligned)
- [`<*mut
T>::is_aligned`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_aligned-1)
-
[`NonNull::is_aligned`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.is_aligned)
- [`<*const
[T]>::len`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.len)
- [`<*mut
[T]>::len`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.len-1)
- [`<*const
[T]>::is_empty`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_empty)
- [`<*mut
[T]>::is_empty`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_empty-1)
-
[`NonNull::<[T]>::is_empty`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.is_empty)
-
[`CStr::count_bytes`](https://doc.rust-lang.org/stable/core/ffi/c_str/struct.CStr.html#method.count_bytes)
-
[`io::Error::downcast`](https://doc.rust-lang.org/stable/std/io/struct.Error.html#method.downcast)
-
[`num::NonZero<T>`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html)
-
[`path::absolute`](https://doc.rust-lang.org/stable/std/path/fn.absolute.html)
-
[`proc_macro::Literal::byte_character`](https://doc.rust-lang.org/stable/proc_macro/struct.Literal.html#method.byte_character)
-
[`proc_macro::Literal::c_string`](https://doc.rust-lang.org/stable/proc_macro/struct.Literal.html#method.c_string)

These APIs are now stable in const contexts:

-
[`Atomic*::into_inner`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.into_inner)
-
[`io::Cursor::new`](https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.new)
-
[`io::Cursor::get_ref`](https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.get_ref)
-
[`io::Cursor::position`](https://doc.rust-lang.org/stable/std/io/struct.Cursor.html#method.position)
-   [`io::empty`](https://doc.rust-lang.org/stable/std/io/fn.empty.html)
- [`io::repeat`](https://doc.rust-lang.org/stable/std/io/fn.repeat.html)
-   [`io::sink`](https://doc.rust-lang.org/stable/std/io/fn.sink.html)
-
[`panic::Location::caller`](https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.caller)
-
[`panic::Location::file`](https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.file)
-
[`panic::Location::line`](https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.line)
-
[`panic::Location::column`](https://doc.rust-lang.org/stable/std/panic/struct.Location.html#method.column)

<a id="1.79.0-Cargo"></a>

## Cargo

- [Prevent dashes in `lib.name`, always normalizing to
`_`.](https://togithub.com/rust-lang/cargo/pull/12783/)
- [Stabilize MSRV-aware version requirement selection in `cargo
add`.](https://togithub.com/rust-lang/cargo/pull/13608/)
- [Switch to using `gitoxide` by default for listing
files.](https://togithub.com/rust-lang/cargo/pull/13696/)
- [Error on `[project]` in Edition 2024; `cargo fix --edition` will
change it to
`[package]`.](https://togithub.com/rust-lang/cargo/pull/13747/)

<a id="1.79.0-Rustdoc"></a>

## Rustdoc

- [Always display stability version even if it's the same as the
containing item.](https://togithub.com/rust-lang/rust/pull/118441/)
- [Show a single search result for items with multiple
paths.](https://togithub.com/rust-lang/rust/pull/119912/)
- [Support typing `/` in docs to begin a
search.](https://togithub.com/rust-lang/rust/pull/123355/)

<a id="1.79.0-Misc"></a>

## Misc

<a id="1.79.0-Compatibility-Notes"></a>

## Compatibility Notes

- [Update the minimum external LLVM to
17.](https://togithub.com/rust-lang/rust/pull/122649/)
- [`RustcEncodable` and `RustcDecodable` are soft-destabilized, to be
removed
from the prelude in next
edition.](https://togithub.com/rust-lang/rust/pull/116016/)
- [The `wasm_c_abi` future-incompatibility lint will warn about use of
the
non-spec-compliant C
ABI.](https://togithub.com/rust-lang/rust/pull/117918/)
    Use `wasm-bindgen v0.2.88` to generate forward-compatible bindings.
- [Check return types of function types for
well-formedness](https://togithub.com/rust-lang/rust/pull/115538)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * *" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/crate-ci/typos).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjM5My4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This commit is contained in:
renovate[bot] 2024-06-13 15:12:16 +00:00 committed by GitHub
parent cfe759ac8d
commit ff7654294c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -88,7 +88,7 @@ jobs:
- name: Install Rust - name: Install Rust
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable
with: with:
toolchain: "1.78" # STABLE toolchain: "1.79" # STABLE
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- name: Check documentation - name: Check documentation
env: env:
@ -103,7 +103,7 @@ jobs:
- name: Install Rust - name: Install Rust
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable
with: with:
toolchain: "1.78" # STABLE toolchain: "1.79" # STABLE
components: rustfmt components: rustfmt
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- name: Check formatting - name: Check formatting
@ -119,7 +119,7 @@ jobs:
- name: Install Rust - name: Install Rust
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable
with: with:
toolchain: "1.78" # STABLE toolchain: "1.79" # STABLE
components: clippy components: clippy
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- name: Install SARIF tools - name: Install SARIF tools