# This workflow will install Python dependencies, then run various linting programs on a single Python version
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Lint

on:
  push:
    branches: [master]
  pull_request:
    branches: [master]

jobs:
  lint:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - name: Set up Python 3.9
        uses: actions/setup-python@v2
        with:
          python-version: 3.9

      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -U isort==5.6.4 flake8==3.8.4 flake8-comprehensions==3.3.1 black==20.8b1

      - name: Check import statement sorting
        run: |
          isort -c --df matrix_alertbot/ matrix-alertbot tests

      - name: Python syntax errors, undefined names, etc.
        run: |
          flake8 . --count --show-source --statistics

      - name: PEP8 formatting
        run: |
          black --check --diff matrix_alertbot/ matrix-alertbot tests