minifb 0.28.0

Cross-platform window setup with optional bitmap rendering
Documentation
on: [push, pull_request]

name: CI

jobs:
  fmt:
    runs-on: ubuntu-latest
    # Steps represent a sequence of tasks that will be executed as part of the job.
    steps:
      - name: Checkout Repository
        uses: actions/checkout@v3

      - name: Setup Rust
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          profile: minimal
          components: rustfmt
          override: true

      - name: Check Format
        run: cargo fmt -- --check

  build_and_test:
    name: Test
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macOS-latest]
    runs-on: ${{ matrix.os }}
    steps:
      - if: matrix.os == 'ubuntu-latest'
        run: sudo apt install libwayland-cursor0 libxkbcommon-dev libwayland-dev
      - uses: actions/checkout@v2
      - name: Build
        run: cargo build --verbose
      - name: Run tests
        run: cargo test --verbose
      - name: Install wasm target
        run: rustup target add wasm32-unknown-unknown
      - name: Check wasm build
        run: cargo check --target wasm32-unknown-unknown --no-default-features