Skip to content

Fix current tests

Fix current tests #349

Workflow file for this run

name: Python
on:
push:
branches:
- master
pull_request:
branches:
- master
# Cancel previous CI runs when new commits are added to a PR.
concurrency:
group: ${{ github.head_ref || github.run_id }}-python
cancel-in-progress: true
jobs:
build:
# NOTE: runner strategy is to split across os and python version, but test multiple
# sphinx versions on a single runner. So do not add a matrix.sphinx-version.
name: ${{ matrix.os }} / ${{ matrix.python-version }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os: [ macos-latest, ubuntu-latest, windows-latest ]
python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12' ]
env:
MINIMUM_SUPPORTED_SPHINX_VERSION: '5.0.2'
steps:
- uses: actions/checkout@v4
##################################################################################
- name: Install Doxygen (macOS)
if: contains(matrix.os, 'macos')
run: |
HOMEBREW_NO_AUTO_UPDATE=1 brew install doxygen
- name: Install Doxygen (Ubuntu)
if: contains(matrix.os, 'ubuntu')
run: |
sudo apt-get install -y doxygen
- name: Install Doxygen (Windows)
if: contains(matrix.os, 'windows')
uses: ssciwr/doxygen-install@v1
with:
version: "1.9.6"
##################################################################################
- name: Doxygen Version Dump
run: doxygen --version
##################################################################################
- name: Use Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install Python Tools
run: |
pip install tox codecov coverage
- name: Test Python ${{ matrix.python-version }} / sphinx==${{ env.MINIMUM_SUPPORTED_SPHINX_VERSION }}
uses: ./.github/actions/sphinx_version_tests
with:
python-version: ${{ matrix.python-version }}
os: ${{ matrix.os }}
sphinx_version_range: '==${{ env.MINIMUM_SUPPORTED_SPHINX_VERSION }}'
codecov_token: ${{ secrets.CODECOV_TOKEN }}
- name: Test Python ${{ matrix.python-version }} / sphinx 5.x
uses: ./.github/actions/sphinx_version_tests
with:
python-version: ${{ matrix.python-version }}
os: ${{ matrix.os }}
sphinx_version_range: '>=5,<6'
codecov_token: ${{ secrets.CODECOV_TOKEN }}
- name: Test Python ${{ matrix.python-version }} / sphinx 6.x
uses: ./.github/actions/sphinx_version_tests
with:
python-version: ${{ matrix.python-version }}
os: ${{ matrix.os }}
sphinx_version_range: '>=6,<7'
codecov_token: ${{ secrets.CODECOV_TOKEN }}
- name: Test Python ${{ matrix.python-version }} / sphinx 7.x
uses: ./.github/actions/sphinx_version_tests
with:
python-version: ${{ matrix.python-version }}
os: ${{ matrix.os }}
sphinx_version_range: '>=7,<7.2'
codecov_token: ${{ secrets.CODECOV_TOKEN }}
# TODO this looks like more substantial work to get going
# - name: Test Python ${{ matrix.python-version }} / sphinx 8.x
# uses: ./.github/actions/sphinx_version_tests
# # sphinx >=8 needs py >= 3.10
# if: matrix.python-version != '3.8' && matrix.python-version != '3.9'
# with:
# python-version: ${{ matrix.python-version }}
# os: ${{ matrix.os }}
# sphinx_version_range: '>=8,<9'
# codecov_token: ${{ secrets.CODECOV_TOKEN }}