name: Main on: push: branches: [ "main" ] pull_request: branches: [ "main" ] env: CARGO_TERM_COLOR: always jobs: reuse: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: REUSE Compliance Check uses: fsfe/reuse-action@v3 build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/cache@v4 with: path: | ~/.cargo/bin/ ~/.cargo/registry/index/ ~/.cargo/registry/cache/ ~/.cargo/git/db/ target/ key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} - name: Install dependencies run: | sudo apt-get update sudo apt-get install \ libunshield-dev \ - name: Build run: cargo build --features visual_data,game_install --verbose - name: Run tests run: cargo test --features visual_data,game_install --verbose - name: Run clippy run: cargo clippy --features visual_data,game_install - name: Run deny-check run: | cargo install --locked cargo-deny cargo deny check - name: Run semver-checks run: | cargo install --locked cargo-semver-checks cargo semver-checks check-release