Reduce amount of unsafe
(#540)
#910
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: blake2 | |
on: | |
pull_request: | |
paths: | |
- ".github/workflows/blake2.yml" | |
- "blake2/**" | |
- "Cargo.*" | |
push: | |
branches: master | |
defaults: | |
run: | |
working-directory: blake2 | |
env: | |
CARGO_INCREMENTAL: 0 | |
RUSTFLAGS: "-Dwarnings" | |
jobs: | |
set-msrv: | |
uses: RustCrypto/actions/.github/workflows/set-msrv.yml@master | |
with: | |
msrv: 1.71.0 | |
build: | |
needs: set-msrv | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
rust: | |
- ${{needs.set-msrv.outputs.msrv}} | |
- stable | |
target: | |
- thumbv7em-none-eabi | |
- wasm32-unknown-unknown | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: RustCrypto/actions/cargo-cache@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.rust }} | |
targets: ${{ matrix.target }} | |
- uses: RustCrypto/actions/cargo-hack-install@master | |
- run: cargo hack build --target ${{ matrix.target }} --each-feature --exclude-features default,std,simd,simd_asm,simd_opt | |
test: | |
needs: set-msrv | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
rust: | |
- ${{needs.set-msrv.outputs.msrv}} | |
- stable | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: RustCrypto/actions/cargo-cache@master | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.rust }} | |
- uses: RustCrypto/actions/cargo-hack-install@master | |
- run: cargo hack test --feature-powerset --exclude-features simd,simd_asm,simd_opt | |
minimal-versions: | |
uses: RustCrypto/actions/.github/workflows/minimal-versions.yml@master | |
with: | |
working-directory: ${{ github.workflow }} | |
stable-cmd: cargo hack test --release --feature-powerset --exclude-features simd,simd_opt,simd_asm | |
# No longer builds on recent nightlies | |
# simd: | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: RustCrypto/actions/cargo-cache@master | |
# - uses: dtolnay/rust-toolchain@master | |
# with: | |
# toolchain: nightly-2021-05-01 | |
# - run: cargo test --features simd | |
# - run: cargo test --features simd_opt | |
# - run: cargo test --features simd_asm | |
# Cross-compiled tests | |
cross: | |
strategy: | |
matrix: | |
rust: | |
- 1.71.0 | |
- stable | |
target: | |
- aarch64-unknown-linux-gnu | |
- powerpc-unknown-linux-gnu | |
features: | |
- default | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
# Cross mounts only current package, i.e. by default it ignores workspace's Cargo.toml | |
working-directory: . | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/cross-tests | |
with: | |
rust: ${{ matrix.rust }} | |
package: ${{ github.workflow }} | |
target: ${{ matrix.target }} | |
features: ${{ matrix.features }} |