group: travis_latest
language: python
cache: pip
matrix:
  allow_failures:
    - python: nightly
  include:
    - python: 3.6
    - python: 3.7
      dist: xenial  # required for Python >= 3.7 (travis-ci/travis-ci#9069)
    - python: nightly
      dist: xenial
install:
  - pip install -r requirements.txt
  - pip install flake8
before_script:
  # stop the build if there are Python syntax errors or undefined names
  - flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
  # exit-zero treats all errors as warnings.  The GitHub editor is 127 chars wide
  - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
script:
  - python3 -m unittest tests.all --buffer --verbose
notifications:
  on_success: change
  on_failure: change  # `always` will be the setting once code changes slow down
