Skip to content

Update dependency pytest-cov to v6 (#303) #56

Update dependency pytest-cov to v6 (#303)

Update dependency pytest-cov to v6 (#303) #56

Workflow file for this run

---
name: CI
"on": [push]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- id: tox-env
run: |
VERSION=${{ matrix.python-version }}
echo "environment=${VERSION//.}" >> $GITHUB_OUTPUT
- name: Cache LLVM and Clang
id: cache-llvm
uses: actions/cache@v4
with:
path: llvm/lib/libclang.so*
key: llvm-17
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2
with:
version: "17.0"
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Symlink libclang.so
run: sudo ln -s ${{ env.LLVM_PATH }}/lib/libclang.so /usr/lib/x86_64-linux-gnu/libclang-17.so
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "0.4.22"
enable-cache: true
cache-suffix: ${{ matrix.python-version }}
- name: Install dependencies
run: |
uv tool install tox --with tox-uv
- name: Test with tox
run: |
tox -e py${{ steps.tox-env.outputs.environment }}
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Cache LLVM and Clang
id: cache-llvm
uses: actions/cache@v4
with:
path: llvm/lib/libclang.so*
key: llvm-17
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2
with:
version: "17.0"
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Symlink libclang.so
run: sudo ln -s ${{ env.LLVM_PATH }}/lib/libclang.so /usr/lib/x86_64-linux-gnu/libclang-17.so
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "0.4.22"
enable-cache: true
cache-suffix: "coverage"
- name: Install dependencies
run: |
uv tool install tox --with tox-uv
- name: Test with tox
run: |
tox -e cov
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
verbose: true
fail_ci_if_error: true
check:
runs-on: ubuntu-latest
strategy:
matrix:
check: ["pylint", "pycodestyle", "black", "mypy"]
steps:
- uses: actions/checkout@v4
- name: Cache LLVM and Clang
id: cache-llvm
uses: actions/cache@v4
with:
path: llvm/lib/libclang.so*
key: llvm-17
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2
with:
version: "17.0"
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Symlink libclang.so
run: sudo ln -s ${{ env.LLVM_PATH }}/lib/libclang.so /usr/lib/x86_64-linux-gnu/libclang-17.so
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "0.4.22"
enable-cache: true
cache-suffix: "check"
- name: Install dependencies
run: |
uv tool install tox --with tox-uv
- name: Static code checks
run: |
tox -e check-${{ matrix.check }}
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Cache LLVM and Clang
id: cache-llvm
uses: actions/cache@v4
with:
path: llvm/lib/libclang.so*
key: llvm-17
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2
with:
version: "17.0"
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Symlink libclang.so
run: sudo ln -s ${{ env.LLVM_PATH }}/lib/libclang.so /usr/lib/x86_64-linux-gnu/libclang-17.so
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "0.4.22"
enable-cache: true
cache-suffix: "docs"
- name: Install dependencies
run: |
uv tool install tox --with tox-uv
- name: Build docs
run: |
tox -e docs
sphinx:
runs-on: ubuntu-22.04
strategy:
matrix:
sphinx-version: ["four"]
steps:
- uses: actions/checkout@v4
- name: Cache LLVM and Clang
id: cache-llvm
uses: actions/cache@v4
with:
path: llvm/lib/libclang.so*
key: llvm-11
- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v2
with:
version: "11.0"
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Symlink libclang.so
run: |
sudo ln -s ${{ env.LLVM_PATH }}/lib/libclang.so /usr/lib/x86_64-linux-gnu/libclang-11.so
sudo apt-get update
sudo apt install libtinfo5
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "0.4.22"
enable-cache: true
cache-suffix: ${{ matrix.sphinx-version }}
- name: Install dependencies
run: |
uv tool install tox --with tox-uv
- name: Test with tox
run: |
tox -e sphinx-${{ matrix.sphinx-version }}