# Set-up sudo: false language: c # Cache builds cache: directories: - $HOME/.ghc - $HOME/.cabal - $HOME/.stack # Goal: support latest 3 GHC major versions. matrix: fast_finish: true include: - env: RESOLVER=lts-6 # GHC 7.10 addons: {apt: {packages: [libgmp-dev]}} - env: RESOLVER=lts-9 # GHC 8.0 addons: {apt: {packages: [libgmp-dev]}} # - env: RESOLVER= # GHC 8.2 # addons: {apt: {packages: [libgmp-dev]}} - env: RESOLVER=nightly addons: {apt: {packages: [libgmp-dev]}} allow_failures: - env: RESOLVER=nightly # Download and unpack the stack executable before_install: - export PATH=/opt/ghc/$GHCVER/bin:$HOME/.local/bin:$PATH - mkdir -p ~/.local/bin - curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack' - rm stack.yaml - if [[ -e .travis/$RESOLVER.yaml ]]; then mv .travis/$RESOLVER.yaml stack.yaml; else stack init --resolver=$RESOLVER; fi - stack setup # Run tests script: - echo '# build' && echo -en 'travis_fold:start:script.stack-build\\r' - stack build concurrency - stack build dejafu - stack build hunit-dejafu - stack build tasty-dejafu - stack build dejafu-tests - echo -en 'travis_fold:end:script.stack-build\\r' - echo '# weeder' && echo -en 'travis_fold:start:script.weeder\\r' - curl -sL https://raw.github.com/ndmitchell/weeder/master/misc/travis.sh | sh -s . - echo -en 'travis_fold:end:script.weeder\\r' - echo '# hlint' && echo -en 'travis_fold:start:script.hlint\\r' - curl -sL https://raw.github.com/ndmitchell/hlint/master/misc/travis.sh | sh -s concurrency - curl -sL https://raw.github.com/ndmitchell/hlint/master/misc/travis.sh | sh -s dejafu - curl -sL https://raw.github.com/ndmitchell/hlint/master/misc/travis.sh | sh -s hunit-dejafu - curl -sL https://raw.github.com/ndmitchell/hlint/master/misc/travis.sh | sh -s tasty-dejafu - echo -en 'travis_fold:end:script.hlint\\r' - echo '# test' && echo -en 'travis_fold:start:script.stack-exec\\r' - stack exec -- dejafu-tests --plain - echo -en 'travis_fold:end:script.stack-exec\\r'