Skip to content

feat(compiler): implement compile_query for v0.2.0 #2

feat(compiler): implement compile_query for v0.2.0

feat(compiler): implement compile_query for v0.2.0 #2

Workflow file for this run

name: CI
on:
pull_request:
branches: [main]
push:
branches: [main]
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
lint:
name: Lint (ruff)
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
enable-cache: true
- name: Sync dev dependencies
run: uv sync --frozen
- name: Run ruff
run: uv run ruff check .
typecheck:
name: Typecheck (mypy)
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
enable-cache: true
- name: Sync dev dependencies
run: uv sync --frozen
- name: Run mypy
run: uv run mypy src
test:
name: Test (pytest)
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
enable-cache: true
- name: Sync dev dependencies
run: uv sync --frozen
- name: Run pytest
run: uv run pytest --color=yes
deps-audit:
name: Dependency audit (pip-audit)
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
enable-cache: true
- name: Sync dev dependencies
run: uv sync --frozen
- name: Run pip-audit
run: uv run pip-audit --skip-editable
secret-scan:
name: Secret scan (trufflehog)
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: TruffleHog scan
uses: trufflesecurity/trufflehog@main
with:
path: ./
base: ""
head: HEAD
extra_args: --results=verified,unknown
lockfile-check:
name: Lockfile check (uv lock --check)
runs-on: ubuntu-latest
timeout-minutes: 3
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
- name: Verify uv.lock is consistent with pyproject.toml
run: uv lock --check
codeowners-check:
name: CODEOWNERS present
runs-on: ubuntu-latest
timeout-minutes: 2
steps:
- uses: actions/checkout@v4
- name: Check CODEOWNERS exists
run: |
if [ ! -f .github/CODEOWNERS ] && [ ! -f CODEOWNERS ] && [ ! -f docs/CODEOWNERS ]; then
echo "::error::CODEOWNERS file missing"
exit 1
fi
echo "CODEOWNERS found"