From 1bab94bf834370d534e94cf21f22ba89c7e8ba49 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Sun, 28 May 2017 12:47:29 -0700 Subject: [PATCH 1/7] Turn on macOS builds --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index c4a21499749829..8fb1a7189e45db 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,8 +13,7 @@ branches: 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 From 669924450419e91667f514f68b229b28318936bd Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Sun, 28 May 2017 13:34:20 -0700 Subject: [PATCH 2/7] Temporarily disable change-type check to verify build under macOS --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 8fb1a7189e45db..7d392749384d21 100644 --- a/.travis.yml +++ b/.travis.yml @@ -73,7 +73,7 @@ before_script: if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' then echo "Only docs were updated, stopping build process." - exit + #exit fi ./configure --with-pydebug make -j4 From e361463a280b664af54ae6f6531d43f5c7fa41df Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Sun, 28 May 2017 14:07:47 -0700 Subject: [PATCH 3/7] Turn back on short-circuiting --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 7d392749384d21..8fb1a7189e45db 100644 --- a/.travis.yml +++ b/.travis.yml @@ -73,7 +73,7 @@ before_script: if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' then echo "Only docs were updated, stopping build process." - #exit + exit fi ./configure --with-pydebug make -j4 From 5ceceb8901e4f66488b297a9ec117ffb4fa88a63 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 2 Jun 2017 12:13:34 -0700 Subject: [PATCH 4/7] Make mac passing optional until we know it's stable --- .travis.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0e404ecf4df5f5..86e99bb21cee5e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -16,6 +16,7 @@ matrix: allow_failures: - env: - TESTING=coverage + - TESTING=cpython-mac include: - os: linux language: c @@ -29,7 +30,7 @@ matrix: language: c compiler: clang env: - - TESTING=cpython + - TESTING=cpython-mac - os: linux language: python # Build the docs against a stable version of Python so code bugs don't hold up doc-related PRs. @@ -74,7 +75,7 @@ before_script: if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' then echo "Only docs were updated, stopping build process." - exit + #exit fi ./configure --with-pydebug make -j4 From be63a3141b821a80bcab7062ba24d0b9cdbbda84 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 2 Jun 2017 12:23:11 -0700 Subject: [PATCH 5/7] Fix how to delineate which builds are optional Travis requires that all rules in allow_failures be matched for a build to be optional. --- .travis.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 86e99bb21cee5e..212d5f5b101ae7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,8 +15,7 @@ matrix: fast_finish: true allow_failures: - env: - - TESTING=coverage - - TESTING=cpython-mac + - REQUIRED=false include: - os: linux language: c @@ -30,7 +29,8 @@ matrix: language: c compiler: clang env: - - TESTING=cpython-mac + - TESTING=cpython + - REQUIRED=false - os: linux language: python # Build the docs against a stable version of Python so code bugs don't hold up doc-related PRs. @@ -49,6 +49,7 @@ matrix: compiler: gcc env: - TESTING=coverage + - REQUIRED=false before_script: - | if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' From 9cc98080213000ee1f0295068c10b62136d43a38 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 2 Jun 2017 12:26:31 -0700 Subject: [PATCH 6/7] Try yet again to make mac and coverage optional --- .travis.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 212d5f5b101ae7..b48e564f2c1c12 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,8 +14,7 @@ branches: matrix: fast_finish: true allow_failures: - - env: - - REQUIRED=false + - env: OPTIONAL=true include: - os: linux language: c @@ -30,7 +29,7 @@ matrix: compiler: clang env: - TESTING=cpython - - REQUIRED=false + - OPTIONAL=true - os: linux language: python # Build the docs against a stable version of Python so code bugs don't hold up doc-related PRs. @@ -49,7 +48,7 @@ matrix: compiler: gcc env: - TESTING=coverage - - REQUIRED=false + - OPTIONAL=true before_script: - | if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' @@ -76,7 +75,7 @@ before_script: if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/' then echo "Only docs were updated, stopping build process." - #exit + exit fi ./configure --with-pydebug make -j4 From 3ca0af0dc4354ef3939c53f2631b3cb993d80f50 Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Fri, 2 Jun 2017 12:36:19 -0700 Subject: [PATCH 7/7] Travis only allows a single environment variable to be specified in the matrix --- .travis.yml | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/.travis.yml b/.travis.yml index b48e564f2c1c12..a92b1e4eb83211 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,20 +22,17 @@ matrix: # gcc also works, but to keep the # of concurrent builds down, we use one C # compiler here and the other to run the coverage build. Clang is preferred # in this instance for its better error messages. - env: - - TESTING=cpython + env: TESTING=cpython - os: osx language: c compiler: clang - env: - - TESTING=cpython - - OPTIONAL=true + # Testing under macOS is optional until testing stability has been demonstrated. + env: OPTIONAL=true - os: linux language: python # Build the docs against a stable version of Python so code bugs don't hold up doc-related PRs. python: 3.6 - env: - - TESTING=docs + env: TESTING=docs before_script: - cd Doc # Sphinx is pinned so that new versions that introduce new warnings won't suddenly cause build failures. @@ -46,9 +43,7 @@ matrix: - os: linux language: c compiler: gcc - env: - - TESTING=coverage - - OPTIONAL=true + env: OPTIONAL=true before_script: - | if ! git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '(\.(rst|yml)$)|(^Doc)|(^Misc)/'