Pillow/.travis.yml

74 lines
2.2 KiB
YAML
Raw Normal View History

language: python
2014-04-02 14:53:34 +04:00
notifications:
irc: "chat.freenode.net#pil"
2014-03-26 23:04:54 +04:00
env: MAX_CONCURRENCY=4
2014-06-25 03:01:05 +04:00
2014-09-24 10:15:58 +04:00
# Run slow PyPy* first, to give them a headstart and reduce waiting time.
# Run latest 3.x and 2.x next, to get quick compatibility results.
# Then run the remainder.
python:
- "pypy"
2014-08-18 00:34:12 +04:00
- "pypy3"
- 3.4
- 2.7
- 2.6
- "2.7_with_system_site_packages" # For PyQt4
2014-03-26 23:04:54 +04:00
- 3.2
- 3.3
2014-04-02 12:00:43 +04:00
install:
- "travis_retry sudo apt-get -qq install libfreetype6-dev liblcms2-dev python-qt4 ghostscript libffi-dev libjpeg-turbo-progs cmake imagemagick"
- "travis_retry pip install cffi"
- "travis_retry pip install coverage nose"
# Pyroma installation is slow on Py3, so just do it for Py2.
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then travis_retry pip install pyroma; fi
- if [ "$TRAVIS_PYTHON_VERSION" == "2.6" ]; then travis_retry pip install unittest2; fi
2013-03-19 21:18:25 +04:00
2014-04-02 12:00:43 +04:00
# webp
2014-03-27 01:11:41 +04:00
- pushd depends && ./install_webp.sh && popd
2014-03-26 20:29:47 +04:00
2014-03-26 23:04:54 +04:00
# openjpeg
2014-03-27 00:22:37 +04:00
- pushd depends && ./install_openjpeg.sh && popd
2013-03-19 21:18:25 +04:00
script:
2014-04-02 12:00:43 +04:00
- coverage erase
- python setup.py clean
2014-07-31 23:18:09 +04:00
- CFLAGS="-coverage" python setup.py build_ext --inplace
- coverage run --append --include=PIL/* selftest.py
2014-07-30 13:04:04 +04:00
- coverage run --append --include=PIL/* -m nose -vx Tests/test_*.py
2014-04-02 12:00:43 +04:00
after_success:
2014-07-31 23:18:09 +04:00
# gather the coverage data
- travis_retry sudo apt-get -qq install lcov
2014-07-31 23:18:09 +04:00
- lcov --capture --directory . -b . --output-file coverage.info
# filter to remove system headers
- lcov --remove coverage.info '/usr/*' -o coverage.filtered.info
2014-07-31 23:18:09 +04:00
# convert to json
- travis_retry gem install coveralls-lcov
2014-07-31 23:18:09 +04:00
- coveralls-lcov -v -n coverage.filtered.info > coverage.c.json
2014-04-02 12:40:40 +04:00
- coverage report
- travis_retry pip install coveralls-merge
2014-07-31 23:18:09 +04:00
- coveralls-merge coverage.c.json
- travis_retry pip install pep8 pyflakes
- pep8 --statistics --count PIL/*.py
- pep8 --statistics --count Tests/*.py
2014-08-28 18:23:39 +04:00
- pyflakes *.py | tee >(wc -l)
- pyflakes PIL/*.py | tee >(wc -l)
- pyflakes Tests/*.py | tee >(wc -l)
# Coverage and quality reports on just the latest diff.
# (Installation is very slow on Py3, so just do it for Py2.)
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then Scripts/diffcover-install.sh; fi
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "2" ]; then Scripts/diffcover-run.sh; fi
matrix:
2014-10-13 11:58:57 +04:00
fast_finish: true