name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
msrv:
name: MSRV
runs-on: ubuntu-latest
timeout-minutes: 20
permissions:
contents: read
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 with:
persist-credentials: false
- uses: dtolnay/rust-toolchain@7c8d7d138f5c09cef361f8214cf96882cd029cdb with:
toolchain: "1.81"
- name: Test stable optional features on the MSRV
run: cargo test --locked --all-targets --no-default-features --features comments,email_address,literals,normalization,serde,white-spaces
ci:
name: CI
runs-on: ubuntu-latest
timeout-minutes: 20
permissions:
contents: read
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 with:
persist-credentials: false
- uses: dtolnay/rust-toolchain@7c8d7d138f5c09cef361f8214cf96882cd029cdb with:
toolchain: stable
components: clippy
- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 with:
cache-on-failure: true
- name: Test default features
run: cargo test --locked
- name: Test stable optional features
run: cargo test --locked --no-default-features --features comments,email_address,literals,normalization,serde,white-spaces
- name: Test no_std build
run: |
rustup target add thumbv6m-none-eabi
cargo build --verbose --release --target thumbv6m-none-eabi
- name: Verify package
run: cargo package --locked