forked from pydata/patsy
-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy path.travis.yml
66 lines (65 loc) · 2.6 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
language: python
python:
- 2.7
- 3.4
- 3.5
matrix:
include:
# 0.14.0 is the last version with the old categorical system
# libfortran=1.0 is needed to work around a bug in anaconda
# (https://github.com/pydata/patsy/pull/83#issuecomment-206895923)
- python: 3.4
env: PANDAS_VERSION_STR="=0.14.0 libgfortran=1.0"
- python: 2.7
env: PANDAS_VERSION_STR="=0.14.0 libgfortran=1.0"
# 0.18.0 has is_categorical_dtype in a different place than 0.19.0+
- python: 3.4
env: PANDAS_VERSION_STR="=0.18.0"
- python: 2.7
env: PANDAS_VERSION_STR="=0.18.0"
# make sure it works without pandas
- python: 3.5
env: PANDAS_VERSION_STR="NONE"
- python: 2.7
env: PANDAS_VERSION_STR="NONE"
# This disables sudo, but makes builds start much faster
# See http://blog.travis-ci.com/2014-12-17-faster-builds-with-container-based-infrastructure/
sudo: false
before_install:
# Work around terrible pathological behaviour in OpenBLAS multithreading, that causes execution time to blow up from 3 minutes to 18 minutes, apparently in SVD on smallish matrices
- export OMP_NUM_THREADS=1
# Escape Travis virtualenv
- deactivate
# See: http://conda.pydata.org/docs/travis.html
- wget http://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
- conda info -a
- conda create -q -n testenv python=$TRAVIS_PYTHON_VERSION numpy scipy coverage nose pip
- source activate testenv
- if [ "$PANDAS_VERSION_STR" != "NONE" ]; then conda install pandas${PANDAS_VERSION_STR}; fi
install:
- python setup.py sdist
- pip install dist/*
script:
# We change directories to make sure that python won't find the copy
# of patsy in the source directory.
- mkdir empty
- cd empty
- INSTALLDIR=$(python -c "import os; import patsy; print(os.path.dirname(patsy.__file__))")
- export PYTHONWARNINGS=default PATSY_FORCE_NO_WARNINGS=1
# The --exe is because python sometimes marks all installed modules
# as executable, so without --exe nosetests will just ignore
# everything. Baffling, but so it goes.
- coverage run --source=$INSTALLDIR --rcfile=../.coveragerc $(which nosetests) -vvv --nocapture --exe --failure-detail --all-modules $INSTALLDIR
- coverage report --rcfile=../.coveragerc --show-missing
- python ../tools/check-API-refs.py
notifications:
email:
after_success:
#- pip install coveralls && coveralls
- pip install codecov && codecov