on master help sign in
Update and refactor
6194cc1Harendra Kumar
.circleci/config.yml+23−8
@@ -58,8 +58,8 @@ env: &env
58 PACKCHECK: "./packcheck.sh"
58 PACKCHECK: "./packcheck.sh"
59 # If you have not committed packcheck.sh in your repo at PACKCHECK
59 # If you have not committed packcheck.sh in your repo at PACKCHECK
60 # then it is automatically pulled from this URL.
60 # then it is automatically pulled from this URL.
61− PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/harendra-kumar/packcheck"
61+ PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/composewell/packcheck"
62− PACKCHECK_GITHUB_COMMIT: "563702bd02c41343dcd3dfcfef0845ca428a9240"
62+ PACKCHECK_GITHUB_COMMIT: "8c77f80fd3a9df7307d06256c11a9e31d066475e"
63
63
64executors:
64executors:
65 amd64-executor:
65 amd64-executor:
@@ -106,10 +106,6 @@ preinstall: &preinstall
106
106
107project-preinstall: &project-preinstall
107project-preinstall: &project-preinstall
108 run: |
108 run: |
109− # If a custom stack-yaml is specified, replace the default with that
110− if test -e "$STACK_YAML"; then rm -f stack.yaml && ln -sv $STACK_YAML stack.yaml; else true; fi
111− unset STACK_YAML
112−
113 # Get packcheck if needed
109 # Get packcheck if needed
114 CURL=$(which curl)
110 CURL=$(which curl)
115 PACKCHECK_URL=${PACKCHECK_GITHUB_URL}/${PACKCHECK_GITHUB_COMMIT}/packcheck.sh
111 PACKCHECK_URL=${PACKCHECK_GITHUB_URL}/${PACKCHECK_GITHUB_COMMIT}/packcheck.sh
@@ -140,6 +136,24 @@ save: &save
140#-----------------------------------------------------------------------------
136#-----------------------------------------------------------------------------
141
137
142jobs:
138jobs:
139+ cabal-ghc-8_10_4:
140+ <<: *env
141+ executor: amd64-executor
142+ steps:
143+ - *preinstall
144+ - checkout
145+ - *project-preinstall
146+ - *restore
147+ - run:
148+ environment:
149+ DISABLE_TEST: "yes"
150+ DISABLE_BENCH: "yes"
151+ DISABLE_DIST_CHECKS: "yes"
152+ command: |
153+ apt-get install -y ghc-8.10.4
154+ apt-get install -y cabal-install-3.4
155+ bash -c "$PACKCHECK cabal"
156+ - *save
143 stack-ghc-8_8:
157 stack-ghc-8_8:
144 <<: *env
158 <<: *env
145 executor: amd64-executor
159 executor: amd64-executor
@@ -211,7 +225,6 @@ jobs:
211 command: |
225 command: |
212 apt-get install -y ghc-8.2.2
226 apt-get install -y ghc-8.2.2
213 apt-get install -y cabal-install-3.2
227 apt-get install -y cabal-install-3.2
214− apt-get install libtinfo-dev
215 bash -c "$PACKCHECK $BUILD"
228 bash -c "$PACKCHECK $BUILD"
216 - *save
229 - *save
217 cabal-ghc-8_0_2:
230 cabal-ghc-8_0_2:
@@ -350,7 +363,7 @@ jobs:
350 apt-get install -y cabal-install-3.2
363 apt-get install -y cabal-install-3.2
351 # Run tests with coverage
364 # Run tests with coverage
352 cabal update
365 cabal update
353− cabal user-config update -a "jobs: 2"
366+ cabal user-config update -a "jobs: 1"
354 bin/test.sh --coverage --raw
367 bin/test.sh --coverage --raw
355 # Upload results to coveralls.io
368 # Upload results to coveralls.io
356 PATH=$HOME/.cabal/bin:$PATH
369 PATH=$HOME/.cabal/bin:$PATH
@@ -381,6 +394,8 @@ workflows:
381 version: 2
394 version: 2
382 build:
395 build:
383 jobs:
396 jobs:
397+ - cabal-ghc-8_10_4:
398+ name: GHC 8.10.4 + sdist
384 #- cabal-ghc-8.6.5
399 #- cabal-ghc-8.6.5
385 #- cabal-ghc-8_4_4:
400 #- cabal-ghc-8_4_4:
386 # name: GHC 8.4.4 + x86 + debug
401 # name: GHC 8.4.4 + x86 + debug
.github/workflows/haskell.yml+21−19
@@ -22,8 +22,8 @@ jobs:
22 CABAL_HACKAGE_MIRROR: hackage.haskell.org:http://hackage.fpcomplete.com
22 CABAL_HACKAGE_MIRROR: hackage.haskell.org:http://hackage.fpcomplete.com
23
23
24 PACKCHECK_LOCAL_PATH: "./packcheck.sh"
24 PACKCHECK_LOCAL_PATH: "./packcheck.sh"
25− PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/harendra-kumar/packcheck"
25+ PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/composewell/packcheck"
26− PACKCHECK_GITHUB_COMMIT: "563702bd02c41343dcd3dfcfef0845ca428a9240"
26+ PACKCHECK_GITHUB_COMMIT: "8c77f80fd3a9df7307d06256c11a9e31d066475e"
27
27
28 BUILD: ${{ matrix.build }}
28 BUILD: ${{ matrix.build }}
29 GHCVER: ${{ matrix.ghc_version }}
29 GHCVER: ${{ matrix.ghc_version }}
@@ -31,8 +31,10 @@ jobs:
31 CABAL_BUILD_OPTIONS: ${{ matrix.cabal_build_options }} --flag limit-build-mem
31 CABAL_BUILD_OPTIONS: ${{ matrix.cabal_build_options }} --flag limit-build-mem
32 CABAL_BUILD_TARGETS: ${{ matrix.cabal_build_targets }}
32 CABAL_BUILD_TARGETS: ${{ matrix.cabal_build_targets }}
33 CABAL_PROJECT: ${{ matrix.cabal_project }}
33 CABAL_PROJECT: ${{ matrix.cabal_project }}
34+ STACK_YAML: ${{ matrix.stack_yaml }}
34 STACK_BUILD_OPTIONS: ${{ matrix.stack_build_options }}
35 STACK_BUILD_OPTIONS: ${{ matrix.stack_build_options }}
35 DISABLE_DOCS: ${{ matrix.disable_docs }}
36 DISABLE_DOCS: ${{ matrix.disable_docs }}
37+ DISABLE_TEST: ${{ matrix.disable_test }}
36 SDIST_OPTIONS: ${{ matrix.sdist_options }}
38 SDIST_OPTIONS: ${{ matrix.sdist_options }}
37 DISABLE_SDIST_BUILD: ${{ matrix.disable_sdist_build }}
39 DISABLE_SDIST_BUILD: ${{ matrix.disable_sdist_build }}
38 DISABLE_DIST_CHECKS: ${{ matrix.disable_dist_checks }}
40 DISABLE_DIST_CHECKS: ${{ matrix.disable_dist_checks }}
@@ -41,7 +43,7 @@ jobs:
41 strategy:
43 strategy:
42 fail-fast: false
44 fail-fast: false
43 matrix:
45 matrix:
44− name: [9.0.1, 8.10.4+stack+lts-17.8, 8.10.2+macOS, 8.8.3+inspection+fusion-plugin+Werror, 8.8.4+stack+lts-16.31, 8.6.5+fusion-plugin, 8.6.5+streamk, 8.4.4+debug, doctests]
46+ name: [9.0.1, 8.10.4+stack+nightly-2021-06-10, 8.10.4+macOS, 8.8.4+inspection+fusion-plugin+Werror, 8.8.4, 8.6.5+fusion-plugin, 8.6.5+streamk, 8.4.4+debug, doctests]
45 cabal_version: ["3.4"]
47 cabal_version: ["3.4"]
46 include:
48 include:
47 - name: 9.0.1
49 - name: 9.0.1
@@ -50,37 +52,40 @@ jobs:
50 cabal_build_options: "--allow-newer=hsc2hs"
52 cabal_build_options: "--allow-newer=hsc2hs"
51 disable_sdist_build: "y"
53 disable_sdist_build: "y"
52 runner: ubuntu-latest
54 runner: ubuntu-latest
53− - name: 8.10.4+stack+lts-17.8
55+ - name: 8.10.4+stack+nightly-2021-06-10
54 build: stack
56 build: stack
55− resolver: lts-17.8
57+ resolver: nightly-2021-06-10
58+ stack_yaml: stack.yaml
56 sdist_options: "--ignore-check"
59 sdist_options: "--ignore-check"
57 stack_build_options: "--flag streamly-benchmarks:-opt"
60 stack_build_options: "--flag streamly-benchmarks:-opt"
58 runner: ubuntu-latest
61 runner: ubuntu-latest
59− - name: 8.10.2+macOS
62+ - name: 8.10.4+macOS
60− ghc_version: 8.10.2
63+ ghc_version: 8.10.4
61 build: cabal-v2
64 build: cabal-v2
62 disable_sdist_build: "y"
65 disable_sdist_build: "y"
63 runner: macos-latest
66 runner: macos-latest
64− - name: 8.8.3+inspection+fusion-plugin+Werror
67+ - name: 8.8.4+inspection+fusion-plugin+Werror
65− ghc_version: 8.8.3
68+ ghc_version: 8.8.4
66 build: cabal-v2
69 build: cabal-v2
67 cabal_project: cabal.project.ci
70 cabal_project: cabal.project.ci
68 cabal_build_options: "--flag fusion-plugin --flag inspection"
71 cabal_build_options: "--flag fusion-plugin --flag inspection"
69 runner: ubuntu-latest
72 runner: ubuntu-latest
70− - name: 8.8.4+stack+lts-16.31
73+ - name: 8.8.4
74+ ghc_version: 8.8.4
71− build: stack
75+ build: cabal
72− resolver: lts-16.31
76+ cabal_project: cabal.project
73− sdist_options: "--ignore-check"
77+ cabal_build_options: "--flag -opt"
74− stack_build_options: "--flag streamly-benchmarks:-opt"
75 runner: ubuntu-latest
78 runner: ubuntu-latest
76 - name: 8.6.5+streamk
79 - name: 8.6.5+streamk
77 ghc_version: 8.6.5
80 ghc_version: 8.6.5
78 build: cabal-v2
81 build: cabal-v2
82+ cabal_project: cabal.project
79 cabal_build_options: "--flag streamk --flag -opt"
83 cabal_build_options: "--flag streamk --flag -opt"
80 runner: ubuntu-latest
84 runner: ubuntu-latest
81 - name: 8.6.5+fusion-plugin
85 - name: 8.6.5+fusion-plugin
82 ghc_version: 8.6.5
86 ghc_version: 8.6.5
83 build: cabal-v2
87 build: cabal-v2
88+ cabal_project: cabal.project
84 cabal_build_options: "--flag fusion-plugin"
89 cabal_build_options: "--flag fusion-plugin"
85 # haddock generation does not work with 8.6.5+fusion-plugin
90 # haddock generation does not work with 8.6.5+fusion-plugin
86 disable_docs: "y"
91 disable_docs: "y"
@@ -88,14 +93,15 @@ jobs:
88 - name: 8.4.4+debug
93 - name: 8.4.4+debug
89 ghc_version: 8.4.4
94 ghc_version: 8.4.4
90 build: cabal-v2
95 build: cabal-v2
96+ cabal_project: cabal.project
91 cabal_build_options: "--flag debug --flag -opt"
97 cabal_build_options: "--flag debug --flag -opt"
92 runner: ubuntu-latest
98 runner: ubuntu-latest
93 - name: doctests
99 - name: doctests
94 ghc_version: 8.8.3
100 ghc_version: 8.8.3
95 build: cabal-v2
101 build: cabal-v2
96 cabal_build_options: "--flag doctests"
102 cabal_build_options: "--flag doctests"
97− disable_dist_checks: "y"
98 cabal_build_targets: doctests
103 cabal_build_targets: doctests
104+ disable_sdist_build: "y"
99 runner: ubuntu-latest
105 runner: ubuntu-latest
100
106
101 steps:
107 steps:
@@ -114,10 +120,6 @@ jobs:
114
120
115 - name: Download packcheck
121 - name: Download packcheck
116 run: |
122 run: |
117− # If a custom stack-yaml is specified, replace the default with that
118− if test -e "$STACK_YAML"; then rm -f stack.yaml && ln -sv $STACK_YAML stack.yaml; else true; fi
119− unset STACK_YAML
120−
121 # Get packcheck if needed
123 # Get packcheck if needed
122 CURL=$(which curl)
124 CURL=$(which curl)
123 PACKCHECK_URL=${PACKCHECK_GITHUB_URL}/${PACKCHECK_GITHUB_COMMIT}/packcheck.sh
125 PACKCHECK_URL=${PACKCHECK_GITHUB_URL}/${PACKCHECK_GITHUB_COMMIT}/packcheck.sh
.packcheck.ignore+3
@@ -1,4 +1,7 @@
1.packcheck.ignore
1.packcheck.ignore
2+cabal.project
3+cabal.project.ci
2cabal.project.coverage
4cabal.project.coverage
3cabal.project.hpc-coveralls
5cabal.project.hpc-coveralls
4hie.yaml
6hie.yaml
7+stack.yaml
appveyor.yml+2−2
@@ -63,8 +63,8 @@ environment:
63 PACKCHECK_LOCAL_PATH: "./packcheck.sh"
63 PACKCHECK_LOCAL_PATH: "./packcheck.sh"
64 # If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
64 # If you have not committed packcheck.sh in your repo at PACKCHECK_LOCAL_PATH
65 # then it is automatically pulled from this URL.
65 # then it is automatically pulled from this URL.
66− PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/harendra-kumar/packcheck"
66+ PACKCHECK_GITHUB_URL: "https://raw.githubusercontent.com/composewell/packcheck"
67− PACKCHECK_GITHUB_COMMIT: "563702bd02c41343dcd3dfcfef0845ca428a9240"
67+ PACKCHECK_GITHUB_COMMIT: "8c77f80fd3a9df7307d06256c11a9e31d066475e"
68
68
69 # Override the temp directory to avoid sed escaping issues
69 # Override the temp directory to avoid sed escaping issues
70 # See https://github.com/haskell/cabal/issues/5386
70 # See https://github.com/haskell/cabal/issues/5386
streamly.cabal−3
@@ -84,8 +84,6 @@ extra-source-files:
84 bin/mk-tags.sh
84 bin/mk-tags.sh
85 bin/targets.sh
85 bin/targets.sh
86 bin/test.sh
86 bin/test.sh
87− cabal.project
88− cabal.project.ci
89 charts-0/streamly-vs-list-time.svg
87 charts-0/streamly-vs-list-time.svg
90 configure
88 configure
91 configure.ac
89 configure.ac
@@ -137,7 +135,6 @@ extra-source-files:
137 test/lib/Streamly/Test/Prelude/Common.hs
135 test/lib/Streamly/Test/Prelude/Common.hs
138 test/streamly-tests.cabal
136 test/streamly-tests.cabal
139 test/version-bounds.hs
137 test/version-bounds.hs
140− stack.yaml
141
138
142extra-tmp-files:
139extra-tmp-files:
143 config.log
140 config.log