|
|
@@ -46,9 +46,9 @@ env:
|
|
|
jobs:
|
|
|
fmt:
|
|
|
name: fmt
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
with:
|
|
|
components: rustfmt
|
|
|
@@ -57,9 +57,9 @@ jobs:
|
|
|
|
|
|
clippy:
|
|
|
name: clippy
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
with:
|
|
|
components: clippy
|
|
|
@@ -68,9 +68,9 @@ jobs:
|
|
|
|
|
|
audit:
|
|
|
name: audit
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Install cargo-audit
|
|
|
run: cargo install cargo-audit --locked
|
|
|
@@ -79,9 +79,9 @@ jobs:
|
|
|
|
|
|
deny:
|
|
|
name: deny
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Install cargo-deny
|
|
|
run: cargo install cargo-deny --locked
|
|
|
@@ -90,7 +90,7 @@ jobs:
|
|
|
|
|
|
sqlx-prepare-check:
|
|
|
name: sqlx-prepare-check
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
services:
|
|
|
postgres:
|
|
|
image: postgres:16
|
|
|
@@ -106,7 +106,7 @@ jobs:
|
|
|
--health-timeout 5s
|
|
|
--health-retries 10
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Install sqlx-cli
|
|
|
run: cargo install sqlx-cli --locked --version 0.9.0 --no-default-features --features postgres,rustls
|
|
|
@@ -121,10 +121,10 @@ jobs:
|
|
|
|
|
|
doc-links:
|
|
|
name: doc-links
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
- - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
+ - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
|
|
|
with:
|
|
|
python-version: "3.x"
|
|
|
- name: Check documentation links (markdown-link-check equivalent)
|
|
|
@@ -132,9 +132,9 @@ jobs:
|
|
|
|
|
|
nextest:
|
|
|
name: nextest
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Install cargo-nextest
|
|
|
uses: taiki-e/install-action@ab6895351a88b908e96a4697860d4ffea5e57dbe # v2
|
|
|
@@ -152,21 +152,21 @@ jobs:
|
|
|
|
|
|
doc-tests:
|
|
|
name: doc-tests
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Documentation tests
|
|
|
run: cargo test --doc
|
|
|
|
|
|
fuzz-build:
|
|
|
name: fuzz-build
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
defaults:
|
|
|
run:
|
|
|
working-directory: fuzz
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
# The `fuzz/rust-toolchain.toml` in the working directory selects
|
|
|
# nightly via rustup override; the root stable pin is untouched.
|
|
|
- name: Install cargo-fuzz (nightly, per fuzz/rust-toolchain.toml)
|
|
|
@@ -182,7 +182,7 @@ jobs:
|
|
|
# continuous coverage is ClusterFuzzLite (`.clusterfuzzlite/`, docs in
|
|
|
# `docs/CONTRIBUTING.md`); the remaining owner step is enabling it.
|
|
|
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
timeout-minutes: 70
|
|
|
strategy:
|
|
|
fail-fast: false
|
|
|
@@ -192,7 +192,7 @@ jobs:
|
|
|
run:
|
|
|
working-directory: fuzz
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
# `fuzz/rust-toolchain.toml` selects nightly; the root stable pin is
|
|
|
# untouched, exactly as in `fuzz-build`.
|
|
|
- name: Install cargo-fuzz (nightly)
|
|
|
@@ -200,7 +200,7 @@ jobs:
|
|
|
# `uses` steps resolve paths from the workspace root, not the job's
|
|
|
# `working-directory`; keep the fuzz/ prefix explicit.
|
|
|
- name: Restore corpus for ${{ matrix.target }}
|
|
|
- uses: actions/cache/restore@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
|
|
|
+ uses: actions/cache/restore@caa296126883cff596d87d8935842f9db880ef25 # v5
|
|
|
with:
|
|
|
path: fuzz/corpus/${{ matrix.target }}
|
|
|
key: fuzz-corpus-${{ matrix.target }}-${{ github.run_id }}
|
|
|
@@ -212,13 +212,13 @@ jobs:
|
|
|
# `restore-keys` always pick the newest entry.
|
|
|
- name: Save corpus for ${{ matrix.target }}
|
|
|
if: success()
|
|
|
- uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
|
|
|
+ uses: actions/cache/save@caa296126883cff596d87d8935842f9db880ef25 # v5
|
|
|
with:
|
|
|
path: fuzz/corpus/${{ matrix.target }}
|
|
|
key: fuzz-corpus-${{ matrix.target }}-${{ github.run_id }}
|
|
|
- name: Upload crash artifacts
|
|
|
if: failure()
|
|
|
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
|
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
|
|
|
with:
|
|
|
name: fuzz-crash-${{ matrix.target }}
|
|
|
path: fuzz/artifacts/${{ matrix.target }}
|
|
|
@@ -228,10 +228,10 @@ jobs:
|
|
|
name: mutants
|
|
|
# Scheduled budgeted job only: never blocks a PR.
|
|
|
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
timeout-minutes: 60
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
- name: Install cargo-mutants
|
|
|
run: cargo install cargo-mutants --locked
|
|
|
@@ -246,10 +246,10 @@ jobs:
|
|
|
# because several lib unit tests are testcontainers-backed.
|
|
|
# Follow-up: add a threshold and extend beyond `--lib` once
|
|
|
# the first reports land.
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
continue-on-error: true
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@686976e191b89faba57d3206551f0f330d8cb249 # stable
|
|
|
with:
|
|
|
components: llvm-tools-preview
|
|
|
@@ -268,7 +268,7 @@ jobs:
|
|
|
run: docker compose -f compose.test.yaml down -v
|
|
|
- name: Upload coverage report
|
|
|
if: always()
|
|
|
- uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
|
|
|
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6
|
|
|
with:
|
|
|
name: coverage-lcov
|
|
|
path: lcov.info
|
|
|
@@ -289,11 +289,11 @@ jobs:
|
|
|
# `ring`-backed modules (`crypto::field`, `crypto::totp`, whose C/asm
|
|
|
# calls Miri cannot interpret).
|
|
|
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
|
|
|
- runs-on: ubuntu-latest
|
|
|
+ runs-on: ubuntu-24.04
|
|
|
timeout-minutes: 60
|
|
|
continue-on-error: true
|
|
|
steps:
|
|
|
- - uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
|
|
|
+ - uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5
|
|
|
- uses: dtolnay/rust-toolchain@f0d5300ba8908d942c808f4d31c08471d7798ba3 # nightly
|
|
|
with:
|
|
|
components: miri
|