Skip to content

v0.10.1

v0.10.1 #153

Workflow file for this run

name: ci
on: [push, pull_request]
jobs:
lints:
name: Rustfmt and clippy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install rust (stable)
uses: dtolnay/rust-toolchain@stable
with:
components: clippy, rustfmt
- name: Run rustfmt
run: cargo fmt --check
- name: Run clippy
run: cargo clippy --all-features -- -D warnings
docs:
name: Build docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install rust (nightly)
uses: dtolnay/rust-toolchain@nightly
- name: Generate docs
run: cargo doc --no-deps --all-features
build_and_test:
name: Build and test
runs-on: ubuntu-latest
strategy:
matrix:
rust: [stable, beta, nightly]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install rust (${{ matrix.rust }})
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
- name: Check default features
run: cargo check --examples --tests
- name: Check no default features
run: cargo check --examples --tests --no-default-features
- name: Check `rustls-tls` feature
run: cargo check --examples --tests --no-default-features --features rustls-tls
- name: Check `default-tls` and `rustls-tls` feature
run: cargo check --examples --tests --features rustls-tls
- name: Tests
run: cargo test --all-features
minimal_versions:
name: Minimal crate versions
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install nightly toolchain
uses: dtolnay/rust-toolchain@nightly
- name: Install stable toolchain
uses: dtolnay/rust-toolchain@stable
- name: Install cargo-hack
uses: taiki-e/install-action@cargo-hack
- name: Install cargo-minimal-versions
uses: taiki-e/install-action@cargo-minimal-versions
- name: Check minimal versions
run: cargo minimal-versions check --no-default-features --features rustls-tls
MSRV:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get MSRV from package metadata
id: msrv
run: cargo metadata --no-deps --format-version 1 | jq -r '"version=" + (.packages[] | select(.name == "modio")).rust_version' >> $GITHUB_OUTPUT
- name: Install rust (${{ steps.msrv.outputs.version }})
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ steps.msrv.outputs.version }}
- run: cargo check --all-features