language: python env: global: - secure: "pvQHCsdcIRjwNvsBrZxP8cZWEwug0+PLg1T8841ZLkMdCaO3YheqmxF1xGjAqty6hLppz6vX1LFEKmPjKurLL0/i+be6MhT8/ZikFpSan7TdNUqISxeFx31ls+QpuFKzCV7ZEx7C1ms8LPWEGmzMMN6bCtOBVtGznD9KKWZmLlA=" matrix: include: - os: linux dist: xenial # required for Python >= 3.7 python: 3.7 env: - MINICONDA_OS="Linux" - BUILD_DOCS=false - os: linux python: 3.6 env: - MINICONDA_OS="Linux" - BUILD_DOCS=true - os: linux python: "nightly" dist: xenial # required for Python >= 3.7 - os: linux python: "pypy3" env: - BUILD_DOCS=false - os: osx language: generic env: PYTHON="3.6" MINICONDA_OS="MacOSX" - os: osx language: generic env: PYTHON="3.7" MINICONDA_OS="MacOSX" - os: osx language: generic env: PYTHON="3.8" MINICONDA_OS="MacOSX" allow_failures: - python: "nightly" - python: "pypy3" before_install: - if [[ ! ("$TRAVIS_PYTHON_VERSION" == "nightly" || "$TRAVIS_PYTHON_VERSION" == "3.6-dev") && ! $BUILD_DOCS ]]; then URL="https://repo.continuum.io/miniconda/Miniconda3-latest-${MINICONDA_OS}-x86_64.sh"; wget "${URL}" -O miniconda.sh; bash miniconda.sh -b -p $HOME/miniconda; export PATH="$HOME/miniconda/bin:$PATH"; hash -r; conda config --set always_yes yes --set changeps1 no; conda update -q conda; conda info -a; fi install: - if [[ $BUILD_DOCS = true ]]; then pip install --upgrade -r requirements/docs.txt; python setup.py install; else pip install --upgrade -r requirements/tests.txt; python setup.py install; fi before_script: - rvm get head || true script: - set -ex - if [[ $BUILD_DOCS = true ]]; then cd docs; make html; cd ..; doctr deploy --deploy-repo xonsh/xonsh-docs dev; git checkout $(git describe --tags `git rev-list --tags --max-count=1`); git clean -fdx; pip install --upgrade --force-reinstall .; cd docs; make clean html; cd ..; doctr deploy --deploy-repo xonsh/xonsh-docs .; else xonsh run-tests.xsh --timeout=10; fi