Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 77 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
language: c
dist: trusty
sudo: false
group: beta

# To cache doc-building dependencies.
cache: pip

os:
- linux
# macOS builds are disabled as the machines are under-provisioned on Travis,
# adding up to an extra hour completing a full CI run.
#- osx

compiler:
- clang
- gcc

env:
- TESTING=cpython

matrix:
include:
- os: linux
language: python
python: 2.7
env:
- TESTING=docs
before_script:
- |
if git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '^Doc/'
then
echo "Docs weren't updated, stopping build process."
exit
fi
cd Doc
- pip install -U Sphinx
script:
- make html SPHINXOPTS="-q"
- make check
- os: linux
language: cpp
compiler: clang
env:
- TESTING="C++ header compatibility"
before_script:
- ./configure
script:
- echo '#include "Python.h"' > test.cc && $CXX -c test.cc -o /dev/null -I ./Include -I .

# Travis provides only 2 cores, so don't overdue the parallelism and waste memory.
before_script:
- |
if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)/'
then
echo "Only docs were updated, stopping build process."
exit
fi
./configure --with-pydebug
make -j4

script:
# `-r -w` implicitly provided through `make buildbottest`.
- make buildbottest TESTOPTS="-j4"

notifications:
email: false
irc:
channels:
# This is set to a secure variable to prevent forks from notifying the
# IRC channel whenever they fail a build. This can be removed when travis
# implements https://github.com/travis-ci/travis-ci/issues/1094.
# The actual value here is: irc.freenode.net#python-dev
- secure: "s7kAkpcom2yUJ8XqyjFI0obJmhAGrn1xmoivdaPdgBIA++X47TBp1x4pgDsbEsoalef7bEwa4l07KdT4qa+DOd/c4QxaWom7fbN3BuLVsZuVfODnl79+gYq/TAbGfyH+yDs18DXrUfPgwD7C5aW32ugsqAOd4iWzfGJQ5OrOZzqzGjYdYQUEkJFXgxDEIb4aHvxNDWGO3Po9uKISrhb5saQ0l776yLo1Ur7M4oxl8RTbCdgX0vf5TzPg52BgvZpOgt3DHOUYPeiJLKNjAE6ibg0U95sEvMfHX77nz4aFY4/3UI6FFaRla34rZ+mYKrn0TdxOhera1QOgPmM6HzdO4K44FpfK1DS0Xxk9U9/uApq+cG0bU3W+cVUHDBe5+90lpRBAXHeHCgT7TI8gec614aiT8lEr3+yH8OBRYGzkjNK8E2LJZ/SxnVxDe7aLF6AWcoWLfS6/ziAIBFQ5Nc4U72CT8fGVSkl8ywPiRlvixKdvTODMSZo0jMqlfZSNaAPTsNRx4wu5Uis4qekwe32Fz4aB6KGpsuuVjBi+H6v0RKxNJNGY3JKDiEH2TK0UE2auJ5GvLW48aUVFcQMB7euCWYXlSWVRHh3WLU8QXF29Dw4JduRZqUpOdRgMHU79UHRq+mkE0jAS/nBcS6CvsmxCpTSrfVYuMOu32yt18QQoTyU="
on_success: change
on_failure: always
skip_join: true