packages feed

haskell-ci-0.16: fixtures/empty-line.travis

# SUCCESS
# *INFO* Generating Travis-CI config for testing for GHC versions: ghc-head 7.8.1 7.8.2 7.8.3 7.8.4 7.10.1 7.10.2 7.10.3 8.0.1 8.0.2 8.2.1 8.2.2 8.4.1 8.4.2 8.4.3 8.4.4 8.6.1 8.6.2 8.6.3 8.6.4 8.6.5 8.8.1 8.8.2 8.8.3 8.8.4 8.10.1 8.10.2 8.10.3 8.10.4 8.10.5 8.10.6 8.10.7
# This Travis job script has been generated by a script via
#
#   haskell-ci '--ghc-head' 'travis' 'empty-line.project'
#
# To regenerate the script (for example after adjusting tested-with) run
#
#   haskell-ci regenerate
#
# For more information, see https://github.com/haskell-CI/haskell-ci
#
version: ~> 1.0
language: c
os: linux
dist: bionic
git:
  # whether to recursively clone submodules
  submodules: false
cache:
  directories:
    - $HOME/.cabal/packages
    - $HOME/.cabal/store
    - $HOME/.hlint
before_cache:
  - rm -fv $CABALHOME/packages/hackage.haskell.org/build-reports.log
  # remove files that are regenerated by 'cabal update'
  - rm -fv $CABALHOME/packages/hackage.haskell.org/00-index.*
  - rm -fv $CABALHOME/packages/hackage.haskell.org/*.json
  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.cache
  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar
  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar.idx
  - rm -rfv $CABALHOME/packages/head.hackage
jobs:
  include:
    - compiler: ghc-8.10.7
      addons: {"apt":{"packages":["ghc-8.10.7","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.6
      addons: {"apt":{"packages":["ghc-8.10.6","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.5
      addons: {"apt":{"packages":["ghc-8.10.5","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.4
      addons: {"apt":{"packages":["ghc-8.10.4","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.3
      addons: {"apt":{"packages":["ghc-8.10.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.2
      addons: {"apt":{"packages":["ghc-8.10.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.10.1
      addons: {"apt":{"packages":["ghc-8.10.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.8.4
      addons: {"apt":{"packages":["ghc-8.8.4","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.8.3
      addons: {"apt":{"packages":["ghc-8.8.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.8.2
      addons: {"apt":{"packages":["ghc-8.8.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.8.1
      addons: {"apt":{"packages":["ghc-8.8.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.6.5
      addons: {"apt":{"packages":["ghc-8.6.5","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.6.4
      addons: {"apt":{"packages":["ghc-8.6.4","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.6.3
      addons: {"apt":{"packages":["ghc-8.6.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.6.2
      addons: {"apt":{"packages":["ghc-8.6.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.6.1
      addons: {"apt":{"packages":["ghc-8.6.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.4.4
      addons: {"apt":{"packages":["ghc-8.4.4","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.4.3
      addons: {"apt":{"packages":["ghc-8.4.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.4.2
      addons: {"apt":{"packages":["ghc-8.4.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.4.1
      addons: {"apt":{"packages":["ghc-8.4.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.2.2
      addons: {"apt":{"packages":["ghc-8.2.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.2.1
      addons: {"apt":{"packages":["ghc-8.2.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.0.2
      addons: {"apt":{"packages":["ghc-8.0.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-8.0.1
      addons: {"apt":{"packages":["ghc-8.0.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.10.3
      addons: {"apt":{"packages":["ghc-7.10.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.10.2
      addons: {"apt":{"packages":["ghc-7.10.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.10.1
      addons: {"apt":{"packages":["ghc-7.10.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.8.4
      addons: {"apt":{"packages":["ghc-7.8.4","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.8.3
      addons: {"apt":{"packages":["ghc-7.8.3","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.8.2
      addons: {"apt":{"packages":["ghc-7.8.2","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-7.8.1
      addons: {"apt":{"packages":["ghc-7.8.1","cabal-install-3.10"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
    - compiler: ghc-head
      addons: {"apt":{"packages":["ghc-head","cabal-install-head"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu bionic main"}]}}
      os: linux
  allow_failures:
    - compiler: ghc-head
before_install:
  - HC=$(echo "/opt/$CC/bin/ghc" | sed 's/-/\//')
  - WITHCOMPILER="-w $HC"
  - HADDOCK=$(echo "/opt/$CC/bin/haddock" | sed 's/-/\//')
  - HCPKG="$HC-pkg"
  - unset CC
  - CABAL=/opt/ghc/bin/cabal
  - CABALHOME=$HOME/.cabal
  - export PATH="$CABALHOME/bin:$PATH"
  - TOP=$(pwd)
  - "HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\\d+)\\.(\\d+)\\.(\\d+)(\\.(\\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')"
  - echo $HCNUMVER
  - CABAL="$CABAL -vnormal+nowrap"
  - set -o pipefail
  - TEST=--enable-tests
  - BENCH=--enable-benchmarks
  - HEADHACKAGE=false
  - if [ $((HCNUMVER > 81007)) -ne 0 ] ; then HEADHACKAGE=true ; fi
  - rm -f $CABALHOME/config
  - |
    echo "verbose: normal +nowrap +markoutput"          >> $CABALHOME/config
    echo "remote-build-reporting: anonymous"            >> $CABALHOME/config
    echo "write-ghc-environment-files: never"           >> $CABALHOME/config
    echo "remote-repo-cache: $CABALHOME/packages"       >> $CABALHOME/config
    echo "logs-dir:          $CABALHOME/logs"           >> $CABALHOME/config
    echo "world-file:        $CABALHOME/world"          >> $CABALHOME/config
    echo "extra-prog-path:   $CABALHOME/bin"            >> $CABALHOME/config
    echo "symlink-bindir:    $CABALHOME/bin"            >> $CABALHOME/config
    echo "installdir:        $CABALHOME/bin"            >> $CABALHOME/config
    echo "build-summary:     $CABALHOME/logs/build.log" >> $CABALHOME/config
    echo "store-dir:         $CABALHOME/store"          >> $CABALHOME/config
    echo "install-dirs user"                            >> $CABALHOME/config
    echo "  prefix: $CABALHOME"                         >> $CABALHOME/config
    echo "repository hackage.haskell.org"               >> $CABALHOME/config
    echo "  url: http://hackage.haskell.org/"           >> $CABALHOME/config
  - |
    if $HEADHACKAGE; then
    echo "repository head.hackage.ghc.haskell.org"                                         >> $CABALHOME/config
    echo "   url: https://ghc.gitlab.haskell.org/head.hackage/"                            >> $CABALHOME/config
    echo "   secure: True"                                                                 >> $CABALHOME/config
    echo "   root-keys: 7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d"  >> $CABALHOME/config
    echo "              26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329"  >> $CABALHOME/config
    echo "              f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89"  >> $CABALHOME/config
    echo "   key-threshold: 3"                                                             >> $CABALHOME/config
    echo "active-repositories: hackage.haskell.org, head.hackage.ghc.haskell.org:override" >> $CABALHOME/config
    fi
install:
  - ${CABAL} --version
  - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
  - |
    echo "program-default-options"                >> $CABALHOME/config
    echo "  ghc-options: $GHCJOBS +RTS -M6G -RTS" >> $CABALHOME/config
  - cat $CABALHOME/config
  - rm -fv cabal.project cabal.project.local cabal.project.freeze
  - travis_retry ${CABAL} v2-update -v
  # Generate cabal.project
  - rm -rf cabal.project cabal.project.local cabal.project.freeze
  - touch cabal.project
  - |
    echo "packages: servant" >> cabal.project
    echo "packages: servant-client" >> cabal.project
    echo "packages: servant-docs" >> cabal.project
    echo "packages: servant-server" >> cabal.project
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-client' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-docs' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-server' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - |
    echo "constraints: foundatiion >= 0.14"        >> cabal.project
    echo "allow-newer: servant-js:servant"         >> cabal.project
    echo "allow-newer: servant-js:servant-foreign" >> cabal.project
  - |
    if $HEADHACKAGE; then
    echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1,/g')" >> $CABALHOME/config
    fi
  - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(servant|servant-client|servant-docs|servant-server)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
  - cat cabal.project || true
  - cat cabal.project.local || true
  - if [ -f "servant/configure.ac" ]; then (cd "servant" && autoreconf -i); fi
  - if [ -f "servant-client/configure.ac" ]; then (cd "servant-client" && autoreconf -i); fi
  - if [ -f "servant-docs/configure.ac" ]; then (cd "servant-docs" && autoreconf -i); fi
  - if [ -f "servant-server/configure.ac" ]; then (cd "servant-server" && autoreconf -i); fi
  - ${CABAL} v2-freeze $WITHCOMPILER ${TEST} ${BENCH}
  - "cat cabal.project.freeze | sed -E 's/^(constraints: *| *)//' | sed 's/any.//'"
  - rm  cabal.project.freeze
  - travis_wait 40 ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} --dep -j2 all
  - travis_wait 40 ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks --dep -j2 all
script:
  - DISTDIR=$(mktemp -d /tmp/dist-test.XXXX)
  # Packaging...
  - ${CABAL} v2-sdist all
  # Unpacking...
  - mv dist-newstyle/sdist/*.tar.gz ${DISTDIR}/
  - cd ${DISTDIR} || false
  - find . -maxdepth 1 -type f -name '*.tar.gz' -exec tar -xvf '{}' \;
  - find . -maxdepth 1 -type f -name '*.tar.gz' -exec rm       '{}' \;
  - PKGDIR_servant="$(find . -maxdepth 1 -type d -regex '.*/servant-[0-9.]*')"
  - PKGDIR_servant_client="$(find . -maxdepth 1 -type d -regex '.*/servant-client-[0-9.]*')"
  - PKGDIR_servant_docs="$(find . -maxdepth 1 -type d -regex '.*/servant-docs-[0-9.]*')"
  - PKGDIR_servant_server="$(find . -maxdepth 1 -type d -regex '.*/servant-server-[0-9.]*')"
  # Generate cabal.project
  - rm -rf cabal.project cabal.project.local cabal.project.freeze
  - touch cabal.project
  - |
    echo "packages: ${PKGDIR_servant}" >> cabal.project
    echo "packages: ${PKGDIR_servant_client}" >> cabal.project
    echo "packages: ${PKGDIR_servant_docs}" >> cabal.project
    echo "packages: ${PKGDIR_servant_server}" >> cabal.project
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-client' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-docs' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package servant-server' >> cabal.project ; fi
  - "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo '  ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
  - |
    echo "constraints: foundatiion >= 0.14"        >> cabal.project
    echo "allow-newer: servant-js:servant"         >> cabal.project
    echo "allow-newer: servant-js:servant-foreign" >> cabal.project
  - |
    if $HEADHACKAGE; then
    echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1,/g')" >> $CABALHOME/config
    fi
  - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(servant|servant-client|servant-docs|servant-server)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
  - cat cabal.project || true
  - cat cabal.project.local || true
  # Building...
  # this builds all libraries and executables (without tests/benchmarks)
  - ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all
  # Building with tests and benchmarks...
  # build & run tests, build benchmarks
  - ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} all --write-ghc-environment-files=always
  # Testing...
  - ${CABAL} v2-test $WITHCOMPILER ${TEST} ${BENCH} all --test-show-details=direct
  # cabal check...
  - (cd ${PKGDIR_servant} && ${CABAL} -vnormal check)
  - (cd ${PKGDIR_servant_client} && ${CABAL} -vnormal check)
  - (cd ${PKGDIR_servant_docs} && ${CABAL} -vnormal check)
  - (cd ${PKGDIR_servant_server} && ${CABAL} -vnormal check)
  # haddock...
  - ${CABAL} v2-haddock --haddock-all $WITHCOMPILER --with-haddock $HADDOCK ${TEST} ${BENCH} all
  # Building without installed constraints for packages in global-db...
  - rm -f cabal.project.local
  - ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all

# REGENDATA ["--ghc-head","travis","empty-line.project"]
# EOF