chore(deps)(deps): bump the python-dependencies group with 6 updates #212
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This file is part of the jebel-quant/rhiza repository | |
| # (https://github.com/jebel-quant/rhiza). | |
| # | |
| # Workflow: Quality | |
| # | |
| # Purpose: This workflow runs code quality checks to ensure consistency and a | |
| # clean dependency tree across the codebase. It catches formatting | |
| # errors, linting issues, missing or obsolete dependencies, and missing | |
| # docstrings before they are merged. | |
| # | |
| # Trigger: This workflow runs on every push and on pull requests to main/master | |
| # branches (including from forks), and on release tags (v*). | |
| # | |
| # Components: | |
| # - 🔍 Run pre-commit checks (formatting, linting, etc.) | |
| # - 💾 Cache pre-commit environments to speed up runs | |
| # - 📦 Run deptry to detect missing and obsolete dependencies | |
| # - 📝 Enforce 100% docstring coverage with interrogate | |
| # - 🔗 Check links in README.md | |
| name: "(RHIZA) QUALITY" | |
| permissions: | |
| contents: read | |
| on: | |
| push: | |
| schedule: | |
| - cron: "0 8 * * 1" # every Monday 08:00 UTC | |
| workflow_dispatch: | |
| jobs: | |
| pre-commit: | |
| name: Pre-commit checks | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| - name: Configure git auth for private packages | |
| uses: ./.github/actions/configure-git-auth | |
| with: | |
| token: ${{ secrets.GH_PAT }} | |
| # Cache pre-commit environments and hooks | |
| - name: Cache pre-commit environments | |
| uses: actions/cache@v5 | |
| with: | |
| path: ~/.cache/pre-commit | |
| key: pre-commit-${{ runner.os }}-${{ hashFiles('.pre-commit-config.yaml') }} | |
| restore-keys: | | |
| pre-commit-${{ runner.os }}- | |
| - name: Run pre-commit | |
| run: | | |
| make fmt | |
| deptry: | |
| name: Check dependencies with deptry | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7.6.0 | |
| with: | |
| version: "0.10.12" | |
| - name: Configure git auth for private packages | |
| uses: ./.github/actions/configure-git-auth | |
| with: | |
| token: ${{ secrets.GH_PAT }} | |
| - name: Run deptry | |
| run: make deptry | |
| # NOTE: make deptry is good style because it encapsulates the folders to check | |
| # (e.g. src and docs/marimo) and keeps CI in sync with local development. | |
| # Since we have uv/uvx installed, the Makefile is optimised to use the | |
| # pre-installed 'uv' and 'uvx' from the system PATH. | |
| docs-coverage: | |
| name: Check docstring coverage with interrogate | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7.6.0 | |
| with: | |
| version: "0.10.12" | |
| - name: Configure git auth for private packages | |
| uses: ./.github/actions/configure-git-auth | |
| with: | |
| token: ${{ secrets.GH_PAT }} | |
| - name: Run docs-coverage | |
| run: make docs-coverage | |
| # NOTE: make docs-coverage uses interrogate to enforce 100% docstring | |
| # coverage on all public methods. Configuration is read from | |
| # [tool.interrogate] in pyproject.toml. | |
| link-check: | |
| name: Check links in README.md | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Check links in README.md | |
| uses: lycheeverse/lychee-action@v2 | |
| with: | |
| args: >- | |
| --verbose | |
| --no-progress | |
| --accept 200,206,429 | |
| README.md | |
| fail: true |