# 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 my_project_name/ my-project-name tests

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

    - name: PEP8 formatting
      run: |
        black --check --diff my_project_name/ my-project-name tests