bevy_framepace 0.21.0

Frame pacing and frame limiting for Bevy
Documentation
name: CI
on: 
  pull_request:
  push:
    branches:
      - main
jobs:
  setup:
    runs-on: ubuntu-latest
    steps:
      - name: Update Packages
        run: sudo apt-get update -yq
      - name: Install dependencies
        run: sudo apt-get install -yq --no-install-recommends libudev-dev libasound2-dev libxcb-composite0-dev

  format:
    runs-on: ubuntu-latest
    needs: [setup]
    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2.7.0
      - run: rustup component add rustfmt
      - run: cargo fmt --all -- --check

  check:
    runs-on: ubuntu-latest
    needs: [setup]
    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2.7.0
      - run: cargo check --features=bevy_winit/x11

  clippy:
    runs-on: ubuntu-latest
    needs: [setup]
    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2.7.0
      - run: rustup component add clippy
      - run: cargo clippy --features=bevy_winit/x11 -- -D warnings

  doc:
    runs-on: ubuntu-latest
    needs: [setup]
    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2.7.0
      - run: cargo doc --features=bevy_winit/x11 --no-deps --workspace
        env:
          RUSTDOCFLAGS: -D warnings
    
  test:
    runs-on: ubuntu-latest
    needs: [setup]
    steps:
      - uses: actions/checkout@v3
      - uses: dtolnay/rust-toolchain@stable
      - uses: Swatinem/rust-cache@v2.7.0
      - run: cargo test --features=bevy_winit/x11