os: linux dist: trusty language: python cache: pip: true directories: - $HOME/.ccache - libs python: - 2.7 - 3.6 - 3.5 env: global: - USE_CCACHE=1 - CCACHE_SLOPPINESS=pch_defines,time_macros - CCACHE_COMPRESS=1 - CCACHE_MAXSIZE=70M - PATH="/usr/lib/ccache:$PATH" - LIBXML2_VERSION=2.9.9 - LIBXSLT_VERSION=1.1.33 matrix: - STATIC_DEPS=false - STATIC_DEPS=true matrix: include: - python: 3.7 dist: xenial # Required for Python >= 3.7 env: STATIC_DEPS=false EXTRA_DEPS=coverage - python: 3.7 dist: xenial # Required for Python >= 3.7 env: STATIC_DEPS=false - python: 3.7 dist: xenial # Required for Python >= 3.7 env: STATIC_DEPS=true - python: 3.8-dev dist: xenial # Required for Python >= 3.7 env: STATIC_DEPS=false - python: 3.8-dev dist: xenial # Required for Python >= 3.7 env: STATIC_DEPS=true - python: 3.7 dist: xenial # Required for Python >= 3.7 env: - STATIC_DEPS=true - LIBXML2_VERSION=2.9.2 # minimum version requirements - LIBXSLT_VERSION=1.1.27 - python: pypy env: STATIC_DEPS=false - python: pypy3 env: STATIC_DEPS=false allow_failures: - python: pypy - python: pypy3 install: - pip install -U pip wheel - if [ -z "${TRAVIS_PYTHON_VERSION##*-dev}" ]; then pip install --install-option=--no-cython-compile https://github.com/cython/cython/archive/master.zip; else pip install -r requirements.txt; fi - pip install -U beautifulsoup4 cssselect html5lib rnc2rng ${EXTRA_DEPS} script: - CFLAGS="-O0 -g -fPIC" python -u setup.py build_ext --inplace $(if [ -n "${TRAVIS_PYTHON_VERSION##2.*}" -a -n "${TRAVIS_PYTHON_VERSION##3.[34]*}" ]; then echo -n " -j7 "; fi ) $(if [ -n "$EXTRA_DEPS" -a -z "${EXTRA_DEPS##*coverage*}" ]; then echo -n "--with-coverage"; fi ) - ccache -s || true - CFLAGS="-O0 -g -fPIC" PYTHONUNBUFFERED=x make test - ccache -s || true