@@ -1,6 +1,9 @@
1+# packcheck-0.4.0
12# You can use any of the options supported by packcheck as environment
23# variables here. See https://github.com/harendra-kumar/packcheck for all
34# options and their explanation.
5+# dist: trusty
6+dist: xenial
47env:
58 # ------------------------------------------------------------------------
69 # Global options, you can use these per build as well
@@ -20,6 +23,7 @@ env:
2023 # - DISABLE_BENCH=y
2124 # - DISABLE_DOCS=y
2225 # - DISABLE_SDIST_BUILD=y
26+ # - DISABLE_DIST_CHECKS=y
2327 - ENABLE_INSTALL=y
2428
2529 # ------------------------------------------------------------------------
@@ -55,7 +59,7 @@ env:
5559 # If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
5660 # then it is automatically pulled from this URL.
5761 - PACKCHECK_GITHUB_URL="https://raw.githubusercontent.com/harendra-kumar/packcheck"
58− - PACKCHECK_GITHUB_COMMIT="279b98d8243181b0f6ef1dd8b9a472cb6a6b53ec"
62+ - PACKCHECK_GITHUB_COMMIT="82878e1fdc2a575719cf405c84f283c6368a4b7a"
5963
6064notifications:
6165 email:
@@ -73,87 +77,109 @@ matrix:
7377 include:
7478
7579 # --------------------------------------------------------------------------
76− # (Linux) stack builds (BUILD=stack). Some common envvars for stack builds
77− # are: STACK_YAML, STACK_OPTIONS, STACK_BUILD_OPTIONS
80+ # (Linux) cabal builds (BUILD=cabal, BUILD=cabal-new). Common envvars are:
81+ # CABAL_CONFIGURE_OPTIONS (cabal), CABAL_NEWBUILD_OPTIONS (cabal-new)
7882 # --------------------------------------------------------------------------
7983
80− # For 7.10.3 we disable -Werror because of some bogus SPECIALIZE pragma
81− # warnings.
82− - env: BUILD=stack RESOLVER=lts-6 GHCVER=7.10.3 GHC_OPTIONS="" STACK_YAML=stack-7.10.yaml DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
83− addons: {apt: {packages: [cabal-install-2.4,libsdl1.2-dev], sources: [hvr-ghc]}}
84+ # Using stack builds, cabal builds get terminated because the tests
85+ # take more than 10 minutes and it does not produce any output until the end.
8486
85− # Disable warnings because COMPLETE pragma is not available in this GHC
86− # version
87− - env: BUILD=stack RESOLVER=lts-9 GHCVER=8.0.2 GHC_OPTIONS="" STACK_YAML=stack-8.0.yaml DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
88− addons: {apt: {packages: [cabal-install-2.4,libsdl1.2-dev], sources: [hvr-ghc]}}
87+ #- env: BUILD=cabal-new GHCVER=head
88+ # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
8989
90− # Use cabal-install-1.24 for stack solver to work
91− # GHC-8.2.2 hogs memory leading to out-of-memory when compiling benchmarks
92− # So disable the benchmarks for this build.
93− - env: BUILD=stack GHCVER=8.2.2 RESOLVER=lts-11 GHC_OPTIONS="" DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y DISABLE_BENCH=y
94− addons: {apt: {packages: [cabal-install-2.4], sources: [hvr-ghc]}}
90+ - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 GHC_OPTIONS="" STACK_BUILD_OPTIONS="--flag streamly:streamk"
91+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
9592
96− # Use cabal-install-1.24 for stack solver to work
97− #- env: BUILD=stack RESOLVER=nightly DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y
98− # addons: {apt: {packages: [cabal-install-1.24], sources: [hvr-ghc]}}
93+ - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
94+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3,libsdl1.2-dev], sources: [hvr-ghc]}}
9995
100− # You can keep a STACK_YAML file at any path location
101− #- env: BUILD=stack STACK_YAML=.ci/stack-8.0.yaml
96+ #- env: BUILD=cabal-new GHCVER=8.6.3
97+ # addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
10298
103− # You can specify build flags like this:
104− #- env: BUILD=stack RESOLVER=lts-11 STACK_BUILD_OPTIONS="--flag packcheck:dev"
99+ - env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4.4
100+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
105101
106− # --------------------------------------------------------------------------
107− # (Linux) cabal builds (BUILD=cabal, BUILD=cabal-new). Common envvars are:
108− # CABAL_CONFIGURE_OPTIONS (cabal), CABAL_NEWBUILD_OPTIONS (cabal-new)
109− # --------------------------------------------------------------------------
102+ #- env: BUILD=cabal-new GHCVER=8.4.4
103+ # addons: {apt: {packages: [cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
104+
105+ #- env: BUILD=cabal-new GHCVER=8.2.2
106+ # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
107+
108+ #- env: BUILD=cabal GHCVER=8.0.2
109+ # addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2], sources: [hvr-ghc]}}
110110
111111 #- env: BUILD=cabal GHCVER=7.10.3
112112 # addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3], sources: [hvr-ghc]}}
113113
114− #- env: BUILD=cabal-new GHCVER=8.0.2
115− # addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2], sources: [hvr-ghc]}}
114+ # You can specify build flags like this:
115+ #- env: BUILD=cabal-new CABAL_NEWBUILD_OPTIONS="--flags=dev"
116+ # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
116117
117− # Disabled by default as we have a cabal ghc-8.2.2 build for OSX
118− #- env: BUILD=cabal-new GHCVER=8.2.2
119− # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
118+ # --------------------------------------------------------------------------
119+ # GHCJS cabal builds
120+ # --------------------------------------------------------------------------
120121
121− # Using stack builds, cabal builds get terminated because the tests
122− # take more than 10 minutes and it does not produce any output until the end.
123− - env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4.4
124− addons: {apt: {packages: [cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
122+ # Use CABAL_NEWBUILD_OPTIONS to pass any options to cabal e.g. project-file
123+ - env: BUILD=cabal-new ENABLE_GHCJS=y CABAL_NEWBUILD_OPTIONS="" DISABLE_DOCS=y ENABLE_INSTALL= DISABLE_SDIST_BUILD=y
124+ addons:
125+ apt:
126+ sources:
127+ - hvr-ghc
128+ - sourceline: 'ppa:hvr/ghcjs'
129+ - sourceline: 'deb https://deb.nodesource.com/node_11.x xenial main'
130+ key_url: 'https://deb.nodesource.com/gpgkey/nodesource.gpg.key'
131+ packages: [cabal-install-2.4,ghcjs-8.4]
125132
126− - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 GHC_OPTIONS="" STACK_BUILD_OPTIONS="--flag streamly:streamk"
127− addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
133+ # --------------------------------------------------------------------------
134+ # (Linux) stack builds (BUILD=stack). Some common envvars for stack builds
135+ # are: STACK_YAML, STACK_OPTIONS, STACK_BUILD_OPTIONS
136+ # --------------------------------------------------------------------------
128137
129− - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
130− addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3,libsdl1.2-dev], sources: [hvr-ghc]}}
138+ # Using cabal-install-1.24 for stack solver to work
139+ #- env: BUILD=stack RESOLVER=nightly
140+ # addons: {apt: {packages: [cabal-install-1.24], sources: [hvr-ghc]}}
131141
132− #- env: BUILD=cabal-new ENABLE_GHCJS=y GHC_OPTIONS="" CABAL_NEWBUILD_OPTIONS="--project-file cabal.project.ghcjs" DISABLE_DOCS=y DISABLE_TEST=y ENABLE_INSTALL= DISABLE_SDIST_BUILD=y
142+ # Use cabal-install-1.24 if you want stack solver to work
143+ #- env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6
133144 # addons: {apt: {packages: [cabal-install-2.4], sources: [hvr-ghc]}}
134− # before_install:
135− # - sudo add-apt-repository ppa:hvr/ghcjs -y
136− # - sudo apt-get update -q
137− # - sudo apt-get install ghcjs-8.4 -y
138145
139− #- env: BUILD=cabal-new GHCVER=head GHC_OPTIONS=""
140− # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
146+ # Use cabal-install-1.24 if you want stack solver to work
147+ #- env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4
148+ # addons: {apt: {packages: [cabal-install-2.4], sources: [hvr-ghc]}}
149+
150+ # Use cabal-install-1.24 for stack solver to work
151+ # GHC-8.2.2 hogs memory leading to out-of-memory when compiling benchmarks
152+ # So disable the benchmarks for this build.
153+ - env: BUILD=stack GHCVER=8.2.2 RESOLVER=lts-11 GHC_OPTIONS="" DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y DISABLE_BENCH=y
154+ addons: {apt: {packages: [cabal-install-2.4], sources: [hvr-ghc]}}
155+
156+ # Disable warnings because COMPLETE pragma is not available in this GHC
157+ # version
158+ - env: BUILD=stack RESOLVER=lts-9 GHCVER=8.0.2 GHC_OPTIONS="" STACK_YAML=stack-8.0.yaml DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
159+ addons: {apt: {packages: [cabal-install-2.4,libsdl1.2-dev], sources: [hvr-ghc]}}
160+
161+ # For 7.10.3 we disable -Werror because of some bogus SPECIALIZE pragma
162+ # warnings.
163+ - env: BUILD=stack RESOLVER=lts-6 GHCVER=7.10.3 GHC_OPTIONS="" STACK_YAML=stack-7.10.yaml DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
164+ addons: {apt: {packages: [cabal-install-2.4,libsdl1.2-dev], sources: [hvr-ghc]}}
165+
166+ # You can keep a STACK_YAML file at any path location
167+ #- env: BUILD=stack STACK_YAML=.ci/stack-8.0.yaml
141168
142169 # You can specify build flags like this:
143− #- env: BUILD=cabal-new CABAL_NEWBUILD_OPTIONS="--flags=dev"
144− # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
170+ #- env: BUILD=stack RESOLVER=lts-12 STACK_BUILD_OPTIONS="--flag packcheck:dev"
145171
146172 # --------------------------------------------------------------------------
147173 # OS X builds
148174 # --------------------------------------------------------------------------
149175
150− # GHC 8.6/cabal build using stack!
176+ # GHC 8.6 cabal build using stack!
151177 # On OSX autoreconf is not installed therefore disable sdist build
152178 - env: BUILD=cabal-new RESOLVER=lts-13 GHCVER=8.6 GHC_OPTIONS="" DISABLE_SDIST_BUILD=y
153179 os: osx
154180
155− # GHC 8.2.2/stack
156− #- env: BUILD=stack RESOLVER=lts-11 GHCVER=8.2.2
181+ # GHC 8.4/stack
182+ #- env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4
157183 # os: osx
158184
159185 # --------------------------------------------------------------------------
@@ -163,12 +189,17 @@ matrix:
163189 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
164190
165191 # --------------------------------------------------------------------------
166− # Build and send coverage report to coveralls.io using hpc-coveralls
167− # Works only with BUILD=cabal; add your project to coveralls.io first
168− # For available options see hpc-coveralls docs.
192+ # Build and send coverage report to coveralls.io using hpc-coveralls. Add
193+ # your project to coveralls.io first, for available options see hpc-coveralls
194+ # docs. CAVEATS:
195+ # * Works only with BUILD=cabal
196+ # * Does not work for multi-package repos
197+ # * hpc-coveralls does not build with Cabal-2.2/GHC-8.4.3. The workaround is
198+ # to have a prebuilt hpc-coveralls binary installed on the build machine
199+ # and then you can use any version of ghc.
169200 # --------------------------------------------------------------------------
170201
171− #- env: BUILD=cabal COVERALLS_OPTIONS="--coverage-mode=StrictlyFullLines --exclude-dir=test test properties loops nested-loops parallel-loops" DISABLE_SDIST_BUILD=y DISABLE_BENCH=y DISABLE_DOCS=y
202+ #- env: BUILD=cabal COVERALLS_OPTIONS="--coverage-mode=StrictlyFullLines --exclude-dir=test test"
172203 # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
173204
174205 # --------------------------------------------------------------------------
@@ -176,8 +207,8 @@ matrix:
176207 # --------------------------------------------------------------------------
177208
178209 allow_failures:
179− - env: BUILD=stack RESOLVER=nightly DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y
180210 - env: BUILD=cabal-new GHCVER=head GHC_OPTIONS=""
211+ - env: BUILD=stack RESOLVER=nightly DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y
181212 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
182213
183214# ------------------------------------------------------------------------