CI: Run pytest, Flake8 and mypy on GitHub Actions on Ubuntu 20.04, 22.04, Debian and macOS
hoh opened this issue · comments
Problem
We would like to support many user systems with aleph-client, including:
- Ubuntu 20.04
- Ubuntu 22.04
- Debian Bullseye
- macOS 12 Monterey
- Windows 10
While most of the code is portable, some dependencies are compiled differently for different systems.
Tests currently run only on Ubuntu 20.04 via a Docker image, as defined in https://github.com/aleph-im/aleph-client/blob/master/.github/workflows/test-pytest.yml
This gives us low confidence on whether aleph-client works on these platforms, and we have no idea if a commit breaks it.
Proposal
Add GitHub Actions workflows that run pytest with flake8 and check for coverage. Also check types using mypy.
https://pypi.org/project/flake8/
https://pypi.org/project/mypy/
https://pypi.org/project/pytest-cov/