command-run 1.2.0

Library for running a command in a subprocess
Documentation
on:
  push:
    branches:
      - main
  pull_request:

name: CI

jobs:
  msrv:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: |
          # Extract the MSRV from Cargo.toml.
          msrv=$(cargo metadata --no-deps --format-version=1 | jq --raw-output '.packages[] | select(.name == "command-run") | .rust_version')

          rustup toolchain install ${msrv} --profile minimal --no-self-update
          cargo +${msrv} build
          cargo +${msrv} test

  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo check

  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo test

  test_no_deps:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo test --no-default-features

  fmt:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo fmt --all -- --check

  clippy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo clippy -- -D warnings

  doc:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: Swatinem/rust-cache@v2
      - run: cargo doc
        env:
          RUSTDOCFLAGS: -Dwarnings