Skip to content

feat: add trait impls for OsStr/Path compatibility #96

feat: add trait impls for OsStr/Path compatibility

feat: add trait impls for OsStr/Path compatibility #96

Workflow file for this run

name: rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
matrix:
toolchain:
- stable
- nightly
profile:
- dev
- release
os:
- ubuntu-latest
- windows-latest
- macos-latest
features:
- ""
- "--all-features"
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{matrix.toolchain}}
- name: Show version
run: cargo version
- name: Build
run: cargo build --verbose --profile ${{matrix.profile}} ${{matrix.features}}
- name: Run tests
run: cargo test --verbose --profile ${{matrix.profile}} ${{matrix.features}}
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
components: rustfmt
- name: Check formatting
run: cargo fmt --all --check
doc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@stable
- name: Check documentation (all-features)
env:
RUSTDOCFLAGS: -D warnings
run: cargo doc --no-deps --document-private-items --all-features
- name: Check documentation (minimal)
env:
RUSTDOCFLAGS: -D warnings
run: cargo doc --no-deps --document-private-items
msrv:
runs-on: ubuntu-latest
env:
rust_version: ""
steps:
- uses: actions/checkout@v3
- name: Get MSRV from Cargo
run: |
rust_version=$(grep rust-version Cargo.toml | cut -d'"' -f2)
echo "rust_version=$rust_version" >> $GITHUB_ENV
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ env.rust_version }}
- name: Build
run: cargo build --verbose --release --all-features
- name: Run tests
run: cargo test --verbose --release --all-features
minimal-versions:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: dtolnay/rust-toolchain@nightly
- uses: taiki-e/install-action@cargo-hack
- uses: taiki-e/install-action@cargo-minimal-versions
- name: Check with minimal versions
run: cargo minimal-versions check