From 93848c063fdd32df90b89b15f48aad2865c50a53 Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Mon, 27 Nov 2017 09:04:53 +0200 Subject: [PATCH] Update the travis-complex example * Comment out older GHC 7.6.3 and 7.8.4 (3 version policy) * Add in cabal 8.2.2 * Switch from lts-8 to lts-9 * Add support for running stack solver as needed * Add a comment about hpack support --- doc/travis-complex.yml | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/doc/travis-complex.yml b/doc/travis-complex.yml index 535ee0c3f2..aad9c8dc29 100644 --- a/doc/travis-complex.yml +++ b/doc/travis-complex.yml @@ -44,18 +44,21 @@ matrix: #- env: BUILD=cabal GHCVER=7.4.2 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7 # compiler: ": #GHC 7.4.2" # addons: {apt: {packages: [cabal-install-1.16,ghc-7.4.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} - - env: BUILD=cabal GHCVER=7.6.3 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7 - compiler: ": #GHC 7.6.3" - addons: {apt: {packages: [cabal-install-1.16,ghc-7.6.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} - - env: BUILD=cabal GHCVER=7.8.4 CABALVER=1.18 HAPPYVER=1.19.5 ALEXVER=3.1.7 - compiler: ": #GHC 7.8.4" - addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} + #- env: BUILD=cabal GHCVER=7.6.3 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7 + # compiler: ": #GHC 7.6.3" + # addons: {apt: {packages: [cabal-install-1.16,ghc-7.6.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} + #- env: BUILD=cabal GHCVER=7.8.4 CABALVER=1.18 HAPPYVER=1.19.5 ALEXVER=3.1.7 + # compiler: ": #GHC 7.8.4" + # addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} - env: BUILD=cabal GHCVER=7.10.3 CABALVER=1.22 HAPPYVER=1.19.5 ALEXVER=3.1.7 compiler: ": #GHC 7.10.3" addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} - env: BUILD=cabal GHCVER=8.0.2 CABALVER=1.24 HAPPYVER=1.19.5 ALEXVER=3.1.7 compiler: ": #GHC 8.0.2" addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} + - env: BUILD=cabal GHCVER=8.2.2 CABALVER=2.0 HAPPYVER=1.19.5 ALEXVER=3.1.7 + compiler: ": #GHC 8.2.2" + addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}} # Build with the newest GHC and cabal-install. This is an accepted failure, # see below. @@ -85,7 +88,7 @@ matrix: compiler: ": #stack 8.0.1" addons: {apt: {packages: [libgmp-dev]}} - - env: BUILD=stack ARGS="--resolver lts-8" + - env: BUILD=stack ARGS="--resolver lts-9" compiler: ": #stack 8.0.2" addons: {apt: {packages: [libgmp-dev]}} @@ -116,7 +119,7 @@ matrix: compiler: ": #stack 8.0.1 osx" os: osx - - env: BUILD=stack ARGS="--resolver lts-8" + - env: BUILD=stack ARGS="--resolver lts-9" compiler: ": #stack 8.0.2 osx" os: osx @@ -164,13 +167,21 @@ install: set -ex case "$BUILD" in stack) + # Add in extra-deps for older snapshots, as necessary + stack --no-terminal --install-ghc $ARGS test --bench --dry-run || ( \ + stack --no-terminal $ARGS build cabal-install && \ + stack --no-terminal $ARGS solver --update-config) + + # Build the dependencies stack --no-terminal --install-ghc $ARGS test --bench --only-dependencies ;; cabal) cabal --version travis_retry cabal update - # Get the list of packages from the stack.yaml file + # Get the list of packages from the stack.yaml file. Note that + # this will also implicitly run hpack as necessary to generate + # the .cabal files needed by cabal-install. PACKAGES=$(stack --install-ghc query locals | grep '^ *path' | sed 's@^ *path:@@') cabal install --only-dependencies --enable-tests --enable-benchmarks --force-reinstalls --ghc-options=-O0 --reorder-goals --max-backjumps=-1 $CABALARGS $PACKAGES