Skip to content

Use dict literals in editor language defs (flake8 C408) (#44) #126

Use dict literals in editor language defs (flake8 C408) (#44)

Use dict literals in editor language defs (flake8 C408) (#44) #126

Workflow file for this run

name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
concurrency:
group: ${{ github.workflow }}-${{ github.sha }}
cancel-in-progress: true
jobs:
format:
name: Code Formatting Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install tox
run: |
python -m pip install --upgrade pip
pip install tox
- name: Run formatting check with tox
run: tox -e format
lint:
name: Linting Check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install tox
run: |
python -m pip install --upgrade pip
pip install tox
- name: Run linting with tox
run: tox -e lint
type:
name: Type Checking
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install tox
run: |
python -m pip install --upgrade pip
pip install tox
- name: Run type checking with tox
run: tox -e type
coverage:
name: Test Coverage
runs-on: ubuntu-latest
needs: [format, lint, type]
steps:
- uses: actions/checkout@v4
- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -e .
pip install pytest pytest-cov
- name: Run tests with coverage (non-blocking when no tests)
run: |
pytest -q --cov=vtk_prompt --cov-report=term --cov-report=xml || true
- name: Upload coverage report
if: ${{ hashFiles('coverage.xml') != '' }}
uses: actions/upload-artifact@v4
with:
name: coverage-xml
path: coverage.xml
# test:
# name: Unit Tests
# runs-on: ubuntu-latest
# needs: [format, lint, type]
# strategy:
# matrix:
# python-version: ["3.10", "3.11", "3.12"]
# steps:
# - uses: actions/checkout@v4
# - name: Set up Python ${{ matrix.python-version }}
# uses: actions/setup-python@v5
# with:
# python-version: ${{ matrix.python-version }}
# - name: Install tox
# run: |
# python -m pip install --upgrade pip
# pip install tox
# - name: Run tests with tox
# run: tox -e test
smoke-test:
name: Smoke Tests
runs-on: ubuntu-latest
needs: [format, lint, type, coverage]
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install -e .
- name: Test vtk-prompt CLI
run: |
vtk-prompt --help
uv-vtk-mcp-smoke:
name: uv + vtk-mcp Install Smoke Test
runs-on: ubuntu-latest
needs: [format, lint, type]
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v5
with:
python-version: "3.11"
- name: Install vtk-prompt via uv
run: uv pip install -e .
- name: Install vtk-mcp and GitHub-hosted dependencies via uv
run: |
uv pip install \
git+https://github.com/vicentebolea/vtk-knowledge \
git+https://github.com/vicentebolea/vtk-validate \
git+https://github.com/vicentebolea/vtk-index \
"git+https://github.com/Kitware/vtk-mcp[retrieval]"
- name: Verify CLI entry points
run: |
uv run vtk-prompt --help
uv run vtk-mcp --vtk-version 9.6.1 --help