on master help sign in
sync travis config with packcheck and enable GHCJS build
479f934Harendra Kumar
.travis.yml+88−57
@@ -1,6 +1,9 @@
1+# packcheck-0.4.0
1# You can use any of the options supported by packcheck as environment
2# You can use any of the options supported by packcheck as environment
2# variables here. See https://github.com/harendra-kumar/packcheck for all
3# variables here. See https://github.com/harendra-kumar/packcheck for all
3# options and their explanation.
4# options and their explanation.
5+# dist: trusty
6+dist: xenial
4env:
7env:
5 # ------------------------------------------------------------------------
8 # ------------------------------------------------------------------------
6 # Global options, you can use these per build as well
9 # Global options, you can use these per build as well
@@ -20,6 +23,7 @@ env:
20 # - DISABLE_BENCH=y
23 # - DISABLE_BENCH=y
21 # - DISABLE_DOCS=y
24 # - DISABLE_DOCS=y
22 # - DISABLE_SDIST_BUILD=y
25 # - DISABLE_SDIST_BUILD=y
26+ # - DISABLE_DIST_CHECKS=y
23 - ENABLE_INSTALL=y
27 - ENABLE_INSTALL=y
24
28
25 # ------------------------------------------------------------------------
29 # ------------------------------------------------------------------------
@@ -55,7 +59,7 @@ env:
55 # If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
59 # If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
56 # then it is automatically pulled from this URL.
60 # then it is automatically pulled from this URL.
57 - PACKCHECK_GITHUB_URL="https://raw.githubusercontent.com/harendra-kumar/packcheck"
61 - PACKCHECK_GITHUB_URL="https://raw.githubusercontent.com/harendra-kumar/packcheck"
58− - PACKCHECK_GITHUB_COMMIT="279b98d8243181b0f6ef1dd8b9a472cb6a6b53ec"
62+ - PACKCHECK_GITHUB_COMMIT="82878e1fdc2a575719cf405c84f283c6368a4b7a"
59
63
60notifications:
64notifications:
61 email:
65 email:
@@ -73,87 +77,109 @@ matrix:
73 include:
77 include:
74
78
75 # --------------------------------------------------------------------------
79 # --------------------------------------------------------------------------
76− # (Linux) stack builds (BUILD=stack). Some common envvars for stack builds
80+ # (Linux) cabal builds (BUILD=cabal, BUILD=cabal-new). Common envvars are:
77− # are: STACK_YAML, STACK_OPTIONS, STACK_BUILD_OPTIONS
81+ # CABAL_CONFIGURE_OPTIONS (cabal), CABAL_NEWBUILD_OPTIONS (cabal-new)
78 # --------------------------------------------------------------------------
82 # --------------------------------------------------------------------------
79
83
80− # For 7.10.3 we disable -Werror because of some bogus SPECIALIZE pragma
84+ # Using stack builds, cabal builds get terminated because the tests
81− # warnings.
85+ # take more than 10 minutes and it does not produce any output until the end.
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
86
85− # Disable warnings because COMPLETE pragma is not available in this GHC
87+ #- env: BUILD=cabal-new GHCVER=head
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]}}
88+ # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
89
89
90− # Use cabal-install-1.24 for stack solver to work
90+ - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 GHC_OPTIONS="" STACK_BUILD_OPTIONS="--flag streamly:streamk"
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]}}
91+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
95
92
96− # Use cabal-install-1.24 for stack solver to work
93+ - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
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]}}
94+ addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3,libsdl1.2-dev], sources: [hvr-ghc]}}
99
95
100− # You can keep a STACK_YAML file at any path location
96+ #- env: BUILD=cabal-new GHCVER=8.6.3
101− #- env: BUILD=stack STACK_YAML=.ci/stack-8.0.yaml
97+ # addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
102
98
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]}}
105
101
106− # --------------------------------------------------------------------------
102+ #- env: BUILD=cabal-new GHCVER=8.4.4
107− # (Linux) cabal builds (BUILD=cabal, BUILD=cabal-new). Common envvars are:
103+ # addons: {apt: {packages: [cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
108− # CABAL_CONFIGURE_OPTIONS (cabal), CABAL_NEWBUILD_OPTIONS (cabal-new)
104+
109− # --------------------------------------------------------------------------
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]}}
110
110
111 #- env: BUILD=cabal GHCVER=7.10.3
111 #- env: BUILD=cabal GHCVER=7.10.3
112 # addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3], sources: [hvr-ghc]}}
112 # addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3], sources: [hvr-ghc]}}
113
113
114+ # You can specify build flags like this:
114− #- env: BUILD=cabal-new GHCVER=8.0.2
115+ #- env: BUILD=cabal-new CABAL_NEWBUILD_OPTIONS="--flags=dev"
115− # addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2], sources: [hvr-ghc]}}
116+ # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
116
117
117− # Disabled by default as we have a cabal ghc-8.2.2 build for OSX
118+ # --------------------------------------------------------------------------
118− #- env: BUILD=cabal-new GHCVER=8.2.2
119+ # GHCJS cabal builds
119− # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
120+ # --------------------------------------------------------------------------
120
121
121− # Using stack builds, cabal builds get terminated because the tests
122+ # Use CABAL_NEWBUILD_OPTIONS to pass any options to cabal e.g. project-file
122− # take more than 10 minutes and it does not produce any output until the end.
123+ - env: BUILD=cabal-new ENABLE_GHCJS=y CABAL_NEWBUILD_OPTIONS="" DISABLE_DOCS=y ENABLE_INSTALL= DISABLE_SDIST_BUILD=y
123− - env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4.4
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'
124− addons: {apt: {packages: [cabal-install-2.4,ghc-8.4.4], sources: [hvr-ghc]}}
131+ packages: [cabal-install-2.4,ghcjs-8.4]
125
132
126− - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 GHC_OPTIONS="" STACK_BUILD_OPTIONS="--flag streamly:streamk"
133+ # --------------------------------------------------------------------------
127− addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3], sources: [hvr-ghc]}}
134+ # (Linux) stack builds (BUILD=stack). Some common envvars for stack builds
135+ # are: STACK_YAML, STACK_OPTIONS, STACK_BUILD_OPTIONS
136+ # --------------------------------------------------------------------------
128
137
138+ # Using cabal-install-1.24 for stack solver to work
129− - env: BUILD=stack RESOLVER=lts-13 GHCVER=8.6.3 STACK_BUILD_OPTIONS="--flag streamly:examples-sdl"
139+ #- env: BUILD=stack RESOLVER=nightly
130− addons: {apt: {packages: [cabal-install-2.4,ghc-8.6.3,libsdl1.2-dev], sources: [hvr-ghc]}}
140+ # addons: {apt: {packages: [cabal-install-1.24], sources: [hvr-ghc]}}
131
141
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
133 # addons: {apt: {packages: [cabal-install-2.4], sources: [hvr-ghc]}}
144 # 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
138
145
139− #- env: BUILD=cabal-new GHCVER=head GHC_OPTIONS=""
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"
140− # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
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
141
168
142 # You can specify build flags like this:
169 # You can specify build flags like this:
143− #- env: BUILD=cabal-new CABAL_NEWBUILD_OPTIONS="--flags=dev"
170+ #- env: BUILD=stack RESOLVER=lts-12 STACK_BUILD_OPTIONS="--flag packcheck:dev"
144− # addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}}
145
171
146 # --------------------------------------------------------------------------
172 # --------------------------------------------------------------------------
147 # OS X builds
173 # OS X builds
148 # --------------------------------------------------------------------------
174 # --------------------------------------------------------------------------
149
175
150− # GHC 8.6/cabal build using stack!
176+ # GHC 8.6 cabal build using stack!
151 # On OSX autoreconf is not installed therefore disable sdist build
177 # On OSX autoreconf is not installed therefore disable sdist build
152 - env: BUILD=cabal-new RESOLVER=lts-13 GHCVER=8.6 GHC_OPTIONS="" DISABLE_SDIST_BUILD=y
178 - env: BUILD=cabal-new RESOLVER=lts-13 GHCVER=8.6 GHC_OPTIONS="" DISABLE_SDIST_BUILD=y
153 os: osx
179 os: osx
154
180
155− # GHC 8.2.2/stack
181+ # GHC 8.4/stack
156− #- env: BUILD=stack RESOLVER=lts-11 GHCVER=8.2.2
182+ #- env: BUILD=stack RESOLVER=lts-12 GHCVER=8.4
157 # os: osx
183 # os: osx
158
184
159 # --------------------------------------------------------------------------
185 # --------------------------------------------------------------------------
@@ -163,12 +189,17 @@ matrix:
163 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
189 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
164
190
165 # --------------------------------------------------------------------------
191 # --------------------------------------------------------------------------
166− # Build and send coverage report to coveralls.io using hpc-coveralls
192+ # Build and send coverage report to coveralls.io using hpc-coveralls. Add
167− # Works only with BUILD=cabal; add your project to coveralls.io first
168− # For available options see hpc-coveralls docs.
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.
169 # --------------------------------------------------------------------------
200 # --------------------------------------------------------------------------
170
201
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"
172 # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
203 # addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2], sources: [hvr-ghc]}}
173
204
174 # --------------------------------------------------------------------------
205 # --------------------------------------------------------------------------
@@ -176,8 +207,8 @@ matrix:
176 # --------------------------------------------------------------------------
207 # --------------------------------------------------------------------------
177
208
178 allow_failures:
209 allow_failures:
179− - env: BUILD=stack RESOLVER=nightly DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y
180 - env: BUILD=cabal-new GHCVER=head GHC_OPTIONS=""
210 - env: BUILD=cabal-new GHCVER=head GHC_OPTIONS=""
211+ - env: BUILD=stack RESOLVER=nightly DISABLE_SDIST_BUILD=y DISABLE_DIST_CHECKS=y
181 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
212 - env: BUILD=stack RESOLVER=lts-13 HLINT_COMMANDS="hlint lint ."
182
213
183# ------------------------------------------------------------------------
214# ------------------------------------------------------------------------