Skip to content
Open
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
12 changes: 6 additions & 6 deletions .github/workflows/rhiza_benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
# - PRs will show a warning comment but not fail
# - Main branch updates the baseline for future comparisons

name: (RHIZA) Benchmarks
name: "(RHIZA) BENCHMARKS"

permissions:
contents: write
Expand All @@ -32,24 +32,24 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v6.0.2
with:
lfs: true

- name: Install uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.26"
version: "0.9.28"
python-version: "3.12"

- name: Run benchmarks
env:
UV_EXTRA_INDEX_URL: ${{ secrets.uv-extra-index-url }}
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
make benchmark

- name: Upload benchmark results
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v6.0.0
if: always()
with:
name: benchmark-results
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/rhiza_book.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,33 +36,33 @@ jobs:

steps:
# Check out the repository code
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2
with:
lfs: true

- name: Install uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.26"
version: "0.9.28"

- name: "Sync the virtual environment for ${{ github.repository }}"
shell: bash
env:
UV_EXTRA_INDEX_URL: ${{ secrets.uv-extra-index-url }}
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
# will just use .python-version?
uv sync --all-extras --all-groups --frozen

- name: "Make the book"
env:
UV_EXTRA_INDEX_URL: ${{ secrets.uv-extra-index-url }}
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
make -f .rhiza/rhiza.mk book
make book

# Step 5: Package all artifacts for GitHub Pages deployment
# This prepares the combined outputs for deployment by creating a single artifact
- name: Upload static files as artifact
uses: actions/upload-pages-artifact@v4 # Official GitHub Pages artifact upload action
uses: actions/upload-pages-artifact@v4.0.0 # Official GitHub Pages artifact upload action
with:
path: _book/ # Path to the directory containing all artifacts to deploy

Expand All @@ -73,5 +73,5 @@ jobs:
# If PUBLISH_COMPANION_BOOK is not set, it defaults to allowing deployment
- name: Deploy to GitHub Pages
if: ${{ !github.event.repository.fork && (vars.PUBLISH_COMPANION_BOOK == 'true' || vars.PUBLISH_COMPANION_BOOK == '') }}
uses: actions/deploy-pages@v4 # Official GitHub Pages deployment action
uses: actions/deploy-pages@v4.0.5 # Official GitHub Pages deployment action
continue-on-error: true
38 changes: 29 additions & 9 deletions .github/workflows/rhiza_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,18 @@ jobs:
outputs:
matrix: ${{ steps.versions.outputs.list }}
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2
with:
lfs: true

- name: Install uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.26"
version: "0.9.28"

- id: versions
env:
UV_EXTRA_INDEX_URL: ${{ secrets.uv-extra-index-url }}
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
# Generate Python versions JSON from the script
JSON=$(make -f .rhiza/rhiza.mk -s version-matrix)
Expand All @@ -53,18 +55,36 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v6.0.2
with:
lfs: true

- name: Install uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.26"
version: "0.9.28"
python-version: ${{ matrix.python-version }}

- name: Run tests
env:
UV_EXTRA_INDEX_URL: ${{ secrets.uv-extra-index-url }}
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
make test


docs-coverage:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6.0.2

- name: Install uv
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.28"

- name: Check docs coverage
env:
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
make -f .rhiza/rhiza.mk test
make docs-coverage
6 changes: 3 additions & 3 deletions .github/workflows/rhiza_codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ jobs:
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v6.0.2

# Add any setup steps before running the `github/codeql-action/init` action.
# This includes steps like installing compilers or runtimes (`actions/setup-node`
Expand All @@ -91,7 +91,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
uses: github/codeql-action/init@v4.32.0
with:
languages: ${{ matrix.language }}
build-mode: ${{ matrix.build-mode }}
Expand Down Expand Up @@ -120,6 +120,6 @@ jobs:
exit 1

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v4
uses: github/codeql-action/analyze@v4.32.0
with:
category: "/language:${{matrix.language}}"
6 changes: 3 additions & 3 deletions .github/workflows/rhiza_deptry.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ jobs:
name: Check dependencies with deptry
runs-on: ubuntu-latest
container:
image: ghcr.io/astral-sh/uv:0.9.26-python3.12-trixie
image: ghcr.io/astral-sh/uv:0.9.28-bookworm

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2

- name: Run deptry
run: make -f .rhiza/rhiza.mk deptry
run: make deptry
# NOTE: make deptry is good style because it encapsulates the folders to check
# (e.g. src and book/marimo) and keeps CI in sync with local development.
# Since we use a 'uv' container, the Makefile is optimised to use the
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/rhiza_devcontainer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v6.0.2

- name: Set registry
id: registry
Expand All @@ -70,7 +70,7 @@ jobs:
echo "registry=$REGISTRY" >> "$GITHUB_OUTPUT"

- name: Login to Container Registry
uses: docker/login-action@v3
uses: docker/login-action@v3.7.0
with:
registry: ${{ steps.registry.outputs.registry }}
username: ${{ github.repository_owner }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/rhiza_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v6.0.2

- name: Detect docker/Dockerfile presence
id: check_dockerfile
Expand All @@ -49,7 +49,7 @@ jobs:

- name: Set up Docker Buildx
if: ${{ steps.check_dockerfile.outputs.docker_present == 'true' }}
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@v3.12.0

- name: Read Python version from .python-version
if: ${{ steps.check_dockerfile.outputs.docker_present == 'true' }}
Expand Down
10 changes: 6 additions & 4 deletions .github/workflows/rhiza_marimo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
notebook-list: ${{ steps.notebooks.outputs.matrix }}
steps:
# Check out the repository code
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2

# Find all Python files in the marimo folder and create a matrix for parallel execution
- name: Find notebooks and build matrix
Expand Down Expand Up @@ -75,18 +75,20 @@ jobs:
name: Run notebook ${{ matrix.notebook }}
steps:
# Check out the repository code
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2
with:
lfs: true

# Install uv/uvx
- name: Install uv
uses: astral-sh/setup-uv@v7
uses: astral-sh/setup-uv@v7.2.1
with:
version: "0.9.26"
version: "0.9.28"

# Execute the notebook with the appropriate runner based on its content
- name: Run notebook
env:
UV_EXTRA_INDEX_URL: ${{ secrets.UV_EXTRA_INDEX_URL }}
run: |
uvx uv run "${{ matrix.notebook }}"
# uvx β†’ creates a fresh ephemeral environment
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rhiza_mypy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
name: Static type checking with mypy
runs-on: ubuntu-latest
container:
image: ghcr.io/astral-sh/uv:0.9.26-python3.12-trixie
image: ghcr.io/astral-sh/uv:0.9.28-bookworm

steps:
- uses: actions/checkout@v6
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/rhiza_pre-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@v6.0.2

# Run pre-commit
- name: Run pre-commit
run: |
make -f .rhiza/rhiza.mk fmt
make fmt
Loading