dist: xenial language: python # Used: travis encrypt "chat.freenode.net#scons" --add notifications.irc notifications: irc: secure: TTb+41Bj1qIUc6vj+kDqBME8H3lqXdAe1RWAjjz5hL7bzFah6qCBHNJn4DwzqYs6+Pwuwp+6wFy8hgmQttJnXve4h6GtjtvlWprDqxaC7RkFqMWFDBzDalgbB54Bi4+TTZmSJ1K/duI3LrDaN873nyn+2GBnj+3TiNtgURp1fsJMpPxXJzAsoC8UthEsbx0Zkoal/WF+IfsT2q1yQRmAwB9r/drbahx/FfL16r1QjDbI9y1fKvN5J3PirLUvxtHfuH1r8zq1vlLew2fvldgVRtFv7+Lsk2waG/eiRpMf94V5JWP1rNreV/i4AUbZaTLb3bkrhtvTjSKhvx69Ydm+ygXdRgWOD/KRgqpLNAfA+t/a2J1R++89svQI4dPBpQjlfua1elcDCFddeIslgnjDUPO23Y0o7tHAy8sWkwhTcZH1Wm42uJP6Z6tHTH6+dMLvvZpkq4RUKUcrXvoUvCsVlWMGjcsBX+AEQSFGDJnLtLehO9x0QbgVga/IRKjgpDWgQDZgro3AkGg/zzVj5uFRUoU+rbmEXq9feh5i3HfExAvA3UoEtnQ6uadDyWqtQcLRFmPSWDU82CO+sanGdFL0jBjigE8ubPObzxEAz3Fg1xk56OYBkAdEd+2KEzeO1nqJmrhsnc3c/3+b1cBvaL5ozW4XB4XcWsOi268SoiBrcBo= addons: apt: update: true os: - linux install: # needed for Docbook tests, must be in virtualenv context - pip install -r requirements.txt # do the rest of the image setup - ./.travis/install.sh # Note: Travis does not provide a way to specify the order of # jobs within a Stage, which are "run in parallel", but with # limitations: from observation four or five are kicked # off, then additional jobs as initial ones complete. # We want the slowest jobs in the first batch since the # faster ones are less than half the time of the slowest, # we should be able to finish the Test task in the time of the # slowest job rather than (a fast job + the slowest job). # Putting the pypy jobs first may help with this, though it's # apparently not guaranteed. jobs: # pypy is not passing atm, but still report build success for now # allow coverage to fail, so we can still do testing for all platforms allow_failures: - python: pypy3 include: - &test_job script: python runtest.py -a -t -j 2 || if [[ $? == 2 ]]; then true; else false; fi before_script: skip after_success: skip python: pypy3 - <<: *test_job python: 3.5 - <<: *test_job python: 3.6 - <<: *test_job python: 3.7 dist: xenial # required for Python >= 3.7 - <<: *test_job python: 3.8 dist: bionic # required for Python >= 3.8 - <<: *test_job python: 3.9-dev dist: bionic # required for Python >= 3.8 - &coverage_jobs dist: bionic python: 3.7 name: coverage before_script: - ./.travis/coverage_setup.sh script: - coverage run -p --rcfile="$PWD/.coveragerc" runtest.py -a -j 2 || if [[ $? == 2 ]]; then true; else false; fi after_script: - coverage combine - coverage report - coverage xml -i -o coverage_xml.xml - codecov -X gcov --file coverage_xml.xml - &scons_build_job name: SCons Build python: 3.7 install: - sudo apt-get -y install docbook-xml docbook-xsl xsltproc libxml2-dev libxslt-dev fop docbook-xsl-doc-pdf - sudo apt-get -y --no-install-recommends install texlive texlive-latex3 biber texmaker ghostscript texlive-bibtex-extra texlive-latex-extra texlive-font-utils latexmk - pip install -r requirements.txt script: - python bin/docs-update-generated.py - python bin/docs-validate.py - python bin/docs-create-example-outputs.py - python scripts/scons.py - ls -l build/dist - python build/scons-local/scons.py --version