|
1 | 1 | name: Python package |
2 | 2 |
|
3 | | -on: [workflow_dispatch, pull_request] |
| 3 | +on: |
| 4 | + push: |
| 5 | + branches: |
| 6 | + - master |
| 7 | + pull_request: |
| 8 | + workflow_dispatch: |
4 | 9 |
|
5 | 10 | jobs: |
6 | 11 | python-check: |
7 | 12 | strategy: |
8 | 13 | matrix: |
9 | | - python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] |
| 14 | + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] |
10 | 15 | platform: [ubuntu-22.04, macos-latest, windows-latest] |
11 | 16 | runs-on: ${{ matrix.platform }} |
12 | 17 | steps: |
13 | 18 | - uses: actions/checkout@v6 |
14 | 19 | with: |
15 | 20 | fetch-depth: 0 |
16 | 21 | - name: Set up Python ${{ matrix.python-version }} |
17 | | - uses: actions/setup-python@v6 |
| 22 | + uses: astral-sh/setup-uv@v7 |
18 | 23 | with: |
19 | 24 | python-version: ${{ matrix.python-version }} |
20 | 25 | - name: Install dependencies |
21 | 26 | run: | |
22 | | - python -m pip install -U pip poetry poethepoet |
23 | | - poetry --version |
24 | | - poetry install --only main,linters,test |
| 27 | + uv --version |
| 28 | + uv sync --locked --dev --group test --group linters |
25 | 29 | - name: Run tests and linters |
26 | 30 | run: | |
27 | 31 | git config --global user.email "action@github.com" |
28 | 32 | git config --global user.name "GitHub Action" |
29 | | - poetry ci |
| 33 | + uv run poe ci |
30 | 34 | shell: bash |
31 | 35 | - name: Upload coverage to Codecov |
32 | | - if: runner.os == 'Linux' |
33 | 36 | uses: codecov/codecov-action@v5 |
34 | 37 | with: |
35 | 38 | token: ${{ secrets.CODECOV_TOKEN }} |
36 | | - files: ./coverage.xml |
37 | | - flags: unittests |
38 | | - name: codecov-umbrella |
| 39 | + - name: Upload test results to Codecov |
| 40 | + uses: codecov/codecov-action@v5 |
| 41 | + if: ${{ !cancelled() }} |
| 42 | + with: |
| 43 | + token: ${{ secrets.CODECOV_TOKEN }} |
| 44 | + report_type: test_results |
0 commit comments