chore(deps): update astral-sh/setup-uv action to v8 - autoclosed #921
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - next | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| VENV: .venv | |
| permissions: | |
| contents: read | |
| checks: write | |
| jobs: | |
| analysis: | |
| name: Code Analysis | |
| runs-on: ubuntu-latest | |
| if: (!contains(github.event.head_commit.message, '[skip ci]')) | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup Environment | |
| uses: ./.github/actions/setup-env | |
| - name: Lint | |
| run: | | |
| uv run invoke lint | |
| tests: | |
| name: Tests | |
| runs-on: ${{ matrix.os }} | |
| if: (!contains(github.event.head_commit.message, '[skip ci]')) | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| python-version: ['3.10', '3.11', '3.12', '3.13', '3.14'] | |
| fail-fast: ${{ !contains(github.event.pull_request.labels.*.name, 'ci/run-all-tests') }} | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup Environment | |
| uses: ./.github/actions/setup-env | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Run Tests (with coverage) | |
| id: tests-with-coverage | |
| if: matrix.python-version == '3.14' && matrix.os == 'ubuntu-latest' | |
| shell: bash | |
| run: uv run invoke test --coverage | |
| - name: Run Tests | |
| if: steps.tests-with-coverage.outcome == 'skipped' | |
| shell: bash | |
| run: uv run invoke test | |
| - name: Upload Coverage | |
| if: steps.tests-with-coverage.conclusion == 'success' | |
| uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| # # TODO: How to do this with uv? | |
| # version_checks: | |
| # name: Dependency Version Constraint Checks | |
| # runs-on: ubuntu-latest | |
| # if: "!contains(github.event.head_commit.message, '[skip ci]')" | |
| # env: | |
| # SKIP_DEPS: 1 | |
| # steps: | |
| # - uses: actions/checkout@v3.1.0 | |
| # - name: Setup Environment | |
| # uses: ./.github/actions/setup-env | |
| # with: | |
| # python-version: 3.7 # it's min, so we'll use an older version of python | |
| # - name: Install project dependencies | |
| # run: | | |
| # uv run install --with=test | |
| # - name: Test | |
| # env: | |
| # CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
| # run: | | |
| # uv run invoke test --coverage | |
| benchmark: | |
| name: Benchmark | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' && !contains(github.event.head_commit.message, '[skip ci]') | |
| needs: [tests] | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| steps: | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| - name: Setup Environment | |
| uses: ./.github/actions/setup-env | |
| - name: Benchmark | |
| run: uv run invoke benchmark | |
| - name: Publish Benchmark Results | |
| uses: benchmark-action/github-action-benchmark@a7bc2366eda11037936ea57d811a43b3418d3073 # v1.21.0 | |
| with: | |
| tool: 'pytest' | |
| output-file-path: benchmarks.json | |
| github-token: ${{ github.token }} | |
| auto-push: false | |
| alert-threshold: '200%' | |
| comment-on-alert: true | |
| fail-on-alert: false | |
| comment-always: true | |
| required_checks: | |
| name: Required Checks | |
| needs: | |
| - analysis | |
| - tests | |
| - benchmark | |
| runs-on: ubuntu-latest | |
| if: always() | |
| steps: | |
| - name: Fail on error | |
| if: contains(needs.*.result, 'failure') || cancelled() | |
| run: exit 1 |