Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@
*.png binary
*.zip binary

# lockfiles
uv.lock -diff

# Unix-style line endings
[attr]unix text eol=lf

Expand Down
14 changes: 2 additions & 12 deletions .github/workflows/builddoc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,22 +24,12 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install graphviz
run: sudo apt-get install --no-install-recommends --yes graphviz
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false
- name: Install dependencies
run: uv pip install . --group docs
- uses: astral-sh/setup-uv@v6
- name: Render the documentation
run: >
sphinx-build
uv run sphinx-build
-M html ./doc ./build/sphinx
--verbose
--jobs=auto
Expand Down
18 changes: 2 additions & 16 deletions .github/workflows/create-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,24 +30,10 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false

- name: Install build dependencies (pypa/build, twine)
run: uv pip install --group package
- uses: astral-sh/setup-uv@v6

- name: Build distribution
run: python -m build

- name: Check distribution
run: twine check dist/*
run: uv build

- name: Create Sigstore attestations for built distributions
uses: actions/attest@v1
Expand Down
71 changes: 13 additions & 58 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ concurrency:
env:
FORCE_COLOR: "1"
UV_SYSTEM_PYTHON: "1" # make uv do global installs
UV_FROZEN: "1" # make uv use the frozen lockfile

jobs:
# If you update any of these commands, don't forget to update the equivalent
Expand All @@ -26,17 +27,11 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false

- name: Install Ruff
uses: astral-sh/ruff-action@v3
with:
args: --version

- uses: astral-sh/setup-uv@v6
- name: Lint with Ruff
run: ruff check --output-format=github

run: uv run ruff check --output-format=github
- name: Format with Ruff
run: ruff format --diff
run: uv run ruff format --diff

mypy:
runs-on: ubuntu-latest
Expand All @@ -45,19 +40,9 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false
- name: Install dependencies
run: uv pip install -r pyproject.toml --group package --group test --group types
- uses: astral-sh/setup-uv@v6
- name: Type check with mypy
run: mypy
run: uv run mypy

pyright:
runs-on: ubuntu-latest
Expand All @@ -66,19 +51,9 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false
- name: Install dependencies
run: uv pip install -r pyproject.toml --group package --group test --group types
- uses: astral-sh/setup-uv@v6
- name: Type check with pyright
run: pyright
run: uv run pyright

docs-lint:
runs-on: ubuntu-latest
Expand All @@ -87,19 +62,9 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false
- name: Install dependencies
run: uv pip install --group lint
- uses: astral-sh/setup-uv@v6
- name: Lint documentation with sphinx-lint
run: make doclinter
run: uv run make doclinter

twine:
runs-on: ubuntu-latest
Expand All @@ -108,21 +73,11 @@ jobs:
- uses: actions/checkout@v5
with:
persist-credentials: false
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3"
- name: Install uv
uses: astral-sh/setup-uv@v6
with:
version: latest
enable-cache: false
- name: Install dependencies
run: uv pip install --group package
- uses: astral-sh/setup-uv@v6
- name: Lint with twine
run: |
python -m build .
twine check dist/*
uv build
uv run twine check dist/*

prettier:
runs-on: ubuntu-latest
Expand Down
Loading
Loading