refactor: make format #132
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
name: ci | |
on: | |
push: | |
branches: | |
- main | |
- develop | |
- sdia2022 | |
pull_request: | |
branches: | |
- main | |
defaults: | |
run: | |
shell: bash | |
env: | |
LANG: en_US.utf-8 | |
LC_ALL: en_US.utf-8 | |
PYTHONIOENCODING: UTF-8 | |
jobs: | |
quality: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up PDM | |
uses: pdm-project/setup-pdm@v3 | |
with: | |
python-version: "3.8" | |
- name: Set cache variables | |
id: set_variables | |
run: | | |
echo "::set-output name=PIP_CACHE::$(pip cache dir)" | |
echo "::set-output name=PDM_CACHE::$(pdm config cache_dir)" | |
- name: Set up cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
${{ steps.set_variables.outputs.PIP_CACHE }} | |
${{ steps.set_variables.outputs.PDM_CACHE }} | |
key: checks-cache | |
- name: Resolving dependencies | |
run: pdm --verbose lock | |
- name: Install dependencies | |
run: pdm --verbose install -G duty -G docs -G quality -G typing -G security | |
- name: Check if the documentation builds correctly | |
run: pdm --verbose run duty check-docs | |
- name: Check the code quality | |
run: pdm --verbose run duty check-quality | |
- name: Check if the code is correctly typed | |
run: pdm --verbose run duty check-types | |
- name: Check for vulnerabilities in dependencies | |
run: pdm --verbose run duty check-dependencies | |
tests: | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
- windows-latest | |
python-version: | |
#### - "3.7" # Not compatible with numpy<1.22 | |
- "3.8" | |
- "3.9" | |
#### - "3.10" # Not compatible with networkx<=2.6, scikit-learn<=1.0 | |
#### - "3.11" # Not compatible with networkx<=2.6, scikit-learn<=1.0 | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up PDM | |
uses: pdm-project/setup-pdm@v3 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Set cache variables | |
id: set_variables | |
run: | | |
echo "::set-output name=PIP_CACHE::$(pip cache dir)" | |
echo "::set-output name=PDM_CACHE::$(pdm config cache_dir)" | |
- name: Set up cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
${{ steps.set_variables.outputs.PIP_CACHE }} | |
${{ steps.set_variables.outputs.PDM_CACHE }} | |
key: tests-cache-${{ runner.os }}-${{ matrix.python-version }} | |
- name: Resolving dependencies | |
run: pdm --verbose lock | |
- name: Install dependencies | |
run: pdm --verbose install -G duty -G tests | |
- name: Run the test suite | |
run: pdm --verbose run duty test | |
- name: Compute tests coverage | |
run: pdm --verbose run duty coverage |