Bump pillow from 12.0.0 to 12.1.1 #1617
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: tests | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| pull_request_target: | |
| schedule: | |
| - cron: "42 7 * * 0" # Every Sunday morning when I am fast asleep :) | |
| # This is useful for keeping the cache fit and ready | |
| workflow_dispatch: | |
| jobs: | |
| linting: | |
| name: linting/formatting | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: 3.12 | |
| - name: Install the project | |
| run: | | |
| uv sync --dev --all-extras | |
| - name: Style checking | |
| run: | | |
| uv run ruff check src tests | |
| uv run ruff format --check src tests | |
| - name: Type checking | |
| run: uv run mypy src tests | |
| cache_traffic: | |
| name: setup traffic cache | |
| runs-on: ubuntu-latest | |
| outputs: | |
| cache-hit: ${{ steps.cache-folder.outputs.cache-hit }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: 3.12 | |
| - name: Cache folder for traffic | |
| uses: actions/cache@v5 | |
| id: cache-folder | |
| with: | |
| path: | | |
| ~/.cache/traffic/ | |
| key: traffic-${{ hashFiles('uv.lock') }} | |
| - name: Install project and fill cache | |
| if: steps.cache-folder.outputs.cache-hit != 'true' | |
| run: | | |
| uv sync --dev --all-extras | |
| uv run traffic cache --fill | |
| tests_fast: | |
| name: (fast) python-${{ matrix.python-version }} on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| needs: cache_traffic | |
| strategy: | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - windows-latest | |
| - macos-latest | |
| python-version: | |
| - "3.10" | |
| - "3.11" | |
| - "3.12" | |
| - "3.13" | |
| fail-fast: false | |
| env: | |
| PYTHON_VERSION: ${{ matrix.python-version }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Cache folder for traffic | |
| uses: actions/cache@v5 | |
| id: cache-folder | |
| with: | |
| path: | | |
| ~/.cache/traffic/ | |
| key: traffic-${{ hashFiles('uv.lock') }} | |
| - name: Install project | |
| run: | | |
| uv sync --dev --all-extras | |
| - name: Run tests | |
| env: | |
| LD_LIBRARY_PATH: /usr/local/lib | |
| TRAFFIC_CACHE_PATH: ~/.cache/traffic/ | |
| TRAFFIC_NM_PATH: "" | |
| run: | | |
| uv run pytest | |
| tests_full: | |
| name: (full) python-${{ matrix.python-version }} on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| needs: cache_traffic | |
| if: ${{ github.event_name != 'pull_request_target' }} | |
| strategy: | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| # - windows-latest # TODO blocking issue with LFS not working well | |
| - macos-latest | |
| python-version: | |
| - "3.10" | |
| - "3.11" | |
| - "3.12" | |
| - "3.13" | |
| fail-fast: false | |
| env: | |
| PYTHON_VERSION: ${{ matrix.python-version }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - run: | | |
| git fetch --prune --unshallow --tags | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Download extra data from private repository | |
| uses: actions/checkout@v6 | |
| with: | |
| repository: xoolive/traffic_data | |
| token: ${{ secrets.PRIVATE_TOKEN }} | |
| persist-credentials: false | |
| path: ./traffic_data | |
| - name: Create LFS file list (private repository) | |
| working-directory: ./traffic_data | |
| run: git lfs ls-files -l | cut -d' ' -f1 | sort > .lfs-assets-id | |
| shell: bash | |
| - name: Restore LFS cache (private repository) | |
| uses: actions/cache@v5 | |
| id: lfs-cache | |
| with: | |
| path: ./traffic_data/.git/lfs | |
| key: lfs-${{ hashFiles('./traffic_data/.lfs-assets-id') }}-v1 | |
| - name: Git LFS Pull (private repository) | |
| working-directory: ./traffic_data | |
| run: | | |
| git remote set-url origin https://xoolive:${{ secrets.PRIVATE_TOKEN }}@github.com/xoolive/traffic_data.git | |
| git lfs pull | |
| unzip ENV_PostOPS_AIRAC_2111_04NOV2021_With_Airspace_Closure.zip -d airac_2111 | |
| shell: bash | |
| - name: Cache folder for traffic | |
| uses: actions/cache@v5 | |
| id: cache-folder | |
| with: | |
| path: | | |
| ~/.cache/traffic/ | |
| key: traffic-${{ hashFiles('uv.lock') }} | |
| - name: Install project | |
| run: | | |
| uv sync --dev --all-extras | |
| - name: Run tests | |
| env: | |
| LD_LIBRARY_PATH: /usr/local/lib | |
| TRAFFIC_CACHE_PATH: ~/.cache/traffic/ | |
| TRAFFIC_NM_PATH: ${{ github.workspace }}/traffic_data/airac_2111 | |
| run: | | |
| uv run pytest --cov --cov-report xml -m "" | |
| - name: Upload coverage to Codecov | |
| if: ${{ github.event_name != 'pull_request_target' }} | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| env_vars: PYTHON_VERSION |