name: Clippy Dev Test on: push: branches: - auto - try pull_request: # Only run on paths, that get checked by the clippy_dev tool paths: - 'CHANGELOG.md' - 'README.md' - '**.stderr' - '**.rs' env: RUST_BACKTRACE: 1 CARGO_INCREMENTAL: 0 jobs: clippy_dev: runs-on: ubuntu-latest steps: # Setup - name: Checkout uses: actions/checkout@v4 # Run - name: Build run: cargo build --features deny-warnings working-directory: clippy_dev - name: Test update_lints run: cargo dev update_lints --check - name: Test fmt run: cargo dev fmt --check - name: Test cargo dev new lint run: | cargo dev new_lint --name new_early_pass --pass early cargo dev new_lint --name new_late_pass --pass late cargo check git reset --hard HEAD # These jobs doesn't actually test anything, but they're only used to tell # bors the build completed, as there is no practical way to detect when a # workflow is successful listening to webhooks only. # # ALL THE PREVIOUS JOBS NEED TO BE ADDED TO THE `needs` SECTION OF THIS JOB! end-success: name: bors dev test finished if: github.event.pusher.name == 'bors' && success() runs-on: ubuntu-latest needs: [clippy_dev] steps: - name: Mark the job as successful run: exit 0 end-failure: name: bors dev test finished if: github.event.pusher.name == 'bors' && (failure() || cancelled()) runs-on: ubuntu-latest needs: [clippy_dev] steps: - name: Mark the job as a failure run: exit 1