| name: QA |
| on: pull_request |
| jobs: |
| qa: |
| name: Run QA checks |
| runs-on: ubuntu-latest |
| strategy: |
| matrix: |
| python-version: ["3.7", "3.8", "3.9", "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: Set up Node.js @latest |
| uses: actions/setup-node@v2 |
| with: |
| node-version: 16 |
| - name: Install the world |
| run: | |
| python -m pip install --upgrade pip wheel |
| pip install -r requirements.txt |
| pip install -r requirements_dev.txt |
| pip install -e . |
| npm i |
| - name: Run linting |
| run: | |
| make lint |
| - name: Run type checking |
| run: | |
| make check |
| - name: Run tests |
| run: make test |