clap-num 1.2.0

Number parsers for clap
Documentation
on:
  push:
    branches:
      - main
    tags:
      - '*'
  pull_request:
  schedule:
    - cron: "13 3 * * 6"

name: CI

jobs:
  build:
    name: Build
    runs-on: ubuntu-latest
    env:
      RUSTFLAGS: "-D warnings"
      RUSTDOCFLAGS: "-D warnings"
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo build
      - run: cargo doc

  test:
    name: Test
    runs-on: ubuntu-latest
    env: {"RUSTFLAGS": "-D warnings"}
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo test

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

  format:
    name: Format
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
        with:
          components: rustfmt
      - run: cargo fmt -- --check

  release:
    name: crates.io release
    if: startsWith(github.ref, 'refs/tags/')
    needs:
      - build
      - test
      - clippy
      - format
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo publish --token ${CRATES_IO_TOKEN}
        env:
          CRATES_IO_TOKEN: ${{ secrets.CRATES_IO_TOKEN }}