name: Check (Minimal Versions)

on:
  push:
    branches:
      - main
    paths:
      - "Cargo.toml"
      - "**/*.rs"
      - ".github/workflows/ci_check_minimal.yml"
  pull_request:
    branches:
      - main
    paths:
      - "Cargo.toml"
      - "**/*.rs"
      - ".github/workflows/ci_check_minimal.yml"

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
  cancel-in-progress: true

env:
  RUST_BACKTRACE: 1

jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Rust Toolchain
        run: |
          rustup default nightly
          rustup component add clippy
      - uses: taiki-e/install-action@cargo-no-dev-deps
      - name: Check clippy
        shell: bash
        run: |
          cargo no-dev-deps -Zminimal-versions clippy --all-features --lib
      - name: Check Docs
        run: |
          cargo no-dev-deps -Zminimal-versions doc --all-features --no-deps
