2023-03-29 14:33:22 -05:00
|
|
|
name: CI
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
2021-07-01 15:45:56 -05:00
|
|
|
on:
|
|
|
|
pull_request:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- master
|
2023-03-29 14:33:22 -05:00
|
|
|
|
|
|
|
env:
|
|
|
|
RUST_BACKTRACE: 1
|
|
|
|
CARGO_TERM_COLOR: always
|
|
|
|
CLICOLOR: 1
|
2024-02-07 15:53:09 -06:00
|
|
|
COLUMNS: 130
|
2023-03-29 14:33:22 -05:00
|
|
|
|
2024-01-18 09:22:25 -06:00
|
|
|
concurrency:
|
|
|
|
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
2021-07-01 15:45:56 -05:00
|
|
|
jobs:
|
2021-08-16 11:23:25 -05:00
|
|
|
ci:
|
2023-03-29 14:33:22 -05:00
|
|
|
permissions:
|
|
|
|
contents: none
|
2021-08-16 11:23:25 -05:00
|
|
|
name: CI
|
2024-07-26 16:08:28 -05:00
|
|
|
needs: [test, msrv, lockfile, docs, rustfmt, clippy]
|
2021-08-16 11:23:25 -05:00
|
|
|
runs-on: ubuntu-latest
|
2024-04-01 11:36:58 -05:00
|
|
|
if: "always()"
|
2021-08-16 11:23:25 -05:00
|
|
|
steps:
|
2024-04-01 11:36:58 -05:00
|
|
|
- name: Failed
|
|
|
|
run: exit 1
|
|
|
|
if: "contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'skipped')"
|
2021-07-01 15:45:56 -05:00
|
|
|
test:
|
|
|
|
name: Test
|
|
|
|
strategy:
|
|
|
|
matrix:
|
2024-06-21 14:21:41 -04:00
|
|
|
os: ["ubuntu-latest", "windows-latest", "macos-latest"]
|
2021-07-07 15:38:16 -05:00
|
|
|
rust: ["stable"]
|
2021-07-01 15:45:56 -05:00
|
|
|
continue-on-error: ${{ matrix.rust != 'stable' }}
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Install Rust
|
2023-03-29 14:33:22 -05:00
|
|
|
uses: dtolnay/rust-toolchain@stable
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
|
|
|
toolchain: ${{ matrix.rust }}
|
2024-01-03 08:29:34 -06:00
|
|
|
components: rustfmt
|
2022-12-01 17:54:48 +00:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
2024-03-28 09:57:23 -05:00
|
|
|
- uses: taiki-e/install-action@cargo-hack
|
2022-02-15 13:31:29 -06:00
|
|
|
- name: Build
|
2024-01-03 08:27:59 -06:00
|
|
|
run: cargo test --workspace --no-run
|
2024-03-28 09:57:23 -05:00
|
|
|
- name: Test
|
|
|
|
run: cargo hack test --feature-powerset --workspace
|
2021-07-01 15:45:56 -05:00
|
|
|
msrv:
|
2024-02-15 09:58:01 -06:00
|
|
|
name: "Check MSRV"
|
2021-07-01 15:45:56 -05:00
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Install Rust
|
2023-03-29 14:33:22 -05:00
|
|
|
uses: dtolnay/rust-toolchain@stable
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
2024-02-15 09:58:01 -06:00
|
|
|
toolchain: stable
|
2022-12-01 17:54:48 +00:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
2024-02-15 09:58:01 -06:00
|
|
|
- uses: taiki-e/install-action@cargo-hack
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Default features
|
2024-03-28 09:57:23 -05:00
|
|
|
run: cargo hack check --feature-powerset --locked --rust-version --ignore-private --workspace --all-targets
|
2023-08-07 16:16:17 -05:00
|
|
|
lockfile:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2023-08-07 16:16:17 -05:00
|
|
|
- name: Install Rust
|
|
|
|
uses: dtolnay/rust-toolchain@stable
|
|
|
|
with:
|
|
|
|
toolchain: stable
|
|
|
|
- uses: Swatinem/rust-cache@v2
|
|
|
|
- name: "Is lockfile updated?"
|
2024-03-28 09:53:02 -05:00
|
|
|
run: cargo update --workspace --locked
|
2021-07-01 15:45:56 -05:00
|
|
|
docs:
|
|
|
|
name: Docs
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Install Rust
|
2023-03-29 14:33:22 -05:00
|
|
|
uses: dtolnay/rust-toolchain@stable
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
chore(deps): Update Rust Stable to v1.84 (#1216)
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [STABLE](https://redirect.github.com/rust-lang/rust) | minor | `1.83`
-> `1.84` |
---
### Release Notes
<details>
<summary>rust-lang/rust (STABLE)</summary>
###
[`v1.84`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1840-2025-01-09)
[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.83.0...1.84.0)
\==========================
<a id="
Language"></a>
## Language
- [Allow `#[deny]` inside `#[forbid]` as a
no-op](https://redirect.github.com/rust-lang/rust/pull/121560/)
- [Show a warning when `-Ctarget-feature` is used to toggle features
that can lead to unsoundness due to ABI
mismatches](https://redirect.github.com/rust-lang/rust/pull/129884)
- [Use the next-generation trait solver in
coherence](https://redirect.github.com/rust-lang/rust/pull/130654)
- [Allow coercions to drop the principal of trait
objects](https://redirect.github.com/rust-lang/rust/pull/131857)
- [Support `/` as the path separator for `include!()` in all cases on
Windows](https://redirect.github.com/rust-lang/rust/pull/125205)
- [Taking a raw ref (`raw (const|mut)`) of a deref of a pointer (`*ptr`)
is now safe](https://redirect.github.com/rust-lang/rust/pull/129248)
- [Stabilize s390x inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131258)
- [Stabilize Arm64EC inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131781)
- [Lint against creating pointers to immediately dropped
temporaries](https://redirect.github.com/rust-lang/rust/pull/128985)
- [Execute drop glue when unwinding in an `extern "C"`
function](https://redirect.github.com/rust-lang/rust/pull/129582)
<a id="1.84.0-Compiler"></a>
## Compiler
- [Add `--print host-tuple` flag to print the host target tuple and
affirm the "target tuple" terminology over "target
triple"](https://redirect.github.com/rust-lang/rust/pull/125579)
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [Set up indirect access to external data for
`loongarch64-unknown-linux-{musl,ohos}`](https://redirect.github.com/rust-lang/rust/pull/131583)
- [Enable XRay instrumentation for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/131818)
- [Extend the `unexpected_cfgs` lint to also warn in external
macros](https://redirect.github.com/rust-lang/rust/pull/132577)
- [Stabilize WebAssembly `multivalue`, `reference-types`, and
`tail-call` target
features](https://redirect.github.com/rust-lang/rust/pull/131080)
- [Added Tier 2 support for the `wasm32v1-none`
target](https://redirect.github.com/rust-lang/rust/pull/131487)
<a id="1.84.0-Libraries"></a>
## Libraries
- [Implement `From<&mut {slice}>` for
`Box/Rc/Arc<{slice}>`](https://redirect.github.com/rust-lang/rust/pull/129329)
- [Move `<float>::copysign`, `<float>::abs`, `<float>::signum` to
`core`](https://redirect.github.com/rust-lang/rust/pull/131304)
- [Add `LowerExp` and `UpperExp` implementations to
`NonZero`](https://redirect.github.com/rust-lang/rust/pull/131377)
- [Implement `FromStr` for `CString` and `TryFrom<CString>` for
`String`](https://redirect.github.com/rust-lang/rust/pull/130608)
- [`std::os::darwin` has been made
public](https://redirect.github.com/rust-lang/rust/pull/123723)
<a id="1.84.0-Stabilized-APIs"></a>
## Stabilized APIs
-
[`Ipv6Addr::is_unique_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unique_local)
-
[`Ipv6Addr::is_unicast_link_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unicast_link_local)
-
[`core::ptr::with_exposed_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance.html)
-
[`core::ptr::with_exposed_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance_mut.html)
-
[`<ptr>::addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.addr)
-
[`<ptr>::expose_provenance`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.expose_provenance)
-
[`<ptr>::with_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.with_addr)
-
[`<ptr>::map_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.map_addr)
-
[`<int>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.isqrt)
-
[`<int>::checked_isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.checked_isqrt)
-
[`<uint>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.u32.html#method.isqrt)
-
[`NonZero::isqrt`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#impl-NonZero%3Cu128%3E/method.isqrt)
-
[`core::ptr::without_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance.html)
-
[`core::ptr::without_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance_mut.html)
-
[`core::ptr::dangling`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling.html)
-
[`core::ptr::dangling_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling_mut.html)
These APIs are now stable in const contexts
-
[`AtomicBool::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicBool.html#method.from_ptr)
-
[`AtomicPtr::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicPtr.html#method.from_ptr)
-
[`AtomicU8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU8.html#method.from_ptr)
-
[`AtomicU16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU16.html#method.from_ptr)
-
[`AtomicU32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU32.html#method.from_ptr)
-
[`AtomicU64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU64.html#method.from_ptr)
-
[`AtomicUsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.from_ptr)
-
[`AtomicI8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI8.html#method.from_ptr)
-
[`AtomicI16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI16.html#method.from_ptr)
-
[`AtomicI32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI32.html#method.from_ptr)
-
[`AtomicI64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI64.html#method.from_ptr)
-
[`AtomicIsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicIsize.html#method.from_ptr)
-
[`<ptr>::is_null`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_null-1)
-
[`<ptr>::as_ref`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_ref-1)
-
[`<ptr>::as_mut`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_mut)
-
[`Pin::new`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new)
-
[`Pin::new_unchecked`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new_unchecked)
-
[`Pin::get_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_ref)
-
[`Pin::into_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.into_ref)
-
[`Pin::get_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_mut)
-
[`Pin::get_unchecked_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_unchecked_mut)
-
[`Pin::static_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_ref)
-
[`Pin::static_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_mut)
<a id="1.84.0-Cargo"></a>
## Cargo
- [Stabilize MSRV-aware resolver
config](https://redirect.github.com/rust-lang/cargo/pull/14639/)
- [Stabilize resolver
v3](https://redirect.github.com/rust-lang/cargo/pull/14754/)
<a id="1.84-Rustdoc"></a>
## Rustdoc
- [rustdoc-search: improve type-driven
search](https://redirect.github.com/rust-lang/rust/pull/127589)
<a id="1.84.0-Compatibility-Notes"></a>
## Compatibility Notes
- [Enable by default the `LSX` target feature for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/132140)
- [The unstable `-Zprofile` flag (“gcov-style” coverage instrumentation)
has been
removed.](https://redirect.github.com/rust-lang/rust/pull/131829) This
does not affect the stable flags for coverage instrumentation
(`-Cinstrument-coverage`) and profile-guided optimization
(`-Cprofile-generate`, `-Cprofile-use`), which are unrelated and remain
available.
- Support for the target named `wasm32-wasi` has been removed as the
target is now named `wasm32-wasip1`. This completes the
[transition](https://redirect.github.com/rust-lang/compiler-team/issues/607)
[plan](https://redirect.github.com/rust-lang/compiler-team/issues/695)
for this target following [the introduction of
`wasm32-wasip1`](https://redirect.github.com/rust-lang/rust/pull/120468)
in Rust 1.78. Compiler warnings on [use of
`wasm32-wasi`](https://redirect.github.com/rust-lang/rust/pull/126662)
introduced in Rust 1.81 are now gone as well as the target is removed.
- [The syntax `&pin (mut|const) T` is now parsed as a type which in
theory could affect macro expansion results in some edge
cases](https://redirect.github.com/rust-lang/rust/pull/130635#issuecomment-2375462821)
- [Legacy syntax for calling `std::arch` functions is no longer
permitted to declare items or bodies (such as closures, inline consts,
or async
blocks).](https://redirect.github.com/rust-lang/rust/pull/130443#issuecomment-2445678945)
- The `wasm32-unknown-emscripten` target's binary release of the
standard library is now [built with the latest emsdk
3.1.68](https://redirect.github.com/rust-lang/rust/pull/131533), which
fixes an ABI-incompatibility with Emscripten >= 3.1.42. If you are
locally using a version of emsdk with an incompatible ABI (e.g. before
3.1.42 or a future one), you should build your code with `-Zbuild-std`
to ensure that `std` uses the correct ABI.
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [The next-generation trait solver is now enabled for coherence, fixing
multiple soundness
issues](https://redirect.github.com/rust-lang/rust/pull/130654)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "* * * * *" (UTC), Automerge - At any
time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-09 19:10:40 +00:00
|
|
|
toolchain: "1.84" # STABLE
|
2022-12-01 17:54:48 +00:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Check documentation
|
|
|
|
env:
|
|
|
|
RUSTDOCFLAGS: -D warnings
|
2022-02-15 13:31:29 -06:00
|
|
|
run: cargo doc --workspace --all-features --no-deps --document-private-items
|
2021-07-01 15:45:56 -05:00
|
|
|
rustfmt:
|
|
|
|
name: rustfmt
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Install Rust
|
2023-03-29 14:33:22 -05:00
|
|
|
uses: dtolnay/rust-toolchain@stable
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
chore(deps): Update Rust Stable to v1.84 (#1216)
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [STABLE](https://redirect.github.com/rust-lang/rust) | minor | `1.83`
-> `1.84` |
---
### Release Notes
<details>
<summary>rust-lang/rust (STABLE)</summary>
###
[`v1.84`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1840-2025-01-09)
[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.83.0...1.84.0)
\==========================
<a id="
Language"></a>
## Language
- [Allow `#[deny]` inside `#[forbid]` as a
no-op](https://redirect.github.com/rust-lang/rust/pull/121560/)
- [Show a warning when `-Ctarget-feature` is used to toggle features
that can lead to unsoundness due to ABI
mismatches](https://redirect.github.com/rust-lang/rust/pull/129884)
- [Use the next-generation trait solver in
coherence](https://redirect.github.com/rust-lang/rust/pull/130654)
- [Allow coercions to drop the principal of trait
objects](https://redirect.github.com/rust-lang/rust/pull/131857)
- [Support `/` as the path separator for `include!()` in all cases on
Windows](https://redirect.github.com/rust-lang/rust/pull/125205)
- [Taking a raw ref (`raw (const|mut)`) of a deref of a pointer (`*ptr`)
is now safe](https://redirect.github.com/rust-lang/rust/pull/129248)
- [Stabilize s390x inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131258)
- [Stabilize Arm64EC inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131781)
- [Lint against creating pointers to immediately dropped
temporaries](https://redirect.github.com/rust-lang/rust/pull/128985)
- [Execute drop glue when unwinding in an `extern "C"`
function](https://redirect.github.com/rust-lang/rust/pull/129582)
<a id="1.84.0-Compiler"></a>
## Compiler
- [Add `--print host-tuple` flag to print the host target tuple and
affirm the "target tuple" terminology over "target
triple"](https://redirect.github.com/rust-lang/rust/pull/125579)
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [Set up indirect access to external data for
`loongarch64-unknown-linux-{musl,ohos}`](https://redirect.github.com/rust-lang/rust/pull/131583)
- [Enable XRay instrumentation for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/131818)
- [Extend the `unexpected_cfgs` lint to also warn in external
macros](https://redirect.github.com/rust-lang/rust/pull/132577)
- [Stabilize WebAssembly `multivalue`, `reference-types`, and
`tail-call` target
features](https://redirect.github.com/rust-lang/rust/pull/131080)
- [Added Tier 2 support for the `wasm32v1-none`
target](https://redirect.github.com/rust-lang/rust/pull/131487)
<a id="1.84.0-Libraries"></a>
## Libraries
- [Implement `From<&mut {slice}>` for
`Box/Rc/Arc<{slice}>`](https://redirect.github.com/rust-lang/rust/pull/129329)
- [Move `<float>::copysign`, `<float>::abs`, `<float>::signum` to
`core`](https://redirect.github.com/rust-lang/rust/pull/131304)
- [Add `LowerExp` and `UpperExp` implementations to
`NonZero`](https://redirect.github.com/rust-lang/rust/pull/131377)
- [Implement `FromStr` for `CString` and `TryFrom<CString>` for
`String`](https://redirect.github.com/rust-lang/rust/pull/130608)
- [`std::os::darwin` has been made
public](https://redirect.github.com/rust-lang/rust/pull/123723)
<a id="1.84.0-Stabilized-APIs"></a>
## Stabilized APIs
-
[`Ipv6Addr::is_unique_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unique_local)
-
[`Ipv6Addr::is_unicast_link_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unicast_link_local)
-
[`core::ptr::with_exposed_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance.html)
-
[`core::ptr::with_exposed_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance_mut.html)
-
[`<ptr>::addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.addr)
-
[`<ptr>::expose_provenance`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.expose_provenance)
-
[`<ptr>::with_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.with_addr)
-
[`<ptr>::map_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.map_addr)
-
[`<int>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.isqrt)
-
[`<int>::checked_isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.checked_isqrt)
-
[`<uint>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.u32.html#method.isqrt)
-
[`NonZero::isqrt`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#impl-NonZero%3Cu128%3E/method.isqrt)
-
[`core::ptr::without_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance.html)
-
[`core::ptr::without_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance_mut.html)
-
[`core::ptr::dangling`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling.html)
-
[`core::ptr::dangling_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling_mut.html)
These APIs are now stable in const contexts
-
[`AtomicBool::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicBool.html#method.from_ptr)
-
[`AtomicPtr::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicPtr.html#method.from_ptr)
-
[`AtomicU8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU8.html#method.from_ptr)
-
[`AtomicU16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU16.html#method.from_ptr)
-
[`AtomicU32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU32.html#method.from_ptr)
-
[`AtomicU64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU64.html#method.from_ptr)
-
[`AtomicUsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.from_ptr)
-
[`AtomicI8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI8.html#method.from_ptr)
-
[`AtomicI16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI16.html#method.from_ptr)
-
[`AtomicI32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI32.html#method.from_ptr)
-
[`AtomicI64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI64.html#method.from_ptr)
-
[`AtomicIsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicIsize.html#method.from_ptr)
-
[`<ptr>::is_null`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_null-1)
-
[`<ptr>::as_ref`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_ref-1)
-
[`<ptr>::as_mut`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_mut)
-
[`Pin::new`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new)
-
[`Pin::new_unchecked`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new_unchecked)
-
[`Pin::get_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_ref)
-
[`Pin::into_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.into_ref)
-
[`Pin::get_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_mut)
-
[`Pin::get_unchecked_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_unchecked_mut)
-
[`Pin::static_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_ref)
-
[`Pin::static_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_mut)
<a id="1.84.0-Cargo"></a>
## Cargo
- [Stabilize MSRV-aware resolver
config](https://redirect.github.com/rust-lang/cargo/pull/14639/)
- [Stabilize resolver
v3](https://redirect.github.com/rust-lang/cargo/pull/14754/)
<a id="1.84-Rustdoc"></a>
## Rustdoc
- [rustdoc-search: improve type-driven
search](https://redirect.github.com/rust-lang/rust/pull/127589)
<a id="1.84.0-Compatibility-Notes"></a>
## Compatibility Notes
- [Enable by default the `LSX` target feature for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/132140)
- [The unstable `-Zprofile` flag (“gcov-style” coverage instrumentation)
has been
removed.](https://redirect.github.com/rust-lang/rust/pull/131829) This
does not affect the stable flags for coverage instrumentation
(`-Cinstrument-coverage`) and profile-guided optimization
(`-Cprofile-generate`, `-Cprofile-use`), which are unrelated and remain
available.
- Support for the target named `wasm32-wasi` has been removed as the
target is now named `wasm32-wasip1`. This completes the
[transition](https://redirect.github.com/rust-lang/compiler-team/issues/607)
[plan](https://redirect.github.com/rust-lang/compiler-team/issues/695)
for this target following [the introduction of
`wasm32-wasip1`](https://redirect.github.com/rust-lang/rust/pull/120468)
in Rust 1.78. Compiler warnings on [use of
`wasm32-wasi`](https://redirect.github.com/rust-lang/rust/pull/126662)
introduced in Rust 1.81 are now gone as well as the target is removed.
- [The syntax `&pin (mut|const) T` is now parsed as a type which in
theory could affect macro expansion results in some edge
cases](https://redirect.github.com/rust-lang/rust/pull/130635#issuecomment-2375462821)
- [Legacy syntax for calling `std::arch` functions is no longer
permitted to declare items or bodies (such as closures, inline consts,
or async
blocks).](https://redirect.github.com/rust-lang/rust/pull/130443#issuecomment-2445678945)
- The `wasm32-unknown-emscripten` target's binary release of the
standard library is now [built with the latest emsdk
3.1.68](https://redirect.github.com/rust-lang/rust/pull/131533), which
fixes an ABI-incompatibility with Emscripten >= 3.1.42. If you are
locally using a version of emsdk with an incompatible ABI (e.g. before
3.1.42 or a future one), you should build your code with `-Zbuild-std`
to ensure that `std` uses the correct ABI.
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [The next-generation trait solver is now enabled for coherence, fixing
multiple soundness
issues](https://redirect.github.com/rust-lang/rust/pull/130654)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "* * * * *" (UTC), Automerge - At any
time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-09 19:10:40 +00:00
|
|
|
toolchain: "1.84" # STABLE
|
2021-07-01 15:45:56 -05:00
|
|
|
components: rustfmt
|
2022-12-01 17:54:48 +00:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Check formatting
|
|
|
|
run: cargo fmt --all -- --check
|
|
|
|
clippy:
|
|
|
|
name: clippy
|
|
|
|
runs-on: ubuntu-latest
|
2023-03-29 14:33:22 -05:00
|
|
|
permissions:
|
|
|
|
security-events: write # to upload sarif results
|
2021-07-01 15:45:56 -05:00
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
2023-10-01 03:30:16 +00:00
|
|
|
uses: actions/checkout@v4
|
2021-07-01 15:45:56 -05:00
|
|
|
- name: Install Rust
|
2023-03-29 14:33:22 -05:00
|
|
|
uses: dtolnay/rust-toolchain@stable
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
chore(deps): Update Rust Stable to v1.84 (#1216)
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [STABLE](https://redirect.github.com/rust-lang/rust) | minor | `1.83`
-> `1.84` |
---
### Release Notes
<details>
<summary>rust-lang/rust (STABLE)</summary>
###
[`v1.84`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1840-2025-01-09)
[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.83.0...1.84.0)
\==========================
<a id="
Language"></a>
## Language
- [Allow `#[deny]` inside `#[forbid]` as a
no-op](https://redirect.github.com/rust-lang/rust/pull/121560/)
- [Show a warning when `-Ctarget-feature` is used to toggle features
that can lead to unsoundness due to ABI
mismatches](https://redirect.github.com/rust-lang/rust/pull/129884)
- [Use the next-generation trait solver in
coherence](https://redirect.github.com/rust-lang/rust/pull/130654)
- [Allow coercions to drop the principal of trait
objects](https://redirect.github.com/rust-lang/rust/pull/131857)
- [Support `/` as the path separator for `include!()` in all cases on
Windows](https://redirect.github.com/rust-lang/rust/pull/125205)
- [Taking a raw ref (`raw (const|mut)`) of a deref of a pointer (`*ptr`)
is now safe](https://redirect.github.com/rust-lang/rust/pull/129248)
- [Stabilize s390x inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131258)
- [Stabilize Arm64EC inline
assembly](https://redirect.github.com/rust-lang/rust/pull/131781)
- [Lint against creating pointers to immediately dropped
temporaries](https://redirect.github.com/rust-lang/rust/pull/128985)
- [Execute drop glue when unwinding in an `extern "C"`
function](https://redirect.github.com/rust-lang/rust/pull/129582)
<a id="1.84.0-Compiler"></a>
## Compiler
- [Add `--print host-tuple` flag to print the host target tuple and
affirm the "target tuple" terminology over "target
triple"](https://redirect.github.com/rust-lang/rust/pull/125579)
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [Set up indirect access to external data for
`loongarch64-unknown-linux-{musl,ohos}`](https://redirect.github.com/rust-lang/rust/pull/131583)
- [Enable XRay instrumentation for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/131818)
- [Extend the `unexpected_cfgs` lint to also warn in external
macros](https://redirect.github.com/rust-lang/rust/pull/132577)
- [Stabilize WebAssembly `multivalue`, `reference-types`, and
`tail-call` target
features](https://redirect.github.com/rust-lang/rust/pull/131080)
- [Added Tier 2 support for the `wasm32v1-none`
target](https://redirect.github.com/rust-lang/rust/pull/131487)
<a id="1.84.0-Libraries"></a>
## Libraries
- [Implement `From<&mut {slice}>` for
`Box/Rc/Arc<{slice}>`](https://redirect.github.com/rust-lang/rust/pull/129329)
- [Move `<float>::copysign`, `<float>::abs`, `<float>::signum` to
`core`](https://redirect.github.com/rust-lang/rust/pull/131304)
- [Add `LowerExp` and `UpperExp` implementations to
`NonZero`](https://redirect.github.com/rust-lang/rust/pull/131377)
- [Implement `FromStr` for `CString` and `TryFrom<CString>` for
`String`](https://redirect.github.com/rust-lang/rust/pull/130608)
- [`std::os::darwin` has been made
public](https://redirect.github.com/rust-lang/rust/pull/123723)
<a id="1.84.0-Stabilized-APIs"></a>
## Stabilized APIs
-
[`Ipv6Addr::is_unique_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unique_local)
-
[`Ipv6Addr::is_unicast_link_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unicast_link_local)
-
[`core::ptr::with_exposed_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance.html)
-
[`core::ptr::with_exposed_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance_mut.html)
-
[`<ptr>::addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.addr)
-
[`<ptr>::expose_provenance`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.expose_provenance)
-
[`<ptr>::with_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.with_addr)
-
[`<ptr>::map_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.map_addr)
-
[`<int>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.isqrt)
-
[`<int>::checked_isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.checked_isqrt)
-
[`<uint>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.u32.html#method.isqrt)
-
[`NonZero::isqrt`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#impl-NonZero%3Cu128%3E/method.isqrt)
-
[`core::ptr::without_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance.html)
-
[`core::ptr::without_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance_mut.html)
-
[`core::ptr::dangling`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling.html)
-
[`core::ptr::dangling_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling_mut.html)
These APIs are now stable in const contexts
-
[`AtomicBool::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicBool.html#method.from_ptr)
-
[`AtomicPtr::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicPtr.html#method.from_ptr)
-
[`AtomicU8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU8.html#method.from_ptr)
-
[`AtomicU16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU16.html#method.from_ptr)
-
[`AtomicU32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU32.html#method.from_ptr)
-
[`AtomicU64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU64.html#method.from_ptr)
-
[`AtomicUsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.from_ptr)
-
[`AtomicI8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI8.html#method.from_ptr)
-
[`AtomicI16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI16.html#method.from_ptr)
-
[`AtomicI32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI32.html#method.from_ptr)
-
[`AtomicI64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI64.html#method.from_ptr)
-
[`AtomicIsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicIsize.html#method.from_ptr)
-
[`<ptr>::is_null`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_null-1)
-
[`<ptr>::as_ref`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_ref-1)
-
[`<ptr>::as_mut`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_mut)
-
[`Pin::new`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new)
-
[`Pin::new_unchecked`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new_unchecked)
-
[`Pin::get_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_ref)
-
[`Pin::into_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.into_ref)
-
[`Pin::get_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_mut)
-
[`Pin::get_unchecked_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_unchecked_mut)
-
[`Pin::static_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_ref)
-
[`Pin::static_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_mut)
<a id="1.84.0-Cargo"></a>
## Cargo
- [Stabilize MSRV-aware resolver
config](https://redirect.github.com/rust-lang/cargo/pull/14639/)
- [Stabilize resolver
v3](https://redirect.github.com/rust-lang/cargo/pull/14754/)
<a id="1.84-Rustdoc"></a>
## Rustdoc
- [rustdoc-search: improve type-driven
search](https://redirect.github.com/rust-lang/rust/pull/127589)
<a id="1.84.0-Compatibility-Notes"></a>
## Compatibility Notes
- [Enable by default the `LSX` target feature for LoongArch Linux
targets](https://redirect.github.com/rust-lang/rust/pull/132140)
- [The unstable `-Zprofile` flag (“gcov-style” coverage instrumentation)
has been
removed.](https://redirect.github.com/rust-lang/rust/pull/131829) This
does not affect the stable flags for coverage instrumentation
(`-Cinstrument-coverage`) and profile-guided optimization
(`-Cprofile-generate`, `-Cprofile-use`), which are unrelated and remain
available.
- Support for the target named `wasm32-wasi` has been removed as the
target is now named `wasm32-wasip1`. This completes the
[transition](https://redirect.github.com/rust-lang/compiler-team/issues/607)
[plan](https://redirect.github.com/rust-lang/compiler-team/issues/695)
for this target following [the introduction of
`wasm32-wasip1`](https://redirect.github.com/rust-lang/rust/pull/120468)
in Rust 1.78. Compiler warnings on [use of
`wasm32-wasi`](https://redirect.github.com/rust-lang/rust/pull/126662)
introduced in Rust 1.81 are now gone as well as the target is removed.
- [The syntax `&pin (mut|const) T` is now parsed as a type which in
theory could affect macro expansion results in some edge
cases](https://redirect.github.com/rust-lang/rust/pull/130635#issuecomment-2375462821)
- [Legacy syntax for calling `std::arch` functions is no longer
permitted to declare items or bodies (such as closures, inline consts,
or async
blocks).](https://redirect.github.com/rust-lang/rust/pull/130443#issuecomment-2445678945)
- The `wasm32-unknown-emscripten` target's binary release of the
standard library is now [built with the latest emsdk
3.1.68](https://redirect.github.com/rust-lang/rust/pull/131533), which
fixes an ABI-incompatibility with Emscripten >= 3.1.42. If you are
locally using a version of emsdk with an incompatible ABI (e.g. before
3.1.42 or a future one), you should build your code with `-Zbuild-std`
to ensure that `std` uses the correct ABI.
- [Declaring functions with a calling convention not supported on the
current target now triggers a hard
error](https://redirect.github.com/rust-lang/rust/pull/129935)
- [The next-generation trait solver is now enabled for coherence, fixing
multiple soundness
issues](https://redirect.github.com/rust-lang/rust/pull/130654)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "* * * * *" (UTC), Automerge - At any
time (no schedule defined).
🚦 **Automerge**: Enabled.
♻ **Rebasing**: Whenever PR is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-09 19:10:40 +00:00
|
|
|
toolchain: "1.84" # STABLE
|
2021-07-01 15:45:56 -05:00
|
|
|
components: clippy
|
2022-12-01 17:54:48 +00:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
2023-03-29 14:33:22 -05:00
|
|
|
- name: Install SARIF tools
|
2024-03-28 09:50:22 -05:00
|
|
|
run: cargo install clippy-sarif --locked
|
2023-03-29 14:33:22 -05:00
|
|
|
- name: Install SARIF tools
|
2024-03-28 09:50:22 -05:00
|
|
|
run: cargo install sarif-fmt --locked
|
2023-03-29 14:33:22 -05:00
|
|
|
- name: Check
|
|
|
|
run: >
|
2024-11-18 13:48:49 -06:00
|
|
|
cargo clippy --workspace --all-features --all-targets --message-format=json
|
2023-03-29 14:33:22 -05:00
|
|
|
| clippy-sarif
|
|
|
|
| tee clippy-results.sarif
|
|
|
|
| sarif-fmt
|
|
|
|
continue-on-error: true
|
|
|
|
- name: Upload
|
2024-03-01 03:09:12 +00:00
|
|
|
uses: github/codeql-action/upload-sarif@v3
|
2021-07-01 15:45:56 -05:00
|
|
|
with:
|
2023-03-29 14:33:22 -05:00
|
|
|
sarif_file: clippy-results.sarif
|
|
|
|
wait-for-processing: true
|
2023-05-18 14:58:59 -05:00
|
|
|
- name: Report status
|
|
|
|
run: cargo clippy --workspace --all-features --all-targets -- -D warnings --allow deprecated
|
2024-02-08 07:48:29 -06:00
|
|
|
coverage:
|
|
|
|
name: Coverage
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- name: Checkout repository
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install Rust
|
|
|
|
uses: dtolnay/rust-toolchain@stable
|
|
|
|
with:
|
2024-02-08 09:07:52 -06:00
|
|
|
toolchain: stable
|
2024-02-08 07:48:29 -06:00
|
|
|
- uses: Swatinem/rust-cache@v2
|
|
|
|
- name: Install cargo-tarpaulin
|
|
|
|
run: cargo install cargo-tarpaulin
|
|
|
|
- name: Gather coverage
|
|
|
|
run: cargo tarpaulin --output-dir coverage --out lcov
|
|
|
|
- name: Publish to Coveralls
|
|
|
|
uses: coverallsapp/github-action@master
|
|
|
|
with:
|
|
|
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|