packages feed

extrapolate-0.4.4: .travis.yml

# .travis.yml file for Extrapolate
#
# Copyright:   (c) 2017-2020 Rudy Matela
# License:     3-Clause BSD  (see the file LICENSE)
# Maintainer:  Rudy Matela <rudy@matela.com.br>

language: c  # not really

notifications:
  email:
    on_failure: change

sudo: false

cache:
  directories:
  - $HOME/.ghc
  - $HOME/.cabal
  - $HOME/.stack

before_install:
- export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
- ghc --version
- cabal --version
- haddock --version
- du -hd3 ~/.cabal ~/.ghc || true
- du -hd4 ~/.stack || true
- rm -f ~/.cabal/config && cabal update
# Download and unpack the stack executable
# "Once Travis whitelists the stack.dev files," simply include stack in the
# addons section. -- https://docs.haskellstack.org/en/stable/travis_ci/
- mkdir -p ~/.local/bin
- export PATH=$HOME/.local/bin:$PATH
- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
- stack config set system-ghc --global true
- stack --version
- cabal install leancheck express speculate || cabal v1-install leancheck express speculate

script:
- make && make test
- make haddock
- make test-sdist
- cabal test --ghc-option=-O0
- stack --resolver $STACKVER --no-terminal --skip-ghc-check test --ghc-options=-O0

matrix:
  allow_failures:
  - ghc: 'head'
  include:
  - ghc: 'head'
    env:                   GHCVER=head         CABALVER=head   STACKVER=nightly-2020-03-28
    addons: {apt: {packages: [ghc-head,   cabal-install-head], sources: hvr-ghc}}
  - ghc: '8.10'
    env:                   GHCVER=8.10.1       CABALVER=3.2    STACKVER=nightly-2020-03-28
    addons: {apt: {packages: [ghc-8.10.1, cabal-install-3.2],  sources: hvr-ghc}}
  - ghc: '8.8'
    env:                   GHCVER=8.8.3        CABALVER=3.0    STACKVER=lts-15.6
    addons: {apt: {packages: [ghc-8.8.3,  cabal-install-3.0],  sources: hvr-ghc}}
  - ghc: '8.6'
    env:                   GHCVER=8.6.5        CABALVER=2.4    STACKVER=lts-14.27
    addons: {apt: {packages: [ghc-8.6.5,  cabal-install-2.4],  sources: hvr-ghc}}
  - ghc: '8.4'
    env:                   GHCVER=8.4.4        CABALVER=2.2    STACKVER=lts-12.26
    addons: {apt: {packages: [ghc-8.4.4,  cabal-install-2.2],  sources: hvr-ghc}}
  - ghc: '8.2'
    env:                   GHCVER=8.2.2        CABALVER=2.0    STACKVER=lts-11.22
    addons: {apt: {packages: [ghc-8.2.2,  cabal-install-2.0],  sources: hvr-ghc}}
  - ghc: '8.0'
    env:                   GHCVER=8.0.2        CABALVER=1.24   STACKVER=lts-9.21
    addons: {apt: {packages: [ghc-8.0.2,  cabal-install-1.24], sources: hvr-ghc}}
  - ghc: '7.10'
    env:                   GHCVER=7.10.3       CABALVER=1.22   STACKVER=lts-6.35
    addons: {apt: {packages: [ghc-7.10.3, cabal-install-1.22], sources: hvr-ghc}}
  # we only support stack with GHC >= 7.10
  - ghc: '7.8'
    env:                   GHCVER=7.8.4        CABALVER=1.18
    addons: {apt: {packages: [ghc-7.8.4,  cabal-install-1.18], sources: hvr-ghc}}
    before_install:
    - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
    - ghc --version
    - cabal --version
    - haddock --version
    - rm -f ~/.cabal/config && cabal update
    - cabal install Cabal==1.18.*
    - cabal install leancheck express speculate
    script:
    - make && make test
    - make haddock HADDOCKFLAGS=
    - make test-sdist
    - cabal test