Add a variety of type annotations for mypy #1285
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
name: CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Python 3 | |
uses: actions/setup-python@v5 | |
- name: Uninstall meshtastic | |
run: | | |
pip3 uninstall -y meshtastic | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip3 install poetry | |
- name: Install meshtastic from local | |
run: | | |
poetry install --all-extras --with dev,powermon | |
poetry run meshtastic --version | |
- name: Run pylint | |
run: poetry run pylint meshtastic examples/ --ignore-patterns ".*_pb2.pyi?$" | |
- name: Check types with mypy | |
run: poetry run mypy meshtastic/ | |
- name: Run tests with pytest | |
run: poetry run pytest --cov=meshtastic | |
- name: Generate coverage report | |
run: | | |
poetry run pytest --cov=meshtastic --cov-report=xml | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
env_vars: OS, PYTHON | |
files: ./coverage.xml | |
flags: unittests | |
name: codecov-umbrella | |
fail_ci_if_error: true | |
verbose: true | |
validate: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Python 3 | |
uses: actions/setup-python@v5 | |
- name: Install meshtastic from local | |
run: | | |
python -m pip install --upgrade pip | |
pip3 install poetry | |
poetry install | |
poetry run meshtastic --version |