Libsecp v0.30.0 compat #837
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
# Make sure CI fails on all warnings, including Clippy lints | |
env: | |
RUSTFLAGS: "-Dwarnings" | |
RUSTDOCFLAGS: "-Dwarnings" | |
jobs: | |
fmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: rustfmt | |
- run: cargo fmt --all -- --check | |
clippy_check: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
with: | |
components: clippy | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo clippy --all-targets --all-features --tests | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@1.63.0 | |
- uses: Swatinem/rust-cache@v2 | |
- run: | | |
cargo update -p proptest --precise "1.2.0" | |
cargo update -p tempfile --precise "3.3.0" | |
- run: cargo tree --all-features # to debug deps issues | |
- run: cargo build --release --all-features | |
# We want to test stable on multiple platforms with --all-features | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
target: ["x86_64-unknown-linux-gnu", "armv7-unknown-linux-gnueabihf"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
target: ${{ matrix.target }} | |
override: true | |
- uses: Swatinem/rust-cache@v2.0.0 | |
- name: test-on-target | |
uses: actions-rs/cargo@v1 | |
with: | |
use-cross: ${{ matrix.target != 'x86_64-unknown-linux-gnu' }} | |
command: test | |
args: --all-features --release --target ${{ matrix.target }} | |
# test nightly build/test | |
test-nightly: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo test --release --all-features | |
# test without default features | |
test-minimal: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
package: [ "secp256kfun", "sigma_fun", "ecdsa_fun", "schnorr_fun" ] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@v2.0.0 | |
- run: cargo test --release --no-default-features -p ${{ matrix.package }} | |
# test with alloc feature only | |
test-alloc: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
package: [ "secp256kfun", "sigma_fun", "ecdsa_fun", "schnorr_fun" ] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- uses: Swatinem/rust-cache@v2.0.0 | |
- run: cargo test --release --no-default-features --features alloc -p ${{ matrix.package }} | |
doc-build: | |
name: doc-build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo doc --no-deps --workspace --all-features |