v8 uses immutable releases (no major/minor tags) for supply chain security. Pinning to exact version tag per upstream recommendation.
43 lines
883 B
YAML
43 lines
883 B
YAML
name: Mypy Type Checking for CLI
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- 'codeflash/**'
|
|
- 'pyproject.toml'
|
|
- 'uv.lock'
|
|
- 'mypy_allowlist.txt'
|
|
pull_request:
|
|
paths:
|
|
- 'codeflash/**'
|
|
- 'pyproject.toml'
|
|
- 'uv.lock'
|
|
- 'mypy_allowlist.txt'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref_name }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
type-check-cli:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v8.0.0
|
|
|
|
- name: sync uv
|
|
run: |
|
|
uv venv --seed
|
|
uv sync
|
|
|
|
|
|
- name: Run mypy on allowlist
|
|
run: uv run mypy --non-interactive --config-file pyproject.toml @mypy_allowlist.txt
|