Ignore reserved bits in chunks #250
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: Rust CI | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
schedule: | |
- cron: '5 16 * * 6' | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
rust: ["1.67.1", nightly, beta, stable] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
if: ${{ matrix.rust == '1.67.1' }} | |
- name: Generate Cargo.lock with minimal-version dependencies | |
if: ${{ matrix.rust == '1.67.1' }} | |
run: cargo -Zminimal-versions generate-lockfile | |
- uses: dtolnay/rust-toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust }} | |
- name: Cache Cargo Dependencies | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: build | |
run: cargo build -v | |
- name: test | |
if: ${{ matrix.rust != '1.67.1' }} | |
run: cargo test -v && cargo doc -v | |
- name: bench | |
if: ${{ matrix.rust == 'nightly' }} | |
run: cargo bench -v --features _benchmarks | |
test_big_endian: | |
# github actions does not support big endian systems directly, but it does support QEMU. | |
# so we install qemu, then build and run the tests in an emulated powerpc system. | |
# note: you can also use this approach to test for big endian locally. | |
runs-on: ubuntu-latest | |
# we are using the cross project for cross compilation: | |
# https://github.com/cross-rs/cross | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install or use cached cross-rs/cross | |
uses: baptiste0928/cargo-install@v1 | |
with: | |
crate: cross | |
- name: Cache Cargo Dependencies | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Start Docker (required for cross-rs) | |
run: sudo systemctl start docker | |
- name: Cross-Run Tests in powerpc-unknown-linux-gnu using Qemu | |
run: cross test --target powerpc-unknown-linux-gnu --verbose -v | |
clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
with: | |
components: clippy | |
- run: cargo clippy --all-features -- -D warnings | |
rustfmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
with: | |
components: rustfmt | |
- name: Run rustfmt check | |
run: cargo fmt -- --check |