name: CI

on: [pull_request]

jobs:
  precheck:
    name: Code quality checks
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python 3.5
      uses: actions/setup-python@v1
      with:
        python-version: 3.5
    - name: Install dependencies
      run: |
        pip install --upgrade pip 
        pip install --upgrade setuptools
        pip install flake8 isort
    - name: flake8
      run: |
        flake8
    - name: isort
      run: |
        isort -c

  smoke:
    name: Smoke test (3.5)
    needs: precheck
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python 3.5
      uses: actions/setup-python@v1
      with:
        python-version: 3.5
    - name: Install dependencies
      run: |
        pip install --upgrade pip 
        pip install --upgrade setuptools
        pip install -e .
    - name: Test
      run: |
        python setup.py test

  python-versions:
    name: Python compatibility test
    needs: smoke
    runs-on: ubuntu-latest
    strategy:
      max-parallel: 4
      matrix:
        python-version: [3.6, 3.7, 3.8]
    steps:
    - uses: actions/checkout@v1
    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v1
      with:
        python-version: ${{ matrix.python-version }}
    - name: Install dependencies
      run: |
        pip install --upgrade pip 
        pip install --upgrade setuptools
        pip install -e .
    - name: Test
      run: |
        python setup.py test

Introduce Github Actions for CI
Introduce Github Actions for CI