Skip to content

zeroize_derive: make version *-pre #1181

zeroize_derive: make version *-pre

zeroize_derive: make version *-pre #1181

Workflow file for this run

name: cmov
on:
pull_request:
paths:
- ".github/workflows/cmov.yml"
- "cmov/**"
- "Cargo.*"
push:
branches: master
permissions:
contents: read
defaults:
run:
working-directory: cmov
env:
CARGO_INCREMENTAL: 0
RUSTFLAGS: "-Dwarnings"
# Cancels CI jobs when new commits are pushed to a PR branch
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
build-no-std:
strategy:
matrix:
target:
- riscv32i-unknown-none-elf
- thumbv7em-none-eabi
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: RustCrypto/actions/cargo-cache@master
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: ${{ matrix.target }}
- uses: RustCrypto/actions/cargo-hack-install@master
- run: cargo build --target ${{ matrix.target }} --all-features
- run: cargo build --target ${{ matrix.target }} --all-features --release
minimal-versions:
uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master
with:
working-directory: ${{ github.workflow }}
test:
strategy:
matrix:
include:
# `aarch64` Linux
- target: aarch64-unknown-linux-gnu
rust: 1.85.0 # MSRV
runner: ubuntu-24.04-arm
- target: aarch64-unknown-linux-gnu
rust: stable
runner: ubuntu-24.04-arm
# `aarch64` macOS
- target: aarch64-apple-darwin
rust: 1.85.0 # MSRV
runner: macos-latest
- target: aarch64-apple-darwin
rust: stable
runner: macos-latest
# `x86` Linux (32-bit)
- target: i686-unknown-linux-gnu
rust: 1.85.0 # MSRV
deps: sudo apt update && sudo apt install gcc-multilib
- target: i686-unknown-linux-gnu
rust: stable
deps: sudo apt update && sudo apt install gcc-multilib
# `x86_64` Linux
- target: x86_64-unknown-linux-gnu
rust: 1.85.0 # MSRV
- target: x86_64-unknown-linux-gnu
rust: stable
# `x86_64` Windows
- target: x86_64-pc-windows-msvc
runner: windows-latest
rust: 1.85.0 # MSRV
- target: x86_64-pc-windows-msvc
runner: windows-latest
rust: stable
runs-on: ${{ matrix.runner != '' && matrix.runner || 'ubuntu-latest' }}
steps:
- uses: actions/checkout@v6
- uses: RustCrypto/actions/cargo-cache@master
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
targets: ${{ matrix.target }}
- run: ${{ matrix.deps }}
- run: cargo test --target ${{ matrix.target }} --all-features
# Test using `cargo careful`
test-careful:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@nightly
- run: cargo install cargo-careful
- run: cargo careful test --all-features
# Cross-compiled tests
test-cross:
strategy:
matrix:
include:
# ARM32
- target: armv7-unknown-linux-gnueabi
rust: 1.85.0 # MSRV
- target: armv7-unknown-linux-gnueabi
rust: stable # MSRV
# PPC32
- target: powerpc-unknown-linux-gnu
rust: 1.85.0 # MSRV
- target: powerpc-unknown-linux-gnu
rust: stable
# RISCV64
- target: riscv64gc-unknown-linux-gnu
rust: stable
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: RustCrypto/actions/cargo-cache@master
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
targets: ${{ matrix.target }}
- uses: RustCrypto/actions/cross-install@master
- run: cross test --target ${{ matrix.target }}
# Test using `cargo miri`
test-miri:
runs-on: ubuntu-latest
env:
MIRIFLAGS: "-Zmiri-symbolic-alignment-check -Zmiri-strict-provenance"
strategy:
matrix:
target:
- armv7-unknown-linux-gnueabi
- powerpc-unknown-linux-gnu
- riscv64gc-unknown-linux-gnu
- s390x-unknown-linux-gnu
- x86_64-unknown-linux-gnu
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@nightly
- run: rustup component add miri && cargo miri setup
- run: cargo miri test --target ${{ matrix.target }} --all-features --lib
# Test WASM using `wasmtime`
test-wasm:
runs-on: ubuntu-latest
env:
CARGO_TARGET_WASM32_WASIP1_RUNNER: "wasmtime"
steps:
- uses: actions/checkout@v6
- uses: bytecodealliance/actions/wasmtime/setup@v1
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: wasm32-wasip1
- run: cargo test --target wasm32-wasip1 --all-features
- run: cargo test --target wasm32-wasip1 --all-features --release