Skip to content

chore: set uv default-extras = [mcp] so Glama's uv sync installs the … #27

chore: set uv default-extras = [mcp] so Glama's uv sync installs the …

chore: set uv default-extras = [mcp] so Glama's uv sync installs the … #27

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pip install "ruff>=0.9"
- run: ruff check name_variants/ tests/
- run: ruff format --check name_variants/ tests/
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pip install --upgrade pip "bandit[toml]>=1.7" "pip-audit>=2.7"
- run: pip install -e "."
- name: SAST — bandit
run: bandit -c pyproject.toml -r name_variants/ -ll
- name: Dependency audit — pip-audit
run: pip-audit --skip-editable
python-tests:
runs-on: ubuntu-latest
needs: [lint, security]
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- run: pip install -e ".[dev,mcp,pandas]"
- run: pytest tests/ -v
rust-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- run: cargo test --manifest-path name-variants-rs/Cargo.toml
- run: cargo test --doc --manifest-path name-variants-rs/Cargo.toml
codegen-drift:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pip install -e "."
- run: python codegen/gen_rust.py
- name: Fail if generated.rs changed
run: |
if ! git diff --exit-code name-variants-rs/src/generated.rs; then
echo "ERROR: name-variants-rs/src/generated.rs is out of sync."
echo "Run 'python codegen/gen_rust.py' and commit the result."
exit 1
fi