@@ -55,38 +55,42 @@ matrix:
55
55
- python : " nightly"
56
56
57
57
before_install :
58
- - source ci/travis/travis_tools.sh
59
- # Install into our own pristine virtualenv
60
- - virtualenv --python=python venv
61
- - source venv/bin/activate
62
- - export PATH=/usr/lib/ccache:$PATH
58
+ - |
59
+ # Install into our own pristine virtualenv
60
+ source ci/travis/travis_tools.sh
61
+ virtualenv --python=python venv
62
+ source venv/bin/activate
63
+ export PATH=/usr/lib/ccache:$PATH
63
64
64
65
install :
65
- - ccache -s
66
- # Upgrade pip and setuptools. Mock has issues with the default version of
67
- # setuptools
68
66
- |
67
+ # Setup environment
68
+ ccache -s
69
+ # Upgrade pip and setuptools and wheel to get as clean an install as possible
69
70
pip install --upgrade pip
70
71
pip install --upgrade wheel
71
72
pip install --upgrade setuptools
72
- # Install only from travis wheelhouse
73
- - if [ -z "$PRE" ]; then
74
- wheelhouse_pip_install python-dateutil $NUMPY $PANDAS pyparsing!=2.0.4 pillow sphinx!=1.3.0 $MOCK;
73
+ - |
74
+ # Install dependencies
75
+ if [ -z "$PRE" ]; then
76
+ # Install only from travis wheelhouse
77
+ wheelhouse_pip_install $NUMPY $PANDAS;
75
78
else
76
- pip install $PRE python-dateutil $NUMPY pyparsing!=2.0.4 pillow sphinx!=1.3.0;
79
+ # Fall back to pypi for non suported python versions
80
+ pip install $PRE $NUMPY $PANDAS;
77
81
fi
78
- # Always install from pypi
79
- - pip install $PRE pep8 cycler coveralls coverage
80
- - ' pip install git+https://github.com/jenshnielsen/nose.git@matplotlibnose'
82
+ # Always install from pypi
83
+ pip install $PRE pep8 cycler coveralls coverage python-dateutil pyparsing!=2.0.4
84
+ pip install pillow sphinx!=1.3.0 $MOCK numpydoc ipython colorspacious
85
+ # Install nose from a build which has partial
86
+ # support for python36 and suport for coverage output suppressing
87
+ pip install git+https://github.com/jenshnielsen/nose.git@matplotlibnose
81
88
82
- # We manually install humor sans using the package from Ubuntu 14.10. Unfortunatly humor sans is not
83
- # availible in the Ubuntu version used by Travis but we can manually install the deb from a later
84
- # version since is it basically just a .ttf file
85
- # The current Travis Ubuntu image is to old to search .local/share/fonts so we store fonts in .fonts
86
-
87
- - |
89
+ # We manually install humor sans using the package from Ubuntu 14.10. Unfortunatly humor sans is not
90
+ # availible in the Ubuntu version used by Travis but we can manually install the deb from a later
91
+ # version since is it basically just a .ttf file
92
+ # The current Travis Ubuntu image is to old to search .local/share/fonts so we store fonts in .fonts
88
93
if [[ $BUILD_DOCS == true ]]; then
89
- pip install $PRE numpydoc ipython colorspacious
90
94
wget https://github.com/google/fonts/blob/master/ofl/felipa/Felipa-Regular.ttf?raw=true -O Felipa-Regular.ttf
91
95
wget http://mirrors.kernel.org/ubuntu/pool/universe/f/fonts-humor-sans/fonts-humor-sans_1.0-1_all.deb
92
96
mkdir -p tmp
@@ -99,16 +103,17 @@ install:
99
103
# Use the special local version of freetype for testing
100
104
cp ci/travis/setup.cfg .
101
105
fi;
102
-
103
- - pip install -e .
106
+ - |
107
+ # Install matplotlib
108
+ pip install -e .
104
109
105
110
script :
106
111
# The number of processes is hardcoded, because using too many causes the
107
112
# Travis VM to run out of memory (since so many copies of inkscape and
108
113
# ghostscript are running at the same time).
109
- - echo Testing using $NPROC processes
110
- - echo The following args are passed to nose $NOSE_ARGS
111
114
- |
115
+ echo Testing using $NPROC processes
116
+ echo The following args are passed to nose $NOSE_ARGS
112
117
if [[ $BUILD_DOCS == false ]]; then
113
118
export MPL_REPO_DIR=$PWD # needed for pep8-conformance test of the examples
114
119
gdb -return-child-result -batch -ex r -ex bt --args python tests.py $NOSE_ARGS $TEST_ARGS
@@ -117,52 +122,54 @@ script:
117
122
python make.py html --small --warningsaserrors
118
123
# We don't build the LaTeX docs here, so linkchecker will complain
119
124
touch build/html/Matplotlib.pdf
125
+ # Linkchecker only works with python 2.7 for the time being
120
126
deactivate
121
127
source ~/virtualenv/python2.7/bin/activate
128
+ pip install pip --upgrade
122
129
pip install linkchecker
123
130
linkchecker build/html/index.html
124
131
fi
125
132
126
133
after_failure :
127
- |
128
- if [[ $BUILD_DOCS == false && $TRAVIS_PULL_REQUEST == false && $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' ]]; then
129
- gem install travis-artifacts
130
- cd $TRAVIS_BUILD_DIR/../tmp_test_dir
131
- tar cjf result_images.tar.bz2 result_images
132
- travis-artifacts upload --path result_images.tar.bz2
133
- echo https://s3.amazonaws.com/matplotlib-test-results/artifacts/${TRAVIS_BUILD_NUMBER}/${TRAVIS_JOB_NUMBER}/result_images.tar.bz2
134
- else
135
- echo "The result images will only be uploaded if they are on the matplotlib/matplotlib repo - this is for security reasons to prevent arbitrary PRs echoing security details."
136
- fi
134
+ - |
135
+ if [[ $BUILD_DOCS == false && $TRAVIS_PULL_REQUEST == false && $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' ]]; then
136
+ gem install travis-artifacts
137
+ cd $TRAVIS_BUILD_DIR/../tmp_test_dir
138
+ tar cjf result_images.tar.bz2 result_images
139
+ travis-artifacts upload --path result_images.tar.bz2
140
+ echo https://s3.amazonaws.com/matplotlib-test-results/artifacts/${TRAVIS_BUILD_NUMBER}/${TRAVIS_JOB_NUMBER}/result_images.tar.bz2
141
+ else
142
+ echo "The result images will only be uploaded if they are on the matplotlib/matplotlib repo - this is for security reasons to prevent arbitrary PRs echoing security details."
143
+ fi
137
144
138
145
after_success :
139
- |
140
- if [[ $TRAVIS_PULL_REQUEST == false && $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' && $BUILD_DOCS == true && $TRAVIS_BRANCH == 'master' ]]; then
141
- cd $TRAVIS_BUILD_DIR
142
- echo "Uploading documentation"
143
- openssl aes-256-cbc -K $encrypted_cc802e084cd0_key -iv $encrypted_cc802e084cd0_iv -in ci/travis/matplotlibDeployKey.enc -out ci/travis/matplotlibDeployKey -d
144
- eval `ssh-agent -s`
145
- chmod 600 ci/travis/matplotlibDeployKey
146
- ssh-add ci/travis/matplotlibDeployKey
147
- cd ..
148
- git clone [email protected] :matplotlib/devdocs.git
149
- cd devdocs
150
- git checkout --orphan gh-pages
151
- git reset --hard first_commit
152
- cp -R ../matplotlib/doc/build/html/. .
153
- touch .nojekyll
154
- git config --global user.email "MatplotlibTravisBot@nomail"
155
- git config --global user.name "MatplotlibTravisBot"
156
- git config --global push.default simple
157
- git add .
158
- git commit -m "Docs build of $TRAVIS_COMMIT"
159
- git push --set-upstream origin gh-pages --force
160
- else
161
- echo "Will only deploy docs build from matplotlib master branch"
162
- fi
163
- if [[ $TRAVIS_PULL_REQUEST == false ]] && \
164
- [[ $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' ]] && \
165
- [[ $TRAVIS_BRANCH == 'master' ]]; then
146
+ - |
147
+ if [[ $TRAVIS_PULL_REQUEST == false && $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' && $BUILD_DOCS == true && $TRAVIS_BRANCH == 'master' ]]; then
148
+ cd $TRAVIS_BUILD_DIR
149
+ echo "Uploading documentation"
150
+ openssl aes-256-cbc -K $encrypted_cc802e084cd0_key -iv $encrypted_cc802e084cd0_iv -in ci/travis/matplotlibDeployKey.enc -out ci/travis/matplotlibDeployKey -d
151
+ eval `ssh-agent -s`
152
+ chmod 600 ci/travis/matplotlibDeployKey
153
+ ssh-add ci/travis/matplotlibDeployKey
154
+ cd ..
155
+ git clone [email protected] :matplotlib/devdocs.git
156
+ cd devdocs
157
+ git checkout --orphan gh-pages
158
+ git reset --hard first_commit
159
+ cp -R ../matplotlib/doc/build/html/. .
160
+ touch .nojekyll
161
+ git config --global user.email "MatplotlibTravisBot@nomail"
162
+ git config --global user.name "MatplotlibTravisBot"
163
+ git config --global push.default simple
164
+ git add .
165
+ git commit -m "Docs build of $TRAVIS_COMMIT"
166
+ git push --set-upstream origin gh-pages --force
167
+ else
168
+ echo "Will only deploy docs build from matplotlib master branch"
169
+ fi
170
+ if [[ $TRAVIS_PULL_REQUEST == false ]] && \
171
+ [[ $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' ]] && \
172
+ [[ $TRAVIS_BRANCH == 'master' ]]; then
166
173
cd $TRAVIS_BUILD_DIR
167
174
python ci/travis/travis_after_all.py
168
175
export $(cat .to_export_back)
@@ -174,7 +181,7 @@ after_success:
174
181
echo "Some Failed; no OSX build"
175
182
fi
176
183
fi
177
- fi
178
- if [[ $NOSE_ARGS="--with-coverage" ]]; then
179
- coveralls
180
- fi
184
+ fi
185
+ if [[ $NOSE_ARGS="--with-coverage" ]]; then
186
+ coveralls
187
+ fi
0 commit comments