2018-09-05 08:43:36 +02:00
|
|
|
os: linux
|
2018-09-05 23:04:17 +02:00
|
|
|
dist: xenial
|
|
|
|
|
sudo: true
|
|
|
|
|
|
|
|
|
|
# The python from travis is used to lint, mypy and test the
|
|
|
|
|
# non-transpiled src/, as well as to build the universal wheel
|
|
|
|
|
# that will be tested using the environments set up using conda
|
|
|
|
|
python:
|
|
|
|
|
- "3.7"
|
2018-09-05 08:43:36 +02:00
|
|
|
|
2018-09-03 09:19:27 +02:00
|
|
|
language: python
|
2018-09-05 08:43:36 +02:00
|
|
|
cache: pip
|
2018-09-03 09:19:27 +02:00
|
|
|
|
2018-09-05 23:04:17 +02:00
|
|
|
install:
|
2018-09-05 08:50:32 +02:00
|
|
|
- sudo apt-get install -y git mercurial
|
2018-09-05 23:04:17 +02:00
|
|
|
|
2018-09-05 23:23:54 +02:00
|
|
|
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -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
|
|
|
|
|
# Useful for debugging any issues with conda
|
|
|
|
|
- conda info -a
|
|
|
|
|
|
|
|
|
|
# Setup envs
|
|
|
|
|
- conda create -q --name cpy27 python=2.7
|
2018-09-05 23:16:24 +02:00
|
|
|
# - conda create -q --name cpy34 python=3.4
|
|
|
|
|
# - conda create -q --name cpy35 python=3.5
|
|
|
|
|
# - conda create -q --name cpy36 python=3.6
|
|
|
|
|
# - conda create -q --name cpy37 python=3.7
|
|
|
|
|
# - conda create -q --name pypy27
|
2018-09-05 23:04:17 +02:00
|
|
|
# - conda activate pypy27
|
|
|
|
|
# - conda install -c conda-forge pypy2.7
|
|
|
|
|
# - conda deactivate
|
|
|
|
|
|
|
|
|
|
# - conda create --name pypy35
|
|
|
|
|
# - conda activate pypy35
|
|
|
|
|
# - conda install -c conda-forge pypy3.5
|
|
|
|
|
# - conda deactivate
|
2018-09-03 09:19:27 +02:00
|
|
|
|
|
|
|
|
script:
|
2018-09-05 23:16:24 +02:00
|
|
|
# While setup.py does spec these requirements
|
|
|
|
|
# we'll only be installing via setup.py indirectly using the
|
|
|
|
|
# wheel that we'll build. For the test run on the
|
|
|
|
|
# src/ from the repository, we need to install the
|
|
|
|
|
# dependencies separately.
|
|
|
|
|
- python -m pip install $(cat requirements.txt)
|
2018-09-05 23:04:17 +02:00
|
|
|
- python -m pip install $(cat requirements-test.txt)
|
2018-11-04 21:07:25 +01:00
|
|
|
# lint
|
2018-09-05 23:04:17 +02:00
|
|
|
- python -m flake8 src/pycalver/
|
|
|
|
|
- MYPYPATH=stubs/ python -m mypy src/pycalver/
|
2018-11-04 21:07:25 +01:00
|
|
|
# doc
|
2018-09-05 23:09:23 +02:00
|
|
|
- rst2html5 --strict README.rst > /dev/null
|
|
|
|
|
- rst2html5 --strict CHANGELOG.rst > /dev/null
|
2018-11-04 21:07:25 +01:00
|
|
|
# test repo src/
|
2018-09-05 23:04:17 +02:00
|
|
|
- PYTHONPATH=src/:$PYTHONPATH python -m pytest --cov=pycalver test/
|
2018-09-05 23:09:23 +02:00
|
|
|
- codecov
|
2018-11-04 21:07:25 +01:00
|
|
|
# build wheel
|
2018-09-05 23:23:54 +02:00
|
|
|
- python -m pip install lib3to6
|
2018-09-05 23:09:23 +02:00
|
|
|
- python setup.py bdist_wheel --python-tag=py2.py3
|
2018-09-05 23:16:24 +02:00
|
|
|
- ls -l dist/*
|
2018-11-04 21:07:25 +01:00
|
|
|
# test wheel
|
2018-09-05 23:23:54 +02:00
|
|
|
- conda activate cpy27
|
|
|
|
|
- python --version
|
|
|
|
|
- python -m pip install $(cat requirements-test.txt)
|
|
|
|
|
- python -m pip install $(ls -1t dist/*.whl | head -n 1)
|
|
|
|
|
- python -m pytest --cov=pycalver test/
|
|
|
|
|
- conda deactivate
|
|
|
|
|
- python --version
|