diff --git a/.travis.yml b/.travis.yml index 831300cb9b46..5375f5142034 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,3 +1,22 @@ +sudo: false + +addons: + apt: + packages: + - inkscape + - libav-tools + - gdb + - mencoder + - dvipng + - texlive-latex-base + - texlive-latex-extra + - texlive-fonts-recommended + - texlive-latex-recommended + - graphviz +# - fonts-humor-sans +# sources: +# - debian-sid + env: global: - ARTIFACTS_AWS_REGION=us-east-1 @@ -8,6 +27,7 @@ env: - BUILD_DOCS=false - TEST_ARGS=--no-pep8 - NUMPY=numpy + - NPROC=2 language: python @@ -25,8 +45,6 @@ matrix: install: - pip install -q --use-mirrors nose python-dateutil $NUMPY pep8 pyparsing pillow sphinx!=1.3.0 - - sudo apt-get update && sudo apt-get -qq install inkscape libav-tools gdb mencoder - # We use --no-install-recommends to avoid pulling in additional large latex docs that we don't need # We manually install humor sans using the package from Ubuntu 14.10. Unfortunatly humor sans is not # availible in the Ubuntu version used by Travis but we can manually install the deb from a later @@ -36,12 +54,13 @@ install: # Neihter is installed as a dependency of IPython since they are not used by the IPython console. - | if [[ $BUILD_DOCS == true ]]; then - sudo apt-get install -qq --no-install-recommends dvipng texlive-latex-base texlive-latex-extra texlive-fonts-recommended graphviz pip install numpydoc linkchecker ipython jsonschema mistune + wget https://github.com/google/fonts/blob/master/ofl/felipa/Felipa-Regular.ttf?raw=true wget http://mirrors.kernel.org/ubuntu/pool/universe/f/fonts-humor-sans/fonts-humor-sans_1.0-1_all.deb - sudo dpkg -i fonts-humor-sans_1.0-1_all.deb - wget https://googlefontdirectory.googlecode.com/hg/ofl/felipa/Felipa-Regular.ttf - sudo cp Felipa-Regular.ttf /usr/local/share/fonts/ + mkdir -p tmp + dpkg -x fonts-humor-sans_1.0-1_all.deb tmp + cp tmp/usr/share/fonts/truetype/humor-sans/Humor-Sans.ttf ~/.local/share/fonts/ + cp Felipa-Regular.ttf ~/.local/share/fonts/ fc-cache -f -v fi; - python setup.py install @@ -50,17 +69,16 @@ script: # The number of processes is hardcoded, because using too many causes the # Travis VM to run out of memory (since so many copies of inkscape and # ghostscript are running at the same time). - - echo Testing using 8 processes + - echo Testing using $NPROC processes # Generate the font caches in a single process before starting the # multiple processes - - gcc --version - python -c "from matplotlib import font_manager" - | if [[ $BUILD_DOCS == false ]]; then export MPL_REPO_DIR=$PWD # needed for pep8-conformance test of the examples mkdir ../tmp_test_dir cd ../tmp_test_dir - gdb -return-child-result -batch -ex r -ex bt --args python ../matplotlib/tests.py -sv --processes=8 --process-timeout=300 $TEST_ARGS + gdb -return-child-result -batch -ex r -ex bt --args python ../matplotlib/tests.py -sv --processes=$NPROC --process-timeout=300 $TEST_ARGS else cd doc python make.py html --small --warningsaserrors