cargo-bundle 0.10.0

Wrap rust executables in OS-specific app bundles
name: CI

on: [ push, pull_request, workflow_dispatch ]

jobs:
  test:
    strategy:
      matrix:
        os:
          - ubuntu-latest
          - macos-latest
          - windows-latest
    runs-on: ${{ matrix.os }}
    name: Test
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: cargo build --all-features --verbose --all-targets
      - name: Run tests
        run: cargo test --all-features --verbose --all-targets
  clippy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: rustup component add clippy
      - run: cargo clippy --all-targets -- -D warnings
  rustfmt:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - run: rustup component add rustfmt
      - run: cargo fmt --all -- --check