Skip to content

Bump nix to 0.29, bump MSRV, refactor tests #92

Bump nix to 0.29, bump MSRV, refactor tests

Bump nix to 0.29, bump MSRV, refactor tests #92

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
jobs:
build:
name: Build, test, and lint
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
rust: ["1.69.0", stable]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
components: clippy
- run: cargo build
- run: cargo test -F test-close-again -- --test-threads 1
- run: cargo clippy
build_extra:
name: Build on extra platforms
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
target:
- aarch64-linux-android
- aarch64-unknown-linux-gnu
- arm-linux-androideabi
- arm-unknown-linux-gnueabihf
- i586-unknown-linux-gnu
- i686-linux-android
- i686-unknown-linux-gnu
- x86_64-linux-android
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
- run: cargo build --target ${{ matrix.target }}
minimal_versions:
# Adapted from https://github.com/jonhoo/rust-ci-conf/blob/a13691528b3f1918594bfc53db8cf5ad0240c59e/.github/workflows/test.yml#L46
name: Build with minimal dependency versions
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: dtolnay/rust-toolchain@nightly
- run: cargo +nightly update -Zminimal-versions
- run: cargo +stable build --locked --all-features --all-targets
rustfmt:
name: Check formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- run: cargo fmt --all -- --check