Skip to content
Merged
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
20 changes: 12 additions & 8 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
publish-github-pages:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write
steps:
Expand All @@ -21,14 +21,18 @@ jobs:
run: |
git config --global user.name "${GITHUB_ACTOR}"
git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"
- name: Setup Python and PDM
uses: pdm-project/setup-pdm@v4
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
version: "2.16.1"
python-version: "3.14"
cache: "pip"
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
version: "0.9.2"
- name: Create virtual environment
run: pdm install
run: uv sync --only-dev
- name: Publish the docs to GitHub Pages
run: pdm run mike deploy --push develop
run: uv run mike deploy --push develop
- name: List available docs versions
run: pdm run mike list
run: uv run mike list
62 changes: 38 additions & 24 deletions .github/workflows/tag.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
---

name: tag

on:
Expand All @@ -7,19 +9,23 @@ on:

jobs:
build:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Clone full tree, and checkout tag
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Setup Python and PDM
uses: pdm-project/setup-pdm@v4
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
version: "2.16.1"
python-version: "3.14"
cache: "pip"
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
version: "0.9.2"
- name: Build source dist and wheels
run: pdm build --verbose
run: uv build
- name: Upload source dist and wheels to artifacts
uses: actions/upload-artifact@v4
with:
Expand All @@ -30,36 +36,40 @@ jobs:

publish-pypi:
needs: build
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
environment: pypi
permissions:
id-token: write
steps:
- name: Clone full tree, and checkout tag
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Download source dist and wheels from artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Setup Python and PDM
uses: pdm-project/setup-pdm@v4
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
version: "2.16.1"
python-version: "3.14"
cache: "pip"
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
version: "0.9.2"
- name: Publish source dist and wheels to PyPI
run: pdm publish --no-build --verbose
run: uv publish

publish-github-release:
needs: build
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write
steps:
- name: Clone and checkout tag
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Download source dist and wheels from artifacts
uses: actions/download-artifact@v4
with:
Expand All @@ -79,7 +89,7 @@ jobs:
fail_on_unmatched_files: true

publish-github-pages:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
permissions:
contents: write
steps:
Expand All @@ -91,14 +101,18 @@ jobs:
run: |
git config --global user.name "${GITHUB_ACTOR}"
git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"
- name: Setup Python and PDM
uses: pdm-project/setup-pdm@v4
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.14"
cache: "pip"
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
python-version: "3.12"
version: "2.16.1"
version: "0.9.2"
- name: Create virtual environment
run: pdm install
run: uv sync --only-dev
- name: Publish the docs to GitHub Pages
run: pdm run mike deploy --push --update-aliases ${{ github.ref_name }} latest
run: uv run mike deploy --push develop
- name: List available docs versions
run: pdm run mike list
run: uv run mike list
106 changes: 25 additions & 81 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
---

name: test

on:
Expand All @@ -8,107 +10,49 @@ on:

jobs:
pre-commit:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
strategy:
matrix:
python_version:
- "3.10"
- "3.11"
- "3.12"
- "3.13"
- "3.14"
steps:
- name: Clone and checkout branch
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Setup Python
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.12"
python-version: "${{ matrix.python_version }}"
cache: "pip"
- name: Run pre-commit hooks
uses: pre-commit/action@v3.0.1

build:
needs: pre-commit
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Clone full tree, and checkout branch
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Setup Python and PDM
uses: pdm-project/setup-pdm@v4
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.14"
cache: "pip"
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
python-version: "3.12"
version: "2.16.1"
version: "0.9.2"
- name: Build source dist and wheels
run: pdm build --verbose
run: uv build
- name: Upload source dist and wheels to artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
retention-days: 5
if-no-files-found: error

# test:
# needs: pre-commit
# permissions:
# checks: write
# strategy:
# fail-fast: false
# matrix:
# operating_system:
# - ubuntu-22.04
# - windows-2022
# python_version:
# - "3.8"
# - "3.9"
# - "3.10"
# - "3.11"
# - "3.12"
# runs-on: ${{ matrix.operating_system }}
# steps:
# - name: Clone full tree, and checkout branch
# uses: actions/checkout@v4
# with:
# fetch-depth: 0
# - name: Setup Python and PDM
# uses: pdm-project/setup-pdm@v4
# with:
# python-version: ${{ matrix.python_version }}
# version: "2.16.1"
# - name: Create virtual environment
# run: pdm install
# - name: Run tests
# run: pdm run test
# - name: Publish test results
# uses: mikepenz/action-junit-report@v4
# # Always run, even if the tests fail.
# if: success() || failure()
# with:
# report_paths: rspec.xml
# - name: Upload coverage report to artifacts
# uses: actions/upload-artifact@v4
# # Always run, even if the tests fail.
# if: success() || failure()
# with:
# name: coverage-${{ matrix.operating_system}}-${{ matrix.python_version }}
# path: coverage.xml
# retention-days: 5
# if-no-files-found: warn

# coverage:
# needs: test
# # Always run, even if the test job failed.
# if: success() || failure()
# runs-on: ubuntu-22.04
# steps:
# - name: Download coverage reports from artifacts
# uses: actions/download-artifact@v4
# with:
# pattern: coverage-*
# merge-multiple: false
# - name: Generate code coverage summary report
# uses: irongut/CodeCoverageSummary@v1.3.0
# with:
# filename: coverage-*/coverage.xml
# format: markdown
# hide_branch_rate: false
# hide_complexity: false
# indicators: false
# output: both
# - name: Write to job summary
# run: cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY
Loading