sudo: false language: python branches: except: - requires-io-master env: global: - CI_DEPS=codecov>=2.0.5 - CI_COMMANDS=codecov git: depth: 10000 matrix: fast_finish: true include: - python: 3.5 env: TOXENV=lint - os: osx osx_image: xcode7.3 language: generic env: TOXENV=py35 BDIST=1 - python: 3.5 env: TOXENV=py35 OPENSSL=old addons: apt: packages: - libssl-dev - python: 3.5 env: TOXENV=py35 BDIST=1 OPENSSL=with-alpn addons: apt: sources: # Debian sid currently holds OpenSSL 1.1.0 # change this with future releases! - debian-sid packages: - libssl-dev - python: 3.6 env: TOXENV=py36 OPENSSL=with-alpn addons: apt: sources: # Debian sid currently holds OpenSSL 1.1.0 # change this with future releases! - debian-sid packages: - libssl-dev - python: 3.5 env: TOXENV=individual_coverage - python: 3.5 env: TOXENV=docs - language: node_js node_js: "node" before_install: - curl -o- -L https://yarnpkg.com/install.sh | bash - export PATH=$HOME/.yarn/bin:$PATH install: - cd web && yarn - yarn global add codecov script: npm test && codecov cache: yarn: true directories: - web/node_modules install: - | if [[ $TRAVIS_OS_NAME == "osx" ]] then brew update || brew update brew outdated pyenv || brew upgrade pyenv eval "$(pyenv init -)" env PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install --skip-existing 3.5.2 pyenv global 3.5.2 pyenv shell 3.5.2 pip install -U pip setuptools wheel virtualenv fi - pip install tox script: - tox -- --verbose --cov-report=term - | if [[ $BDIST == "1" ]] then git fetch --unshallow --tags tox -e rtool -- bdist fi after_success: # we build binaries on every run, but we only upload them for master snapshots or tags. - | if [[ $BDIST == "1" && $TRAVIS_PULL_REQUEST == "false" && ($TRAVIS_BRANCH == "pyinstaller" || $TRAVIS_BRANCH == "master" || -n $TRAVIS_TAG) ]] then tox -e rtool -- upload-snapshot --bdist fi notifications: slack: -rooms: mitmproxy:YaDGC9Gt9TEM7o8zkC2OLNsu on_success: change on_failure: change on_start: never cache: directories: - $HOME/.pyenv - $HOME/.cache/pip