serde_args 0.2.0

Command line argument parsing with serde.
Documentation
name: Test

on:
  push:
  pull_request:

permissions:
  contents: read

env:
  CARGO_TERM_COLOR: always

jobs:
  test:
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macos-14]
        rust: [stable, beta, nightly]
      fail-fast: false
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@master
      with:
        toolchain: ${{ matrix.rust }}
    - run: cargo test --workspace --no-fail-fast

  test-no-macro:
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macos-14]
        rust: [stable, beta, nightly]
      fail-fast: false
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@master
      with:
        toolchain: ${{ matrix.rust }}
    - run: cargo test --no-default-features --lib

  fmt:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
      with:
        components: rustfmt
    - run: cargo fmt --all --check

  check:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
    - run: cargo check --workspace

  check-no-macro:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
    - run: cargo check --no-default-features

  clippy:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
      with:
        components: clippy
    - run: cargo clippy -- --deny warnings

  msrv:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: dtolnay/rust-toolchain@nightly
    - run: curl -LsSf https://github.com/foresterre/cargo-msrv/releases/download/v0.17.1/cargo-msrv-x86_64-unknown-linux-gnu-v0.17.1.tgz | tar zxvf - -C ~/.cargo/bin
    - run: mv ~/.cargo/bin/cargo-msrv-x86_64-unknown-linux-gnu-v0.17.1/cargo-msrv ~/.cargo/bin/cargo-msrv
    - run: cargo msrv verify --ignore-lockfile