Modernize project #2270
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This file configures the continuous integration (CI) system on GitHub. | |
# Introductory materials can be found here: https://docs.github.com/en/actions/learn-github-actions/understanding-github-actions. | |
# Documentation for editing this file can be found here: https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions | |
name: Tests | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
lint: | |
name: Code Quality | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [ "3.12", "3.10" ] | |
tox-command: ["manifest", "lint", "pyroma", "mypy"] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install tox tox-uv | |
- name: Run command | |
run: tox -e ${{ matrix.tox-command }} | |
docs: | |
name: Documentation | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: [ "3.12", "3.10" ] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install tox tox-uv | |
sudo apt-get install python3-dev graphviz libgraphviz-dev pkg-config | |
- name: Check RST conformity with doc8 | |
run: tox -e doc8 | |
- name: Check docstring coverage | |
run: tox -e docstr-coverage | |
- name: Check documentation build with Sphinx | |
run: tox -e docs-test | |
tests: | |
name: Tests | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ ubuntu-latest ] | |
python-version: [ "3.12", "3.10" ] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
pip install tox tox-uv | |
sudo apt-get install python3-dev graphviz libgraphviz-dev pkg-config | |
- name: Test with pytest and generate coverage file | |
run: | |
tox -e py | |
- name: Doctests | |
run: | |
tox -e doctests | |
- name: Notebook tests | |
run: | |
tox -e treon | |
- name: Upload coverage report to codecov | |
uses: codecov/codecov-action@v1 | |
if: success() | |
with: | |
file: coverage.xml |