Skip to content

⬆ Bump astral-sh/setup-uv from 7.2.0 to 7.2.1 (#135) #497

⬆ Bump astral-sh/setup-uv from 7.2.0 to 7.2.1 (#135)

⬆ Bump astral-sh/setup-uv from 7.2.0 to 7.2.1 (#135) #497

Workflow file for this run

name: Test
permissions:
contents: read
on:
push:
branches:
- main
pull_request:
merge_group:
workflow_call:
workflow_dispatch:
inputs:
debug:
description: 'Open ssh debug session.'
required: true
default: false
type: boolean
clear_cache:
description: 'Clear GitHub Actions cache.'
required: true
default: false
type: boolean
jobs:
linux:
runs-on: ubuntu-latest
permissions:
contents: read
actions: write
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
env:
COVERAGE_FILE: linux-py${{ matrix.python-version }}.coverage
steps:
- name: Clear GitHub Actions cache
if: ${{ github.event.inputs.clear_cache == 'true' }}
run: sudo rm -rf /opt/hostedtoolcache
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
persist-credentials: false
- name: Set up Python ${{ matrix.python-version }}
id: sp
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install Just
uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff
- name: Install uv
uses: astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3b
with:
enable-cache: true
- name: Install Emacs
if: ${{ github.event.inputs.debug == 'true' }}
run: |
sudo apt install emacs
- name: Setup tmate session
if: ${{ github.event.inputs.debug == 'true' }}
uses: mxschmitt/action-tmate@c0afd6f790e3a5564914980036ebf83216678101
with:
detached: true
- name: Install Dependencies
env:
PYTHON_PATH: ${{ steps.sp.outputs.python-path }}
run: |
just setup "$PYTHON_PATH"
just install
- name: Run Unit Tests
run: |
just test-all
- name: Store coverage files
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f
with:
name: ${{ env.COVERAGE_FILE }}
path: ${{ env.COVERAGE_FILE }}
macos:
runs-on: macos-latest
permissions:
contents: read
actions: write
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
env:
COVERAGE_FILE: macos-py${{ matrix.python-version }}.coverage
steps:
- name: Clear GitHub Actions cache
if: ${{ github.event.inputs.clear_cache == 'true' }}
run: sudo rm -rf /Users/runner/hostedtoolcache
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
persist-credentials: false
- name: Set up Python ${{ matrix.python-version }}
id: sp
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install Just
uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff
- name: Install uv
uses: astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3b
with:
enable-cache: true
- name: install-emacs-macos
if: ${{ github.event.inputs.debug == 'true' }}
run: |
brew install emacs
- name: Setup tmate session
if: ${{ github.event.inputs.debug == 'true' }}
uses: mxschmitt/action-tmate@c0afd6f790e3a5564914980036ebf83216678101
with:
detached: true
- name: Install Dependencies
env:
PYTHON_PATH: ${{ steps.sp.outputs.python-path }}
run: |
just setup "$PYTHON_PATH"
just install
- name: Run Unit Tests
run: |
just test-all
- name: Store coverage files
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f
with:
name: ${{ env.COVERAGE_FILE }}
path: ${{ env.COVERAGE_FILE }}
windows:
runs-on: windows-latest
permissions:
contents: read
actions: write
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
env:
COVERAGE_FILE: windows-py${{ matrix.python-version }}.coverage
steps:
- name: Clear GitHub Actions cache
if: ${{ github.event.inputs.clear_cache == 'true' }}
run: Remove-Item -Recurse -Force C:\hostedtoolcache
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
persist-credentials: false
- name: Set up Python ${{ matrix.python-version }}
id: sp
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
- name: Install Just
uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff
- name: Install uv
uses: astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3b
with:
enable-cache: true
- name: install-vim-windows
if: ${{ github.event.inputs.debug == 'true' }}
uses: rhysd/action-setup-vim@19e3dd31a84dbc2c5445d65e9b363f616cab96c1
- name: Setup tmate session
if: ${{ github.event.inputs.debug == 'true' }}
uses: mxschmitt/action-tmate@c0afd6f790e3a5564914980036ebf83216678101
with:
detached: true
- name: Install Dependencies
env:
PYTHON_PATH: ${{ steps.sp.outputs.python-path }}
run: |
just setup "$env:PYTHON_PATH"
just install
- name: Run Unit Tests
run: |
just test-all
- name: Store coverage files
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f
with:
name: ${{ env.COVERAGE_FILE }}
path: ${{ env.COVERAGE_FILE }}
coverage-combine:
needs: [linux, macos, windows]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
with:
persist-credentials: false
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405
id: sp
with:
python-version: '3.14'
- name: Install uv
uses: astral-sh/setup-uv@eac588ad8def6316056a12d4907a9d4d84ff7a3b
with:
enable-cache: true
- name: Setup Just
uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff
- name: Install Release Dependencies
env:
PYTHON_PATH: ${{ steps.sp.outputs.python-path }}
run: |
just setup "$PYTHON_PATH"
just install
- name: Get coverage files
uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131
with:
pattern: "*.coverage"
merge-multiple: true
- run: ls -la *.coverage
- run: just coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.xml