on master help sign in
.dockerignore+2
since splitsnapshots
unifiedsplit
@@ -6,3 +6,5 @@ cabal.sandbox.config
6tarballs
6tarballs
7*.yaml
7*.yaml
8.git
8.git
9+automated
10+.github
.github/PULL_REQUEST_TEMPLATE.mdnew file+22
@@ -0,0 +1,22 @@
1+Checklist:
2+- [ ] Meaningful commit message, eg `add my-cool-package` (please don't mention `build-constraints.yml`)
3+- [ ] At least 30 minutes have passed since uploading to Hackage
4+- [ ] On your own machine, you have successfully run the following command (find verify-package in the root of this repo):
5+
6+ ./verify-package $package # or $package-$version
7+
8+The script runs virtually the following commands in a clean directory:
9+
10+ stack unpack $package-$version # `-$version` is optional
11+ cd $package-$version
12+ rm -f stack.yaml && stack init --resolver nightly --ignore-subdirs
13+ stack build --resolver nightly --haddock --test --bench --no-run-benchmarks
14+
15+
16+### CI
17+
18+Our CI tries to line up build-constraints.yaml with the current state
19+of Hackage. This means that failures that are unrelated to your PR may
20+cause the check to fail. If you think a failure is unrelated you can
21+simply ignore it and the Curators will let you know if there is
22+anything you need to do.
.github/workflows/check.ymlnew file+21
@@ -0,0 +1,21 @@
1+name: check
2+on:
3+ push:
4+ branches: [ master ]
5+ pull_request:
6+ branches: [ master ]
7+jobs:
8+ build:
9+ runs-on: ubuntu-latest
10+ name: Stackage check
11+ steps:
12+ - uses: actions/checkout@v2
13+ - uses: actions/cache@v2
14+ with:
15+ path: |
16+ ~/.stack
17+ ~/.stackage/curator/cache
18+ key: ${{ runner.os }}-stackage-nightly-${{ hashFiles('**/build-constraints.yaml') }}
19+ restore-keys: |
20+ ${{ runner.os }}-
21+ - run: etc/check.sh
.github/workflows/image.ymlnew file+26
@@ -0,0 +1,26 @@
1+name: image
2+
3+on:
4+ push:
5+ branches:
6+ - nightly
7+ - lts18
8+
9+jobs:
10+ push:
11+ runs-on: ubuntu-latest
12+ if: github.event_name == 'push'
13+
14+ steps:
15+ - uses: actions/checkout@v2
16+
17+ - name: Log into Github registry
18+ run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login docker.pkg.github.com -u ${{ github.actor }} --password-stdin
19+
20+ - name: Build image
21+ run: |
22+ IMAGE_ID=docker.pkg.github.com/${{ github.repository }}/build:${GITHUB_REF#refs/heads/}
23+ #IMAGE_ID=${{ github.repository }}:${GITHUB_REF#refs/heads/}
24+ docker build . -f Dockerfile --tag $IMAGE_ID
25+ docker push $IMAGE_ID
26+ echo Pushed new build image $IMAGE_ID
.gitignore+4
@@ -4,3 +4,7 @@ nightly-*.yaml
4lts-*.yaml
4lts-*.yaml
5*.swp
5*.swp
6check-plan.yaml
6check-plan.yaml
7+*~
8+/constraints.yaml
9+/snapshot.yaml
10+/snapshot-incomplete.yaml
.travis.ymldeleted−40
@@ -1,40 +0,0 @@
1−# Use new container infrastructure to enable caching
2−sudo: false
3−
4−# Choose a lightweight base image; we provide our own build tools.
5−language: c
6−
7−# GHC depends on GMP. You can add other dependencies here as well.
8−addons:
9− apt:
10− packages:
11− - libgmp-dev
12−
13−env:
14−- GHCVER=8.0.1
15−
16−install:
17− # Download and unpack the stack executable
18− - mkdir -p ~/.local/bin
19− - export PATH=$HOME/.local/bin:$PATH
20− - travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
21−
22− # Get stackage-curator
23− - wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
24− - bunzip2 stackage-curator.bz2
25− - chmod +x stackage-curator
26− - mv stackage-curator ~/.local/bin
27−
28− # Install GHC and cabal-install
29− - stack setup $GHCVER
30−
31− # Update the index
32− - travis_retry stack update
33−
34−script:
35− - stack --resolver ghc-$GHCVER exec stackage-curator check
36−
37−cache:
38− directories:
39− - $HOME/.stack
40− - $HOME/.stackage/curator/cache
CODE_OF_CONDUCT.mdnew file+3
@@ -0,0 +1,3 @@
1+We use the [Haskell Foundation's Guidelines For Respectful
2+Communication](https://haskell.foundation/guidelines-for-respectful-communication/)
3+as our Code of Conduct.
CURATORS.md+491−51
@@ -1,32 +1,62 @@
1This is a collection of instructions covering the processes that the Stackage curators - the
1This is a collection of instructions covering the processes that the Stackage curators - the
2−guys who maintain the Stackage project itself - should be doing on a regular basis.
2+team who maintain the Stackage project itself - should be doing on a regular basis.
3−Originally this was handled largely by Michael Snoyman,
4−but now we are a team of 4 people handling requests weekly in rotation.
5Curation activities are mostly automated, and do not take up a significant amount of time.
3Curation activities are mostly automated, and do not take up a significant amount of time.
4+The following is the current list of curators, in alphabetical order:
6
5
6+* Adam Bergmark (@bergmark)
7+* Alexey Zabelin (@alexeyzab)
8+* Chris Dornan (@cdornan)
9+* Dan Burton (@danburton)
10+* Jens Petersen (@juhp)
11+* Joe Kachmar (@jkachmar)
12+* Michael Snoyman (@snoyberg)
13+* Mihai Maruseac (@mihaimaruseac)
14+
7−## Workflow
15+## Workflow overview
8
16
9This section sketches out at a high level how the entire Stackage build/curation
17This section sketches out at a high level how the entire Stackage build/curation
10process works:
18process works:
11
19
12−* [build-constraints.yaml](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) specifies packages to be included in Stackage
20+* [build-constraints.yaml](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml) specifies packages to be included in Stackage
13−* [stackage-curator](http://www.stackage.org/package/stackage-curator) combines build-constraints.yaml with the current state of Hackage to create a build plan for a Stackage Nightly
21+* [curator](https://github.com/commercialhaskell/curator) combines build-constraints.yaml with the current state of Hackage to create a build plan for a Stackage Nightly
14−* stackage-curator can check that build plan to ensure all version bounds are consistent
22+* `curator` can check that build plan to ensure all version bounds are consistent
15− * The [Travis job](https://github.com/fpco/stackage/blob/master/.travis.yml) performs these two steps to provide immediate feedback on pull requests
23+ * The [Travis job](https://github.com/commercialhaskell/stackage/blob/master/.travis.yml) performs these two steps to provide immediate feedback on pull requests
16−* Docker Hub [builds](https://github.com/fpco/stackage/blob/master/Dockerfile) a [Docker image](https://registry.hub.docker.com/u/snoyberg/stackage/) for running builds
24+* Docker Hub [builds](https://github.com/commercialhaskell/stackage/blob/master/Dockerfile) a [Docker image](https://hub.docker.com/r/commercialhaskell/stackage/) for running builds
17−* The stackage-build server (described below) is able to run automated builds using the [build.sh script](https://github.com/fpco/stackage/blob/master/automated/build.sh)
25+* The stackage-build server (described below) is able to run automated builds using the [build.sh script](https://github.com/commercialhaskell/stackage/blob/master/automated/build.sh)
18−* When a new Nightly build is completed, it is uploaded to [the nightly repo](https://github.com/fpco/stackage-nightly)
26+* When a new Nightly build is completed, it is uploaded to [the nightly repo](https://github.com/commercialhaskell/stackage-nightly)
19−* Once a week, we run an LTS minor bump. Instead of using build-constraints.yaml, that job takes the previous LTS release, turns it into constraints, and then bumps the version numbers to the latest on Hackage, in accordance with the version bounds in the build plan. This plans are uploaded to [the LTS repo](https://github.com/fpco/lts-haskell)
27+* Once a week, we run an LTS minor bump. Instead of using build-constraints.yaml, that job takes the previous LTS release, turns it into constraints, and then bumps the version numbers to the latest on Hackage, in accordance with the version bounds in the build plan. This plans are uploaded to [the LTS repo](https://github.com/commercialhaskell/lts-haskell)
20* Cutting a new LTS major release is essentially just a Stackage Nightly that gets rebuilt and uploaded as an LTS
28* Cutting a new LTS major release is essentially just a Stackage Nightly that gets rebuilt and uploaded as an LTS
21
29
22## Pull requests
30## Pull requests
23
31
24The typical story on pull requests is: If Travis accepts it and the
32The typical story on pull requests is: If Travis accepts it and the
25author only added packages under his/her own name, merge it. If the
33author only added packages under his/her own name, merge it. If the
26−build later fails (see below), then block the package until it's
34+build later fails (see [Adding Debian packages]), then block the
27−fixed.
35+package until it's fixed.
36+
37+[Adding Debian packages]: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md#adding-debian-packages-for-required-system-tools-or-libraries
38+
39+If benchmarks, haddocks, or test suites fails at this point we
40+typically also block the package until these issues are fixed. This in
41+order to add packages with a clean slate.
28
42
29Optionally we can check if packdeps says the package is up to date.
43Optionally we can check if packdeps says the package is up to date.
44+Visit http://packdeps.haskellers.com/feed?needle=<package-name>
45+
46+Builds may fail because of unrelated bounds changes. If this happens,
47+first add any version bounds to get master into a passing state (see
48+"Fixing bounds issues"), then re-run the travis build.
49+
50+A common issue is that authors submit newly uploaded packages, it can
51+take up to an hour before this has synced across the stack
52+infrastructure. You can usually compare the versions of the package in
53+https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/
54+to what's on hackage to see if this is the case. Wait an hour and
55+re-run the pull request.
56+
57+Tests also commonly fail due to missing test files, and sometimes due
58+to doctest limitations. You can point the maintainer to
59+https://github.com/bergmark/blog/blob/master/2016/package-faq.md
30
60
31## Fixing bounds issues
61## Fixing bounds issues
32
62
@@ -36,29 +66,171 @@ issue on the Stackage repo about the problem, and modifying the
36build-constraints.yaml file to work around it in one of the ways below. Be sure
66build-constraints.yaml file to work around it in one of the ways below. Be sure
37to refer to the issue for workarounds added to that file.
67to refer to the issue for workarounds added to that file.
38
68
69+### Temporary upper bounds
70+
39−* __Temporary upper bounds__ Most common technique, just prevent a new version of a library from being included immediately
71+Most common technique, just prevent a new version of a library from
40−* __Skipping tests and benchmarks__ If the upper bound is only in a test suite or benchmark, you can add the relevant package to skipped-tests or skipped-benchmarks. For example, if conduit had an upper bound on criterion for a benchmark, you could added conduit as a skipped benchmark.
72+being included immediately. This also applies to when only benchmarks
73+and tests are affected.
74+
75+* Copy the `curator` output and create a new issue, see e.g
76+https://github.com/commercialhaskell/stackage/issues/2108
77+
78+* Add a new entry under the "stackage upper bounds" section of `build-constraints.yaml`. For the above example it would be
79+
80+```yaml
81+ "Stackage upper bounds":
82+ # https://github.com/commercialhaskell/stackage/issues/2108
83+ - pipes < 4.3.0
84+```
85+
86+* Commit (message e.g. "Upper bound for #2108")
87+* Optionally: Verify with `./check` locally
88+* Push
89+* Verify that everything works on the build server (you can restart the build or wait for it to to run again)
90+
91+Sometimes releases for different packages are tightly coupled. Then it
92+can make sense to combine them into one issue, as in
93+https://github.com/commercialhaskell/stackage/issues/2143.
94+
95+If a dependency that is not explicitly in stackage is causing test or
96+benchmark failures you can skip or expect them to fail (see "Skipping
97+tests and benchmarks" and "Expecting test/benchmark/haddock
98+failures"). Bonus points for reporting this upstream to that packages'
99+maintainer.
100+
101+### Lifting upper bounds
102+
103+You can try this when you notice that a package has been updated. You
104+can also periodically try to lift bounds (I think it's good to do this
105+at the start of your week /@bergmark)
106+
107+If not all packages have been updated check if any of them are missing
108+from the original issue and if so add a new comment mentioning them. A
109+new package may appear if its dependencies were part of this issue but
110+have been updated since the last time we checked. We want to give
111+these new packages ample time to be upgraded.
112+
113+If `curator` is happy commit the change ("Remove upper bounds
114+and close #X"). After doing this the next nightly build may fail
115+because some packages didn't have an upper bound in place, but
116+compilation failed. In this case revert the previous commit so any
117+disabled packages are enabled again, re-open the issue, and add a new
118+comment with the failing packages. This is to give all maintainers
119+enough time to upgrade for this case as well.
120+
121+### Amending upper bounds
122+
123+With the `pipes` example above there was later a new release of
124+`pipes-safe` that required the **newer** version of `pipes`. You can
125+add that package to the same upper bounds section,
126+(e.g. https://github.com/commercialhaskell/stackage/commit/6429b1eb14db3f2a0779813ef2927085fa4ad673)
127+as we want to lift them simultaneously.
128+
129+### Skipping tests and benchmarks
130+
131+Sometimes tests and benchmark dependencies are forgotten or not cared
132+for. To disable compilation for them add them to `skipped-tests` or
133+`skipped-benchmarks`. If a package is added to these sections they
134+won't be compiled, and their dependencies won't be taken into account.
135+
136+There are sub sections under these headers that is used to group types
137+of failures together, and also to document what type of failures
138+exist.
139+
140+### Expecting test/benchmark/haddock failures
141+
142+The difference from the `skipped` sections is that items listed here
143+are compiled and their dependencies are taken into account
144+(but they are allowed to fail to build).
145+These sections also have subsections with groups and descriptions.
146+
147+One big category of test suites in this section are those requiring
148+running services. We don't want to run those, but we do want to check
149+dependencies and compile them.
150+
151+If there are no version bounds that would fix the issue or if you
152+can't figure it out, file it
153+(e.g. https://github.com/commercialhaskell/stackage/issues/2133) to ask the
154+maintainer for help.
155+
156+### Waiting for new releases
157+
158+Sometimes there is a failure reported on a (now possibly closed) issue
159+on an external tracker. If an issue gets resolved but there is no
160+hackage release yet we'd like to get notified when it's uploaded.
161+
162+Add the package with its current version to the
163+`tell-me-when-its-released` section. This will cause the build to stop
164+when the new version is out.
165+
166+### Excluding packages
167+
41−* __Excluding packages__ In an extreme case of a non-responsive maintainer, you can remove the package entirely from Stackage. We try to avoid that whenever possible
168+In an extreme case of a non-responsive maintainer, you can remove the
169+package entirely from Stackage. We try to avoid that whenever
170+possible.
171+
172+This typically happens when we move to a new major GHC release or when
173+there are only a few packages waiting for updates on an upper bounds
174+issue.
175+
176+If a package needs to be disabled due to build failures: Add a `< 0`
177+bound to the package to exclude it, and add a comment stating why it
178+was disabled: `- swagger < 0 # compile failure againts aeson 1.0`
179+
180+If a package needs to be disabled due to bounds issues, see the "Large
181+scale enabling/disabling of packages" section below.
182+
183+If this causes reverse dependencies to be disabled we should notify
184+the maintainers of those packages.
185+
42
186
43## Updating the content of the Docker image used for building
187## Updating the content of the Docker image used for building
44
188
45### Adding Debian packages for required system tools or libraries
189### Adding Debian packages for required system tools or libraries
46Additional (non-Haskell) system libraries or tools should be added to `stackage/debian-bootstrap.sh`.
190Additional (non-Haskell) system libraries or tools should be added to `stackage/debian-bootstrap.sh`.
47−Committing the changes to a branch should trigger a DockerHub. Normally only the nightly branch needs to be updated
191+After you've committed those changes, merging them into the `nightly` branch should
48−since new packages are not added to the current lts release.
192+trigger a DockerHub build. Simply run:
193+
194+```bash
195+ $ git checkout nightly
196+ $ git merge master
197+ $ git push
198+```
49
199
50Use [Ubuntu Package content search](http://packages.ubuntu.com/) to determine which package provides particular dev files (it defaults to xenial which is the version used to build Nightly).
200Use [Ubuntu Package content search](http://packages.ubuntu.com/) to determine which package provides particular dev files (it defaults to xenial which is the version used to build Nightly).
51
201
52−Note we generally don't install/run services needed for testsuites in the docker images - packages with tests requiring some system service can be add to expected-test-failures.
202+Note that we generally don't install/run services needed for testsuites in the docker images - packages with tests requiring some system service can be added to `expected-test-failures`.
203+It's good to inform the maintainer of any disabled tests (commenting in the PR is sufficient).
204+
205+If a new package fails to build because of missing system libraries we often ask the maintainer to help figure out what to install.
53
206
54### Upgrading GHC version
207### Upgrading GHC version
55The Dockerfile contains information on which GHC versions should be used. You
208The Dockerfile contains information on which GHC versions should be used. You
56−can modify it and push it to Github to trigger a DockerHub build. The nightly
209+can modify it and push it to Github to trigger a build. The nightly
57branch is used for nightlies. For LTSes, we use the ltsX branch, where X is the
210branch is used for nightlies. For LTSes, we use the ltsX branch, where X is the
58major version number (e.g., lts3 for lts-3.\*).
211major version number (e.g., lts3 for lts-3.\*).
59
212
213+Update the `Win32` version in `build-constraints.yaml` under "GHC upper bounds".
214+
60−Note that when starting a new LTS major release, you'll need to modify Docker
215+Note that when starting a new LTS major release, you'll need to modify `.github/workflows/image.yml` to add a new lts branch.
61−Hub to create a new Docker tag for the relevant branch name.
216+
217+Update `GHCVER` in `Dockerfile`. (This env var automatically gets passed to `debian-bootstrap.sh`.)
218+
219+Ensure that the [global-hints.yaml
220+file](https://github.com/fpco/stackage-content/blob/master/stack/global-hints.yaml)
221+is updated with information on the latest GHC release by cloning that
222+repo and running `./update-global-hints.hs ghc-X.Y.Z`.
223+
224+If enountering an error like the following, this means that the Stack metadata
225+has not yet been updated, so wait some time until this happens:
226+
227+```
228+This probably means a GHC bindist has not yet been added for OS key 'linux64', 'linux64-ncurses6', 'linux64-tinfo6'.
229+Supported versions: ...
230+update-global-hints.hs: Received ExitFailure 1 when running
231+```
232+
233+Also required to build an LTS minor bump with a ghc version change: On the build server, modify `/var/stackage/stackage/automated/work/lts-$THIS_LTS_MAJOR_VER/constraints.yaml` and update the ghc-version. (You may need to update sibling files as well.) Then run `NOPLAN=1 /var/stackage/stackage/automated/build.sh lts-$THIS_LTS_MINOR_BUMP` to build the LTS.
62
234
63### Getting the new image to the build server
235### Getting the new image to the build server
64Once a new Docker image is available, you'll need to pull it onto the stackage-build server (see
236Once a new Docker image is available, you'll need to pull it onto the stackage-build server (see
@@ -70,15 +242,41 @@ docker rm $(docker ps -a -q)
70docker rmi $(docker images -q)
242docker rmi $(docker images -q)
71```
243```
72
244
73−but `docker pull snoyberg/stackage:nightly` can also be run instead just to update the nightly image say.
245+but `docker pull ghcr.io/commercialhaskell/stackage/build:nightly` can also be run instead just to update the nightly image say.
246+
247+For a new GHC version you should also delete the ~~cache~~ .stack-work snapshot install directories on the stackage-build server to
248+~~force all packages to be rebuilt~~ clear up some space. See: [issue#746](https://github.com/commercialhaskell/stackage/issues/746). Eg:
74
249
75−For a new GHC version you should also delete the cache directories on the stackage-build server to
76−force all packages to be rebuilt. See: [issue#746](https://github.com/fpco/stackage/issues/746). Eg:
77```
250```
78−rm -r nightly/work/builds/nightly/
251+# for example
252+SNAP_SERIES=nightly # or lts16
253+OLD_GHCVER=8.10.1
254+rm -r work/$SNAP_SERIES/unpack-dir/.stack-work/install/x86_64-linux/*/$OLD_GHCVER/
79```
255```
80This should also be done when moving the Nightly docker image to a new version of Ubuntu.
256This should also be done when moving the Nightly docker image to a new version of Ubuntu.
81
257
258+If you're impatient and would like to build the Docker image on the
259+build server instead of waiting for Docker Hub, you can run the
260+following command (replacing `BRANCH=nightly` if the image for a different branch is desired):
261+
262+```
263+BRANCH=nightly
264+DIR=$(mktemp -d)
265+(cd $DIR \
266+ && git clone https://github.com/commercialhaskell/stackage \
267+ && cd stackage \
268+ && git checkout $BRANCH \
269+ && docker build --tag commercialhaskell/stackage:$BRANCH .)
270+rm -rf $DIR
271+```
272+
273+Note that we do a clean clone of the `stackage` repo instead of using
274+the existing checkout because of how `docker build` works: it will
275+send the entire local directory contents as context to the Docker
276+daemon, which in the case of the build tree is a _lot_ of content. (We
277+can discuss the wisdom&mdash;or lack thereof&mdash;of Docker's
278+approach separately.)
279+
82## stackage-build server
280## stackage-build server
83
281
84You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
282You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
@@ -86,7 +284,7 @@ You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
86```
284```
87Host stackage-build
285Host stackage-build
88 User curators
286 User curators
89− Hostname ec2-52-5-20-252.compute-1.amazonaws.com
287+ Hostname build.stackage.org
90```
288```
91
289
92### Running the build script
290### Running the build script
@@ -97,42 +295,51 @@ we're just not there yet.
97
295
98```
296```
99# Run a nightly build
297# Run a nightly build
100−/opt/stackage-build/stackage/automated/run-nightly.sh
298+/var/stackage/stackage/automated/run-nightly.sh
101
299
102# Run an LTS minor bump
300# Run an LTS minor bump
103−/opt/stackage-build/stackage/automated/build.sh lts-2.17
301+/var/stackage/stackage/automated/build.sh lts-15.1
104
302
105# Run an LTS major bump
303# Run an LTS major bump
106−/opt/stackage-build/stackage/automated/build.sh lts-3.0
304+/var/stackage/stackage/automated/build.sh lts-16.0
107```
305```
108
306
109−Recommended: run these from inside a `screen` session. If you get version bound
307+Recommended: run these from inside a `tmux` session. If you get version bound
110problems on nightly or LTS major, you need to fix build-constraints.yaml (see
308problems on nightly or LTS major, you need to fix build-constraints.yaml (see
111−info above). For an LTS minor bump, you'll typically want to use the
309+info above).
112−`CONSTRAINTS` environment variable, e.g.:
113
310
114−```
311+### Building LTS minor releases
115−CONSTRAINTS='--constraint "conduit < 1.4.5" --constraint "criterion < 1.2.3"' /opt/stackage-build/stackage/automated/build.sh lts-2.17
312+Before running the build, please make sure that the Dockerfile in `automated/dockerfiles/lts-X.Y` is up to date, where X is the major version that you're building and Y is the latest minor version of X for which a Dockerfile exists.
116−```
313+ * If any changes need to be made, (eg, new GHC version), copy `automated/lts-X.Y/Dockerfile` to `automated/lts-X.Z/Dockerfile`, where Z is the minor version you're building, and include the new changes.
314+ * If you are building the first release of a new LTS major version, create a new `lts-X.Z/Dockerfile` based on the previous LTS's, and adjust the variables at the top to match the requirements of the snapshot. Ensure that `STACK_VERSION` is the latest release of Stack, and `BOOTSTRAP_COMMIT` is the commit ID of this repo containing the version of the `bootstrap-commit.sh` used to build the snapshot. Also ensure the FROM image's Ubuntu version matches that used in the [root Dockerfile](Dockerfile) used to build this snapshot.
315+
316+First run `build.sh` to regenerate updated `ltsXX/work/constraints.yaml` and `ltsXX/work/snapshot-incomplete.yaml` files.
117
317
118−Valid arguments to include in this environment variable:
318+For an LTS minor bump, you'll typically want to:
119
319
120−* `--constraint` to modify an upper or lower bound
320+* Add constraints to package `range:` fields _under_ the `source:` field in that `constraints.yaml` (should not be necessary normally to edit `snapshot-incomplete.yaml` to change the version used for that package).
121−* `--add-package` to add a brand new package
321+* Add new packages to the `constraints.yaml` file
122−* `--expect-test-failure` to expect tests to fail
322+* Test, benchmark, haddock failures can also be added to package fields in the `constraints.yaml` if necessary, though it should be avoided if possible for LTS.
123−* `--expect-haddock-failure` to expect haddocks to fail
323+
324+Then run `NOPLAN=1 build.sh` to build the generate an updated snapshot.
124
325
125If a build fails for bounds reasons, see all of the advice above. If the code
326If a build fails for bounds reasons, see all of the advice above. If the code
126itself doesn't build, or tests fail, open up an issue and then either put in a
327itself doesn't build, or tests fail, open up an issue and then either put in a
127version bound to avoid that version or something else. It's difficult to give
328version bound to avoid that version or something else. It's difficult to give
128universal advice on how to solve things, since each situation is unique. Let's
329universal advice on how to solve things, since each situation is unique. Let's
129−develop this advice over time. For now: if you're not sure, ask Michael for
330+develop this advice over time. For now: if you're not sure, ask for guidance.
130−guidance.
131
331
132__`NOPLAN=1`__ If you wish to rerun a build without recalculating a
332__`NOPLAN=1`__ If you wish to rerun a build without recalculating a
133build plan, you can set the environment variable `NOPLAN=1`. This is
333build plan, you can set the environment variable `NOPLAN=1`. This is
134useful for such cases as an intermittent test failure, out of memory
334useful for such cases as an intermittent test failure, out of memory
135−condition, or manually tweaking the plan file.
335+condition, or manually tweaking the plan file. (When using `NOPLAN=1`,
336+if one needs to revert one package, say due to a build or test regression,
337+one can edit `current-plan.yaml` and updated the SHA256 hash of the .cabal file,
338+to avoid having to rebuild everything again.)
339+
340+Note LTS builds without NOPLAN will use the latest Hackage data.
341+
342+If you need to make further modifications beyond what `constraints.yaml` allows, you can directly edit the `snapshot-incomplete.yaml` file. Then, instead of `NOPLAN=1 build.sh`, you need to use `NOPLAN=2 build.sh`. Note that from this point on, further changes to `constraints.yaml` will not impact the build plan.
136
343
137### Timing
344### Timing
138
345
@@ -141,14 +348,247 @@ with `sleep 30m` interleaved. It only publishes the nightly once per
141day. This way new package versions or build failures can be caught
348day. This way new package versions or build failures can be caught
142early and hopefully the nightlies will be timely.
349early and hopefully the nightlies will be timely.
143
350
144−LTS minor bumps typically are run on Sundays.
351+LTS minor bumps are typically run on weekends. It can be a good idea
352+to start the build on friday or saturday to have enough time to
353+resolve any issues before the next curator shift the coming monday.
145
354
146−### Website sync debugging (and other out of disk space errors)
355+### Diskspace errors (and website sync debugging)
147
356
148−* You can detect the problem by running `df`. If you see that `/` is out of space, we have a problem
357+* You can detect the problem by running `df`. If you see that `/` is out of space, we have a problem.
149−* There are many temp files inside `/home/ubuntu/stackage-server-cron` that can be cleared out occasionally
358+* If you see that `/var/stackage/` is out of space, you can:
150−* You can then manually run `/home/ubuntu/stackage-server-cron.sh`, or wait for the cron job to do it
359+ * run `./etc/diskspace/clean-old-stack-libs.sh [nightly|lts-XX]`
360+ * If that is insufficient then remove all the old builds under the previous ghc/Cabal version:
361+ * `rm -r /var/stackage/stackage/automated/work/[nightly|lts-XX]/unpack-dir/unpacked/*/.stack-work/dist/x86_64-linux/Cabal-X.Y.0.0/`
362+
363+ optionally (not recommended?):
364+ * `rm -r /var/stackage/stackage/automated/work/lts*/unpack-dir/unpacked/`
365+ * `rm -r /var/stackage/stackage/automated/work/nightly/unpack-dir/unpacked/`
151
366
152### Wiping the cache
367### Wiping the cache
153
368
154−Sometimes the cache can get corrupted which might manifest as `can't load .so/.DLL`. You can wipe the nightly cache and rebuild everything by doing `rm -rf /opt/stackage-build/stackage/automated/nightly`.
369+Sometimes the cache can get corrupted which might manifest as `can't load .so/.DLL`.
370+You can wipe the nightly cache and rebuild everything by doing
371+`rm -rf /var/stackage/stackage/automated/nightly`.
372+Replace nightly with `lts7` to wipe the LTS 7 cache.
373+
374+### Force a single package rebuild
375+
376+You can force a single package to rebuild by deleting its "previous result"
377+file, e.g.:
378+
379+```
380+$ rm /var/stackage/stackage/automated/nightly/work/builds/nightly/prevres/Build/cryptohash-0.11.9
381+```
382+
383+### Restarting docker
384+
385+If docker hangs with e.g. `docker: Error response from daemon:
386+connection error: desc = "transport: dial unix
387+/var/run/docker/containerd/docker-containerd .sock: connect:
388+connection refused".` you can restart it with `sudo systemctl restart
389+docker.service`.
390+
391+## Local curator setup
392+
393+We do not run the full stackage build locally as that might take too
394+much time. However, some steps on the other hand are much faster to do
395+yourself, e.g. verifying constraints without building anything.
396+
397+To get started, install `curator` via Git:
398+
399+```
400+$ git clone git@github.com:commercialhaskell/curator.git
401+$ cd curator && stack install curator
402+```
403+
404+It is a good idea to upgrade `curator` at the start of your week.
405+Then, clone the stackage repo, get the latest packages and run dependency
406+resolution:
407+
408+```
409+$ git clone git@github.com:commercialhaskell/stackage.git
410+$ cd stackage
411+$ ./check
412+```
413+
414+This can be used to make sure all version bounds are in place, including for
415+test suites and benchmarks, to check whether bounds can be lifted, and to get
416+[tell-me-when-its-released] notifications.
417+
418+`curator` does not build anything, so you wont see any compilation
419+errors for builds, tests and benchmarks.
420+
421+[tell-me-when-its-released]: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md#waiting-for-new-releases
422+
423+### Large scale enabling/disabling of packages
424+
425+`etc/commenter` is a binary that automates `build-constraints.yaml` workflows.
426+
427+#### Setup
428+This is currently a rust program, You can install the rust toolchain
429+by using [rustup](https://rustup.rs/).
430+
431+For some commands you also need etc/commenter/latest-version installed.
432+```
433+stack install --stack-yaml etc/commenter/latest-version/stack.yaml
434+```
435+
436+#### Example usage
437+
438+After disabling a few packages you get this curator output:
439+
440+```
441+ConfigFile (GHC 9 bounds issues, @maintainer) (not present) depended on by:
442+- [ ] xdg-desktop-entry-0.1.1.1 (-any). @maintainer. Used by: library
443+
444+
445+pipes-misc (GHC 9 bounds issues, @maintainer) (not present) depended on by:
446+- [ ] pipes-fluid-0.6.0.1 (>=0.5). @handles. Used by: test-suite
447+
448+
449+testing-feat (GHC 9 bounds issues, Grandfathered dependencies) (not present) depended on by:
450+- [ ] dual-tree-0.2.3.0 (-any). Grandfathered dependencies. @handles. Used by: test-suite
451+```
452+
453+Now run:
454+```
455+./check 2>&1 >/dev/null | ./commenter add
456+```
457+
458+You will get this output:
459+```
460+[INFO] ...
461+LIBS + EXES
462+
463+ - xdg-desktop-entry < 0 # tried xdg-desktop-entry-0.1.1.1, but its *library* requires the disabled package: ConfigFile
464+
465+TESTS
466+
467+ - dual-tree # tried dual-tree-0.2.3.0, but its *test-suite* requires the disabled package: testing-feat
468+ - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
469+
470+Adding 1 libs, 2 tests, 0 benches to build-constraints.yaml
471+```
472+
473+These bounds are added to build-constraints.yaml automatically.
474+
475+Re-run this command until no more packages are disabled.
476+
477+#### Re-enabling
478+
479+We can periodically remove all packages under the bounds sections and then re-run the disabling flow above until we get a clean plan. This will automatically pick up packages that have been fixed.
480+
481+```
482+./commenter clear
483+./check 2>&1 >/dev/null | ./commenter add
484+```
485+
486+Repeat the second command until no updates are made to build-constraints.yaml.
487+
488+#### Checking for new releases
489+
490+Run `stack update` before doing this.
491+
492+`./commenter outdated` looks through all bounds issues and library
493+compilation failures and compares the marked version with the latest hackage release. Example output is
494+
495+```
496+Fin mismatch, manual: 0.2.8.0, hackage: 0.2.9.0
497+aeson mismatch, auto: 1.5.6.0, hackage: 2.0.2.0
498+```
499+
500+where "manual" means the bound was added manually by a curator,
501+perhaps due to a compilation failure so we could try re-enabling the
502+package. "auto" means it's part of the sections generated by
503+`./commenter`, to update that run the `Re-enabling` step as documented
504+above.
505+
506+`outdated` only finds packages that are in the auto generated
507+sections, or that are of the form `- package < 0 # $version`.
508+
509+#### Notes
510+
511+* Please make sure to separate bounds issues from compilation failures/test run failures, as we cannot verify that a package builds or that tests pass without running the build!
512+
513+#### Diffing snapshots / Inspecting changes
514+
515+To diff existing snapshots, or to evaluate changes before they end up
516+in a snapshot you can run:
517+
518+```
519+./commenter diff-snapshot <old-snapshot.yaml> <new-snapshot.yaml>
520+```
521+
522+Existing snapshots can be retrieved from https://github.com/commercialhaskell/stackage-snapshots. Preliminary snapshots can be generated by running relevant parts of `automated/build.sh`, at the time of writing:
523+
524+```
525+TARGET=nightly-2021-01-14 \ # the date doesn't matter
526+ curator update && \
527+ curator constraints --target $TARGET && \
528+ curator snapshot-incomplete --target $TARGET && \
529+ curator snapshot
530+```
531+
532+#### Finding disabled packages with lots of dependents
533+
534+`./commenter disabled` prints the number of transitive dependents a disabled package has. Low hanging fruit to get a lot of packages included again.
535+
536+Example output:
537+```
538+[...]
539+stringable is disabled with 10 dependents
540+llvm-hs is disabled with 12 dependents
541+th-data-compat is disabled with 12 dependents
542+amazonka-core is disabled with 96 dependents
543+gogol-core is disabled with 96 dependents
544+```
545+
546+## Adding new curators
547+
548+1. Add public ssh key to `~/.ssh/authorized_keys` on build server
549+2. Add to commercialhaskell/stackage project.
550+
551+## Dealing with a new GHC release
552+
553+As mentioned in the [GHC upgrade note], the major impact of a new GHC release
554+is on the packages that are causing upper bounds to be put in place. In order
555+to minimise out-of-date breakage and allow maintainers to have a solid chance
556+of getting their packages into the newest LTS, we try to do the following:
557+
558+Make an early announcement (in the form of a blog post, typically) of the new
559+GHC release on the nightly build and the planned deadline for the new LTS release.
560+Make it clear, that in the time coming up to this, we hope package maintainers
561+will upgrade their packages to allow for the new GHC release.
562+
563+We prefer to prune packages causing upper bounds constraints **after** the LTS
564+release to allow the maximum amount of packages to get into the newest LTS.
565+
566+You will almost always need to update the Win32 package version listed in the
567+build-constraints.yaml file.
568+
569+After the first LTS release, the package pruning process may begin in the
570+nightly build in order to move forward with getting the latest versions of
571+packages compatible with the new GHC release.
572+
573+[GHC upgrade note]: https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md#upgrading-to-a-new-ghc-version
574+
575+## New LTS major bump
576+
577+Every 3-6 months, we make a new major release of LTS. The procedure we follow for this is:
578+
579+1. Write a blog post on stackage.org announcing the intent to cut a major
580+ release. Give an estimated date two weeks in the future from the publication
581+ date of the post.
582+2. Spread the blog post on social media and mailing lists as much as possible.
583+3. Expect maintainers to send significant requests for added packages and
584+ relaxed upper bounds. There will likely be some hard decisions to be made
585+ regarding relaxing a bound versus keeping more packages. All of these changes
586+ occur on master and affect nightly.
587+4. Once the estimated date hits, push a new `ltsXX` and wait for the docker image build.
588+5. Run the build procedure for the new LTS release.
589+6. After the LTS build completes, more aggressively prune upper bounds from
590+ `build-constraints.yaml`.
591+7. Once both (5) and (6) are done, publish a new blog post on stackage.org
592+ announcing the new LTS and Nightly, with links to the change pages on
593+ stackage.org. Include a reminder that requests for packages to be added to LTS
594+ may be made on commercialhaskell/lts-haskell.
DATA-FLOW.md+4−4
@@ -15,7 +15,7 @@ There are three inputs into the data flow:
15 Hackage provides both cabal file metadata (via the 00-index.tar file) and
15 Hackage provides both cabal file metadata (via the 00-index.tar file) and
16 tarballs of the individual packages.
16 tarballs of the individual packages.
17
17
18−* [build-constraints.yaml](https://github.com/fpco/stackage/blob/master/build-constraints.yaml)
18+* [build-constraints.yaml](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml)
19 is the primary Stackage input file. This is where package maintainers can add
19 is the primary Stackage input file. This is where package maintainers can add
20 packages to the Stackage package set. This also defines upper bounds, skipped
20 packages to the Stackage package set. This also defines upper bounds, skipped
21 tests, and a few other pieces of metadata.
21 tests, and a few other pieces of metadata.
@@ -26,7 +26,7 @@ There are three inputs into the data flow:
26## Travis
26## Travis
27
27
28For [various
28For [various
29−reasons](https://www.fpcomplete.com/blog/2015/05/distributing-packages-without-sysadmin),
29+reasons](https://tech.fpcomplete.com/blog/2015/05/distributing-packages-without-sysadmin),
30we leverage Travis CI for running some processes. In particular:
30we leverage Travis CI for running some processes. In particular:
31
31
32* [all-cabal-files](https://github.com/commercialhaskell/all-cabal-files/blob/hackage/.travis.yml)
32* [all-cabal-files](https://github.com/commercialhaskell/all-cabal-files/blob/hackage/.travis.yml)
@@ -60,7 +60,7 @@ The heart of running Stackage builds is the
60[stackage-curator](https://github.com/fpco/stackage-curator) tool. We run this
60[stackage-curator](https://github.com/fpco/stackage-curator) tool. We run this
61on a daily basis on the Stackage build server for Stackage Nightly, and on a
61on a daily basis on the Stackage build server for Stackage Nightly, and on a
62weekly basis for LTS Haskell. The build process is [highly
62weekly basis for LTS Haskell. The build process is [highly
63−automated](https://github.com/fpco/stackage/blob/master/automated/build.sh) and
63+automated](https://github.com/commercialhaskell/stackage/blob/master/automated/build.sh) and
64leverages Docker quite a bit.
64leverages Docker quite a bit.
65
65
66stackage-curator needs to know about the most recent versions of all packages,
66stackage-curator needs to know about the most recent versions of all packages,
@@ -80,7 +80,7 @@ By combining these constraints with the current package data, stackage-curator
80can generate a build plan and check it. (As an aside, this build plan
80can generate a build plan and check it. (As an aside, this build plan
81generation and checking also occurs every time you make a pull request to the
81generation and checking also occurs every time you make a pull request to the
82stackage repo.) If there are version bounds problems, one of the [Stackage
82stackage repo.) If there are version bounds problems, one of the [Stackage
83−curators](https://github.com/fpco/stackage/blob/master/CURATORS.md) will open
83+curators](https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md) will open
84up a Github issue and will add upper bounds, temporarily block a package, or
84up a Github issue and will add upper bounds, temporarily block a package, or
85some other corrective action.
85some other corrective action.
86
86
Dockerfile+9−2
@@ -1,8 +1,15 @@
1−FROM ubuntu:16.04
1+FROM fpco/pid1:18.04
2
2
3ENV HOME /home/stackage
3ENV HOME /home/stackage
4ENV LANG en_US.UTF-8
4ENV LANG en_US.UTF-8
5+ENV GHCVER 9.0.2
6+
7+# NOTE: also update debian-bootstrap.sh when cuda version changes
5−ENV PATH /opt/ghc/8.0.1/bin:/usr/sbin:/usr/bin:/sbin:/bin
8+ENV PATH /home/stackage/.stack/programs/x86_64-linux/ghc-$GHCVER/bin:/usr/local/cuda-10.0/bin:/usr/sbin:/usr/bin:/sbin:/bin
9+ENV CUDA_PATH /usr/local/cuda-10.0
6
10
7ADD debian-bootstrap.sh /tmp/debian-bootstrap.sh
11ADD debian-bootstrap.sh /tmp/debian-bootstrap.sh
8RUN /tmp/debian-bootstrap.sh && rm /tmp/debian-bootstrap.sh
12RUN /tmp/debian-bootstrap.sh && rm /tmp/debian-bootstrap.sh
13+
14+# Include file path
15+ENV CPATH /usr/lib/jvm/java-8-openjdk-amd64/include:/usr/lib/jvm/java-8-openjdk-amd64/include/linux:/usr/lib/llvm-3.7/include
MAINTAINERS.md+209−48
@@ -2,81 +2,198 @@ This project is built around the concept of maintainers taking responsibility fo
2
2
3The idea behind Stackage is that, if all packages work with the newest versions of dependencies, we avoid dependency hell. Specifically, we aim for:
3The idea behind Stackage is that, if all packages work with the newest versions of dependencies, we avoid dependency hell. Specifically, we aim for:
4
4
5−* All packages are buildable and testable from Hackage. We recommend [the Stack Travis script](http://docs.haskellstack.org/en/stable/GUIDE.html#travis-with-caching), which ensures a package is not accidentally incomplete.
5+* All packages are buildable and testable from Hackage. We recommend [the Stack Travis script](https://docs.haskellstack.org/en/stable/travis_ci/), which ensures a package is not accidentally incomplete.
6* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
6* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
7−* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
7+* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
8+
9+Packages in Stackage are not patched: all package changes occur upstream in Hackage.
8
10
9## Adding a package
11## Adding a package
10
12
11Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
13Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
12
14
13−To add your package, first fork this repository.
14−In the [`build-constraints.yaml`](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) file, there's a section called `packages`.
15+To add your package you can edit [`build-constraints.yaml`](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) directly on github or fork the project. There's a section called `packages` where you would add yourself and your packages:
15−To add a set of packages, you would add:
16
16
17− "My Name myemail@example.com @mygithubuser":
17+ "My Name <myemail@example.com> @mygithubuser":
18 - package1
18 - package1
19 - package2
19 - package2
20 - package3
20 - package3
21
21
22−After doing that, send a pull request (with a commit message like "add foo-bar"). We do not require new submissions to be tested against the rest of Stackage before the pull request (though it is a good idea to do so if you can with `stack --resolver nightly exec stackage-curator check` and `stack --resolver nightly build`), provided you meet the dependency version requirements above. If your library depends on a C library, add a note to your pull request with the Ubuntu library name, or even better edit the `debian-bootstrap.sh` script directly
22+Any dependencies of your packages that are not already part of
23+stackage also need to be added explicitly (When this happens you will
24+see `not present` errors in the CI log). As mentioned above: If you
25+don't maintain this package yourself it is preferable that the actual
26+maintainer is also the stackage maintainer, but you are allowed to add
27+it under your own name.
23
28
24−If you want to make sure that the package builds against the newest versions of all dependecies you can do this:
29+If your package depends on a C library, please add it to the `debian-bootstrap.sh` script.
25−```
26−$ cabal update
27−$ ghc --version # Should give v8.0.1
28−$ cabal get PACKAGE-VERSION # e.g. aeson-0.11.2.1
29−$ cd PACKAGE-VERSION
30−$ cabal sandbox init # Should give "Creating a new sandbox" and not "Using an existing sandbox".
31−$ cabal install --enable-tests --enable-benchmarks --dry-run | grep latest # Should give no results
32−$ cabal install --enable-tests --enable-benchmarks --allow-newer
33−$ cabal test
34−```
35
30
36−**NB** Please use commit messages like "add foo-bar" or "add johndev's packages"
31+After doing that, commit with a message like "add foo-bar" and send a pull request.
37−(`build-constraints.yaml` is the most frequently changed file in this git repo
38−so commit messages like "update build-constraints.yaml" are not helpful).
39
32
40−**NB2** There can be a delay of up to an hour before package versions
33+The continuous integration job will do some checks to see if your package's dependencies are up-to-date.
41−newly uploaded to Hackage appear to our build server. If you just
42−uploaded a package to Hackage that you're trying to get included, we
43−recommend waiting an hour before opening the PR. You can verify this
44−by making sure the latest version is listed at
45−https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/.
46
34
47−## Uploading a new package
35+The CI job notably doesn't compile packages, run tests, build documentation, or find missing C libraries.
36+If you want to be proactive or if CI fails, you can make sure that your package builds against the latest nightly.
37+See the [verify-package](https://github.com/commercialhaskell/stackage/blob/master/verify-package) script in this repository.
48
38
49−When a new version of a package is uploaded to Hackage, we automatically try to include it in Stackage (unless the new version is considered experimental). That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and raise GitHub issue tickets to resolve the issue.
39+This approach works well, but has two limitations you should be aware
40+of:
50
41
51−If the new version doesn't compile then the package author should quickly (within 1 week) upload a fixed version.
42+* It won't notify you of restrictive upper bounds in your package if
43+ Stackage has the same upper bounds. For that reason, we recommend
44+ using [Packdeps](http://packdeps.haskellers.com/) (see "Following
45+ dependency upgrades" below). You can also run `cabal outdated`.
46+* If the latest Stackage Nightly is missing some of the latest
47+ packages, your build above may succeed whereas the Travis job may
48+ fail. Again: Packdeps will help you detect this situation.
52
49
53−If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
50+## Github and Notifications
51+
52+Stackage uses Github notifications to reduce overhead of contacting individual
53+package maintainers through various channels. As a package maintainer, you will
54+receive notifications for a number of reasons, package build failures of
55+different sorts, blockages and bounds issues, etc.
56+
57+Please note, Github does some throttling on the number people that can be
58+notified within one issue. This means that on issues created with a large
59+number of packages affected, maintainers may not receive a notification. This
60+is not ideal, but Stackage is largely a manual process and done on a best
61+effort basis.
62+
63+## Uploading a new package version
64+
65+When a new version of a package in Stackage is uploaded to Hackage, we automatically try to include it in Stackage. That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and open a GitHub issue ticket to resolve the issue.
66+
67+If the new version doesn't compile then the package author should upload a fixed version.
54
68
69+If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
55
70
56## Following dependency upgrades
71## Following dependency upgrades
57
72
58−If a new version of a dependency is released, and that stops your package compiling/passing the tests, then it is your responsibility to modify your package. It is highly recommended that all package maintainers follow the dependencies of their packages on [Packdeps](http://packdeps.haskellers.com/), typically using the RSS feeds.
73+If a new version of a dependency is released your package may fail to
74+build or tests may fail. In most cases we will add an upper bound on
75+the dependency so that your package remains in nightly. We'll also
76+create a github issue pinging you with the bounds issues or give build
77+logs showing failures. It's then up to you to modify your package.
78+
79+We recommend that you also follow the dependencies of your packages on
80+[Packdeps](http://packdeps.haskellers.com/) (typically using the RSS
81+feeds) as well as that often gives you notice ahead of stackage
82+issues. There are cases where we will not notice a new release of a
83+package because of other upper bounds that are in place.
84+
85+If a package is not updated in time, it may be temporarily removed
86+from Stackage by the curator team. We strive to notify you when this
87+happens. If it does you are always welcome to file another pull
88+request to add it back.
89+
90+We typically use fairly long windows before disabling packages, but it
91+is decided on a case-by-case basis.
92+
93+* If restrictive version bounds are the only problem, we will give
94+ maintainers at least a week to respond.
95+* If there are real breaking changes, the curator team will retain
96+ more discretion on how long a window to give before dropping
97+ packages.
98+* We typically drop upper bounds and disable conflicting packages in Nightly after we create
99+ a new Long Term Support (LTS) major version.
100+* There are rare cases where an upper bound or build failure are hard
101+ to deal with so then we may disable
102+
103+**NOTE** Previously we had stricter time limits, but we decided to
104+remove that: Anyone is free to add a package to Stackage regardless of
105+responsiveness guarantees. However, as stated above, we may elect to
106+temporarily remove a package if it is not updated in a timely manner.
107+
108+## Understanding stackage issues
109+
110+### Bounds issues
111+
112+These are the most common.
59
113
60−**If restrictive version bounds are the only problem** then you must quickly (within 1 week) upload a new version with relaxed version bounds. Note that unlike the PVP, Stackage does not require upper bounds.
114+Using https://github.com/commercialhaskell/stackage/issues/6217 as an example.
61
115
62−**If the new dependency causes breaking changes** then all package authors should quickly assess the likely impact on their package (within 1 week) and then produce a new compatible version. The expected timeline for new versions varies between 1 week and 1 month, depending on the significance of the change, and thus the work required to produce those new versions.
116+Our convention is to title a PR after the package that is being held
117+back from the nightly snapshot (here: aeson).
63
118
119+The issue body is templated and looks like this:
64
120
65−## Failing to meet the time limits
121+```
122+aeson-2.0.0.0 ([changelog](http://hackage.haskell.org/package/aeson-2.0.0.0/changelog)) (MAINTAINER) is out of bounds for:
123+- [ ] Agda-2.6.2 (>=1.1.2.0 && < 1.6). MAINTAINER. Used by: library
124+- [ ] HsYAML-aeson-0.2.0.0 (>=1.4.0.0 && < 1.6). MAINTAINER. Used by: library
125+- [ ] IPv6Addr-2.0.2 (>=0.8.0.2 && < 1.6). MAINTAINER. Used by: library
126+[...]
127+```
128+
129+This (usually - see "Other issues") means that there was a new release of the package in the
130+header (aeson). This is expected and the aeson maintainer is
131+not expected to act. They are pinged to notify them that the
132+latest version of their package will not be part of the nightly
133+snapshots until the issue closed.
134+
135+The list of packages with checkboxes denote the packages that prevent
136+us from using the latest version of aeson, the first version number is
137+the current version of that package in nightly (e.g. Agda 2.6.2). The
138+constraint in parenthesis `(>=1.1.2.0 && < 1.6)` is Agda's current
139+bound on `aeson`. To check this box we expect there to be an update
140+of Agda to support aeson 2.0.0.0.
141+
142+Once all boxes are checked we should be able to close the issue and
143+upgrade aeson.
144+
145+### Other issues
146+
147+Other common types of issues are
148+* Packages with failing tests, haddocks, or benchmarks (note that we only *compile* benchmarks)
149+ + Maintainers may choose to update these parts of their package, or
150+ to exclude them from the stackage build (e.g. adding a package to
151+ `skipped-tests`)
152+* New releases of packages that depend on packages that are not a part
153+ of stackage. This is denoted as `not present`
154+ + Maintainers are encouraged to ask the maintainer of these packages
155+ to join stackage, or to be the stackage contact person themselves.
156+* A new release of a package with stricter upper bounds than its previous version
157+ + This will look like a normal bounds issue, and should be treated
158+ the same way by maintainers. Curators usually resolve this by
159+ adding an upper bound to that package instead of its dependency.
160+
161+## Delays
162+
163+Maintainers are humans, humans get sick/have babies/go on
164+holiday. Sometimes a dependency upgrade is extra time consuming.
66
165
67−Maintainers are humans, humans get sick/have babies/go on holiday. If you have regular problems meeting the limits, find a co-maintainer. If you have a one-off problem, respond to the GitHub tickets saying so, and some kind soul might pick up the slack.
166+Consider finding a co-maintainer with access to SCM and Hackage to
167+help you out.
68
168
69−The time limits are intended to stop people being inconvenienced because of problems in other packages. Where such inconvenience happens, we will drop the offending packages from Stackage. While upper bounds are sometimes a temporary solution, they are against the ethos of Stackage, so will not be kept for long.
169+We appreciate if you notify us of any expected delays in the Github
170+issues, some kind soul might decide to help out.
70
171
71## Upgrading to a new GHC version
172## Upgrading to a new GHC version
72
173
174+The Stackage curation team tries to move Stackage Nightly to new
73−The Stackage curation team tries to move Stackage Nightly to new versions of GHC quickly as they become available, while keeping LTS Haskell on a regular release schedule. For package maintainers, the most important impacts of a new GHC release are:
175+versions of GHC quickly as they become available, while keeping LTS
176+Haskell on a regular release schedule. For package maintainers, the
177+most important impacts of a new GHC release are:
74
178
75−* We will typically do a sweep through the Stackage upper bounds and aggressively remove packages that block them. This is because, in most cases, we will need to move to the newest versions of a package to get support for the latest GHC, and asking package maintainers to backport their fixes is an undue burden
179+* We will typically do a sweep through the Stackage upper bounds and
180+ remove blocking packages. We prefer to do it this way rather than
181+ ask other maintainers to backport fixes.
76− * We will definitely do this at a GHC major version release, and may do so at a minor version release
182+ * We will definitely do this at a GHC major version release, and
183+ may do so at a minor version release
77−* Packages that are incompatible with the newest GHC version will be temporarily blocked
184+* Packages that are incompatible with the newest GHC version will be
185+ temporarily disabled
78
186
187+If your package ends up being temporarily disabled from Stackage
79−If your package ends up being temporarily removed from Stackage Nightly, please simply send a pull request to add it back once it and its dependencies are compatible with the newest GHC version.
188+Nightly, please simply send a pull request to add it back once it and
189+its dependencies are compatible with the newest GHC version.
190+
191+Note that it is _not_ a goal of LTS Haskell to track the latest
192+version of GHC. If you want the latest and greatest, Stackage Nightly
193+is your best bet. In particular, LTS Haskell will often&mdash;but not
194+always&mdash;avoid upgrading to the first point release of GHC
195+releases (e.g., 8.x.1) to allow further testing and to get the
196+benefits of the first bugfix release (e.g., 8.x.2).
80
197
81## Adding a package to an LTS snapshot
198## Adding a package to an LTS snapshot
82
199
@@ -86,11 +203,55 @@ ending in `.0`), the package set is taken from Stackage Nightly. Therefore, by
86following the above steps, you can get your package into the next major LTS
203following the above steps, you can get your package into the next major LTS
87Haskell release.
204Haskell release.
88
205
89−If you would like to get your package added to an existing LTS Haskell major
206+If you would like to get your package added to the current LTS Haskell
90−release (e.g., if `lts-3.21` is out, you would want your package to appear in
91−`lts-3.22`), please do the following in addition to the steps above:
207+major release, please do the following in addition to the steps for Nightly described earlier:
92
208
209+* Check that your package can be built with the current LTS version (e.g. `stack build --test --bench --haddock --resolver lts`)
93* Open up a new issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new)
210* Open up a new issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new)
94−* Specify the LTS major version you would like your package to go into (e.g., lts-3)
95−* Provide a list of packages you would like added, and if relevant, any upper bounds on those packages
211+ * Provide a list of packages you would like added
96−* Be patient! The LTS releases are by their nature more conservative than nightly, and therefore adding new packages is a more manual process. The Stackage curators will try to get to your issue quickly, but there may be some delay.
212+ * If relevant, mention any upper bounds that are needed on those packages
213+* Be patient! The LTS releases are less frequent than Nightly. The
214+ Stackage curators will try to get to your issue as soon as possible,
215+ but it may take some time.
216+
217+## LTS package guarantees and exceptions
218+
219+In general, we try to stick to some rules when it comes to the
220+packages included in LTS minor bumps. In particular:
221+
222+* If a package exists in LTS-X.Y, it should also exist in LTS-X.(Y+1)
223+* We should not include a major version bump of a package between
224+ LTS-X.Y and LTS-X.(Y+1)
225+
226+However, there are some cases where exceptions may be made, based
227+purely on Stackage Curator discretion. The most common examples are:
228+
229+* If a package does not follow the PVP in its version number policy,
230+ applying the standard version bump rules would not necessarily
231+ makes sense. As an example, suppose package `foo` decides to
232+ follow SemVer instead of the PVP. By our standard rules of version
233+ bumps, a change from `foo-1.2.0` to `foo-1.3.0` would be
234+ considered a major version bump, and disallowed in an LTS minor
235+ version bump. However, if a package is following SemVer, this
236+ would not be a breaking change, and curators may elect to include
237+ it. Note though that curators and their tooling will not know your
238+ package is following SemVer, so in this case you would have to open
239+ an issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new).
240+
241+* If a package has overly restrictive version bounds on a
242+ dependency, in particular constraining a minor version
243+ unnecessarily, we may drop that package instead of artificially
244+ holding back the dependency. As an example: suppose `LTS-20.1`
245+ includes `foo-1.2.0` and `bar-1`. `bar-1` has a dependency `foo >=
246+ 1.2.0 && < 1.2.1`, which is overly constrained on the minor
247+ version number according to the PVP. Then `foo-1.2.1` is
248+ released. The Stackage Curator team would have two choices:
249+
250+ * Reject `foo-1.2.1` from `LTS-20.2`, since that is what `bar-1`
251+ requires.
252+ * Drop `bar-1` from `LTS-20.2`, and allow `foo-1.2.1`.
253+
254+ Decisions will need to be taken on a case-by-case basis, and may
255+ depend on such issues as whether an important bugfix or security
256+ update in included. The curator team may also try to notify the
257+ author of `bar` to try and get a patched version released.
README.md+85−29
@@ -1,30 +1,30 @@
1stackage
1stackage
2========
2========
3+[![check](https://github.com/commercialhaskell/stackage/actions/workflows/check.yml/badge.svg)](https://github.com/commercialhaskell/stackage/actions/workflows/check.yml)
3
4
4−[![Build Status](https://travis-ci.org/fpco/stackage.svg?branch=master)](https://travis-ci.org/fpco/stackage)
5+Stable sets of Haskell Packages from Hackage
5
6
6−"Stable Hackage": creating a vetted set of packages from Hackage.
7−This repository is for package authors and maintainers to get their packages into Stackage.
7+_This repository is for package authors and maintainers to get their packages into Stackage._
8−If you simply want to use Stackage as an end user, please follow the instructions on [https://www.stackage.org/](https://www.stackage.org).
9
8
10−We strongly recommend using the Haskell tool stack for doing builds, which
9+If you simply want to use Stackage as an end user, please follow the instructions on [https://www.stackage.org/](https://www.stackage.org).
11−includes built-in Stackage support: [stack](https://github.com/commercialhaskell/stack) [![Build Status](https://travis-ci.org/commercialhaskell/stack.svg?branch=master)](https://travis-ci.org/commercialhaskell/stack).
12
10
11+We strongly recommend using the Haskell [stack](https://github.com/commercialhaskell/stack) tool for doing builds, which
12+includes built-in Stackage support.
13
13
14Add your package
14Add your package
15----------------
15----------------
16
16
17We welcome all packages, provided:
17We welcome all packages, provided:
18
18
19−* The package author/maintainer agrees to the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md).
19+* The package author/maintainer agrees to the [maintainers agreement](https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md).
20−* The package is buildable and testable from Hackage. We recommend [the Stack Travis script](http://docs.haskellstack.org/en/stable/GUIDE.html#travis-with-caching), which ensures a package is not accidentally incomplete.
20+* The package is buildable and testable from Hackage. We recommend [the Stack Travis script](https://docs.haskellstack.org/en/stable/travis_ci/), which ensures a package is not accidentally incomplete.
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
22−* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
22+* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
23
23
24−Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package).
24+Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md#adding-a-package).
25
25
26__NOTE__: There is an approximate 30 minute delay between a package uploading
26__NOTE__: There is an approximate 30 minute delay between a package uploading
27−to Hackage and being available to the Travis build script to check upper
27+to Hackage and being available to the Github workflow action to check upper
28bounds. If a pull request is marked as failed due to using an older version,
28bounds. If a pull request is marked as failed due to using an older version,
29please close and reopen the PR to retrigger a Travis build.
29please close and reopen the PR to retrigger a Travis build.
30
30
@@ -35,33 +35,22 @@ The Stackage project consists of multiple repositories. This repository
35contains the metadata on packages to be included in future builds and some
35contains the metadata on packages to be included in future builds and some
36project information. In addition, we have the following repositories:
36project information. In addition, we have the following repositories:
37
37
38−* [stackage-server](https://github.com/fpco/stackage-server) [![Build Status](https://travis-ci.org/fpco/stackage-server.svg?branch=master)](https://travis-ci.org/fpco/stackage-server)
38+* [stackage-server](https://github.com/fpco/stackage-server) [![Base image](https://github.com/fpco/stackage-server/actions/workflows/base.yml/badge.svg)](https://github.com/fpco/stackage-server/actions/workflows/base.yml)
39−* [stackage-curator](https://github.com/fpco/stackage-curator) [![Build Status](https://travis-ci.org/fpco/stackage-curator.svg?branch=master)](https://travis-ci.org/fpco/stackage-curator)
39+* [curator](https://github.com/commercialhaskell/curator) ![Build Status](https://github.com/commercialhaskell/curator/workflows/Runtime%20image/badge.svg)
40−* [stackage-types](https://github.com/fpco/stackage-types) [![Build Status](https://travis-ci.org/fpco/stackage-types.svg?branch=master)](https://travis-ci.org/fpco/stackage-types)
41−* [lts-haskell](https://github.com/fpco/lts-haskell)
40+* [lts-haskell](https://github.com/commercialhaskell/lts-haskell)
42−* [stackage-nightly](https://github.com/fpco/stackage-nightly)
41+* [stackage-snapshots](https://github.com/commercialhaskell/stackage-snapshots/)
43−
44−We also support some add-on tools to cabal-install to make its usage with
45−Stackage both easier and more secure:
46−
47−* [stackage-cli](https://github.com/fpco/stackage-cli) [![Build Status](https://travis-ci.org/fpco/stackage-cli.svg?branch=master)](https://travis-ci.org/fpco/stackage-cli)
48−* [stackage-update](https://github.com/fpco/stackage-update) [![Build Status](https://travis-ci.org/fpco/stackage-update.svg?branch=master)](https://travis-ci.org/fpco/stackage-update)
49−* [stackage-upload](https://github.com/fpco/stackage-upload) [![Build Status](https://travis-ci.org/fpco/stackage-upload.svg?branch=master)](https://travis-ci.org/fpco/stackage-upload)
50−* [stackage-install](https://github.com/fpco/stackage-install) [![Build Status](https://travis-ci.org/fpco/stackage-install.svg?branch=master)](https://travis-ci.org/fpco/stackage-install)
51−* [stackage-build-plan](https://github.com/fpco/stackage-build-plan) [![Build Status](https://travis-ci.org/fpco/stackage-build-plan.svg?branch=master)](https://travis-ci.org/fpco/stackage-build-plan)
52
42
53Curious how it all fits together? See the [Stackage data
43Curious how it all fits together? See the [Stackage data
54−flow](https://github.com/fpco/stackage/blob/master/DATA-FLOW.md).
44+flow](https://github.com/commercialhaskell/stackage/blob/master/DATA-FLOW.md).
55−
56
45
57Build the package set
46Build the package set
58---------------------
47---------------------
59
48
60Generally only the stackage build server run by the stackage curator
49Generally only the stackage build server run by the stackage curator
61−team and people intrested in incorporating stackage snapshots into an
50+team and people interested in incorporating stackage snapshots into an
62OS distribution need to build the entire package set. If you're
51OS distribution need to build the entire package set. If you're
63interested in trying this yourself, please check out
52interested in trying this yourself, please check out
64−[the curator guide](https://github.com/fpco/stackage/blob/master/CURATORS.md),
53+[the curator guide](https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md),
65though be aware that this is not a recommended practice and there
54though be aware that this is not a recommended practice and there
66likely will be problems you will need to debug yourself.
55likely will be problems you will need to debug yourself.
67
56
@@ -84,3 +73,70 @@ The following describes at a high level the series of steps for processing
841. Load up most recent build plan
731. Load up most recent build plan
852. Convert build plan into constraints for next build
742. Convert build plan into constraints for next build
863. Continue from step (3) above
753. Continue from step (3) above
76+
77+Frequently Asked Questions
78+--------------------------
79+
80+__Why is Stackage LTS still on an older version of GHC?__
81+
82+Typically it takes some months from a new major ghc release before
83+the Haskell ecosystem supports it fully enough that we can push it
84+to a new stable Stackage major version release. There can also be
85+ghc regressions that hold up a LTS major release.
86+
87+The lag for minor ghc releases should be less
88+but it still requires extra work and there is usually some delay - this also
89+allows for some community testing before updating LTS.
90+
91+__Why does Stackage have an older version of a package than Hackage?__
92+
93+There are a number of answers to this question:
94+
95+* Simplest reason: how old of a Stackage snapshot are you using? Once a
96+ snapshot is created, it's frozen for all time. So if you use
97+ nightly-2016-01-01, by the time you get to 2018, it will be pretty dated.
98+* If you're using an LTS snapshot: we lock down major versions when
99+ first creating an LTS run, so subsequent minor versions will not get
100+ new versions necessary. For example, if LTS 6.0 has `foo` version
101+ 1.2.3, and the author immediately thereafter releases a version
102+ 1.3.0 and never releases another 1.2.\* version, you'll never get
103+ another update in the LTS 6 line
104+* Sometimes we have upper bounds in place because other packages have
105+ problems with newer versions of dependencies. Open up the
106+ [build-constraints file](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml)
107+ and search for "Stackage upper bounds"
108+* Wired-in packages - those that ship with GHC and cannot be upgraded,
109+ and packages depending on them - are fixed to GHC versions. Common
110+ examples of this are containers and transformers. There's a lot more
111+ information on this in
112+ [an FP Complete blog post](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)
113+
114+__How long do you maintain an LTS build?__
115+
116+We only guarantee that we will maintain a single LTS major version at
117+a time, and that it will be maintained for at least three months. This
118+is the
119+[originally proposed support window](https://tech.fpcomplete.com/blog/2014/12/backporting-bug-fixes),
120+and hasn't changed since then.
121+
122+That said, we do maintain the capability to keep multiple LTS runs
123+operational in parallel, and with LTS 6 and 7 in fact did so. We
124+aren't changing our guarantees yet on longevity of a release, but are
125+trying to push out the bounds a bit farther.
126+
127+__What time are Stackage snapshots published?__
128+
129+Stackage Nightly and LTS are not released at a fixed time of day, they get
130+pushed to stackage.org (and the metadata to the stackage-nightly and
131+stackage-lts github repos) when their builds finish on the Stackage build
132+server and the latest built haddocks have been synced over. This time varies
133+greatly depending on build times for package updates, bounds breakage,
134+problems with new packages being added and other build issues, etc. There are
135+days when a release does not happen. LTS releases tend to happen over the
136+weekend or early in the week.
137+
138+__Where to get help regarding uploading packages?__
139+
140+Please ask on the #stackage channel on the
141+[Haskell Foundation Slack](https://join.slack.com/t/haskell-foundation/shared_invite/zt-mjh76fw0-CEjg2NbyVE8rVQDvR~0F4A)
142+or open an issue or comment on the PR which uploads the package.
Stackage/Config.hsdeleted−8
@@ -1,8 +0,0 @@
1−{-
2−
3−NOTE: This module is no longer used for tracking packages included in Stackage.
4−To simplify the codebase, that information is now stored in the
5−build-constraints.yaml configuration file. The file should be self-explanatory.
6−Sorry for the inconvenience.
7−
8−-}
automated/.gitignore+2−12
@@ -1,12 +1,2 @@
1−/auth-token
1+/work/
2−/bin/
2+/*-build.log
3−/gitconfig
4−/hackage-creds
5−/ssh-nightly/
6−/ssh-lts/
7−/nighlty/
8−/lts-*/
9−/stackage-curator/
10−/stackage-update/
11−/aws.sh
12−/crondir/
automated/build.sh+75−55
@@ -1,11 +1,11 @@
1#!/usr/bin/env bash
1#!/usr/bin/env bash
2
2
3−set -eux
3+set -eu +x -o pipefail
4
4
5ROOT=$(cd $(dirname $0) ; pwd)
5ROOT=$(cd $(dirname $0) ; pwd)
6TARGET=$1
6TARGET=$1
7
7
8−source aws.sh
8+source work/aws.sh
9
9
10# For nightly-YYYY-MM-DD, tag should be nightly
10# For nightly-YYYY-MM-DD, tag should be nightly
11# For lts-X.Y, tag should be ltsX
11# For lts-X.Y, tag should be ltsX
@@ -13,47 +13,37 @@ SHORTNAME=$(echo $TARGET | cut -d- -f 1)
13if [ $SHORTNAME = "lts" ]
13if [ $SHORTNAME = "lts" ]
14then
14then
15 TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
15 TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
16+ WORKDIR=$ROOT/work/$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts-\1@')
16else
17else
17 TAG=$SHORTNAME
18 TAG=$SHORTNAME
19+ WORKDIR=$ROOT/work/$TAG
18fi
20fi
19
21
22+#IMAGE=commercialhaskell/stackage:$TAG
20−IMAGE=snoyberg/stackage:$TAG
23+IMAGE=ghcr.io/commercialhaskell/stackage/build:$TAG
21
24
22−PLAN_FILE=current-plan.yaml
25+PANTRY_DIR=$ROOT/work/stack/pantry
23−DOCMAP_FILE=current-docmap.yaml
24−BUNDLE_FILE=current.bundle
25−
26−CABAL_DIR=$ROOT/cabal
27−STACK_DIR=$ROOT/stack
26+STACK_DIR=$ROOT/work/stack
28−GHC_DIR=$ROOT/ghc
29−DOT_STACKAGE_DIR=$ROOT/dot-stackage
27+DOT_STACKAGE_DIR=$ROOT/work/dot-stackage
30−WORKDIR=$ROOT/$TAG/work
28+# ssh key is used for committing snapshots (and their constraints) to Github
31−EXTRA_BIN_DIR=$ROOT/extra-bin
32−SSH_DIR=$ROOT/ssh-$SHORTNAME
29+SSH_DIR=$ROOT/work/ssh
30+USERID=$(id -u)
33
31
34mkdir -p \
32mkdir -p \
35− "$CABAL_DIR" \
33+ "$PANTRY_DIR" \
36 "$STACK_DIR" \
34 "$STACK_DIR" \
37− "$GHC_DIR" \
38 "$DOT_STACKAGE_DIR" \
35 "$DOT_STACKAGE_DIR" \
39 "$WORKDIR" \
36 "$WORKDIR" \
40− "$EXTRA_BIN_DIR" \
41 "$SSH_DIR"
37 "$SSH_DIR"
42
38
43−GITCONFIG=$ROOT/gitconfig
39+GITCONFIG=$ROOT/work/gitconfig
44cat >$GITCONFIG <<EOF
40cat >$GITCONFIG <<EOF
45[user]
41[user]
46 email = michael+stackage-build@fpcomplete.com
42 email = michael+stackage-build@fpcomplete.com
47 name = Stackage Build host
43 name = Stackage Build host
48EOF
44EOF
49
45
50−cat >$SSH_DIR/known_hosts <<EOF
51−|1|Qn0iij8BnxGZXbyFSozS9zWkH+Q=|YrKKNp2KHO3/oc4UBFIe1zOvhDc= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
52−|1|RxBEt2ljiEppr019szMIhbY12m0=|0FZ2Oji1LphRbPLLEQhFzTmL69I= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
53−EOF
54−
55−AUTH_TOKEN=$ROOT/auth-token
56−HACKAGE_CREDS=$ROOT/hackage-creds
46+HACKAGE_CREDS=$ROOT/work/hackage-creds
57
47
58function require_400_file {
48function require_400_file {
59 if [ ! -f "$1" ]
49 if [ ! -f "$1" ]
@@ -66,23 +56,34 @@ function require_400_file {
66}
56}
67
57
68require_400_file "$SSH_DIR/id_rsa"
58require_400_file "$SSH_DIR/id_rsa"
69−require_400_file "$AUTH_TOKEN"
70require_400_file "$HACKAGE_CREDS"
59require_400_file "$HACKAGE_CREDS"
71
60
72−mkdir -p $ROOT/bin
61+mkdir -p $ROOT/work/bin
73−BINDIR=$(cd $ROOT/bin ; pwd)
62+BINDIR=$(cd $ROOT/work/bin ; pwd)
74(
63(
75cd $BINDIR
64cd $BINDIR
76−rm -f stackage-curator stackage-curator.bz2
65+rm -f curator stack *.bz2
77−wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
66+
78−bunzip2 stackage-curator.bz2
67+curl -L "https://github.com/commercialhaskell/curator/releases/download/commit-1ef870178f6a0544fe5a3fd23a83fc075aabd695/curator.bz2" | bunzip2 > curator
79−chmod +x stackage-curator
68+chmod +x curator
69+echo -n "curator version: "
70+docker run --rm -v $(pwd)/curator:/exe $IMAGE /exe --version
71+
72+curl -L https://github.com/commercialhaskell/stack/releases/download/v2.7.3/stack-2.7.3-linux-x86_64-bin > stack
73+chmod +x stack
74+echo -n "stack version: "
75+docker run --rm -v $(pwd)/stack:/exe $IMAGE /exe --version
80)
76)
81
77
78+# We share pantry directory between snapshots while the other content in .stack
79+# is stored separately (because e.g. Ubuntu releases between LTS and nightly
80+# could differ). Also the order of binds is important.
82−ARGS_COMMON="--rm -v $WORKDIR:$HOME/work -w $HOME/work -v $BINDIR/stackage-curator:/usr/bin/stackage-curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $EXTRA_BIN_DIR/stack:/usr/bin/stack:ro"
81+ARGS_COMMON="--rm -v $WORKDIR:$HOME/work -w $HOME/work -v $BINDIR/curator:/usr/bin/curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $BINDIR/stack:/usr/bin/stack:ro -v $STACK_DIR:$HOME/.stack -v $PANTRY_DIR:$HOME/.stack/pantry"
83−ARGS_PREBUILD="$ARGS_COMMON -u $USER -e HOME=$HOME -v $CABAL_DIR:$HOME/.cabal -v $STACK_DIR:$HOME/.stack -v $GHC_DIR:$HOME/.ghc -v $DOT_STACKAGE_DIR:$HOME/.stackage"
82+ARGS_PREBUILD="$ARGS_COMMON -u $USERID -e HOME=$HOME -v $DOT_STACKAGE_DIR:$HOME/.stackage"
84−ARGS_BUILD="$ARGS_COMMON -v $CABAL_DIR:$HOME/.cabal:ro -v $STACK_DIR:$HOME/.stack:ro -v $GHC_DIR:$HOME/.ghc:ro"
83+ARGS_BUILD="$ARGS_COMMON"
84+# instance-data is an undocumented feature of S3 used by amazonka,
85+# see https://github.com/brendanhay/amazonka/issues/271
85−ARGS_UPLOAD="$ARGS_COMMON -u $USER -e HOME=$HOME -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -v $AUTH_TOKEN:/auth-token:ro -v $HACKAGE_CREDS:/hackage-creds:ro -v $DOT_STACKAGE_DIR:$HOME/.stackage -v $SSH_DIR:$HOME/.ssh:ro -v $GITCONFIG:$HOME/.gitconfig:ro -v $CABAL_DIR:$HOME/.cabal:ro -v $STACK_DIR:$HOME/.stack:ro"
86+ARGS_UPLOAD="$ARGS_COMMON -u $USERID -e HOME=$HOME -v $HACKAGE_CREDS:/hackage-creds:ro -v $DOT_STACKAGE_DIR:$HOME/.stackage -v $SSH_DIR:$HOME/.ssh:ro -v $GITCONFIG:$HOME/.gitconfig:ro -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -v $DOT_STACKAGE_DIR:/dot-stackage"
86
87
87# Make sure we actually need this snapshot. We only check this for LTS releases
88# Make sure we actually need this snapshot. We only check this for LTS releases
88# since, for nightlies, we'd like to run builds even if they are unnecessary to
89# since, for nightlies, we'd like to run builds even if they are unnecessary to
@@ -90,49 +91,68 @@ ARGS_UPLOAD="$ARGS_COMMON -u $USER -e HOME=$HOME -e AWS_ACCESS_KEY_ID=$AWS_ACCES
90# below for why this is safe.)
91# below for why this is safe.)
91if [ $SHORTNAME = "lts" ]
92if [ $SHORTNAME = "lts" ]
92then
93then
93− docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec stackage-curator check-target-available --target $TARGET"
94+ docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator check-target-available --target $TARGET"
94fi
95fi
95
96
96−# Get latest stack
97−curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C $EXTRA_BIN_DIR '*/stack'
98
97
99−# Do all of the pre-build actions:
98+# Determine the new build plan unless NOPLAN is set
100#
99#
101−# * Update the package index
100+# * Update the package index (unless LTS)
102# * Create a new plan
101# * Create a new plan
103−# * Check that the plan is valid
104−# * Fetch all needed tarballs (the build step does not have write access to the tarball directory)
105−# * Do a single unpack to create the package index cache (again due to directory perms)
106−if [ "${NOPLAN:-}x" = "x" ]
102+if [ "${NOPLAN:-}x" = "1x" ]
103+then
104+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator snapshot-incomplete --target $TARGET && curator snapshot"
105+elif [ "${NOPLAN:-}x" = "2x" ]
106+then
107+ docker run $ARGS_PREBUILD $IMAGE curator snapshot
108+elif [ $SHORTNAME = "lts" ]
107then
109then
108− docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "stack update && stackage-curator create-plan --plan-file $PLAN_FILE --target $TARGET ${CONSTRAINTS:-} && stackage-curator check --plan-file $PLAN_FILE && stackage-curator fetch --plan-file $PLAN_FILE && cd /tmp && exec stack unpack random"
110+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator constraints --target $TARGET && curator snapshot-incomplete --target $TARGET && curator snapshot"
111+else
112+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator update && curator constraints --target $TARGET && curator snapshot-incomplete --target $TARGET && curator snapshot"
109fi
113fi
110
114
115+
116+# Do the rest of the pre-build actions:
117+#
118+# * Check that the snapshot is valid
119+# * Fetch and unpack all needed tarballs (the build step does not have write access to the tarball directory)
120+docker run $ARGS_PREBUILD $IMAGE /bin/bash -c 'GHCVER=$(sed -n "s/^ghc-version: \(.*\)/\1/p" constraints.yaml) && stack setup ghc-$GHCVER --verbosity=error && stack exec --resolver=ghc-$GHCVER curator check-snapshot && curator unpack'
121+
122+case $SHORTNAME in
123+ lts) JOBS=1 ;;
124+ nightly) JOBS=2 ;;
125+esac
126+
111# Now do the actual build. We need to first set the owner of the home directory
127# Now do the actual build. We need to first set the owner of the home directory
112# correctly, so we run the command as root, change owner, and then use sudo to
128# correctly, so we run the command as root, change owner, and then use sudo to
113# switch back to the current user
129# switch back to the current user
114−docker run $ARGS_BUILD $IMAGE /bin/bash -c "chown $USER $HOME && exec sudo -E -u $USER env \"HOME=$HOME\" \"PATH=\$PATH\" stackage-curator make-bundle --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --bundle-file $BUNDLE_FILE --target $TARGET"
130+docker run $ARGS_BUILD $IMAGE nice -n 15 /bin/bash -c "chown $USER $HOME && exec sudo -E -u $USER env \"HOME=$HOME\" \"PATH=\$PATH\" curator build --jobs $JOBS" 2>&1 | tee "$SHORTNAME-build.log"
115
131
116# Make sure we actually need this snapshot. We used to perform this check
132# Make sure we actually need this snapshot. We used to perform this check
117# exclusively before building. Now we perform it after as well for the case of
133# exclusively before building. Now we perform it after as well for the case of
118# nightly, where we don't perform this check beforehand. This is also slightly
134# nightly, where we don't perform this check beforehand. This is also slightly
119# safer, in case someone else already uploaded a specific snapshot while we
135# safer, in case someone else already uploaded a specific snapshot while we
120# were building.
136# were building.
121−docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec stackage-curator check-target-available --target $TARGET"
137+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator check-target-available --target $TARGET"
122
138
123# Successful build, so we need to:
139# Successful build, so we need to:
124#
140#
125# * Upload the docs to S3
141# * Upload the docs to S3
126−# * Upload the 00-index.tar file to S3 (TODO: this is probably no longer necessary, since snapshots never modify .cabal files)
127−# * Upload the new plan .yaml file to the appropriate Github repo
142+# * Upload the new snapshot .yaml file to the appropriate Github repo, also upload its constraints
128−# * Register as a new Hackage distro
129−docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "stackage-curator upload-docs --target $TARGET --bundle-file $BUNDLE_FILE && stackage-curator upload-index --plan-file $PLAN_FILE --target $TARGET && stackage-curator upload-github --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --target $TARGET && exec stackage-curator hackage-distro --plan-file $PLAN_FILE --target $TARGET"
143+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "curator upload-docs --target $TARGET && curator upload-github --target $TARGET"
144+
145+# fixed in https://github.com/commercialhaskell/curator/pull/24
146+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator hackage-distro --target $TARGET"
147+
148+# Build and push docker image fpco/stack-build & fpco/stack-build-small for current release
130
149
131if [ $SHORTNAME = "lts" ]
150if [ $SHORTNAME = "lts" ]
132then
151then
133− echo "Running cron.sh (hiding verbose output)"
152+ $ROOT/dockerfiles/build.sh $TARGET
134− ./cron.sh | grep -v '^Skipping'
153+ $ROOT/dockerfiles/build.sh --push $TARGET
135− echo "done."
154+ $ROOT/dockerfiles/build.sh --push --small $TARGET
136fi
155fi
137
156
157+echo -n "Completed at "
138date
158date
automated/check-cabal.shdeleted−72
@@ -1,72 +0,0 @@
1−#!/usr/bin/env bash
2−
3−# This script is intended for testing Cabal HEAD against a Stackage snapshot.
4−
5−set -eux
6−
7−ROOT=$(cd $(dirname $0) ; pwd)
8−TARGET=$1
9−
10−# For nightly-YYYY-MM-DD, tag should be nightly
11−# For lts-X.Y, tag should be ltsX
12−SHORTNAME=$(echo $TARGET | cut -d- -f 1)
13−if [ $SHORTNAME = "lts" ]
14−then
15− TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
16− PLAN_URL=https://raw.githubusercontent.com/fpco/lts-haskell/master/$TARGET.yaml
17−else
18− TAG=$SHORTNAME
19− PLAN_URL=https://raw.githubusercontent.com/fpco/stackage-nightly/master/$TARGET.yaml
20−fi
21−
22−IMAGE=snoyberg/stackage:$TAG
23−
24−PLAN_FILE=$TARGET-plan.yaml
25−DOCMAP_FILE=$TARGET-docmap.yaml
26−BUNDLE_FILE=$TARGET.bundle=
27−
28−CABAL_DIR=$ROOT/cabal
29−STACK_DIR=$ROOT/stack
30−GHC_DIR=$ROOT/ghc
31−DOT_STACKAGE_DIR=$ROOT/dot-stackage
32−WORKDIR=$ROOT/$TAG/work
33−EXTRA_BIN_DIR=$ROOT/extra-bin
34−
35−mkdir -p \
36− "$CABAL_DIR" \
37− "$STACK_DIR" \
38− "$GHC_DIR" \
39− "$DOT_STACKAGE_DIR" \
40− "$WORKDIR" \
41− "$EXTRA_BIN_DIR"
42−
43−curl "$PLAN_URL" > $WORKDIR/$PLAN_FILE
44−
45−mkdir -p $ROOT/bin
46−BINDIR=$(cd $ROOT/bin ; pwd)
47−(
48−cd $BINDIR
49−rm -f stackage-curator stackage-curator.bz2
50−wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
51−bunzip2 stackage-curator.bz2
52−chmod +x stackage-curator
53−)
54−
55−ARGS_COMMON="--rm -v $WORKDIR:/home/stackage/work -w /home/stackage/work -v $BINDIR/stackage-curator:/usr/bin/stackage-curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $EXTRA_BIN_DIR:/home/stackage/bin:ro"
56−ARGS_PREBUILD="$ARGS_COMMON -u $USER -v $CABAL_DIR:/home/stackage/.cabal -v $STACK_DIR:/home/stackage/.stack -v $GHC_DIR:/home/stackage/.ghc -v $DOT_STACKAGE_DIR:/home/stackage/.stackage"
57−ARGS_BUILD="$ARGS_COMMON -v $CABAL_DIR:/home/stackage/.cabal:ro -v $STACK_DIR:/home/stackage/.stack:ro -v $GHC_DIR:/home/stackage/.ghc:ro"
58−
59−# Get latest stack
60−curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C $EXTRA_BIN_DIR '*/stack'
61−
62−# Do all of the pre-build actions:
63−#
64−# * Update the package index
65−# * Fetch all needed tarballs (the build step does not have write access to the tarball directory)
66−# * Do a single unpack to create the package index cache (again due to directory perms)
67−docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "/home/stackage/bin/stack update && stackage-curator fetch --plan-file $PLAN_FILE && cd /tmp && /home/stackage/bin/stack unpack random"
68−
69−# Now do the actual build. We need to first set the owner of the home directory
70−# correctly, so we run the command as root, change owner, and then use sudo to
71−# switch back to the current user
72−docker run $ARGS_BUILD $IMAGE /bin/bash -c "chown $USER /home/stackage && sudo -E -u $USER env \"PATH=\$PATH:/home/stackage/bin\" stackage-curator make-bundle --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --bundle-file $BUNDLE_FILE --target $TARGET --cabal-from-head"
automated/cron.shdeleted−15
@@ -1,15 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -eux
4−
5−CRONDIR=$(pwd)/crondir
6−mkdir -p $CRONDIR
7−source aws.sh
8−
9−echo "Running stackage-server-cron..."
10−echo "('tail -f $CRONDIR/stackage-server-cron.log' to watch)"
11−docker run --rm \
12− -v $CRONDIR:/home/ubuntu \
13− -w /home/ubuntu \
14− fpco/stackage-server-prod:latest \
15− bash -c "useradd $(whoami) -u $(id -u); sudo -u $(whoami) env HOME=/home/ubuntu AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY bash -c '/usr/local/bin/stackage-server-cron 2>&1 | tee -a /home/ubuntu/stackage-server-cron.log'"
automated/dockerfiles/README.mdnew file+33
@@ -0,0 +1,33 @@
1+dockerfiles/stack-build
2+=======================
3+
4+Build [fpco/stack-build](https://hub.docker.com/r/fpco/stack-build/) Docker
5+images. This script and its Dockerfiles are used for building images for LTS >=
6+8.0.
7+
8+Usage
9+-----
10+
11+ ./build.sh [--push] [--dry-run] [--small] lts-X.Y"
12+
13+Options
14+-------
15+
16+`--help`: show this help
17+
18+`--push`: push the image after building/tagging it
19+
20+`--dry-run`: print the important commands that will be run, but don't actually
21+ run them
22+
23+`--small`: build the small variant of the image
24+
25+Argument
26+---------
27+
28+The image for the selected LTS version will be built.
29+
30+This searches for a Dockerfile for the selected snapshot in
31+`lts-X.Y/Dockerfile`, and if one isn't found reuses the same image as built the
32+most recent `lts-X.Y/Dockerfile` found for earlier minor versions of the same
33+major version.
automated/dockerfiles/build.shnew file+177
@@ -0,0 +1,177 @@
1+#!/usr/bin/env bash
2+
3+set -eu
4+cd "$(dirname "$0")"
5+
6+#
7+# Constants and defaults
8+#
9+
10+DOCKER_REPO=fpco/stack-build
11+PUSH=false
12+DRY=false
13+VARIANT=build
14+
15+#
16+# Functions
17+#
18+
19+# Print usage information and exit with failure status. First argument is an
20+# error message.
21+usage() {
22+ echo "$0: $1" >&2
23+ echo
24+ echo "Usage: $0 [--push] [--dry-run] [--small] lts-X.Y]"
25+ echo "See README.md for more information."
26+ echo
27+ exit 1
28+}
29+
30+# Print a command, and if --dry-run disabled also run it
31+dry() {
32+ echo ">>> $*"
33+ [[ $DRY = true ]] || "$@"
34+}
35+
36+# Push an image if --push is enabled (otherwise do nothing)
37+push() {
38+ [[ $PUSH = false ]] || dry docker push "$1"
39+}
40+
41+# Tag an image, and then push it if --push is enabled
42+tagpush() {
43+ dry docker tag "$1" "$2"
44+ push "$2"
45+}
46+
47+#
48+# Parse command-line
49+#
50+
51+LTS_SLUG_ARG=
52+while [[ $# -gt 0 ]]; do
53+ case "$1" in
54+ --push)
55+ PUSH=true
56+ shift
57+ ;;
58+ --dry-run)
59+ DRY=true
60+ shift
61+ ;;
62+ --small)
63+ VARIANT=small
64+ DOCKER_REPO=fpco/stack-build-small
65+ shift
66+ ;;
67+ -*)
68+ usage "Unknown option: $1"
69+ ;;
70+ *)
71+ if [[ -n "$LTS_SLUG_ARG" ]]; then
72+ usage "Cannot specify multiple snaphots: $1"
73+ fi
74+ LTS_SLUG_ARG="$1"
75+ shift
76+ ;;
77+ esac
78+done
79+
80+case "$LTS_SLUG_ARG" in
81+ "")
82+ usage "Missing argument: snapshot"
83+ ;;
84+ lts-*.*)
85+ LTS_SLUG="$LTS_SLUG_ARG"
86+ ;;
87+ *)
88+ echo "$0: Wrong snapshot format: $LTS_SLUG_ARG" >&2
89+ exit 1
90+ ;;
91+esac
92+
93+#
94+# Determine if lts slug is latest
95+#
96+
97+SNAPSHOTS="$(mktemp "lts-snapshots.json.XXXXXX")"
98+trap "rm -f \"$SNAPSHOTS\"" EXIT
99+wget -qO- https://www.stackage.org/download/lts-snapshots.json >"$SNAPSHOTS"
100+
101+LTS_VERSION="${LTS_SLUG#lts-}"
102+LTS_MAJOR="${LTS_VERSION%.*}"
103+LTS_MINOR="${LTS_VERSION#*.}"
104+
105+#
106+# Determine latest LTS version
107+#
108+
109+if [[ ! -x "$HOME/.local/bin/jq" ]]; then
110+ mkdir -p $HOME/.local/bin
111+ if [[ "$(uname)" = "Darwin" ]]; then
112+ curl -o $HOME/.local/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.6/jq-osx-amd64
113+ else
114+ curl -o $HOME/.local/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.6/jq-linux64
115+ fi
116+ chmod +x $HOME/.local/bin/jq
117+fi
118+
119+LATEST_LTS_SLUG=$($HOME/.local/bin/jq -r ".[\"lts\"]" $SNAPSHOTS)
120+LATEST_LTS_VERSION="${LATEST_LTS_SLUG#lts-}"
121+LATEST_LTS_MAJOR="${LATEST_LTS_VERSION%.*}"
122+LATEST_LTS_MINOR="${LATEST_LTS_VERSION#*.}"
123+
124+#
125+# Determine latest minor version of the selected major version
126+#
127+
128+MAJOR_LATEST_LTS_SLUG=$(jq -r ".[\"lts-$LTS_MAJOR\"]" $SNAPSHOTS)
129+MAJOR_LATEST_LTS_VERSION="${MAJOR_LATEST_LTS_SLUG#lts-}"
130+MAJOR_LATEST_LTS_MAJOR="${MAJOR_LATEST_LTS_VERSION%.*}"
131+MAJOR_LATEST_LTS_MINOR="${MAJOR_LATEST_LTS_VERSION#*.}"
132+
133+#
134+# Find the Dockerfile for the selected snapshot
135+#
136+
137+if [[ -s "$LTS_SLUG/Dockerfile" ]]; then
138+
139+ # If there is an exact match, build and push that image
140+
141+ sed "s/\\\$DOCKER_REPO/$(echo $DOCKER_REPO|sed 's/\//\\\//')/g" "$LTS_SLUG/Dockerfile" >"$LTS_SLUG/Dockerfile.sub"
142+ dry docker build -t "$DOCKER_REPO:$LTS_SLUG" --build-arg "DOCKER_REPO=$DOCKER_REPO" --build-arg "LTS_SLUG=$LTS_SLUG" --build-arg "VARIANT=$VARIANT" -f "$LTS_SLUG/Dockerfile.sub" "$LTS_SLUG"
143+ rm -f "$LTS_SLUG/Dockerfile.sub"
144+ push "$DOCKER_REPO:$LTS_SLUG"
145+else
146+
147+ # If no exact match, find a dockerfile for any earlier minor version of the
148+ # selected major version, and just create a new tag from version's image with the selected
149+ # minor version (assuming that nothing needs to change), and push it.
150+
151+ minor=$(( LTS_MINOR - 1 ))
152+ while [[ ! -s "lts-$LTS_MAJOR.$minor/Dockerfile" && $minor -ge 0 ]]; do
153+ minor=$(( minor - 1 ))
154+ done
155+ if [[ $minor -lt 0 ]]; then
156+ echo "$0: Cannot find any Dockerfile for LTS major version" >&2
157+ exit 1
158+ fi
159+ dry docker pull "$DOCKER_REPO:lts-$LTS_MAJOR.$minor" || true
160+ tagpush "$DOCKER_REPO:lts-$LTS_MAJOR.$minor" "$DOCKER_REPO:$LTS_SLUG"
161+fi
162+
163+#
164+# Create and push additional tags
165+#
166+
167+# If we select the latest minor version for the selected major version, then
168+# also create and push an 'lts-X' tag.
169+if [[ $LTS_MINOR -ge $MAJOR_LATEST_LTS_MINOR ]]; then
170+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts-$LTS_MAJOR"
171+fi
172+
173+# If we selected the latest LTS snapshot, also create and push the 'lts' and 'latest' tags.
174+if [[ "$LTS_MAJOR" = "$LATEST_LTS_MAJOR" ]] && [[ $LTS_MINOR -ge $LATEST_LTS_MINOR ]]; then
175+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts"
176+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:latest"
177+fi
automated/dockerfiles/lts-10.0/Dockerfilenew file+67
@@ -0,0 +1,67 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.2.2
6+ARG LTS_SLUG=lts-10.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG STACK_VERSION=1.6.3
9+ARG BOOTSTRAP_COMMIT=a8234cb586c3022099a3b0155275ed067df00f72
10+ARG DEBIAN_FRONTEND=noninteractive
11+
12+#
13+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
14+#
15+
16+ENV LANG=C.UTF-8 \
17+ LC_ALL=C.UTF-8 \
18+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
19+
20+#
21+# Use Stackage's debian-bootstrap.sh script to install system libraries and
22+# tools required to build any Stackage package.
23+#
24+
25+RUN apt-get update && \
26+ apt-get install -y wget && \
27+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Create symlink to help tools find GHC documentation
32+#
33+
34+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
35+
36+#
37+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
38+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
39+# files that some of these tools require.
40+#
41+
42+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
43+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
44+ cd $HOME/.stack && \
45+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
46+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
47+
48+#
49+# Install 'pid1' init daemon
50+#
51+
52+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
53+ chown root:root /usr/local/sbin && \
54+ chown root:root /usr/local/sbin/pid1
55+
56+#
57+# Install Stack
58+#
59+
60+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
61+
62+#
63+# Set up pid1 entrypoint and default command
64+#
65+
66+ENTRYPOINT ["/usr/local/sbin/pid1"]
67+CMD ["bash"]
automated/dockerfiles/lts-10.1/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-10.0
2+ARG STACK_VERSION=1.6.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-10.5/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-10.0
2+ARG STACK_VERSION=1.6.5
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-11.0/Dockerfilenew file+67
@@ -0,0 +1,67 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.2.2
6+ARG LTS_SLUG=lts-11.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG STACK_VERSION=1.6.5
9+ARG BOOTSTRAP_COMMIT=13ab2b86779c98598e96af7f4c4b9653ba280be5
10+ARG DEBIAN_FRONTEND=noninteractive
11+
12+#
13+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
14+#
15+
16+ENV LANG=C.UTF-8 \
17+ LC_ALL=C.UTF-8 \
18+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
19+
20+#
21+# Use Stackage's debian-bootstrap.sh script to install system libraries and
22+# tools required to build any Stackage package.
23+#
24+
25+RUN apt-get update && \
26+ apt-get install -y wget && \
27+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Create symlink to help tools find GHC documentation
32+#
33+
34+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
35+
36+#
37+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
38+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
39+# files that some of these tools require.
40+#
41+
42+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
43+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
44+ cd $HOME/.stack && \
45+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
46+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
47+
48+#
49+# Install 'pid1' init daemon
50+#
51+
52+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
53+ chown root:root /usr/local/sbin && \
54+ chown root:root /usr/local/sbin/pid1
55+
56+#
57+# Install Stack
58+#
59+
60+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
61+
62+#
63+# Set up pid1 entrypoint and default command
64+#
65+
66+ENTRYPOINT ["/usr/local/sbin/pid1"]
67+CMD ["bash"]
automated/dockerfiles/lts-11.22/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-11.6
2+ARG STACK_VERSION=1.9.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-11.6/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-11.5
2+ARG STACK_VERSION=1.7.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.0/Dockerfilenew file+69
@@ -0,0 +1,69 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.4.3
6+ARG LTS_SLUG=lts-12.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.7.1
9+ARG CUDA_VERSION=8.0
10+ARG BOOTSTRAP_COMMIT=56c62ccbf31229ee2b09d3a0b4cd2ad94e7406a8
11+ARG DEBIAN_FRONTEND=noninteractive
12+
13+#
14+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
15+#
16+
17+ENV LANG=C.UTF-8 \
18+ LC_ALL=C.UTF-8 \
19+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
20+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
21+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
22+#
23+# Use Stackage's debian-bootstrap.sh script to install system libraries and
24+# tools required to build any Stackage package.
25+#
26+
27+RUN apt-get update && \
28+ apt-get install -y wget && \
29+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
30+ rm -rf /var/lib/apt/lists/*
31+
32+#
33+# Create symlink to help tools find GHC documentation
34+#
35+
36+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
37+
38+#
39+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
40+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
41+# files that some of these tools require.
42+#
43+
44+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
45+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
46+ cd $HOME/.stack && \
47+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
48+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
49+
50+#
51+# Install 'pid1' init daemon
52+#
53+
54+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
55+ chown root:root /usr/local/sbin && \
56+ chown root:root /usr/local/sbin/pid1
57+
58+#
59+# Install Stack
60+#
61+
62+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
63+
64+#
65+# Set up pid1 entrypoint and default command
66+#
67+
68+ENTRYPOINT ["/usr/local/sbin/pid1"]
69+CMD ["bash"]
automated/dockerfiles/lts-12.13/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-12.0
2+ARG STACK_VERSION=1.9.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.15/Dockerfilenew file+14
@@ -0,0 +1,14 @@
1+FROM fpco/stack-build:lts-12.0
2+ARG STACK_VERSION=1.9.1
3+ARG GHC_VERSION=8.4.4
4+RUN apt-get update && \
5+ apt-get install -y \
6+ ghc-$GHC_VERSION \
7+ ghc-$GHC_VERSION-dyn \
8+ ghc-$GHC_VERSION-htmldocs \
9+ ghc-$GHC_VERSION-prof && \
10+ rm -rf /var/lib/apt/lists/*
11+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
12+RUN ln -s ghc-$GHC_VERSION /opt/ghc/$GHC_VERSION/share/doc/ghc
13+ARG CUDA_VERSION=8.0
14+ENV PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
automated/dockerfiles/lts-12.21/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-12.15
2+ARG STACK_VERSION=1.9.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.26/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.4.4
6+ARG LTS_SLUG=lts-12.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=8.0
10+ARG BOOTSTRAP_COMMIT=7f982f63a3734ddb2a7cbbc52b8cec983c496efa
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+#
24+# Use Stackage's debian-bootstrap.sh script to install system libraries and
25+# tools required to build any Stackage package.
26+#
27+
28+RUN apt-get update && \
29+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
30+ if [ "$VARIANT" = "small" ]; then \
31+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
32+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
34+ apt-get update && \
35+ apt-get install -y --no-install-recommends \
36+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
37+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
38+ libtinfo-dev; \
39+ else \
40+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash; \
41+ fi && \
42+ rm -rf /var/lib/apt/lists/*
43+
44+#
45+# Create symlink to help tools find GHC documentation
46+#
47+
48+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
49+
50+#
51+# Install Stack
52+#
53+
54+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
55+
56+#
57+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
58+#
59+
60+RUN mkdir /etc/stack/ && \
61+ echo "system-ghc: true" >/etc/stack/config.yaml
62+
63+#
64+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
65+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
66+# files that some of these tools require.
67+#
68+
69+RUN export STACK_ROOT=/usr/local/lib/stack && \
70+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
71+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-13.0/Dockerfilenew file+69
@@ -0,0 +1,69 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.3
6+ARG LTS_SLUG=lts-13.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=26b29f2862462afd47fb916ed0a2c2a6844ebca9
11+ARG DEBIAN_FRONTEND=noninteractive
12+
13+#
14+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
15+#
16+
17+ENV LANG=C.UTF-8 \
18+ LC_ALL=C.UTF-8 \
19+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
20+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
21+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
22+#
23+# Use Stackage's debian-bootstrap.sh script to install system libraries and
24+# tools required to build any Stackage package.
25+#
26+
27+RUN apt-get update && \
28+ apt-get install -y wget && \
29+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
30+ rm -rf /var/lib/apt/lists/*
31+
32+#
33+# Create symlink to help tools find GHC documentation
34+#
35+
36+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
37+
38+#
39+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
40+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
41+# files that some of these tools require.
42+#
43+
44+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
45+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
46+ cd $HOME/.stack && \
47+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
48+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
49+
50+#
51+# Install 'pid1' init daemon
52+#
53+
54+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
55+ chown root:root /usr/local/sbin && \
56+ chown root:root /usr/local/sbin/pid1
57+
58+#
59+# Install Stack
60+#
61+
62+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
63+
64+#
65+# Set up pid1 entrypoint and default command
66+#
67+
68+ENTRYPOINT ["/usr/local/sbin/pid1"]
69+CMD ["bash"]
automated/dockerfiles/lts-13.12/Dockerfilenew file+93
@@ -0,0 +1,93 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.4
6+ARG LTS_SLUG=lts-13.11
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=9f2b7ab95c711794257b059604e80ab9ad3c0c45
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+
24+#
25+# Use Stackage's debian-bootstrap.sh script to install system libraries and
26+# tools required to build any Stackage package.
27+#
28+
29+RUN apt-get update && \
30+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
31+ if [ "$VARIANT" = "small" ]; then \
32+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
34+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
35+ apt-get update && \
36+ apt-get install -y --no-install-recommends \
37+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
38+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
39+ libtinfo-dev; \
40+ else \
41+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.3$/GHCVER=$GHC_VERSION/" | bash && \
42+ # Add g++ version required for building 'double-conversion' \
43+ # (see https://github.com/commercialhaskell/stack/issues/4470) \
44+ apt-get install -y g++-7; \
45+ fi && \
46+ rm -rf /var/lib/apt/lists/*
47+
48+#
49+# Create symlink to help tools find GHC documentation
50+#
51+
52+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
53+
54+#
55+# Install Stack
56+#
57+
58+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
59+
60+#
61+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
62+#
63+
64+RUN mkdir /etc/stack/ && \
65+ echo "system-ghc: true" >/etc/stack/config.yaml
66+
67+#
68+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
69+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
70+# files that some of these tools require.
71+#
72+
73+RUN export STACK_ROOT=/usr/local/lib/stack && \
74+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
75+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
76+ cd $STACK_ROOT && \
77+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
78+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
79+
80+#
81+# Install 'pid1' init daemon
82+#
83+
84+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
85+ chown root:root /usr/local/sbin && \
86+ chown root:root /usr/local/sbin/pid1
87+
88+#
89+# Set up pid1 entrypoint and default command
90+#
91+
92+ENTRYPOINT ["/usr/local/sbin/pid1"]
93+CMD ["bash"]
automated/dockerfiles/lts-13.20/Dockerfilenew file+93
@@ -0,0 +1,93 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-13.20
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=9f2b7ab95c711794257b059604e80ab9ad3c0c45
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+
24+#
25+# Use Stackage's debian-bootstrap.sh script to install system libraries and
26+# tools required to build any Stackage package.
27+#
28+
29+RUN apt-get update && \
30+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
31+ if [ "$VARIANT" = "small" ]; then \
32+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
34+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
35+ apt-get update && \
36+ apt-get install -y --no-install-recommends \
37+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
38+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
39+ libtinfo-dev; \
40+ else \
41+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.3$/GHCVER=$GHC_VERSION/" | bash && \
42+ # Add g++ version required for building 'double-conversion' \
43+ # (see https://github.com/commercialhaskell/stack/issues/4470) \
44+ apt-get install -y g++-7; \
45+ fi && \
46+ rm -rf /var/lib/apt/lists/*
47+
48+#
49+# Create symlink to help tools find GHC documentation
50+#
51+
52+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
53+
54+#
55+# Install Stack
56+#
57+
58+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
59+
60+#
61+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
62+#
63+
64+RUN mkdir /etc/stack/ && \
65+ echo "system-ghc: true" >/etc/stack/config.yaml
66+
67+#
68+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
69+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
70+# files that some of these tools require.
71+#
72+
73+RUN export STACK_ROOT=/usr/local/lib/stack && \
74+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
75+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
76+ cd $STACK_ROOT && \
77+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
78+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
79+
80+#
81+# Install 'pid1' init daemon
82+#
83+
84+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
85+ chown root:root /usr/local/sbin && \
86+ chown root:root /usr/local/sbin/pid1
87+
88+#
89+# Set up pid1 entrypoint and default command
90+#
91+
92+ENTRYPOINT ["/usr/local/sbin/pid1"]
93+CMD ["bash"]
automated/dockerfiles/lts-13.25/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-13.24
2+ARG STACK_VERSION=2.1.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-13.27/Dockerfilenew file+9
@@ -0,0 +1,9 @@
1+FROM $DOCKER_REPO:lts-13.26
2+ARG VARIANT
3+RUN if [ "$VARIANT" = "small" ]; then \
4+ apt-get update && \
5+ apt-get install -y --no-install-recommends sudo && \
6+ rm -rf /var/lib/apt/lists/*; \
7+ fi
8+ARG STACK_VERSION=2.1.3
9+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64-static.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-13.3/Dockerfilenew file+10
@@ -0,0 +1,10 @@
1+FROM fpco/stack-build:lts-13.0
2+
3+#
4+# Add g++ version required for building 'double-conversion'
5+# (see https://github.com/commercialhaskell/stack/issues/4470)
6+#
7+
8+RUN apt-get update && \
9+ apt-get install -y g++-7 && \
10+ rm -rf /var/lib/apt/lists/*
automated/dockerfiles/lts-14.0/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-14.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_VERSION=3.9
12+ARG BOOTSTRAP_COMMIT=d4143f1845f26e8e99d0a1a8134d6ff535ab98b2
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:/usr/lib/llvm-$LLVM_VERSION/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-14.0/Dockerfile.subnew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-14.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_VERSION=3.9
12+ARG BOOTSTRAP_COMMIT=d4143f1845f26e8e99d0a1a8134d6ff535ab98b2
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:/usr/lib/llvm-$LLVM_VERSION/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-15.0/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.2
6+ARG LTS_SLUG=lts-15.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=77790c7bcb21fd8875871245df5c5c39a55ec0c1
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-15.10/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-15.5
2+ARG STACK_VERSION=2.3.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-15.5/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-15.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=77790c7bcb21fd8875871245df5c5c39a55ec0c1
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-16.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-16.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.3.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-16.12/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.4
6+ARG LTS_SLUG=lts-16.12
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.3.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-16.8/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-16.0
2+ARG STACK_VERSION=2.3.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-17.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-17.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.5.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-17.10/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-17.9
2+ARG STACK_VERSION=2.7.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-17.3/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.4
6+ARG LTS_SLUG=lts-17.3
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.5.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-18.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.10.4
6+ARG LTS_SLUG=lts-18.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.7.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=b91382f2ff1f2775f4aa9d42c9a6b06b33e5904d
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=9.0.1$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-18.7/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.10.6
6+ARG LTS_SLUG=lts-18.6
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.7.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=b1d40e112040a7f44eff47a9fafb6937f5d02dff
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=9.0.1$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-9.0/Dockerfilenew file+55
@@ -0,0 +1,55 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.0.2
6+ARG LTS_SLUG=lts-9.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG BOOTSTRAP_COMMIT=1bc67bb54eda08c90d8421bc11d257354a379d11
9+ARG DEBIAN_FRONTEND=noninteractive
10+
11+#
12+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
13+#
14+
15+ENV LANG=C.UTF-8 \
16+ LC_ALL=C.UTF-8 \
17+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
18+
19+#
20+# Use Stackage's debian-bootstrap.sh script to install system libraries and
21+# tools required to build any Stackage package.
22+#
23+
24+RUN apt-get update && \
25+ apt-get install -y wget && \
26+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
27+ ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
32+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
33+# files that some of these tools require.
34+#
35+
36+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
37+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
38+ cd $HOME/.stack && \
39+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
40+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
41+
42+#
43+# Install proper 'pid1' init daemon
44+#
45+
46+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
47+ chown root:root /usr/local/sbin && \
48+ chown root:root /usr/local/sbin/pid1
49+
50+#
51+# Set up pid1 entrypoint and default command
52+#
53+
54+ENTRYPOINT ["/usr/local/sbin/pid1"]
55+CMD ["bash"]
automated/dockerfiles/lts-9.20/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-9.0
2+ARG STACK_VERSION=1.6.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-9.21/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-9.0
2+ARG STACK_VERSION=1.6.5
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/run-nightly.sh+1−5
@@ -4,12 +4,8 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
4
4
5while true; do
5while true; do
6 ./build.sh nightly-$(date -u +%F)
6 ./build.sh nightly-$(date -u +%F)
7−
8− echo "Running cron.sh (hiding verbose output)"
9− ./cron.sh > cron.log 2>&1 # | grep -v '^Skipping'
10− echo "done."
11− echo
12 date
7 date
13
8
14 sleep 30m
9 sleep 30m
10+ echo
15done
11done
become-a-curator.mdnew file+44
@@ -0,0 +1,44 @@
1+## We are no longer accepting applications, please wait until next time
2+
3+We are looking to expand the stackage curator team!
4+
5+As a stackage curator you will help the community by curating and
6+publishing the widely used nightly and LTS snapshots: Collections of
7+packages that are guaranteed to play well together. All curators are
8+volunteers.
9+
10+This is a great opportunity to contribute to the haskell community and get
11+familiar with the tools of the trade! You will also be in regular
12+contact with experienced community members.
13+
14+We don't have any prerequisites, but familiarity with any of Haskell,
15+Cabal, Stack, Linux, Git, and Docker is a plus.
16+
17+We work in shifts of one week, which means you will be on duty every
18+6th week. Our suggestion is to pair you up with another curator to
19+help out in the beginning.
20+
21+The workload is usually about 30 minutes per day, whenever you have
22+time. The work consists of keeping the builds running on the build
23+server, filing issues for packages needing updates when new releases
24+occur, and closing resolved issues. The LTS snapshots are prepared
25+once a week. All communication with package maintainers happen on
26+github.
27+
28+We also have a curator slack channel where we help each other out.
29+
30+The current curator team consists of:
31+* Adam Bergmark
32+* Dan Burton
33+* Jens Petersen
34+* Luke Murphy
35+* Michael Snoyman
36+
37+We onboarded Luke as the newest member a few months ago and this
38+helped us iron out and document the process further.
39+
40+You can read the curator documentation here: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md
41+
42+To apply, please fill in this form: [REDACTED]
43+
44+If you applied last time, we encourage you to do so again!
build-constraints.yaml+6088−1242
@@ -1,33 +1,687 @@
1−ghc-major-version: "8.0"
1+ghc-major-version: "9.0"
2+# new curator is supposed to use exact GHC version
3+ghc-version: "9.0.2"
4+
5+# This affects which version of the Cabal file format we allow. We
6+# should ensure that this is always no greater than the version
7+# supported by the most recent cabal-install and Stack releases.
8+cabal-format-version: "3.0"
9+
2# Constraints for brand new builds
10# Constraints for brand new builds
3packages:
11packages:
12+
13+ "Xy Ren <xy.r@outlook.com> @re-xyr":
14+ - cleff
15+
16+ "Janus Troelsen <ysangkok@gmail.com> @ysangkok":
17+ - ListZipper
18+ - rollbar
19+ - timezone-olson-th
20+
21+ "David Burkett <david@davidburkett.xyz> @Disco-Dave":
22+ - katip-wai
23+
24+ "Lukas Epple <sternenseemann@systemli.org> @sternenseemann":
25+ - socket
26+ - spacecookie
27+ - gopher-proxy
28+ - filepath-bytestring < 1.4.2.1.10 # https://github.com/commercialhaskell/stackage/issues/6355
29+ - download-curl
30+ - cabal2nix
31+ - distribution-nixpkgs
32+ - hackage-db
33+ - language-nix
34+ - jailbreak-cabal
35+
36+ "Profpatsch <mail@profpatsch.de> @Profpatsch":
37+ - error
38+ - yarn-lock
39+
40+ "James Sully <sullyj3@gmail.com> @sullyj3":
41+ - buttplug-hs-core
42+
43+ "Manuel Schneckenreither <manuel.schnecki@gmail.com> @schnecki":
44+ - experimenter
45+ - api-maker
46+ - easy-logger
47+
48+ "Kamil Dworakowski <kamil@dworakowski.name> @luntain":
49+ - error-or
50+ - error-or-utils
51+ - inbox
52+ - mock-time
53+
54+ "Liang-Ting Chen<liang.ting.chen.tw@gmail.com> @L-TChen":
55+ - geniplate-mirror
56+
57+ "Andreas Abel <andreas.abel@gu.se> @andreasabel":
58+ - BNFC
59+ - Sit
60+ - STMonadTrans
61+ - Agda
62+ - agda2lagda
63+ - cabal-clean
64+ - ListLike
65+ - haskell-src
66+ - fix-whitespace
67+ - hs-tags
68+ - goldplate
69+ - hasktags
70+ - regex-base
71+ - regex-compat
72+ - regex-pcre
73+ - regex-posix
74+ - regex-posix-clib
75+ - regex-tdfa
76+ - java-adt
77+ - shelly
78+ - tasty-silver
79+
80+ "Diogo Biazus <diogo@biazus.ca>":
81+ - hasql-notifications
82+
83+ "David James <dj112358@outlook.com> @davjam":
84+ - MapWith
85+
86+ "Bernie Pope <florbitous@gmail.com> @bjpop":
87+ - language-python
88+
89+ "Nils Alex <nils@famalex.de> @nilsalex":
90+ - safe-tensor
91+
92+ "Artur Gajowy <artur.gajowy@gmail.com> @ArturGajowy":
93+ - ghc-clippy-plugin
94+
95+ "Daniel Rolls <daniel.rolls.27@googlemail.com> @danielrolls":
96+ - byte-count-reader
97+
98+ "Allan Lukwago <epicallan.al@gmail.com> @epicallan":
99+ - servant-errors
100+
101+ "Christian Charukiewicz <charukiewicz@protonmail.com> @charukiewicz":
102+ - isbn
103+
104+ "Koz Ross <koz.ross@retro-freedom.nz> @kozross":
105+ - medea
106+
107+ "Marcin Rzeźnicki <marcin.rzeznicki@gmail.com> @marcin-rzeznicki":
108+ - hspec-tables
109+ - stackcollapse-ghc
110+ - libjwt-typed
111+
112+ "Mauricio Fierro <mauriciofierrom@gmail.com> @mauriciofierrom":
113+ - dialogflow-fulfillment
114+
115+ "Mihai Giurgeanu <mihai.giurgeanu@gmail.com> @mihaigiurgeanu":
116+ - sqlcli
117+ - sqlcli-odbc
118+ # not a maintainer
119+ - logging
120+
121+ "Sasha Bogicevic <sasa.bogicevic@pm.me> @v0d1ch":
122+ - plaid
123+
124+ "Geoffrey Mainland <mainland@drexel.edu> @mainland":
125+ - exception-mtl
126+ - exception-transformers
127+ - mainland-pretty
128+ - ref-fd
129+ - ref-tf
130+ - srcloc
131+ - symbol
132+
133+ "Patrick Bahr <paba@itu.dk>":
134+ - equivalence
135+ - compdata
136+ - Rattus
137+
138+ "Rob Stewart <robstewart57@gmail.com> @robstewart57":
139+ - gitlab-haskell < 0 # 0.3.2.0 text 1.2.5.0 exports `elem`
140+
141+ "Callan McGill <callan.mcgill@gmail.com> @callanmcgill":
142+ - perfect-vector-shuffle
143+
144+ "Luke Clifton <lukec@themk.net> @luke-clifton":
145+ - generic-monoid
146+
147+ "Tobias Reinhart <tobi.reinhart@fau.de> @TobiReinhart":
148+ - sparse-tensor
149+
150+ "Stephan Schiffels <stephan_schiffels@mac.com> @stschiff":
151+ - sequence-formats
152+ - pipes-ordered-zip
153+ - sequenceTools
154+
155+ "YongJoon Joe <developer@quietjoon.net> @QuietJoon":
156+ - doldol
157+ - ENIG
158+
159+ "Chris Penner <christopher.penner@gmail.com> @ChrisPenner":
160+ - eve
161+ - lens-regex-pcre
162+ - lens-csv
163+ - selections
164+ - slick
165+ - unipatterns
166+
167+ "Emily Pillmore <emilypi@cohomolo.gy> @topos":
168+ - base16
169+ - base16-lens
170+ - base32
171+ - base32-lens
172+ - base64
173+ - base64-lens
174+ - lens-process
175+ - microlens-process
176+ - nonempty-vector
177+ - smash
178+ - smash-aeson
179+ - smash-microlens
180+ - smash-lens
181+ - strict-tuple
182+ - strict-tuple-lens
183+
184+ "Matthieu Monsch <mtth@apache.org> @mtth":
185+ - flags-applicative
186+ - more-containers
187+ - tracing
188+
189+ "Robert Vollmert <rob@vllmrt.net> @robx":
190+ - configurator-pg
191+ - postgrest
192+
193+ "Sandy Maguire <sandy@sandymaguire.me> @isovector":
194+ - ecstasy
195+ - interpolatedstring-qq2
196+ - prospect
197+ - do-notation
198+ - unagi-chan
199+ - type-errors
200+
201+ "Matej Niznik <matten@tuta.io> @TheMatten":
202+ - polysemy
203+ - polysemy-plugin
204+ - polysemy-zoo
205+ - loopbreaker
206+
207+ "William Yao <williamyaoh@gmail.com> @williamyaoh":
208+ - string-interpolate
209+
210+ "Roel van Dijk <roel@lambdacube.nl> @roelvandijk":
211+ - terminal-progress-bar
212+
213+ "Marek Fajkus <marek.faj@gmail.com> @turboMaCk":
214+ - wai-enforce-https
215+ - aeson-combinators
216+
217+ "Fernando Freire <dogonthehorizon@gmail.com> @dogonthehorizon":
218+ - hal
219+
220+ "Nathan Fairhurst <nathan.fairhurst@nike.com> @iamfromspace":
221+ - hal
222+
223+ "Daniel Taskoff <daniel.taskoff@gmail.com> @dtaskoff":
224+ - hlibcpuid
225+ - skip-var
226+ - system-info
227+
228+ "Dzianis Kabanau <kobargh@gmail.com> @kobargh":
229+ - template-toolkit
230+
231+ "Christopher Davenport <chris@christopherdavenport.tech> @ChristopherDavenport":
232+ - nonemptymap
233+ - hinfo
234+
235+ "Joerg Winter <jwin1968@gmail.com> @clojj":
236+ - rosezipper
237+
238+ "Edward Wastell <edward@wastell.co.uk> @edwardwas":
239+ - TotalMap
240+ - sized-grid
241+
242+ "Antonio Alonso Dominguez <alonso.domin@gmail.com> @alonsodomin":
243+ - hschema
244+ - hschema-aeson
245+ - hschema-prettyprinter
246+ - hschema-quickcheck
247+
248+ "Preetham Gujjula <preetham.gujjula@gmail.com> @pgujjula":
249+ - modular
250+ - list-predicate
251+
252+ "Guillaume Bouchard <guillaum.bouchard@gmail.com> @guibou":
253+ - krank
254+ - pretty-terminal
255+ - PyF
256+
257+ "Erik Schnetter <schnetter@gmail.com> @eschnett":
258+ - mpi-hs
259+ - mpi-hs-binary
260+ - mpi-hs-cereal
261+
262+ "Yang Bo <pop.atry@gmail.com> @Atry":
263+ - control-dsl
264+
265+ "Laurent P. René de Cotret <laurent.decotret@outlook.com> @LaurentRDC":
266+ - pandoc-plot
267+
268+ "Andrew Newman <andrewfnewman@gmail.com> @andrewfnewman":
269+ - geojson
270+
271+ "Mateusz Karbowy <mateusz.karbowy@gmail.com> @obszczymucha":
272+ - parsec-numbers
273+
274+ "Joshua Grosso <jgrosso256@gmail.com> @jgrosso":
275+ - axel
276+
277+ "Varun Gandhi <theindigamer15@gmail.com> @theindigamer":
278+ - edit
279+
280+ "Luka Hadžiegrić <reygoch@gmail.com> @reygoch":
281+ - valor
282+
283+ "Scott N. Walck <walck@lvc.edu> @walck":
284+ - cyclotomic
285+ - learn-physics
286+ - TypeCompose
287+
288+ # @ghorn
289+ - not-gloss
290+ - spatial-math
291+
292+ "Phil de Joux <phil.dejoux@blockscope.com> @philderbeast":
293+ - siggy-chardust
294+ - detour-via-sci
295+ - hpack-dhall
296+
297+ "Matthew Ahrens <matt.p.ahrens@gmail.com> @mpahrens":
298+ - forkable-monad
299+ - butter < 0 # 0.1.0.6 text 1.2.5.0 exports `elem`
300+
301+ "Iris Ward <aditu.venyhandottir@gmail.com> @AdituV":
302+ - typenums
303+
304+ "Jude Taylor <me@jude.xyz> @pikajude":
305+ - th-printf
306+
307+ "Christian Marie <christian@ponies.io> @christian-marie":
308+ - git-vogue
309+
310+ "Manuel Bärenz <programming@manuelbaerenz.de> @turion":
311+ - dunai
312+ - rhine
313+ - rhine-gloss
314+ - finite-typelits
315+ - essence-of-live-coding
316+ - essence-of-live-coding-gloss
317+ - essence-of-live-coding-pulse
318+ - essence-of-live-coding-quickcheck
319+ - essence-of-live-coding-warp
320+ - pulse-simple
321+ - simple-affine-space
322+ - has-transformers
323+
324+ "Paul Johnson <paul@cogito.org.uk> @PaulJohnson":
325+ - geodetics
326+ - Ranged-sets
327+
328+ "Travis Athougies <travis@athougies.net> @tathougies":
329+ - beam-core
330+ - beam-migrate
331+ - beam-mysql
332+ - beam-postgres
333+ - beam-sqlite
334+
335+ "Fraser Murray <fraser.m.murray@gmail.com @intolerable":
336+ - stitch
337+
338+ "Yusent Chig <yusent@protonmail.com> @yusent":
339+ - yesod-auth-bcryptdb
340+
341+ "Johannes Gerer <oss@johannesgerer.com>":
342+ - buchhaltung
343+
344+ "Tom McLaughlin <tom@codedown.io> @thomasjm":
345+ - aeson-typescript
346+ - fsnotify
347+ - sandwich
348+ - sandwich-quickcheck
349+ - sandwich-slack
350+ - sandwich-webdriver
351+ - slack-progressbar
352+
353+ "Paulo Tanaka <paulot@fb.com> @paulot":
354+ # on behalf of Bryan O'Sullivan @bos:
355+ - zstd
356+
357+ "Jacek Galowicz <jacek@galowicz.de> @tfc":
358+ - hamtsolo
359+
360+ "Ferdinand van Walree <ferdinandvwalree@gmail.com> @Ferdinand-vW":
361+ - tuple-sop
362+ - sessiontypes
363+ - sessiontypes-distributed
364+
365+ "Jacob Thomas Errington <tsani@mail.jerrington.me> @tsani":
366+ - servant-github-webhook
367+ - pushbullet-types
368+
369+ "Theodore Lief Gannon <tanuki@gmail.com> @tejon":
370+ - aeson-yak
371+ - safe-foldable
372+
373+ "Jaro Reinders <jaro.reinders@gmail.com> @Noughtmare":
374+ - haskell-lsp-client
375+
376+ "Florian Knupfer <fknupfer@gmail.com> @knupfer":
377+ - type-of-html
378+ - type-of-html-static
379+ - chronos-bench
380+
381+ "Mikolaj Konarski <mikolaj.konarski@funktory.com> @Mikolaj":
382+ - sdl2-ttf
383+ - enummapset
384+ - assert-failure
385+ - minimorph
386+ - miniutter
387+ - LambdaHack
388+ - Allure
389+
390+ "Jürgen Keck <jhyphenkeck@gmail.com> @j-keck":
391+ - wreq-stringless
392+
393+ "Olaf Chitil <oc@kent.ac.uk> @OlafChitil":
394+ - FPretty
395+
396+ "Maarten Faddegon <stackage@maartenfaddegon.nl> @MaartenFaddegon":
397+ - libgraph
398+ - Hoed
399+
400+ "Agustin Camino <agustin.camino@gmail.com> @acamino":
401+ - state-codes
402+
403+ "Sebastian Mihai Ardelean <ardeleanasm@gmail.com> @ardeleanasm":
404+ - qchas
405+
406+ "Patrick Pelletier <code@funwithsoftware.org> @ppelleti":
407+ - mercury-api
408+ - normalization-insensitive
409+
410+ "Jacob Stanley <jacob@stanley.io> @jacobstanley":
411+ - hedgehog < 1.1 # https://github.com/commercialhaskell/stackage/issues/6415
412+ - hedgehog-quickcheck
413+ - transformers-bifunctors
414+ - unix-compat
415+
416+ "Walter Schulze <awalterschulze@gmail.com> @awalterschulze":
417+ - katydid
418+
419+ "Nobutada Matsubara <t12307043@gunma-u.ac.jp> @matsubara0507":
420+ - chatwork
421+ - rakuten
422+ - servant-kotlin
423+
424+ "Pavol Klacansky <pavol@klacansky.com> @pavolzetor":
425+ - openexr-write
426+
427+ "Pasqualino Assini <tittoassini@gmail.com> @tittoassini":
428+ - zm
429+ - flat
430+ - model
431+
432+ "Jose Iborra <pepeiborra@gmail.com> @pepeiborra":
433+ - arrowp-qq
434+ - haskell-src-exts-util
435+ - hexml-lens
436+ - hp2pretty
437+ - floatshow
438+ - ghc-check
439+
440+ "Roman Gonzalez <open-source@roman-gonzalez.info> @roman":
441+ - componentm
442+ - componentm-devel
443+ - teardown
444+ - etc
445+ - capataz
446+
447+ "Richard Cook <rcook@rcook.org> @rcook":
448+ - hidden-char
449+ - oset
450+ - req-url-extra
451+ - sexpr-parser
452+
453+ "Vanessa McHale <vmchale@gmail.com> @vmchale":
454+ - bz2
455+
456+ "Henning Thielemann <stackage@henning-thielemann.de> @thielema":
457+ - accelerate-arithmetic
458+ - accelerate-fftw
459+ - accelerate-fourier
460+ - accelerate-utility
461+ - align-audio
462+ - alsa-core
463+ - alsa-pcm
464+ - alsa-seq
465+ - apportionment
466+ - audacity
467+ - battleship-combinatorics
468+ - bibtex
469+ - board-games
470+ - buffer-pipe
471+ - cabal-flatpak
472+ - calendar-recycling
473+ - checksum
474+ - combinatorial
475+ - comfort-graph
476+ - comfort-array
477+ - comfort-array-shape
478+ - comfort-fftw
479+ - concurrent-split
480+ - cutter
481+ - data-accessor
482+ - data-accessor-mtl
483+ - data-accessor-template
484+ - data-accessor-transformers
485+ - data-ref
486+ - doctest-exitcode-stdio
487+ - doctest-extract
488+ - doctest-lib
489+ - dsp
490+ - enumset
491+ - equal-files
492+ - event-list
493+ - explicit-exception
494+ - fixed-length
495+ - fftw-ffi
496+ - gnuplot
497+ - group-by-date
498+ - guarded-allocation
499+ - iff
500+ - interpolation
501+ - jack
502+ - latex
503+ - lazyio
504+ - markov-chain
505+ - midi
506+ - midi-alsa
507+ - midi-music-box
508+ - mbox-utility
509+ - med-module
510+ - monoid-transformer
511+ - non-empty
512+ - non-negative
513+ - numeric-prelude
514+ - numeric-quest
515+ - pathtype
516+ - pooled-io
517+ - probability
518+ - quickcheck-transformer
519+ - sample-frame
520+ - sample-frame-np
521+ - set-cover
522+ - shell-utility
523+ - sound-collage
524+ - sox
525+ - soxlib
526+ - split-record
527+ - spreadsheet
528+ - stm-split
529+ - storable-record
530+ - storable-tuple
531+ - storablevector
532+ - synthesizer-core
533+ - synthesizer-dimensional
534+ - synthesizer-alsa
535+ - synthesizer-midi
536+ - tagchup
537+ - tfp
538+ - unicode
539+ - unique-logic
540+ - unique-logic-tf
541+ - unsafe
542+ - utility-ht
543+ - xml-basic
544+ - youtube
545+ - prelude-compat
546+ - fft
547+ - carray
548+ - lapack-ffi-tools
549+ - netlib-ffi
550+ - blas-ffi
551+ - lapack-ffi
552+ - netlib-carray
553+ - blas-carray
554+ - lapack-carray
555+ - netlib-comfort-array
556+ - blas-comfort-array
557+ - lapack-comfort-array
558+ - lapack
559+ - lapack-hmatrix
560+ - hmm-lapack
561+ - magico
562+ - resistor-cube
563+ - linear-circuit
564+ # Not a maintainer
565+ - cabal-plan
566+ - topograph
567+ - ix-shapable
568+ - hsshellscript
569+ - hyper
570+ - storable-endian
571+
572+ "Jeremy Barisch-Rooney <barischj@tcd.ie> @barischrooneyj":
573+ - threepenny-gui-flexbox
574+
575+ "Romain Edelmann <romain.edelmann@gmail.com> @redelmann":
576+ - distribution
577+
578+ "Nikita Tchayka <nikitatchayka@gmail.com> @nickseagull":
579+ - ramus
580+ - require
581+ - tintin
582+ - aws-lambda-haskell-runtime
583+
584+ "Simon Jakobi <simon.jakobi@gmail.com> @sjakobi":
585+ - threepenny-gui
586+ - newtype-generics
587+ - bsb-http-chunked
588+ - hspec-parsec
589+ - checkers
590+ - unordered-containers
591+ - prettyprinter
592+ - prettyprinter-ansi-terminal
593+ - prettyprinter-compat-wl-pprint
594+ - prettyprinter-compat-ansi-wl-pprint
595+ - prettyprinter-compat-annotated-wl-pprint
596+ - prettyprinter-convert-ansi-wl-pprint
597+
598+ "Joe M <joe9mail@gmail.com> @joe9":
599+ - logger-thread
600+ - text-generic-pretty
601+
602+ "Li-yao Xia <lysxia@gmail.com> @Lysxia":
603+ - ap-normalize
604+ - boltzmann-samplers
605+ - first-class-families
606+ - generic-data
607+ - generic-data-surgery
608+ - generic-functor
609+ - generic-random
610+ - scanf
611+ - show-combinators
612+ - type-map
613+ - quickcheck-higherorder
614+ - test-fun
615+
616+ "Tobias Dammers <tdammers@gmail.com> @tdammers":
617+ - ginger
618+ - yeshql
619+
620+ "Yair Chuchem <yairchu@gmail.com> @yairchu":
621+ - generic-constraints
622+ - List
623+ - ListTree
624+
4 "Marco Zocca @ocramz":
625 "Marco Zocca @ocramz":
626+ - ad-delcont
5 - sparse-linear-algebra
627 - sparse-linear-algebra
6− - network-multicast
628+ - depq
629+ - matrix-market-attoparsec
630+ - splitmix-distributions
631+ - rp-tree
632+ - xeno
633+ - bytestring-mmap # required by xeno
634+ - datasets
635+ - lucid-extras
636+ - mnist-idx-conduit
637+ - rigel-viz
7
638
8 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
639 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
9 - sqlite-simple-errors
640 - sqlite-simple-errors
641+ - median-stream
642+ - stm-supply
643+ - filter-logger
644+ - tile
645+ - mbtiles
10
646
11 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
647 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
12 - quickcheck-arbitrary-adt
648 - quickcheck-arbitrary-adt
13 - hspec-golden-aeson
649 - hspec-golden-aeson
14− - servant-aeson-specs
650+ - quickcheck-arbitrary-template
15
651
16− "Winter Land <winterland1989@gmail.com> @winterland1989":
652+ "Winter Han <winterland1989@gmail.com> @winterland1989":
653+ - if
17 - tcp-streams
654 - tcp-streams
655+ - tcp-streams-openssl
18 - wire-streams
656 - wire-streams
19 - binary-parsers
657 - binary-parsers
20 - binary-ieee754
658 - binary-ieee754
21 - word24
659 - word24
22 - mysql-haskell
660 - mysql-haskell
661+ - mysql-haskell-openssl
662+ - data-has
663+ - unboxed-ref
23
664
24 "Harendra Kumar <harendra.kumar@gmail.com> @harendra-kumar":
665 "Harendra Kumar <harendra.kumar@gmail.com> @harendra-kumar":
666+ - bench-show
667+ - monad-recorder
668+ - packcheck
669+ - streamly
25 - unicode-transforms
670 - unicode-transforms
671+ - xls
672+
673+ "Pranay Sashank <pranaysashank@gmail.com> @pranaysashank":
674+ - fusion-plugin-types
675+ - fusion-plugin
676+
677+ "Adithya Kumar <adi.obilisetty@gmail.com> @adithyaov":
678+ - unicode-data
26
679
27 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
680 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
28− # - postgresql-query # BLOCKED derive
681+ - postgresql-query
29 - hreader
682 - hreader
30 - hset
683 - hset
684+ - base58-bytestring
31
685
32 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
686 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
33 - kawhi
687 - kawhi
@@ -39,63 +693,61 @@ packages:
39 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
693 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
40 - makefile
694 - makefile
41
695
42− "Michael Litchard <michael@schmong.org> @mlitchard":
43− - point-octree
44−
45 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
696 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
46 - symengine
697 - symengine
47
698
48 "alpheccar <misc@alpheccar.org> @alpheccar":
699 "alpheccar <misc@alpheccar.org> @alpheccar":
49 - HPDF
700 - HPDF
50− - hbayes
51
701
52− "Dmitry Bogatov <KAction@gnu.org>":
702+ "Dmitry Bogatov <KAction@gnu.org> @iu-guest":
53 - once
703 - once
704+ - mbug
54
705
55 "David Johnson <djohnson.m@gmail.com> @dmjio":
706 "David Johnson <djohnson.m@gmail.com> @dmjio":
707+ - miso
56− # GHC 8 - envy
708+ - envy
57 - s3-signer
709 - s3-signer
58− # bounds - google-translate
710+ - google-translate
59 - hackernews
711 - hackernews
60− # bounds - ses-html
712+ - ses-html
61− # via stripe-http-streams - stripe-haskell
713+ - stripe-haskell
62− # via http-streams - stripe-http-streams
714+ - stripe-http-client
63− # - stripe-core # BLOCKED aeson 1.0
715+ - stripe-core
716+ - stripe-tests
64
717
65 "Piotr Mlodawski @pmlodawski":
718 "Piotr Mlodawski @pmlodawski":
719+ - error-util < 0 # 0.0.1.2 MonadFail
66 - signal
720 - signal
67− # GHC 8 - ghc-session
68
721
69 "Michael Snoyman michael@snoyman.com @snoyberg":
722 "Michael Snoyman michael@snoyman.com @snoyberg":
70 - bzlib-conduit
723 - bzlib-conduit
71− - cabal-install
72− - cabal-src
73 - case-insensitive
724 - case-insensitive
74 - classy-prelude-yesod
725 - classy-prelude-yesod
75 - conduit-combinators
726 - conduit-combinators
76 - conduit-extra
727 - conduit-extra
77 - hebrew-time
728 - hebrew-time
78− - keter
79 - markdown
729 - markdown
80 - mime-mail
730 - mime-mail
81 - mime-mail-ses
731 - mime-mail-ses
732+ - mime-types
82 - network-conduit-tls
733 - network-conduit-tls
83 - persistent
734 - persistent
84 - persistent-mysql
735 - persistent-mysql
85 - persistent-postgresql
736 - persistent-postgresql
86 - persistent-sqlite
737 - persistent-sqlite
87 - persistent-template
738 - persistent-template
88− # - stackage-curator # BLOCKED amazonka-core
739+ - persistent-test
89− - stm-conduit
740+ - store
741+ - wai-extra
90 - wai-websockets
742 - wai-websockets
91 - warp-tls
743 - warp-tls
92− - yackage
93 - yesod
744 - yesod
745+ - authenticate
746+ - html-conduit
94 - yesod-auth
747 - yesod-auth
95 - authenticate-oauth
748 - authenticate-oauth
96 - yesod-bin
749 - yesod-bin
97 - yesod-eventsource
750 - yesod-eventsource
98− - yesod-fay
99 - yesod-gitrepo
751 - yesod-gitrepo
100 - yesod-newsfeed
752 - yesod-newsfeed
101 - yesod-sitemap
753 - yesod-sitemap
@@ -104,7 +756,7 @@ packages:
104 - yesod-websockets
756 - yesod-websockets
105 - cereal-conduit
757 - cereal-conduit
106 - binary-conduit
758 - binary-conduit
107− # GHC 8 - lzma-conduit
759+ - lzma-conduit
108 - mutable-containers
760 - mutable-containers
109 - hpc-coveralls
761 - hpc-coveralls
110 - monad-unlift
762 - monad-unlift
@@ -112,60 +764,70 @@ packages:
112 - yaml
764 - yaml
113 - servius
765 - servius
114 - cryptonite-conduit
766 - cryptonite-conduit
767+ - streaming-commons
115
768
116− - alex
769+ - alex < 3.2.7 || > 3.2.7
117 - async
770 - async
118 - base16-bytestring
771 - base16-bytestring
119− - c2hs
120− - cassava
121− # GHC 8 - csv-conduit
772+ - csv-conduit
122 - executable-hash
773 - executable-hash
123 - executable-path
774 - executable-path
124 - foreign-store
775 - foreign-store
125 - formatting
776 - formatting
126 - gtk2hs-buildtools
777 - gtk2hs-buildtools
127− - happy
778+ - happy < 1.21.0 || > 1.21.0 # https://github.com/commercialhaskell/stackage/issues/6294
128 - hybrid-vectors
779 - hybrid-vectors
129 - indents
780 - indents
130 - language-c
781 - language-c
131− - lhs2tex
132− # GHC 8 2.5 compilation failure - persistent-mongoDB
782+ - persistent-mongoDB
133 - pretty-class
783 - pretty-class
134 - th-expand-syns
784 - th-expand-syns
135− - criterion
136 - th-lift
785 - th-lift
137 - quickcheck-assertions
786 - quickcheck-assertions
138
787
139− # - hackage-mirror BLOCKED aws
140− - wai-middleware-consul
141 - wai-middleware-crowd
788 - wai-middleware-crowd
142 - monad-logger-json
789 - monad-logger-json
143 - safe-exceptions
790 - safe-exceptions
144− - monad-logger-syslog
145 - fsnotify-conduit
791 - fsnotify-conduit
146 - pid1
792 - pid1
147 - typed-process
793 - typed-process
794+ - say
795+ - unliftio-core
796+ - unliftio
148
797
149− - fsnotify
150 - hinotify
798 - hinotify
151 - hfsevents
799 - hfsevents
152 - Win32-notify
800 - Win32-notify
801+ - windns
802+
803+ - mono-traversable
804+ - http-client
805+ - http-conduit
806+ - githash
807+
808+ - time-manager
809+ - pantry
810+ - mega-sdist
811+ - http-download
812+ - hi-file-parser
813+ - rio-prettyprint
814+ - packdeps
815+
816+ "Brandon Barker <brandon.barnnker@gmail.com> @bbarker":
817+ - unexceptionalio
818+ - unexceptionalio-trans
819+ - zio
153
820
154 "Omari Norman <omari@smileystation.com> @massysett":
821 "Omari Norman <omari@smileystation.com> @massysett":
155 - rainbow
822 - rainbow
156 - rainbox
823 - rainbox
157− - anonymous-sums
158 - multiarg
824 - multiarg
159− - prednote
160− - cartel
161− - Earley
162 - ofx
825 - ofx
163− - pinchot
164 - accuerr
826 - accuerr
165 - timelens
827 - timelens
166− - non-empty-sequence
828+ - squeather
167
829
168− "Neil Mitchell @ndmitchell":
830+ "Neil Mitchell <ndmitchell@gmail.com> @ndmitchell":
169 - hlint
831 - hlint
170 - hoogle
832 - hoogle
171 - shake
833 - shake
@@ -176,36 +838,78 @@ packages:
176 - nsis
838 - nsis
177 - js-jquery
839 - js-jquery
178 - js-flot
840 - js-flot
841+ - js-dgtable
179 - extra
842 - extra
180− - bake
181 - ghcid
843 - ghcid
844+ - hexml
845+ - profiterole
846+ - record-dot-preprocessor
847+ - filepattern
848+ - record-hasfield
849+ - rattle
850+ - hie-bios
851+ - fuzzy
852+
853+ "Digital Asset <shayne.fletcher@digitalasset.com>":
854+ - ghc-lib
855+ - ghc-lib-parser
856+
857+ "Shayne Fletcher <shayne.fletcher@digitalasset.com>":
858+ - ghc-lib-parser-ex >= 9.0.0.6
859+
860+ "Karl Ostmo <kostmo@gmail.com> @kostmo":
861+ - perfect-hash-generator
182
862
183 "Alan Zimmerman @alanz":
863 "Alan Zimmerman @alanz":
864+ - ghc-exactprint
865+ - haskell-lsp
184 - hjsmin
866 - hjsmin
185 - language-javascript
867 - language-javascript
186 - Strafunski-StrategyLib
868 - Strafunski-StrategyLib
187− # - HaRe # BLOCKED ghc-mod via pipes
869+
870+ "Luke Lau <luke_lau@icloud.com> @bubba":
871+ - lsp-test
188
872
189 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
873 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
190 - mandrill
874 - mandrill
191
875
192 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
876 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
193 - pinboard
877 - pinboard
878+ - swagger-petstore
194
879
195 "Jasper Van der Jeugt @jaspervdj":
880 "Jasper Van der Jeugt @jaspervdj":
196 - blaze-html
881 - blaze-html
197 - blaze-markup
882 - blaze-markup
198− - cabal-dependency-licenses
199− # - hakyll # QuickCheck, snap-server, via pandoc, via pandoc-citeproc
200 - stylish-haskell
883 - stylish-haskell
201− # - profiteur # BLOCKED aeson 1.0
884+ - profiteur
202 - psqueues
885 - psqueues
203 - websockets
886 - websockets
204 - websockets-snap
887 - websockets-snap
205
888
889+ "Jasper Van der Jeugt @jaspervdj & Alexander Batischev <eual.jp@gmail.com> @Minoru":
890+ - hakyll
891+
206 "Sibi Prabakaran <sibi@psibi.in> @psibi":
892 "Sibi Prabakaran <sibi@psibi.in> @psibi":
207 - download
893 - download
208 - textlocal
894 - textlocal
895+ - shell-conduit
896+ - tldr
897+ - fb
898+ - yesod-fb
899+ - yesod-auth-fb
900+ - hourglass-orphans
901+ - wai-slack-middleware
902+ - sysinfo
903+ - xmonad-extras
904+ - persistent-redis
905+ - fakedata
906+ - fakedata-parser
907+ - fakedata-quickcheck
908+ - streamly-bytestring
909+
910+ "haskell-openal":
911+ - OpenAL
912+ - ALUT
209
913
210 "haskell-opengl":
914 "haskell-opengl":
211 - OpenGL
915 - OpenGL
@@ -222,7 +926,7 @@ packages:
222 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
926 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
223 - clock
927 - clock
224
928
225− "Stefan Wehr <wehr@factisresearch.com> @skogsbaer":
929+ "Stefan Wehr <mail@stefanwehr.de> @skogsbaer":
226 - HTF
930 - HTF
227 - xmlgen
931 - xmlgen
228 - stm-stats
932 - stm-stats
@@ -232,6 +936,7 @@ packages:
232 - parseargs
936 - parseargs
233
937
234 "Vincent Hanquez @vincenthz":
938 "Vincent Hanquez @vincenthz":
939+ - basement
235 - bytedump
940 - bytedump
236 - cipher-aes
941 - cipher-aes
237 - cipher-rc4
942 - cipher-rc4
@@ -241,8 +946,12 @@ packages:
241 - cryptocipher
946 - cryptocipher
242 - cryptohash
947 - cryptohash
243 - cryptonite
948 - cryptonite
949+ - cryptonite-openssl
244 - crypto-pubkey-types
950 - crypto-pubkey-types
245 - crypto-random-api
951 - crypto-random-api
952+ - foundation
953+ - gauge
954+ - git < 0 # 0.3.0 compile fail MonadFail
246 - hit
955 - hit
247 - memory
956 - memory
248 - language-java
957 - language-java
@@ -250,14 +959,15 @@ packages:
250 - pem
959 - pem
251 - siphash
960 - siphash
252 - socks
961 - socks
962+ - tasty-kat
253 - tls
963 - tls
254 - tls-debug
964 - tls-debug
255− - vhd
965+ - vhd < 0 # 0.2.2 compile fail: Missing Semigroup Checksum
256− - xenstore
966+ - xenstore < 0 # 0.1.1 compile fail: sClose not in scope
257
967
258 "Chris Done @chrisdone":
968 "Chris Done @chrisdone":
969+ - labels
259 - ace
970 - ace
260− - ical
261 - check-email
971 - check-email
262 - freenect
972 - freenect
263 - frisby
973 - frisby
@@ -265,21 +975,18 @@ packages:
265 - hostname-validate
975 - hostname-validate
266 - ini
976 - ini
267 - lucid
977 - lucid
268− - osdkeys
269 - pdfinfo
978 - pdfinfo
270− # GHC 8 https://github.com/fpco/stackage/issues/1062 - present
271 - pure-io
979 - pure-io
272− # GHC 8 - scrobble
273− - shell-conduit
274 - sourcemap
980 - sourcemap
275 - hindent
981 - hindent
276 - descriptive
982 - descriptive
277 - wrap
983 - wrap
278 - path
984 - path
279− - intero
280 - weigh
985 - weigh
281− # GHC 8 - haskell-docs
986+ - odbc
282− # bounds - structured-haskell-mode
987+ - structured-haskell-mode
988+ - casa-client
989+ - casa-types
283
990
284 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
991 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
285 - RefSerialize
992 - RefSerialize
@@ -288,57 +995,66 @@ packages:
288 - MFlow
995 - MFlow
289 - transient
996 - transient
290 - transient-universe
997 - transient-universe
291− - ghcjs-hplay
998+ - axiom
292
999
293 "Edward Kmett <ekmett@gmail.com> @ekmett":
1000 "Edward Kmett <ekmett@gmail.com> @ekmett":
294 - ad
1001 - ad
295 - adjunctions
1002 - adjunctions
1003+ - algebra
1004+ - ansi-wl-pprint
296− # GHC 8 & bounds - approximate
1005+ - approximate
297 - bifunctors
1006 - bifunctors
298 - bits
1007 - bits
299− # GHC 8 - bound
1008+ - bound
300 - bytes
1009 - bytes
301 - charset
1010 - charset
302 - comonad
1011 - comonad
303− - comonads-fd
304− - comonad-transformers
305− # GHC 8 & bounds - compensated
1012+ - compensated
306− # bounds - compressed
1013+ - compressed
307 - concurrent-supply
1014 - concurrent-supply
308 - constraints
1015 - constraints
309 - contravariant
1016 - contravariant
310 - distributive
1017 - distributive
1018+ - discrimination
311 - either
1019 - either
312 - eq
1020 - eq
313 - ersatz
1021 - ersatz
314− - exceptions
1022+ - fixed
1023+ - folds
315 - free
1024 - free
1025+ - gl
316 - graphs
1026 - graphs
317− - groupoids
1027+ - half
318 - heaps
1028 - heaps
1029+ - hybrid-vectors
1030+ - hyperloglog
319 - hyphenation
1031 - hyphenation
1032+ - indexed-traversable
320 - integration
1033 - integration
1034+ - intern
321 - intervals
1035 - intervals
322 - kan-extensions
1036 - kan-extensions
1037+ - keys
323 - lca
1038 - lca
324 - lens
1039 - lens
1040+ - lens-action
1041+ - lens-aeson
1042+ - lens-properties
325 - linear
1043 - linear
326 - linear-accelerate
1044 - linear-accelerate
327 - log-domain
1045 - log-domain
328 - machines
1046 - machines
329 - monadic-arrays
1047 - monadic-arrays
330 - monad-products
1048 - monad-products
331− - monad-products
1049+ - monad-st
332− # GHC 8 - monad-st
1050+ # - mtl take the one that ships with GHC
333− - mtl
334 - nats
1051 - nats
335 - numeric-extras
1052 - numeric-extras
336 - parsers
1053 - parsers
337 - pointed
1054 - pointed
338− - prelude-extras
339− - profunctor-extras
340 - profunctors
1055 - profunctors
341− - reducers
1056+ - promises
1057+ - rcu
342 - reducers
1058 - reducers
343 - reflection
1059 - reflection
344 - semigroupoid-extras
1060 - semigroupoid-extras
@@ -346,18 +1062,19 @@ packages:
346 - semigroups
1062 - semigroups
347 - speculation
1063 - speculation
348 - streams
1064 - streams
1065+ - structs
349 - tagged
1066 - tagged
1067+ - tagged-transformer
1068+ - transformers-compat <0.7 # https://github.com/commercialhaskell/stackage/issues/6137
1069+ - trifecta
1070+ - unique
350 - vector-instances
1071 - vector-instances
351 - void
1072 - void
352 - wl-pprint-extras
1073 - wl-pprint-extras
1074+ - wreq
353 - wl-pprint-terminfo
1075 - wl-pprint-terminfo
354 - zippers
1076 - zippers
355− - fixed
356− - half
357− - gl
358− - lens-aeson
359 - zlib-lens
1077 - zlib-lens
360− # GHC 8 - hyperloglog
361
1078
362 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
1079 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
363 - scotty
1080 - scotty
@@ -365,6 +1082,8 @@ packages:
365
1082
366 "Simon Hengel <sol@typeful.net> @sol":
1083 "Simon Hengel <sol@typeful.net> @sol":
367 - hspec
1084 - hspec
1085+ - hspec-core
1086+ - hspec-discover
368 - hspec-wai
1087 - hspec-wai
369 - hspec-wai-json
1088 - hspec-wai-json
370 - aeson-qq
1089 - aeson-qq
@@ -372,31 +1091,33 @@ packages:
372 - doctest
1091 - doctest
373 - base-compat
1092 - base-compat
374
1093
375− "Mario Blazevic <blamario@yahoo.com> @blamario":
1094+ "Mario Blazevic <blamario@protonmail.com> @blamario":
376 - monad-parallel
1095 - monad-parallel
377 - monad-coroutine
1096 - monad-coroutine
378− - incremental-parser
379 - monoid-subclasses
1097 - monoid-subclasses
380− - picoparsec
1098+ - rank2classes
1099+ - input-parsers
1100+ - incremental-parser
1101+ - construct
381
1102
382 "Brent Yorgey <byorgey@gmail.com> @byorgey":
1103 "Brent Yorgey <byorgey@gmail.com> @byorgey":
383 - active
1104 - active
384− # via haxr - BlogLiterately
385− # GHC 8 - BlogLiterately-diagrams
386 - diagrams
1105 - diagrams
387− # GHC 8 & bounds - diagrams-builder
1106+ - diagrams-builder
388− # GHC 8 & bounds - diagrams-haddock
389 - diagrams-cairo
1107 - diagrams-cairo
1108+ - diagrams-canvas
390 - diagrams-contrib
1109 - diagrams-contrib
391 - diagrams-core
1110 - diagrams-core
392 - diagrams-gtk
1111 - diagrams-gtk
1112+ - diagrams-html5
393 - diagrams-lib
1113 - diagrams-lib
394 - diagrams-postscript
1114 - diagrams-postscript
395 - diagrams-rasterific
1115 - diagrams-rasterific
1116+ - diagrams-solve
396 - diagrams-svg
1117 - diagrams-svg
397− - dual-tree
398 - force-layout
1118 - force-layout
399− # via http-streams - haxr
1119+ - SVGFonts
1120+ - haxr
400 - MonadRandom
1121 - MonadRandom
401 - monoid-extras
1122 - monoid-extras
402
1123
@@ -409,31 +1130,40 @@ packages:
409 - asciidiagram
1130 - asciidiagram
410
1131
411 "Patrick Brisbin @pbrisbin":
1132 "Patrick Brisbin @pbrisbin":
1133+ - bugsnag-haskell
412 - gravatar
1134 - gravatar
413−
1135+ - load-env
414− "Paul Harper <benekastah@gmail.com> @benekastah":
1136+ - yesod-auth-oauth2 < 0.7 # https://github.com/commercialhaskell/stackage/issues/6424
415− []
1137+ - yesod-markdown
1138+ - yesod-paginator
1139+
1140+ "Freckle Engineering <freckle-engineering@renaissance.com> @pbrisbin @mjgpy3 @stevenxl":
1141+ - bcp47
1142+ - bcp47-orphans
1143+ - faktory
1144+ - graphula
1145+ - hspec-expectations-json
1146+ - yesod-page-cursor
1147+ - yesod-routes-flow
1148+ - nonempty-zipper
1149+ - sendgrid-v3
416− # - yesod-auth-oauth2 # BLOCKED aeson-1.0
1150+ - yesod-auth-oauth2
1151+ - hspec-junit-formatter < 1.1 # https://github.com/freckle/freckle-app/issues/43
1152+ - aws-xray-client
1153+ - aws-xray-client-wai
1154+ - freckle-app
417
1155
418 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
1156 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
419− # bounds - country-codes
1157+ - fb
420− # bounds - esqueleto
421− # - fb # BLOCKED http-conduit 2.2
422− # bounds - fb-persistent
423− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - mangopay
424 - nonce
1158 - nonce
425 - serversession
1159 - serversession
426− - serversession-backend-acid-state
1160+ - serversession-backend-persistent
427− # bounds - serversession-backend-persistent
428− # bounds - serversession-backend-redis
1161+ - serversession-backend-redis
429− # - serversession-frontend-snap
430 - serversession-frontend-wai
1162 - serversession-frontend-wai
431 - serversession-frontend-yesod
1163 - serversession-frontend-yesod
432 - thumbnail-plus
1164 - thumbnail-plus
433− # bounds - yesod-auth-account-fork
1165+ - yesod-auth-fb
434− # GHC 8 - yesod-auth-fb
1166+ - yesod-fb
435− # - yesod-fb # BLOCKED http-conduit 2.2 via fb
436− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - yesod-mangopay
437
1167
438 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
1168 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
439 # Maintaining on behalf of @roelvandijk:
1169 # Maintaining on behalf of @roelvandijk:
@@ -442,40 +1172,65 @@ packages:
442 # My own packages:
1172 # My own packages:
443 - ChannelT
1173 - ChannelT
444
1174
445− "Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> @tmcdonell":
1175+ "Trevor L. McDonell <trevor.mcdonell@gmail.com> @tmcdonell":
446 - accelerate
1176 - accelerate
447−
1177+ - accelerate-bignum
448− # "Liam O'Connor <liamoc@cse.unsw.edu.au> @liamoc":
1178+ - accelerate-blas
449− # GHC 8 - patches-vector
1179+ - accelerate-fft
450− # GHC 8 - composition-tree
1180+ - accelerate-io
451− # GHC 8 & bounds - dixi
1181+ - accelerate-llvm
452− # GHC 8 - latex-formulae-image
1182+ - accelerate-llvm-native
453− # via latex-formulae-image - latex-formulae-pandoc
1183+ - accelerate-llvm-ptx
454− # GHC 8 - latex-formulae-hakyll
1184+ - accelerate-examples
455− # GHC 8 & bounds - agda-snippets
1185+ - repa
456− # GHC 8 - agda-snippets-hakyll
1186+ - repa-algorithms
1187+ - repa-io
1188+ - gloss
1189+ - gloss-rendering
1190+ - gloss-algorithms
1191+ - gloss-examples
1192+ - gloss-raster
1193+ - gloss-accelerate
1194+ - gloss-raster-accelerate
1195+ - colour-accelerate
1196+ - lens-accelerate
1197+ - mwc-random-accelerate
1198+ - cuda
1199+ - cufft
1200+ - cublas
1201+ - cusparse
1202+ - cusolver
1203+ - nvvm
1204+ - wide-word # @erikd
457
1205
458 "Dan Burton <danburton.email@gmail.com> @DanBurton":
1206 "Dan Burton <danburton.email@gmail.com> @DanBurton":
459− - hspec-jenkins
1207+ - ANum
460− - yesod-gitrev
461 - basic-prelude
1208 - basic-prelude
462 - composition
1209 - composition
1210+ - haskell-src-meta
463 - io-memoize
1211 - io-memoize
1212+ - lens-family-th
464 - numbers
1213 - numbers
465 - rev-state
1214 - rev-state
466 - runmemo
1215 - runmemo
467 - tardis
1216 - tardis
468− - lens-family-th
1217+ - yesod-gitrev
469−
1218+ # @mr's packages
1219+ - ftp-client
1220+ - ftp-client-conduit
1221+ # other: real maintainers pls steal these back
1222+ - text-format # needed by liquid-fixpoint
1223+ - liquid-fixpoint
1224+
470− "Daniel Díaz dhelta.diaz@gmail.com @Daniel-Diaz":
1225+ "Daniel Casanueva <dhelta.diaz@gmail.com> @Daniel-Diaz":
471 - bimap-server
1226 - bimap-server
472 - binary-list
1227 - binary-list
473 - byteset
1228 - byteset
474 - Clipboard
1229 - Clipboard
1230+ - gmail-simple < 0 # 0.1.0.2 https://github.com/Daniel-Diaz/gmail-simple/issues/1
475 - grouped-list
1231 - grouped-list
476 - haskintex
1232 - haskintex
477 - HaTeX
1233 - HaTeX
478− - hatex-guide
479 - include-file
1234 - include-file
480 - matrix
1235 - matrix
481 - pcre-light
1236 - pcre-light
@@ -483,38 +1238,48 @@ packages:
483 - post-mess-age
1238 - post-mess-age
484 - sorted-list
1239 - sorted-list
485
1240
486− "Gabriel Gonzalez <Gabriel439@gmail.com> @Gabriel439":
1241+ "Gabriella Gonzalez <Gabriel439@gmail.com> @Gabriel439":
487 - optparse-generic
1242 - optparse-generic
488 - pipes
1243 - pipes
489 - pipes-extras
1244 - pipes-extras
1245+ - pipes-http
490 - pipes-parse
1246 - pipes-parse
491 - pipes-concurrency
1247 - pipes-concurrency
492 - pipes-safe
1248 - pipes-safe
493 - turtle
1249 - turtle
494 - foldl
1250 - foldl
495− - morte
1251+ - bench
1252+ - dhall
1253+ - dhall-bash
1254+ - dhall-json
1255+ - dhall-lsp-server
1256+ - dhall-yaml
1257+ - aeson-yaml # req'd by dhall-json
1258+ - dhall-nix
1259+ - nix-derivation
1260+ - list-transformer
496
1261
497 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
1262 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
498− - yesod-table
1263+ - colonnade
1264+ - blaze-colonnade
1265+ - dot
499
1266
500− "Chris Allen <cma@bitemyapp.com> bitemyapp":
1267+ "Chris Allen <cma@bitemyapp.com> @bitemyapp":
501 - machines-directory
1268 - machines-directory
502 - machines-io
1269 - machines-io
503− # - bloodhound # BLOCKED derive and aeson-1.0
1270+ - bloodhound
504
1271
505 "Adam Bergmark <adam@bergmark.nl> @bergmark":
1272 "Adam Bergmark <adam@bergmark.nl> @bergmark":
506− - HUnit
507 - aeson
1273 - aeson
508− - fay
1274+ - HUnit
509− - fay-base
1275+ - attoparsec-iso8601
510− - fay-dom
511− - fay-jquery
512− - fay-text
513− - fay-uri
514 - feed
1276 - feed
515− - snaplet-fay
516 - time-compat
1277 - time-compat
517 - through-text
1278 - through-text
1279+ # Not my packages
1280+ - HStringTemplate
1281+ - spoon
1282+ - tagshare
518
1283
519 "Benedict Aas <x@shou.io> @Shou":
1284 "Benedict Aas <x@shou.io> @Shou":
520 - boolean-like
1285 - boolean-like
@@ -526,43 +1291,40 @@ packages:
526
1291
527 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
1292 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
528 - purescript-bridge
1293 - purescript-bridge
529− - servant-purescript
1294+ - servant-purescript < 0 # 0.10.0.0 compile fail #6091/closed
530 - servant-subscriber
1295 - servant-subscriber
531
1296
532 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
1297 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
533 - messagepack
1298 - messagepack
534 - messagepack-rpc
1299 - messagepack-rpc
535
1300
536− # "Boris Lykah <lykahb@gmail.com> @lykahb":
1301+ "Boris Lykah <lykahb@gmail.com> @lykahb":
537− # GHC 8 - groundhog
1302+ - groundhog
538− # GHC 8 - groundhog-th
1303+ - groundhog-inspector
539− # GHC 8 - groundhog-sqlite
540− # GHC 8 - groundhog-postgresql
541− # GHC 8 - groundhog-mysql
1304+ - groundhog-mysql
1305+ - groundhog-postgresql
1306+ - groundhog-sqlite
1307+ - groundhog-th
542
1308
543 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
1309 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
544 - sqlite-simple
1310 - sqlite-simple
545
1311
546 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
1312 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
547 - iterable
1313 - iterable
548− - Octree
549 - FenwickTree
1314 - FenwickTree
550− - hPDB
551− - hPDB-examples
552− - homplexity
553− - wordpass
554− # - json-autotype # BLOCKED aeson 1.0
1315+ - json-autotype
555− - posix-realtime
556
1316
557 "Dom De Re <domdere@domdere.com> @domdere":
1317 "Dom De Re <domdere@domdere.com> @domdere":
558 - cassava-conduit
1318 - cassava-conduit
559
1319
560 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
1320 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
561− - yarr
1321+ - monad-bayes
562 - random-fu
1322 - random-fu
563
1323
564 "Ben Gamari <ben@smart-cactus.org> @bgamari":
1324 "Ben Gamari <ben@smart-cactus.org> @bgamari":
565 - vector-fftw
1325 - vector-fftw
1326+ - cborg-json
1327+ - language-dot
566
1328
567 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
1329 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
568 - action-permutations
1330 - action-permutations
@@ -571,8 +1333,6 @@ packages:
571 - immortal
1333 - immortal
572 - regex-applicative
1334 - regex-applicative
573 - lexer-applicative
1335 - lexer-applicative
574− - smallcheck
575− - socket
576 - tasty
1336 - tasty
577 - tasty-golden
1337 - tasty-golden
578 - tasty-hunit
1338 - tasty-hunit
@@ -586,7 +1346,6 @@ packages:
586 - tuples-homogenous-h98
1346 - tuples-homogenous-h98
587
1347
588 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
1348 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
589− - HCodecs
590 - YampaSynth
1349 - YampaSynth
591 - set-monad
1350 - set-monad
592
1351
@@ -599,15 +1358,8 @@ packages:
599
1358
600 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
1359 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
601 - circle-packing
1360 - circle-packing
602− - arbtt
603− - ghc-heap-view
604− - tttool
605− - gipeda
606− - list-fusion-probe
607 - haskell-spacegoo
1361 - haskell-spacegoo
608 - tasty-expected-failure
1362 - tasty-expected-failure
609− - RepLib
610− - unbound
611
1363
612 "Aditya Bhargava <adit@adit.io> @egonSchiele":
1364 "Aditya Bhargava <adit@adit.io> @egonSchiele":
613 - HandsomeSoup
1365 - HandsomeSoup
@@ -619,103 +1371,102 @@ packages:
619 - DAV
1371 - DAV
620 - hopenpgp-tools
1372 - hopenpgp-tools
621 - opensource
1373 - opensource
1374+ - debian
1375+ - cabal-debian
1376+ # dependencies:
1377+ - monad-chronicle
1378+
1379+ "Piyush P Kurur <ppk@cse.iitk.ac.in> @piyush-kurur":
1380+ - raaz
1381+ - naqsha
622
1382
623 "Joey Hess <id@joeyh.name> @joeyh":
1383 "Joey Hess <id@joeyh.name> @joeyh":
624− # via esqueleto - git-annex
1384+ - git-annex
625− # via github - github-backup
626− - Win32-extras
627 - concurrent-output
1385 - concurrent-output
628 - mountpoints
1386 - mountpoints
629 - disk-free-space
1387 - disk-free-space
630
1388
631− "Colin Woodbury <colingw@gmail.com> @fosskers":
1389+ "Colin Woodbury <colin@fosskers.ca> @fosskers":
1390+ - aur
1391+ - aura
1392+ - bounded-queue
1393+ - kanji
1394+ - language-bash
632 - microlens-aeson
1395 - microlens-aeson
1396+ - pipes-random
1397+ - servant-xml
1398+ - streaming-attoparsec
633 - versions
1399 - versions
634 - vectortiles
1400 - vectortiles
635− - pipes-random
636− # - repa # BLOCKED QuickCheck < 2.9
637− # - repa-io # BLOCKED repa
638− # - repa-algorithms # BLOCKED repa
639− # GHC 8 - kanji
640
1401
641 "Ketil Malde @ketil-malde":
1402 "Ketil Malde @ketil-malde":
642 - biocore
1403 - biocore
643 - biofasta
1404 - biofasta
644 - biofastq
1405 - biofastq
645− # 0.3.7.1 Compilation failure due to -Werror - biosff
646 - blastxml
1406 - blastxml
647 - bioace
1407 - bioace
648− # 0.8.8 Compilation failure https://github.com/BioHaskell/biophd/issues/3 - biophd
649 - biopsl
1408 - biopsl
650− # VERSION MISSING Compilation failure against c2hs https://github.com/ingolia/SamTools/issues/3 - samtools
651 - seqloc
1409 - seqloc
652 - bioalign
1410 - bioalign
653 - BlastHTTP
1411 - BlastHTTP
654− # The following have out-of-date dependencies currently
655− # biostockholm memexml RNAwolf
656− # , "Biobase BiobaseDotP BiobaseFR3D BiobaseInfernal BiobaseMAF"
657− # , "BiobaseTrainingData BiobaseTurner BiobaseXNA BiobaseVienna"
658− # , "BiobaseTypes BiobaseFasta"
659− # MC-Fold-DP
660
1412
661 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
1413 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
662 - ClustalParser
1414 - ClustalParser
663− # GHC 8 - EntrezHTTP
1415+ - EntrezHTTP
664 - Genbank
1416 - Genbank
665− # GHC 8 - RNAlien
1417+ - RNAlien
1418+ - biocore
1419+ - bimaps
1420+ - BiobaseBlast
1421+ - BiobaseENA
1422+ - BiobaseEnsembl
1423+ - BiobaseFasta
1424+ - BiobaseHTTP
1425+ - BiobaseTypes
1426+ - BiobaseXNA
1427+ - DPutils
1428+ - ForestStructures
1429+ - OrderedBits
1430+ - PrimitiveArray
1431+ - SciBaseTypes
666− # via EntrezHTTP - Taxonomy
1432+ - Taxonomy
667− # via ENtrezHTTP - TaxonomyTools
668 - ViennaRNAParser
1433 - ViennaRNAParser
1434+ - either-unwrap
669
1435
670 "Silk <code@silk.co>":
1436 "Silk <code@silk.co>":
671− - aeson-utils
672− - arrow-list
673 - attoparsec-expr
1437 - attoparsec-expr
674− - bumper
675− - code-builder
676− - fay-builder
677− - generic-aeson
678 - generic-xmlpickler
1438 - generic-xmlpickler
679− - hxt-pickle-utils
680 - imagesize-conduit
1439 - imagesize-conduit
681− - json-schema
682 - multipart
1440 - multipart
683− - rest-client
684− - rest-core
685− - rest-gen
686− - rest-happstack
687− - rest-snap
688− - rest-stringmap
689− - rest-types
690− - rest-wai
691 - tostring
1441 - tostring
692 - uri-encode
1442 - uri-encode
693
1443
694 "Simon Michael <simon@joyful.com> @simonmichael":
1444 "Simon Michael <simon@joyful.com> @simonmichael":
695− - darcs
696− - hledger
697− - hledger-lib
698− - hledger-ui
699− # - hledger-web # waiting on 1.0.1
700− - hledger-api
701− # via Diff - shelltestrunner
702 - quickbench
1445 - quickbench
703 - regex-compat-tdfa
1446 - regex-compat-tdfa
1447+ - shelltestrunner
1448+ # The hledger project aims to keep the latest release of the core
1449+ # "hledger-lib" and "hledger" packages in stackage nightly at all times.
1450+ # When other hledger-* packages (or minor non-hledger packages) have
1451+ # incompatible bounds, we would prefer they be disabled temporarily,
1452+ # rather than disabling the latest hledger-lib and hledger.
1453+ # (#3494/closed, #5779/closed)
1454+ # Temporary upper bound to avoid mistaken and deprecated 1.24.99 release:
1455+ - hledger < 1.24.99
1456+ - hledger-lib < 1.24.99
1457+ - hledger-ui < 1.24.99
1458+ - hledger-web < 1.24.99
704
1459
705 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
1460 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
706 - io-manager
1461 - io-manager
707
1462
708 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
1463 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
709− # - al FIXME temporary, figure out why it's not working with stackage-build
1464+ - al
710 - event
1465 - event
711 - hid
1466 - hid
712− # GHC 8 - luminance
713− # GHC 8 - luminance-samples
714 - monad-journal
1467 - monad-journal
715− # GHC 8 - msi-kb-backlit
716 - smoothie
1468 - smoothie
717− # bounds - tellbot
718− # GHC 8 - wavefront
1469+ - wavefront
719 - zero
1470 - zero
720
1471
721 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
1472 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
@@ -723,12 +1474,6 @@ packages:
723
1474
724 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
1475 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
725 - io-choice
1476 - io-choice
726− # UNKNOWN VERSION Compilation failure https://github.com/d12frosted/CanonicalPath/issues/5 - system-canonicalpath
727−
728− "Daniel Gröber <dxld@darkboxed.org> @DanielG":
729− []
730− # - ghc-mod # BLOCKED pipes 4.2 & optparse-applicative 0.13.0.0 when #1784 gets lifted
731− # - cabal-helper # BLOCKED extra 1.5
732
1477
733 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
1478 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
734 - human-readable-duration
1479 - human-readable-duration
@@ -736,35 +1481,51 @@ packages:
736 - wai-middleware-caching
1481 - wai-middleware-caching
737 - wai-middleware-caching-lru
1482 - wai-middleware-caching-lru
738 - wai-middleware-caching-redis
1483 - wai-middleware-caching-redis
739− # not package maintainer
740− - ekg
741− - ekg-json
742
1484
743 "Paul Rouse <pgr@doynton.org> @paul-rouse":
1485 "Paul Rouse <pgr@doynton.org> @paul-rouse":
744 - mysql
1486 - mysql
745 - mysql-simple
1487 - mysql-simple
746− - sphinx
1488+ - sphinx < 0 # 0.6.0.2 compile fail: Could not find module Network
747 - xmlhtml
1489 - xmlhtml
748 - yesod-auth-hashdb
1490 - yesod-auth-hashdb
749
1491
750 "Toralf Wittner <tw@dtex.org> @twittner":
1492 "Toralf Wittner <tw@dtex.org> @twittner":
751 - bytestring-conversion
1493 - bytestring-conversion
752− # GHC8/3.1.0 compilation failure - cql
1494+ - cql
753− # via cql - cql-io
1495+ - cql-io
754 - redis-resp
1496 - redis-resp
755 - redis-io
1497 - redis-io
756− # - swagger # BLOCKED aeson 1.0
1498+ - swagger
757 - tinylog
1499 - tinylog
758 - wai-predicates
1500 - wai-predicates
759− # GHC 8 - wai-routing
1501+ - wai-routing
760 - zeromq4-haskell
1502 - zeromq4-haskell
761
1503
762− "trupill@gmail.com":
1504+ "Alejandro Serrano <trupill@gmail.com> @serras":
763 - djinn-lib
1505 - djinn-lib
764 - djinn-ghc
1506 - djinn-ghc
1507+ - generics-mrsop < 0 # 2.3.0 compile fail: TyVarBndr
1508+ - kind-apply
1509+ - kind-generics
1510+ - kind-generics-th
1511+ - simplistic-generics
1512+ - wl-pprint
1513+ - AC-Angle
1514+ - language-protobuf
1515+ - generic-aeson
1516+ - parameterized
1517+ - tracing-control
1518+ - primitive-unlifted < 0.2 # 1.0.0.0 ghc 9.0.2 panic, https://github.com/metrix-ai/primitive-extras/issues/6
1519+ - stm-lifted
1520+ - monad-primitive
1521+ - mwc-random-monad
765
1522
1523+ "Flavio Corpa <flaviocorpa@gmail.com> @kutyel":
1524+ - language-avro
1525+
766− "Matvey Aksenov <matvey.aksenov@gmail.com>":
1526+ "Matvey Aksenov <matvey.aksenov@gmail.com> @supki":
767 - terminal-size
1527 - terminal-size
1528+ - envparse
768
1529
769 "Luis G. Torres <lgtorres42@gmail.com> @giogadi":
1530 "Luis G. Torres <lgtorres42@gmail.com> @giogadi":
770 - kdt
1531 - kdt
@@ -773,21 +1534,19 @@ packages:
773 - netwire
1534 - netwire
774 - netwire-input
1535 - netwire-input
775 - netwire-input-glfw
1536 - netwire-input-glfw
1537+ - yoga
1538+ - freetype2
1539+ - HCodecs
1540+ - netcode-io
1541+ - reliable-io
776
1542
777 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
1543 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
778 - BoundedChan
1544 - BoundedChan
779 - broadcast-chan
1545 - broadcast-chan
780− - bytestring-lexing
781− - bytestring-trie
782− - data-accessor
783− - data-accessor-mtl
784− # GHC 8 - file-location
785 - fuzzcheck
1546 - fuzzcheck
786− - haddock-api
1547+ - here
787− # haskell-src-exts 1.18 - here
788 - hlibgit2
1548 - hlibgit2
789 - gitlib-libgit2
1549 - gitlib-libgit2
790− - hostname-validate
791 - interpolatedstring-perl6
1550 - interpolatedstring-perl6
792 - iproute
1551 - iproute
793 - missing-foreign
1552 - missing-foreign
@@ -798,60 +1557,95 @@ packages:
798 - Chart-cairo
1557 - Chart-cairo
799 - ghc-events
1558 - ghc-events
800 - monad-extras
1559 - monad-extras
801− # - stack < 9.9.9 # BLOCKED http-conduit 2.2
802 - optparse-simple
1560 - optparse-simple
803 - hpack
1561 - hpack
1562+ - bindings-uname
1563+ - stack < 9.9.9 # see #3563/closed
804
1564
805 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1565 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1566+ - store
1567+ - store-core
1568+ - store-streaming
806 - th-orphans
1569 - th-orphans
807 - th-reify-many
1570 - th-reify-many
1571+ - th-utilities
808
1572
809 "Nikita Volkov <nikita.y.volkov@mail.ru> @nikita-volkov":
1573 "Nikita Volkov <nikita.y.volkov@mail.ru> @nikita-volkov":
1574+ - acc
1575+ - attoparsec-data
1576+ - attoparsec-time
810 - base-prelude
1577 - base-prelude
1578+ - bytestring-strict-builder
1579+ - bytestring-tree-builder
811 - cases
1580 - cases
1581+ - deferred-folds
1582+ - deque
1583+ - domain
1584+ - domain-core
1585+ - domain-optics
812 - focus
1586 - focus
813 - hasql
1587 - hasql
1588+ - hasql-optparse-applicative
1589+ - hasql-pool
1590+ - hasql-th
1591+ - hasql-transaction
1592+ - headed-megaparsec
1593+ - jsonifier
814 - list-t
1594 - list-t
815 - mtl-prelude
1595 - mtl-prelude
816 - neat-interpolation
1596 - neat-interpolation
1597+ - optima
817 - partial-handler
1598 - partial-handler
818 - postgresql-binary
1599 - postgresql-binary
1600+ - postgresql-syntax
1601+ - primitive-extras
1602+ - ptr-poker
1603+ - rebase
1604+ - rerebase
819 - slave-thread
1605 - slave-thread
820 - stm-containers
1606 - stm-containers
1607+ - stm-hamt
1608+ - template-haskell-compat-v0208
1609+ - text-builder
1610+ - th-lego
1611+ - vector-builder
1612+ - yaml-unscrambler
1613+ - xml-parser
821
1614
822 "Iustin Pop <iustin@k1024.org> @iustin":
1615 "Iustin Pop <iustin@k1024.org> @iustin":
823 - prefix-units
1616 - prefix-units
824
1617
825 "Alexander Thiemann <mail@athiemann.net> @agrafix":
1618 "Alexander Thiemann <mail@athiemann.net> @agrafix":
826− - Spock
1619+ - Spock
827− - Spock-core
1620+ - Spock-core
828− - Spock-api
1621+ - Spock-api
829− - Spock-api-server
1622+ - Spock-api-server
830− # via digestive-functors - Spock-digestive
831− - Spock-worker
1623+ - Spock-worker
832− - graph-core
1624+ - graph-core
833− - hvect
1625+ - hvect
834− - reroute
1626+ - reroute
835− - users
1627+ - users
836− # via esqueleto - users-persistent
1628+ - users-persistent
837− - users-postgresql-simple
1629+ - users-postgresql-simple
838− - users-test
1630+ - users-test
839− - validate-input
1631+ - validate-input
840− - ignore
1632+ - ignore < 0 # 0.1.1.0 compile fail https://github.com/agrafix/ignore/issues/5
841− - elm-bridge
842− - hackmanager
843− # via digestive-functors - digestive-bootstrap
844− - blaze-bootstrap
1633+ - blaze-bootstrap
845− - dataurl
1634+ - dataurl
846− - psql-helpers
1635+ - psql-helpers
1636+ - superbuffer
1637+ - timespan
1638+ - distance < 0 # 0.1.0.0 compile fail: Semigroup Distance
1639+ - async-extra
1640+ - format-numbers
1641+ - highjson
1642+ - highjson-swagger
1643+ - highjson-th
1644+ - fileplow
847
1645
848 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
1646 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
849− - aeson-pretty
850 - digest
1647 - digest
851− # via elm-compiler - elm-build-lib
852− # bounds - elm-compiler
853 - elm-core-sources
1648 - elm-core-sources
854− # bounds - elm-package
855 - language-glsl
1649 - language-glsl
856 - prettyclass
1650 - prettyclass
857 - QuasiText
1651 - QuasiText
@@ -862,15 +1656,10 @@ packages:
862 - yesod-form-richtext
1656 - yesod-form-richtext
863 - ghcjs-perch
1657 - ghcjs-perch
864
1658
865− "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
866− - hdevtools
867−
868− "Andrey Chudnov <oss@chudnov.com> @achudnov":
869− - language-ecmascript
870−
871 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
1659 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
872 - opaleye
1660 - opaleye
873 - product-profunctors
1661 - product-profunctors
1662+ - strict-wrapper
874
1663
875 "Samplecount stefan@samplecount.com @kaoskorobase":
1664 "Samplecount stefan@samplecount.com @kaoskorobase":
876 - shake-language-c
1665 - shake-language-c
@@ -879,38 +1668,53 @@ packages:
879 - alarmclock
1668 - alarmclock
880 - bank-holidays-england
1669 - bank-holidays-england
881
1670
882− "Haskell Servant <jkarni@gmail.com>":
1671+ "Haskell Servant <haskell-servant-maintainers@googlegroups.com>":
883 - servant
1672 - servant
1673+ - servant-blaze
1674+ - servant-cassava
884 - servant-client
1675 - servant-client
1676+ - servant-client-core
1677+ - servant-conduit
885 - servant-docs
1678 - servant-docs
1679+ - servant-foreign
1680+ - servant-http-streams
886 - servant-js
1681 - servant-js
887− - servant-server
888 - servant-lucid
1682 - servant-lucid
889− - servant-blaze
1683+ - servant-machines
890− - servant-foreign
891 - servant-mock
1684 - servant-mock
892− - servant-cassava
1685+ - servant-multipart
1686+ - servant-multipart-api
1687+ - servant-pipes
1688+ - servant-server
1689+ - servant-swagger
1690+ - servant-swagger-ui
1691+ - servant-swagger-ui-core
1692+
1693+ "Optics <optics@well-typed.com>":
1694+ - indexed-profunctors
1695+ - optics
1696+ - optics-core
1697+ - optics-extra
1698+ - optics-th
1699+ - optics-vl
893
1700
894 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
1701 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
895− - hdocs
896 - hformat
1702 - hformat
897− - hsdev
898 - simple-log
1703 - simple-log
899 - text-region
1704 - text-region
1705+ - haskell-names
1706+ - hsdev
900
1707
901 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
1708 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
902 - unbound-generics
1709 - unbound-generics
903 - indentation-core
1710 - indentation-core
904 - indentation-parsec
1711 - indentation-parsec
1712+ - clang-compilation-database
905
1713
906 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
1714 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
907− []
908− # GHC 8 & bounds - codex
909− # GHC 8 - machines-binary
1715+ - machines-binary
910− # GHC 8 - machines-process
911− # GHC 8 - sarsi
912 # on behalf of Bryan O'Sullivan @bos:
1716 # on behalf of Bryan O'Sullivan @bos:
913− # - wreq # BLOCKED http-client 0.5
1717+ - wreq
914
1718
915 "Andraz Bajt <andraz@bajt.me> @edofic":
1719 "Andraz Bajt <andraz@bajt.me> @edofic":
916 - effect-handlers
1720 - effect-handlers
@@ -921,53 +1725,96 @@ packages:
921 - HaskellNet
1725 - HaskellNet
922 - HaskellNet-SSL
1726 - HaskellNet-SSL
923
1727
1728+ "Tristan de Cacqueray <tdecacqu@redhat.com> @tristanC":
1729+ - linux-capabilities
1730+
924 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1731 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1732+ - bodhi
1733+ - bugzilla-redhat
1734+ - cabal-file
925 - cabal-rpm
1735 - cabal-rpm
1736+ - cached-json-file
1737+ - copr-api
1738+ - dl-fedora < 0 # 0.9.2 https://github.com/juhp/dl-fedora/issues/2
1739+ - fedora-dists
1740+ - fedora-haskell-tools
1741+ - HaXml
1742+ - hkgr
1743+ - http-directory
1744+ - http-query
1745+ - koji
1746+ - pagure
1747+ - pagure-cli
1748+ - pdc
1749+ - pkgtreediff
1750+ - rhbzquery
1751+ - rpm-nvr
1752+ - rpmbuild-order
926− - cabal-sort
1753+ - simple-cabal
927− - hslua
1754+ - simple-cmd
928− # - idris # BLOCKED aeson 1.0 & optparse-applicative 0.13.0.0 after #1784
1755+ - simple-cmd-args
929−
1756+ - stack-all
1757+ - stack-clean-old
1758+
1759+ - async-pool
1760+ - darcs
1761+ - idris
1762+ - libffi
930 - cairo
1763 - cairo
931− - gio
932 - glib
1764 - glib
933− - gtk
1765+ - gio
934− - gtk3
935− - gtksourceview3
936 - pango
1766 - pango
937− - webkitgtk3
1767+ - gtk3
938− - webkitgtk3-javascriptcore
939−
940 - ghcjs-codemirror
1768 - ghcjs-codemirror
941− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - ghcjs-dom
1769+ - ghcjs-dom
942− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - jsaddle
1770+ - jsaddle
943− # GHC 8 & bounds - leksah-server
944− # GHC 8 - ltk
945 - vado
1771 - vado
946− # GHC 8 - vcsgui
947 - vcswrapper
1772 - vcswrapper
1773+ - ShellCheck
1774+ - binary-shared
1775+ - xdg-userdirs
1776+ # please take these
1777+ - cryptohash-md5
1778+ - cryptohash-sha1
948
1779
949 "Renzo Carbonara <renzocarbonara@gmail.com> @k0001":
1780 "Renzo Carbonara <renzocarbonara@gmail.com> @k0001":
1781+ - df1
1782+ - di
1783+ - di-core
1784+ - di-df1
1785+ - di-handle
1786+ - di-monad
1787+ - exinst
1788+ - flay
950 - network-simple
1789 - network-simple
1790+ - network-simple-tls
951− # - pipes-aeson # BLOCKED pipes 4.2
1791+ - pipes-aeson
952 - pipes-attoparsec
1792 - pipes-attoparsec
953− # GHC 8 - pipes-binary
1793+ - pipes-binary
954 - pipes-network
1794 - pipes-network
1795+ - pipes-network-tls
1796+ - safe-money
1797+ - vector-bytes-instances
1798+ - xmlbf-xeno
1799+ - xmlbf-xmlhtml
1800+ - xmlbf
955
1801
956 "Tomas Carnecky @wereHamster":
1802 "Tomas Carnecky @wereHamster":
957 - avers
1803 - avers
958− # via avers - avers-api
1804+ - avers-api
959− # via avers - avers-server
1805+ - avers-server
960 - css-syntax
1806 - css-syntax
961 - etcd
1807 - etcd
962 - github-types
1808 - github-types
963 - github-webhook-handler
1809 - github-webhook-handler
964− # GHC 8 - github-webhook-handler-snap
1810+ - github-webhook-handler-snap
965 - google-cloud
1811 - google-cloud
966 - kraken
1812 - kraken
967 - libinfluxdb
1813 - libinfluxdb
968− # GHC 8 - mole
1814+ - mole
969 - publicsuffix
1815 - publicsuffix
970 - rethinkdb-client-driver
1816 - rethinkdb-client-driver
1817+ - snap-blaze
971
1818
972 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
1819 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
973 - bcrypt
1820 - bcrypt
@@ -975,10 +1822,6 @@ packages:
975 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
1822 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
976 - palette
1823 - palette
977 - diagrams-canvas
1824 - diagrams-canvas
978− - diagrams-rasterific
979− - lucid-svg
980− - diagrams-html5
981− - static-canvas
982 - svg-builder
1825 - svg-builder
983
1826
984 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
1827 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
@@ -987,107 +1830,48 @@ packages:
987 "Leon Mergen <leon@solatis.com> @solatis":
1830 "Leon Mergen <leon@solatis.com> @solatis":
988 - base32string
1831 - base32string
989 - base58string
1832 - base58string
990− # BLOCKED wreq:
991− # - bitcoin-api
1833+ - bitcoin-api
992− # - bitcoin-api-extra
1834+ - bitcoin-api-extra
993 - bitcoin-block
1835 - bitcoin-block
994 - bitcoin-script
1836 - bitcoin-script
995 - bitcoin-tx
1837 - bitcoin-tx
996 - bitcoin-types
1838 - bitcoin-types
997 - hexstring
1839 - hexstring
998− - network-attoparsec
1840+ - network-attoparsec < 0 # 0.12.2 compile fail MonadFail
999− - network-anonymous-i2p
1841+ - network-anonymous-i2p < 0 # 0.10.0 compile fail
1000 - network-anonymous-tor
1842 - network-anonymous-tor
1001
1843
1002− "Timothy Jones <git@zmthy.io> @zmthy":
1844+ "Timothy Jones <tim@zmthy.net> @zmthy":
1003 - http-media
1845 - http-media
1004
1846
1005 "Greg V <greg@unrelenting.technology> @myfreeweb":
1847 "Greg V <greg@unrelenting.technology> @myfreeweb":
1006− - gitson
1007 - pcre-heavy
1848 - pcre-heavy
1008 - http-link-header
1849 - http-link-header
1009− # - microformats2-parser # BLOCKED aeson-qq
1850+ - microformats2-parser
1010 - hspec-expectations-pretty-diff
1851 - hspec-expectations-pretty-diff
1852+ - wai-cli
1853+ - magicbane
1011
1854
1012 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1855 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1013− []
1014− # https://github.com/mainland/language-c-quote/issues/72
1015− # - language-c-quote
1856+ - language-c-quote
1016
1857
1017 "Sönke Hahn <soenkehahn@gmail.com> @soenkehahn":
1858 "Sönke Hahn <soenkehahn@gmail.com> @soenkehahn":
1018 - generics-eot
1859 - generics-eot
1019 - getopt-generics
1860 - getopt-generics
1020 - graph-wrapper
1861 - graph-wrapper
1021 - string-conversions
1862 - string-conversions
1863+ - hspec-checkers
1864+ - FindBin
1022
1865
1023 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1866 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1024 - tasty-program
1867 - tasty-program
1025
1868
1026− "Oleg Grenrus <oleg.grenrus@iki.fi> @phadej":
1027− - aeson-compat
1028− - aeson-extra
1029− - binary-orphans
1030− - binary-tagged
1031− - edit-distance
1032− - generics-sop-lens
1033− # GHC 8 - github
1034− - insert-ordered-containers
1035− - JuicyPixels-scale-dct
1036− - lattices
1037− - monad-http
1038− - postgresql-simple-url
1039− - range-set-list
1040− - regex-applicative-text
1041− - servant-swagger-ui
1042− - servant-yaml
1043− - singleton-bool
1044− - spdx
1045− - these
1046− - time-parsers
1047− - waitra
1048−
1049− # Not a maintainer
1050− - arithmoi
1051− - friendly-time
1052− - hashable
1053− - haxl
1054− - monad-time
1055− - packdeps
1056− - recursion-schemes
1057− - unordered-containers
1058−
1059− # fft
1060− - carray
1061− - ix-shapable
1062− - fft
1063−
1064− # Regex packages by Chris Kuklewicz
1065− - regex-base
1066− - regex-compat
1067− # 0.91 Compilation failure due to -Werror - regex-dfa
1068− # 0.90 Compilation failure due to -Werror - regex-parsec
1069− - regex-pcre
1070− - regex-posix
1071− - regex-tdfa
1072− # GHC 8 - regex-tdfa-utf8
1073− # 0.91 Compilation failure due to -Werror - regex-tre
1074−
1075− # Universe
1076− - universe
1077− - universe-base
1078− - universe-instances-base
1079− - universe-instances-extended
1080− - universe-instances-trans
1081− - universe-reverse-instances
1082−
1083 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1869 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1084 - farmhash
1870 - farmhash
1085 - pinch
1871 - pinch
1086− - sandman
1872+ - sandman < 0 # 0.2.0.1 compile fail (Cabal 3)
1087− - language-thrift
1088
1873
1089 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1874 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1090− - cryptol
1091 - gitrev
1875 - gitrev
1092 - persistent-refs
1876 - persistent-refs
1093
1877
@@ -1095,81 +1879,100 @@ packages:
1095 - jose-jwt
1879 - jose-jwt
1096
1880
1097 "Brendan Hay <brendan.g.hay@gmail.com> @brendanhay":
1881 "Brendan Hay <brendan.g.hay@gmail.com> @brendanhay":
1098− # BLOCKED http-conduit 2.2
1099− # - amazonka
1882+ - amazonka
1100− # - amazonka-core
1883+ - amazonka-core
1101− # - amazonka-test
1884+ - amazonka-test
1102− # - amazonka-apigateway
1885+ - amazonka-apigateway
1103− # - amazonka-application-autoscaling
1886+ - amazonka-application-autoscaling
1887+ - amazonka-appstream
1888+ - amazonka-athena
1104− # - amazonka-autoscaling
1889+ - amazonka-autoscaling
1890+ - amazonka-budgets
1105− # - amazonka-certificatemanager
1891+ - amazonka-certificatemanager
1106− # - amazonka-cloudformation
1892+ - amazonka-cloudformation
1107− # - amazonka-cloudfront
1893+ - amazonka-cloudfront
1108− # - amazonka-cloudhsm
1894+ - amazonka-cloudhsm
1109− # - amazonka-cloudsearch-domains
1895+ - amazonka-cloudsearch
1110− # - amazonka-cloudsearch
1896+ - amazonka-cloudsearch-domains
1111− # - amazonka-cloudtrail
1897+ - amazonka-cloudtrail
1898+ - amazonka-cloudwatch
1112− # - amazonka-cloudwatch-events
1899+ - amazonka-cloudwatch-events
1113− # - amazonka-cloudwatch-logs
1900+ - amazonka-cloudwatch-logs
1114− # - amazonka-cloudwatch
1901+ - amazonka-codebuild
1115− # - amazonka-codecommit
1902+ - amazonka-codecommit
1116− # - amazonka-codedeploy
1903+ - amazonka-codedeploy
1117− # - amazonka-codepipeline
1904+ - amazonka-codepipeline
1118− # - amazonka-cognito-identity
1905+ - amazonka-cognito-identity
1119− # - amazonka-cognito-idp
1906+ - amazonka-cognito-idp
1120− # - amazonka-cognito-sync
1907+ - amazonka-cognito-sync
1121− # - amazonka-config
1908+ - amazonka-config
1122− # - amazonka-datapipeline
1909+ - amazonka-datapipeline
1123− # - amazonka-devicefarm
1910+ - amazonka-devicefarm
1124− # - amazonka-directconnect
1911+ - amazonka-directconnect
1125− # - amazonka-discovery
1912+ - amazonka-discovery
1126− # - amazonka-dms
1913+ - amazonka-dms
1127− # - amazonka-ds
1914+ - amazonka-ds
1915+ - amazonka-dynamodb
1128− # - amazonka-dynamodb-streams
1916+ - amazonka-dynamodb-streams
1129− # - amazonka-dynamodb
1917+ - amazonka-ec2 < 0 # takes too much memory to build https://github.com/brendanhay/amazonka/issues/549
1130− # - amazonka-ec2
1131− # - amazonka-ecr
1918+ - amazonka-ecr
1132− # - amazonka-ecs
1919+ - amazonka-ecs
1133− # - amazonka-efs
1920+ - amazonka-efs
1134− # - amazonka-elasticache
1921+ - amazonka-elasticache
1135− # - amazonka-elasticbeanstalk
1922+ - amazonka-elasticbeanstalk
1136− # - amazonka-elasticsearch
1923+ - amazonka-elasticsearch
1137− # - amazonka-elastictranscoder
1924+ - amazonka-elastictranscoder
1138− # - amazonka-elb
1925+ - amazonka-elb
1926+ - amazonka-elbv2
1139− # - amazonka-emr
1927+ - amazonka-emr
1140− # - amazonka-gamelift
1928+ - amazonka-gamelift
1141− # - amazonka-glacier
1929+ - amazonka-glacier
1930+ - amazonka-glue
1931+ - amazonka-health
1142− # - amazonka-iam
1932+ - amazonka-iam
1143− # - amazonka-importexport
1933+ - amazonka-importexport
1144− # - amazonka-inspector
1934+ - amazonka-inspector
1935+ - amazonka-iot
1145− # - amazonka-iot-dataplane
1936+ - amazonka-iot-dataplane
1146− # - amazonka-iot
1937+ - amazonka-kinesis
1147− # - amazonka-kinesis
1938+ - amazonka-kinesis-analytics
1148− # - amazonka-kinesis-firehose
1939+ - amazonka-kinesis-firehose
1149− # - amazonka-kms
1940+ - amazonka-kms
1150− # - amazonka-lambda
1941+ - amazonka-lambda
1942+ - amazonka-lightsail
1151− # - amazonka-marketplace-analytics
1943+ - amazonka-marketplace-analytics
1152− # - amazonka-marketplace-metering
1944+ - amazonka-marketplace-metering
1153− # - amazonka-ml
1945+ - amazonka-ml
1946+ - amazonka-opsworks
1154− # - amazonka-opsworks
1947+ - amazonka-opsworks-cm
1948+ - amazonka-pinpoint
1949+ - amazonka-polly
1155− # - amazonka-rds
1950+ - amazonka-rds
1156− # - amazonka-redshift
1951+ - amazonka-redshift
1952+ - amazonka-rekognition
1157− # - amazonka-route53-domains
1953+ - amazonka-route53
1158− # - amazonka-route53
1954+ - amazonka-route53-domains
1159− # - amazonka-s3
1955+ - amazonka-s3
1160− # - amazonka-sdb
1956+ - amazonka-sdb
1957+ - amazonka-servicecatalog
1161− # - amazonka-ses
1958+ - amazonka-ses
1959+ - amazonka-shield
1960+ - amazonka-sms
1961+ - amazonka-snowball
1162− # - amazonka-sns
1962+ - amazonka-sns
1163− # - amazonka-sqs
1963+ - amazonka-sqs
1164− # - amazonka-ssm
1964+ - amazonka-ssm
1965+ - amazonka-stepfunctions
1165− # - amazonka-storagegateway
1966+ - amazonka-storagegateway
1166− # - amazonka-sts
1967+ - amazonka-sts
1167− # - amazonka-support
1968+ - amazonka-support
1168− # - amazonka-swf
1969+ - amazonka-swf
1169− # - amazonka-waf
1970+ - amazonka-waf
1170− # - amazonka-workspaces
1971+ - amazonka-workspaces
1171− # - gogol # https://github.com/brendanhay/gogol/issues/38
1972+ - amazonka-xray
1973+ # gogol-* disabled due to `gogol-core` due to `servant`: #6089/closed
1974+ - gogol
1172− - gogol-core
1975+ - gogol-core < 0 # 0.5.0 compile fail
1173 - gogol-adexchange-buyer
1976 - gogol-adexchange-buyer
1174 - gogol-adexchange-seller
1977 - gogol-adexchange-seller
1175 - gogol-admin-datatransfer
1978 - gogol-admin-datatransfer
@@ -1266,7 +2069,7 @@ packages:
1266 - gogol-youtube-analytics
2069 - gogol-youtube-analytics
1267 - gogol-youtube-reporting
2070 - gogol-youtube-reporting
1268 - ede
2071 - ede
1269− - pagerduty
2072+ - pagerduty < 0 # 0.0.8 compile fail with GHC 8.4 https://github.com/brendanhay/pagerduty/issues/10
1270 - semver
2073 - semver
1271 - text-manipulate
2074 - text-manipulate
1272
2075
@@ -1276,81 +2079,77 @@ packages:
1276 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
2079 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
1277 - jmacro
2080 - jmacro
1278 - jmacro-rpc
2081 - jmacro-rpc
1279− - jmacro-rpc-happstack
1280 - jmacro-rpc-snap
2082 - jmacro-rpc-snap
2083+ - jmacro-rpc-happstack
2084+
1281 - mbox
2085 - mbox
1282 - kmeans
2086 - kmeans
1283 - boolsimplifier
2087 - boolsimplifier
1284 - cubicspline
2088 - cubicspline
1285 - maximal-cliques
2089 - maximal-cliques
1286
2090
1287− "Alexander Bondarenko <aenor.realm@gmail.com> @wiz":
2091+ "Alexander Bondarenko <aenor.realm@gmail.com> @dpwiz":
2092+ - hedn
1288 - soap
2093 - soap
1289 - soap-tls
2094 - soap-tls
1290 - soap-openssl
2095 - soap-openssl
1291
2096
1292 "Andres Löh <andres@well-typed.com> @kosmikus":
2097 "Andres Löh <andres@well-typed.com> @kosmikus":
1293 - generics-sop
2098 - generics-sop
2099+ - records-sop
2100+ - sop-core
1294
2101
1295 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
2102 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
1296 - hmatrix-gsl-stats
2103 - hmatrix-gsl-stats
1297 - hsignal
2104 - hsignal
1298 - hstatistics
2105 - hstatistics
1299 - plot
2106 - plot
1300− - plot-gtk
1301− - plot-gtk3
1302−
1303 - vector-buffer
2107 - vector-buffer
1304− # 0.1.2.1 Compilation failure against hmatrix https://github.com/amcphail/hmatrix-repa/issues/2 - hmatrix-repa
2108+ - hmatrix-repa
1305
2109
1306 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
2110 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
1307− # via hxt-tagsoup - xml-to-json
2111+ - xml-to-json
1308 - xml-to-json-fast
2112 - xml-to-json-fast
2113+ - wl-pprint
2114+ # not a maintainer
2115+ - hxt-curl
2116+ - hxt-expat
2117+ - hxt-tagsoup
2118+ - hexpat
1309 - digits
2119 - digits
1310− - unification-fd
1311 - logict
2120 - logict
1312− - resolve-trivial-conflicts
1313− - wl-pprint
1314 - leveldb-haskell
2121 - leveldb-haskell
1315 - system-argv0
2122 - system-argv0
1316 - markdown-unlit
2123 - markdown-unlit
1317
2124
1318− "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk> @Fuuzetsu":
2125+ "Brian McKenna <brian@brianmckenna.org> @puffnfresh":
1319− # 0.4.1.1 compilation failure against GHC 8 - aeson-schema
1320− - H
1321− - inline-r
1322−
1323− # "David Fox <dsf@seereason.com> @ddssff":
1324− # GHC bug https://github.com/ddssff/debian-haskell/issues/6 - debian
1325− # via memoize - cabal-debian
1326−
1327− "Stefan Saasen <stefan@saasen.me> @juretta":
1328 - jwt
2126 - jwt
1329
2127
1330 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
2128 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
1331 - setlocale
2129 - setlocale
1332
2130
1333− "John Chee <cheecheeo+stackage@gmail.com> @chee1bot":
1334− - cgi
1335−
1336 "Taylor Fausak <taylor@fausak.me> @tfausak":
2131 "Taylor Fausak <taylor@fausak.me> @tfausak":
1337 - autoexporter
2132 - autoexporter
1338− - bento
2133+ - burrito
1339− - bmp # Maintained by @benl23x5.
2134+ - derulo
1340− # GHC 8 - ekg-statsd # Maintained by @tibbe.
1341 - flow
2135 - flow
1342− # via uri-templater - github-release
2136+ - github-release
1343− - gloss # Maintained by @benl23x5.
2137+ - json-feed
1344− - gloss-rendering # Maintained by @benl23x5.
1345− - gpolyline # Maintained by @fegu.
1346 - lackey
2138 - lackey
1347− - octane
2139+ - list-singleton
1348− - overloaded-records # Maintained by @trskop.
2140+ - rampart
1349 - ratel
2141 - ratel
1350 - ratel-wai
2142 - ratel-wai
2143+ - rattletrap
2144+ - salve
2145+ - splint
1351 - strive
2146 - strive
2147+ - witch
1352 - wuss
2148 - wuss
1353
2149
2150+ - bmp # @benl23x5
2151+ - gpolyline # @fegu
2152+
1354 "Marios Titas <redneb@gmx.com> @redneb":
2153 "Marios Titas <redneb@gmx.com> @redneb":
1355 - HsOpenSSL-x509-system
2154 - HsOpenSSL-x509-system
1356 - adler32
2155 - adler32
@@ -1365,159 +2164,186 @@ packages:
1365 - prometheus-client
2164 - prometheus-client
1366 - prometheus-metrics-ghc
2165 - prometheus-metrics-ghc
1367 - scalpel
2166 - scalpel
2167+ - scalpel-core
1368 - wai-middleware-prometheus
2168 - wai-middleware-prometheus
1369
2169
1370 "William Casarin <bill@casarin.me> @jb55":
2170 "William Casarin <bill@casarin.me> @jb55":
1371 - bson-lens
2171 - bson-lens
1372 - cased
2172 - cased
2173+ - elm-export
2174+ - elm-export-persistent
1373 - pipes-csv
2175 - pipes-csv
1374 - pipes-mongodb
2176 - pipes-mongodb
2177+ - servant-elm
2178+ - servant-streaming
2179+ - servant-streaming-client
2180+ - servant-streaming-server
1375 - skeletons
2181 - skeletons
1376
2182
1377− # "Smirnov Alexey <chemistmail@gmail.com> @chemist":
1378− # GHC 8 - snmp
1379− # GHC 8 - agentx
1380−
1381 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
2183 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
1382 - annotated-wl-pprint
2184 - annotated-wl-pprint
1383
2185
1384 "Yitz Gale <gale@sefer.org> @ygale":
2186 "Yitz Gale <gale@sefer.org> @ygale":
2187+ - boolean-normal-forms
2188+ - strict-concurrency
1385 - timezone-series
2189 - timezone-series
1386 - timezone-olson
2190 - timezone-olson
1387
2191
1388− "Josh Holland <josh@inv.alid.pw> @jshholland":
1389− - sandi
1390− - data-ordlist
1391− - xmonad
1392−
1393 "Harry Garrood <harry@garrood.me> @hdgarrood":
2192 "Harry Garrood <harry@garrood.me> @hdgarrood":
1394 - aeson-better-errors
2193 - aeson-better-errors
1395
2194
1396 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2195 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2196+ - ki
1397 - tasty-hspec
2197 - tasty-hspec
2198+ - termbox
2199+ - text-ansi
2200+ - timer-wheel
1398
2201
1399− "Christiaan Baaij <christiaan.baaij@gmail.com> @christiaanb":
2202+ "QBayLogic B.V. <devops@qbaylogic.com> @martijnbastiaan":
1400 - ghc-tcplugins-extra
2203 - ghc-tcplugins-extra
1401 - ghc-typelits-extra
2204 - ghc-typelits-extra
1402 - ghc-typelits-knownnat
2205 - ghc-typelits-knownnat
1403 - ghc-typelits-natnormalise
2206 - ghc-typelits-natnormalise
1404 - clash-prelude
2207 - clash-prelude
1405 - clash-lib
2208 - clash-lib
1406− - clash-vhdl
2209+ - clash-ghc
1407− - clash-verilog
2210+
1408− - clash-systemverilog
2211+ "Martijn Bastiaan <martijn@hmbastiaan.nl> @martijnbastiaan":
1409− # GHC 8 - clash-ghc
2212+ - aeson-pretty
2213+ - doctest-parallel
1410
2214
1411 "Athan Clark <athan.clark@gmail.com> @athanclark":
2215 "Athan Clark <athan.clark@gmail.com> @athanclark":
2216+ - aeson-attoparsec
2217+ - alternative-vector
2218+ - almost-fix
2219+ - attoparsec-base64
2220+ - attoparsec-path
2221+ # - attoparsec-ip # Deprecated in favor of ip
2222+ - attoparsec-uri < 0 # 0.0.7 compile fail
2223+ - chan
1412 - commutative
2224 - commutative
1413− # via digestive functors - digestive-functors-lucid
2225+ - composition-extra
1414− - ltext
2226+ - every
2227+ - extractable-singleton
2228+ - follow-file
2229+ - HSet < 0 # 0.0.1 compile fail: duplicate Hashable instance
1415 - markup
2230 - markup
1416− # via poly-arity - nested-routes
2231+ - monad-control-aligned
2232+ - monadoid
2233+ - n-tuple
1417 - path-extra
2234 - path-extra
1418− # via HList - poly-arity (sent e-mail to HList maintainer)
2235+ - pred-set
1419− - urlpath
2236+ - pred-trie
1420− - wai-transformers
2237+ - path-extra
1421− # - wai-middleware-content-type # BLOCKED aeson 1.0 via pandoc
2238+ - poly-arity
1422− # - wai-middleware-verbs # BLOCKED aeson 1.0 via pandoc
2239+ - quickcheck-combinators
1423− - webpage
1424− - composition-extra
1425 - rose-trees
2240 - rose-trees
1426 - sets
2241 - sets
2242+ - since
1427 - timemap
2243 - timemap
2244+ - tmapchan
2245+ - tmapmvar
1428 - tries
2246 - tries
1429− - path-extra
2247+ - unit-constraint
1430− # via poly-arity - pred-trie
2248+ - unfoldable-restricted
1431− - pred-set
2249+ - urlpath
1432− - HSet
2250+ - wai-transformers
2251+ - websockets-rpc
2252+ - websockets-simple
2253+ - webpage
2254+ - ws
1433
2255
1434 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
2256 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
1435 - boundingboxes
2257 - boundingboxes
1436 - control-bool
2258 - control-bool
1437− - extensible
2259+ - drinkery
1438 - monad-skeleton
2260 - monad-skeleton
1439− - objective
1440− - witherable
1441 - xml-lens
2261 - xml-lens
2262+ - witherable
2263+ - deriving-aeson
1442
2264
1443 "Peter Harpending <peter@harpending.org> @pharpend":
2265 "Peter Harpending <peter@harpending.org> @pharpend":
1444 - editor-open
2266 - editor-open
1445− - exceptional
2267+ - exceptional < 0 # 0.3.0.0 MonadFail
1446− - optparse-helper
1447 - pager
2268 - pager
1448 - semiring-simple
2269 - semiring-simple
1449
2270
1450 "Philipp Hausmann <ph_git@314.ch> @phile314":
2271 "Philipp Hausmann <ph_git@314.ch> @phile314":
1451− - tasty-silver
2272+ - language-thrift
1452
2273
1453 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
2274 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
1454 - pipes-text
2275 - pipes-text
1455 - lens-simple
2276 - lens-simple
1456 - lens-family-core
2277 - lens-family-core
1457 - lens-family
2278 - lens-family
1458− - streaming
1459− - streaming-bytestring
1460−
1461
2279
1462 "Justin Le <justin@jle.im> @mstksg":
2280 "Justin Le <justin@jle.im> @mstksg":
2281+ - advent-of-code-api
1463 - auto
2282 - auto
2283+ - backprop
2284+ - bins
2285+ - conduino
1464 - configurator-export
2286 - configurator-export
2287+ - decidable
2288+ - emd
2289+ - functor-products < 0 # 0.1.1.0 compilation failure https://github.com/mstksg/functor-products/issues/1
2290+ - hamilton
2291+ - hmatrix-backprop
2292+ - hmatrix-vector-sized
2293+ - lens-typelevel
2294+ - list-witnesses
2295+ - nonempty-containers
2296+ - one-liner-instances
1465 - prompt
2297 - prompt
2298+ - servant-cli
1466 - tagged-binary
2299 - tagged-binary
2300+ - type-combinators-singletons
1467 - typelits-witnesses
2301 - typelits-witnesses
1468 - uncertain
2302 - uncertain
2303+ - vector-sized
1469
2304
1470 "Ian Duncan <ian@iankduncan.com> @iand675":
2305 "Ian Duncan <ian@iankduncan.com> @iand675":
1471 - feature-flags
2306 - feature-flags
1472 - metrics
2307 - metrics
1473 - pipes-wai
2308 - pipes-wai
1474 - serf
2309 - serf
1475− # 0.2.0.0 compilation failure - uri-templater
2310+ - uri-templater
1476− # via uri-templater - librato
2311+ - data-sketches
1477− # bounds - datadog
2312+ - data-sketches-core
1478− # bounds - engine-io-growler
1479− # bounds - flowdock
1480− # GHC 8 - growler
1481
2313
1482 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
2314 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
1483− - angel
1484 - uri-bytestring
2315 - uri-bytestring
1485− # Can't build on stackage server https://github.com/MichaelXavier/phash/issues/5 - phash
2316+ - cron
1486− # - cron # BLOCKED derive
1487− # GHC 8 - tasty-tap
2317+ - tasty-tap
1488− # via tasty-tap - tasty-fail-fast
2318+ - tasty-fail-fast
1489 - drifter
2319 - drifter
1490 - drifter-postgresql
2320 - drifter-postgresql
2321+ - drifter-sqlite
1491
2322
1492 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
2323 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
1493 - wai-cors
2324 - wai-cors
1494 - configuration-tools
2325 - configuration-tools
2326+ - random-bytestring
1495
2327
1496 "Sam Rijs <srijs@airpost.net> @srijs":
2328 "Sam Rijs <srijs@airpost.net> @srijs":
1497 - ndjson-conduit
2329 - ndjson-conduit
1498− # GHC 8 - attoparsec-trans
1499 - operational-class
2330 - operational-class
1500 - result
2331 - result
1501
2332
1502− # "Anupam Jain <ajnsit@gmail.com> @ajnsit":
1503− # GHC 8 - wai-routes
1504−
1505 "Daniel Patterson <dbp@dbpmail.net> @dbp":
2333 "Daniel Patterson <dbp@dbpmail.net> @dbp":
1506− # via digestive-functors - hspec-snap
1507 - hworker
2334 - hworker
1508− # - hworker-ses BLOCKED amazonka-core
1509 - fn
2335 - fn
1510− # via heist - fn-extra
1511−
1512− "Chris Wong <lambda.fairy@gmail.com> @lfairy":
1513− - nationstates
1514
2336
1515 "Mathieu Boespflug <mboes@tweag.net> @mboes":
2337 "Mathieu Boespflug <mboes@tweag.net> @mboes":
1516− # via ihaskell & via ihaskell-blaze - ihaskell-inline-r
2338+ - choice
1517− - cassette
1518 - distributed-closure
2339 - distributed-closure
1519− - H
2340+ - inline-java
1520 - inline-r
2341 - inline-r
2342+ - jni < 0 # compile fail
2343+ - jvm
2344+ - jvm-streaming
2345+ - H
2346+ - sparkle
1521 - th-lift
2347 - th-lift
1522
2348
1523 "Christopher Reichert <creichert07@gmail.com> @creichert":
2349 "Christopher Reichert <creichert07@gmail.com> @creichert":
@@ -1527,31 +2353,12 @@ packages:
1527 - wai-middleware-throttle
2353 - wai-middleware-throttle
1528 - yesod-auth-basic
2354 - yesod-auth-basic
1529
2355
1530− # "Alcides Viamontes <a.viamontes.esquivel@gmail.com> @alcidesv":
1531− # GHC 8 - second-transfer
1532−
1533− # "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
2356+ "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
1534− # GHC 8 & bounds - apiary
1535− # GHC 8 & bounds - apiary-logger
1536− # GHC 8 & bounds - apiary-persistent
1537− # GHC 8 & bounds - apiary-websockets
1538− # GHC 8 & bounds - apiary-cookie
1539− # GHC 8 & bounds - apiary-session
1540− # GHC 8 & bounds - apiary-clientsession
1541− # GHC 8 & bounds - apiary-authenticate
1542− # GHC 8 & bounds - apiary-eventsource
1543− # GHC 8 & bounds - apiary-mongoDB
1544− # GHC 8 & bounds - apiary-memcached
1545− # GHC 8 - types-compat
1546− # GHC 8 - web-routing
1547− # GHC 8 - bytestring-read
1548− # GHC 8 & bounds - memcached-binary
1549− # GHC 8 - barrier
2357+ - barrier
1550− # GHC 8 - haddocset
1551
2358
1552 "Kai Zhang <kai@kzhang.org> @kaizhang":
2359 "Kai Zhang <kai@kzhang.org> @kaizhang":
1553− - clustering
1554 - matrices
2360 - matrices
2361+ - haskell-igraph < 0 # 0.8.0 compile fail ghc 8.10.1 #5440/closed
1555
2362
1556 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
2363 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
1557 - IPv6Addr
2364 - IPv6Addr
@@ -1560,55 +2367,68 @@ packages:
1560 - Spintax
2367 - Spintax
1561 - glabrous
2368 - glabrous
1562 - google-oauth2-jwt
2369 - google-oauth2-jwt
2370+ - IPv6DB
2371+ - gothic
2372+ - NanoID
1563
2373
1564 "koral koral@mailoo.org @k0ral":
2374 "koral koral@mailoo.org @k0ral":
1565 - atom-conduit
2375 - atom-conduit
1566 - conduit-parse
2376 - conduit-parse
2377+ - dublincore-xml-conduit
2378+ - euler-tour-tree
1567 - opml-conduit
2379 - opml-conduit
1568 - rss-conduit
2380 - rss-conduit
1569− # - imm # BLOCKED derive
1570 - timerep
2381 - timerep
1571 - xml-conduit-parse
2382 - xml-conduit-parse
1572
2383
2384+ "Daniel Cartwright <chessai1996@gmail.com> @chessai":
2385+ - streaming
2386+ - streaming-bytestring
2387+ - country
2388+ - semirings
2389+ - torsor
2390+ - chronos
2391+ - refined
2392+ - these-skinny
2393+ - hedgehog-classes
2394+
1573 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
2395 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
1574− - protocol-buffers
2396+ - SHA
1575− # - hprotoc # https://github.com/k-bx/protocol-buffers/issues/45
2397+ - currency
1576− - protocol-buffers-descriptor
2398+ - data-ordlist
1577− - ekg-core
1578 - digits
2399 - digits
2400+ - dns
2401+ - friday
2402+ - friday-juicypixels
1579 - hbeanstalk
2403 - hbeanstalk
2404+ - hedis
2405+ - hprotoc
2406+ - hsyslog-udp
1580 - iso3166-country-codes
2407 - iso3166-country-codes
1581 - iso639
2408 - iso639
1582− - murmur-hash
1583 - monoidal-containers
2409 - monoidal-containers
2410+ - murmur-hash
2411+ - protocol-buffers
2412+ - protocol-buffers-descriptor
1584 - regex-pcre
2413 - regex-pcre
1585− - string-combinators
1586 - string-class
2414 - string-class
1587− - SHA
2415+ - string-combinators
1588− - data-ordlist
1589− - hedis
1590
2416
1591 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
2417 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
1592 - pipes-fastx
2418 - pipes-fastx
1593− # - pipes-illumina # BLOCKED pipes 4.2 via pipes-bgzf
1594 - seqalign
2419 - seqalign
1595− - thermonuc
1596− - xlsior
1597
2420
1598 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
2421 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
1599− - yesod-auth-account
1600 - yesod-static-angular
2422 - yesod-static-angular
1601− # - hspec-webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2423+ - hspec-webdriver
1602− # - webdriver-angular # https://github.com/kallisti-dev/hs-webdriver/issues/98
2424+ - webdriver-angular
1603
2425
1604 "Sven Heyll <svh@posteo.de> @sheyll":
2426 "Sven Heyll <svh@posteo.de> @sheyll":
1605 - b9
2427 - b9
1606 - type-spec
2428 - type-spec
1607 - pretty-types
2429 - pretty-types
1608−
2430+ - function-builder
1609− "Will Thompson <will@willthompson.co.uk> @wjt":
2431+ - bytestring-to-vector
1610− []
1611− # - bustle https://github.com/vasylp/hgettext/issues/10
1612
2432
1613 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
2433 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
1614 - hlibsass
2434 - hlibsass
@@ -1617,42 +2437,36 @@ packages:
1617 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
2437 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
1618 - range
2438 - range
1619
2439
1620− "Index Int <vlad.z.4096@gmail.com> @int-index":
2440+ "Vladislav Zavialov <vlad.z.4096@gmail.com> @int-index":
1621 - transformers-lift
2441 - transformers-lift
1622− - ether
1623 - union
2442 - union
2443+ - named
2444+ - inj
2445+ - shower
1624
2446
1625 "Stack Builders stackage@stackbuilders.com @stackbuilders":
2447 "Stack Builders stackage@stackbuilders.com @stackbuilders":
1626 - atomic-write
2448 - atomic-write
2449+ - dbcleaner
2450+ - dotenv
1627 - hapistrano
2451 - hapistrano
2452+ - hspec-golden
1628 - inflections
2453 - inflections
1629− - twitter-feed
1630− - cassava-megaparsec
1631− - dotenv
1632 - stache
2454 - stache
2455+ - scalendar
1633
2456
1634 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
2457 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
1635 - monad-peel
2458 - monad-peel
1636 - NineP
2459 - NineP
1637− # GHC 8 - Network-NineP
2460+ - Network-NineP
1638−
1639− "Oliver Charles <ollie@ocharles.org.uk> @ocharles":
1640− # GHC 8 - engine-io
1641− - diff3
1642− # GHC 8 & bounds - digestive-functors-aeson
1643− # GHC 8 - exhaustive
1644− # GHC 8 - libsystemd-journal
1645− # GHC 8 - network-carbon
1646− # GHC 8 - socket-io
1647− - tasty-rerun
1648−
1649− # "Scott Murphy <scott.murphy@plowtech.net> @smurphy8":
1650
2461
1651 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
2462 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
1652 # Test suite needs a running neo4j server with auth disabled
2463 # Test suite needs a running neo4j server with auth disabled
1653 # unfortunately the cabal package name and the github repo don't have the exact same name
2464 # unfortunately the cabal package name and the github repo don't have the exact same name
1654 # package name is haskell-neo4j-client github name is haskell-neo4j-rest-client
2465 # package name is haskell-neo4j-client github name is haskell-neo4j-rest-client
1655− - haskell-neo4j-client
2466+ - haskell-neo4j-client < 0 # 0.3.2.4 compile fail with GHC 8.4 https://github.com/asilvestre/haskell-neo4j-rest-client/issues/32
2467+
2468+ "Anton Kholomiov <anton.kholomiov@gmail.com>":
2469+ - data-fix
1656
2470
1657 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
2471 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
1658 - histogram-fill
2472 - histogram-fill
@@ -1661,163 +2475,186 @@ packages:
1661 - type-level-numbers
2475 - type-level-numbers
1662
2476
1663 "Ryan Scott <ryan.gl.scott@gmail.com> @RyanGlScott":
2477 "Ryan Scott <ryan.gl.scott@gmail.com> @RyanGlScott":
2478+ - abstract-deque
2479+ - abstract-deque-tests
2480+ - abstract-par
2481+ - atomic-primops
2482+ - base-compat-batteries
1664 - base-orphans
2483 - base-orphans
2484+ - chaselev-deque
1665 - code-page
2485 - code-page
2486+ - constraint-tuples
2487+ - criterion
2488+ - criterion-measurement
2489+ - data-reify
1666 - deriving-compat
2490 - deriving-compat
2491+ - dotgen
2492+ - echo
2493+ - eliminators
1667 - generic-deriving
2494 - generic-deriving
2495+ - ghc-bignum-orphans
1668 - hashmap
2496 - hashmap
2497+ - indexed-traversable-instances
1669 - invariant
2498 - invariant
1670 - keycode
2499 - keycode
1671 - lift-generics
2500 - lift-generics
2501+ - mintty
2502+ - monad-par
2503+ - monad-par-extras
1672 - mtl-compat
2504 - mtl-compat
2505+ - ordered-containers
1673 - proxied
2506 - proxied
2507+ - rdtsc
2508+ - singleton-nats
2509+ - singletons-base
2510+ - singletons-th
1674 - text-show
2511 - text-show
1675 - text-show-instances
2512 - text-show-instances
2513+ - th-abstraction
2514+ - th-compat
2515+ - thread-local-storage
2516+ - type-equality
1676
2517
1677 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
2518 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
1678 - xlsx
2519 - xlsx
1679
2520
1680 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
2521 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
1681 - monad-logger-prefix
2522 - monad-logger-prefix
2523+ - monad-metrics
2524+ - prairie
2525+ - ekg-cloudwatch
2526+ - smtp-mail
2527+ - liboath-hs
2528+ - servant-quickcheck
2529+ - esqueleto
2530+ - hedgehog-fakedata
2531+ - persistent-discover
2532+ - persistent-documentation
2533+ - persistent-typed-db
2534+ - persistent-qq
2535+ - persistent-pagination
2536+ - hspec-hedgehog
2537+ - exception-via
2538+ - record-wrangler
2539+ - lift-type
2540+ - some-dict-of
2541+ - discover-instances
1682
2542
1683 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
2543 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
1684 - refact
2544 - refact
1685− # bounds - servant-pandoc
1686− - ghc-exactprint
1687− - apply-refact
1688
2545
1689− # "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
2546+ "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
1690− # GHC 8 - ihaskell
1691− # via ihaskell - ihaskell-aeson
1692− # via ihaskell - ihaskell-basic
1693− # via ihaskell - ihaskell-blaze
1694− # via ihaskell - ihaskell-charts
1695− # via ihaskell - ihaskell-diagrams
1696− # via ihaskell - ihaskell-hatex
1697− # via ihaskell - ihaskell-juicypixels
1698− # via ihaskell - ihaskell-magic
1699− # via ihaskell - ihaskell-rlangqq
1700− # via ihaskell - ihaskell-static-canvas
1701− # GHC 8 - ghc-parser
1702− # GHC 8 - ipython-kernel
2547+ - ipython-kernel
1703−
1704− "Andrés Sicard-Ramírez <asr@eafit.edu.co> @asr":
1705− []
1706− # - Agda # BLOCKED haskell-src-exts < 1.18 and QuickCheck < 2.9
1707
2548
1708 "James Cook <mokus@deepbondi.net> @mokus0":
2549 "James Cook <mokus@deepbondi.net> @mokus0":
2550+ - dependent-map
1709 - dependent-sum
2551 - dependent-sum
1710 - dependent-sum-template
2552 - dependent-sum-template
1711− - dependent-map
1712 - dice
2553 - dice
1713 - hstatsd
2554 - hstatsd
1714 - misfortune
2555 - misfortune
1715
2556
1716 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2557 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2558+ - ekg-wai
1717− # via haxl - haxl-amazonka
2559+ - haxl-amazonka
2560+ - hasql-migration
1718 - servant-JuicyPixels
2561 - servant-JuicyPixels
1719
2562
1720− "Artyom <yom@artyom.me> @neongreen":
2563+ "Artyom Kazak <artyom@artyom.me> @neongreen":
1721 - microlens
2564 - microlens
1722 - microlens-platform
2565 - microlens-platform
1723 - microlens-mtl
2566 - microlens-mtl
1724 - microlens-th
2567 - microlens-th
1725 - microlens-ghc
2568 - microlens-ghc
1726 - microlens-contra
2569 - microlens-contra
1727− - shortcut-links
1728− - cheapskate-lucid
1729 - cheapskate-highlight
2570 - cheapskate-highlight
2571+ - cheapskate-lucid
1730 - cmark-lucid
2572 - cmark-lucid
1731 - cmark-highlight
2573 - cmark-highlight
1732 - Spock-lucid
2574 - Spock-lucid
1733 - charsetdetect-ae
2575 - charsetdetect-ae
1734− - ilist
1735 - text-all
2576 - text-all
1736
2577
1737 "Takano Akio tak@anoak.io @takano-akio":
2578 "Takano Akio tak@anoak.io @takano-akio":
1738 - fast-builder
2579 - fast-builder
1739 - filelock
2580 - filelock
1740− - euphoria
1741−
1742− "Ashley Moni ashley.moni1@gmail.com @AshleyMoni":
1743− - quadtree
1744
2581
1745 "Brian Lewis brian@lorf.org @bsl":
2582 "Brian Lewis brian@lorf.org @bsl":
1746 - bindings-GLFW
2583 - bindings-GLFW
1747 - GLFW-b
2584 - GLFW-b
1748
2585
1749 "Niklas Hambüchen mail@nh2.me @nh2":
2586 "Niklas Hambüchen mail@nh2.me @nh2":
2587+ - conduit-concurrent-map
1750 - hidapi
2588 - hidapi
1751 - iso8601-time
2589 - iso8601-time
1752 - loop
2590 - loop
2591+ - lz4-frame-conduit
1753 - netpbm
2592 - netpbm
1754− - network-house
2593+ - network-house < 0 # 0.1.0.2 compile failure MonadFail
1755 - reinterpret-cast
2594 - reinterpret-cast
2595+ - shared-memory
2596+ - posix-paths
1756 # As dependencies of packages above
2597 # As dependencies of packages above
1757 - attoparsec-binary
2598 - attoparsec-binary
1758− - storable-record
1759−
1760− "Brandon Martin <brandon@codedmart.com> @codedmart":
1761− # GHC 8 & via engine-io - engine-io-wai
1762− - rethinkdb
1763
2599
1764 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
2600 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
1765 - both
2601 - both
1766 - concurrency
2602 - concurrency
1767− - dpor
1768 - dejafu
2603 - dejafu
1769− - async-dejafu
1770 - hunit-dejafu
2604 - hunit-dejafu
1771 - tasty-dejafu
2605 - tasty-dejafu
1772 - irc-ctcp
2606 - irc-ctcp
1773 - irc-conduit
2607 - irc-conduit
1774 - irc-client
2608 - irc-client
1775
2609
2610+ "Rudy Matela <rudy@matela.com.br> @rudymatela":
2611+ - leancheck
2612+ - leancheck-instances
2613+ - fitspec
2614+ - express
2615+ - speculate
2616+ - extrapolate
2617+ - code-conjure
2618+ - percent-format
2619+ - tasty-leancheck
2620+ - hspec-leancheck
2621+ - test-framework-leancheck
2622+
1776 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
2623 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
1777 - irc
2624 - irc
1778
2625
1779 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
2626 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
1780− - emailaddress
1781 - envelope
2627 - envelope
1782 - from-sum
2628 - from-sum
1783− - hailgun
1784− # GHC 8 - ig
1785 - natural-transformation
2629 - natural-transformation
1786− - opaleye-trans
2630+ - password
2631+ - password-instances
2632+ - password-types
2633+ - pretty-simple
2634+ - print-console-colors
1787 - read-env-var
2635 - read-env-var
1788− - yahoo-finance-api
2636+ - servant-checked-exceptions
2637+ - servant-checked-exceptions-core
2638+ - servant-rawm
2639+ - servant-static-th
2640+ - termonad
2641+ - world-peace
2642+ - xml-html-qq
2643+ - xml-indexed-cursor
1789
2644
1790 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
2645 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
1791 - Ebnf2ps
2646 - Ebnf2ps
1792
2647
1793− "Dmitry Ivanov <ethercrow@gmail.com> @ethercrow":
1794− - charsetdetect-ae
1795− - docopt
1796− - dynamic-state
1797− - dyre
1798− - io-storage
1799− - oo-prototypes
1800− - pointedlist
1801− - word-trie
1802− - xdg-basedir
1803− # - yi BLOCKED due to yi-language
1804− #- yi-fuzzy-open
1805−
1806− # https://github.com/yi-editor/yi/issues/922
1807− # - yi-language
1808−
1809− - yi-rope
1810−
1811− # "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
2648+ "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
1812− # GHC 8 - GPipe
2649+ - GPipe
1813
2650
1814− # "Patrick Redmond <plredmond@gmail.com> @plredmond":
2651+ "Jonas Carpay <jonascarpay@gmail.com> @jonascarpay":
1815− # GHC 8 - GPipe-GLFW
2652+ - apecs
1816−
2653+ - apecs-gloss
1817− # "Csaba Hruska <csaba.hruska@gmail.com> @csabahruska":
2654+ - apecs-physics
1818− # GHC 8 - lambdacube-ir
2655+ - aeson-commit
1819− # GHC 8 & via wavefront - lambdacube-gl
2656+ - js-chart
1820− # GHC 8 & bounds - lambdacube-compiler
2657+ - tasty-focus
1821
2658
1822 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
2659 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
1823 - Xauth
2660 - Xauth
@@ -1825,38 +2662,41 @@ packages:
1825 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
2662 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
1826 - wai-middleware-metrics
2663 - wai-middleware-metrics
1827
2664
1828− "Stefan Berthold":
1829− - smallcaps
1830−
1831 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
2665 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
1832 - hashtables
2666 - hashtables
1833 - io-streams
2667 - io-streams
1834 - openssl-streams
2668 - openssl-streams
1835
2669
1836− "Andrew Cowie <andrew@operationaldynamics.com> @afcowie":
2670+ "Andrew Cowie <istathar@gmail.com> @istathar":
2671+ - chronologique
1837 - http-common
2672 - http-common
1838 - http-streams
2673 - http-streams
1839−
2674+ - locators
1840− "Devan Stormont <stormont@gmail.com> @stormont":
2675+ - core-data
1841− []
2676+ - core-program
1842− # - forecast-io # BLOCKED aeson 1.0
2677+ - core-telemetry
2678+ - core-text
1843
2679
1844 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
2680 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
1845 - cheapskate
2681 - cheapskate
1846
2682
1847 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
2683 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
1848 - fgl
2684 - fgl
1849− - fgl-arbitrary
1850 - graphviz
2685 - graphviz
1851 - wl-pprint-text
2686 - wl-pprint-text
2687+ - servant-pandoc
1852
2688
1853 "Sharif Olorin <sio@tesser.org> @olorin":
2689 "Sharif Olorin <sio@tesser.org> @olorin":
1854 - quickcheck-text
2690 - quickcheck-text
1855 - nagios-check
2691 - nagios-check
1856
2692
1857 "Peter Simons <simons@cryp.to> @peti":
2693 "Peter Simons <simons@cryp.to> @peti":
1858− - distribution-nixpkgs
1859 - cabal2nix
2694 - cabal2nix
2695+ - cabal2spec
2696+ - cgi
2697+ - distribution-nixpkgs
2698+ - distribution-opensuse
2699+ - flexible-defaults
1860 - funcmp
2700 - funcmp
1861 - hackage-db
2701 - hackage-db
1862 - hledger-interest
2702 - hledger-interest
@@ -1865,26 +2705,39 @@ packages:
1865 - hsemail
2705 - hsemail
1866 - hsyslog
2706 - hsyslog
1867 - jailbreak-cabal
2707 - jailbreak-cabal
2708+ - lambdabot-core
2709+ - lambdabot-irc-plugins
1868 - language-nix
2710 - language-nix
2711+ - logging-facade-syslog
2712+ - MonadPrompt
1869 - nix-paths
2713 - nix-paths
2714+ - parsec-class
2715+ - prim-uniq
2716+ - random-fu < 0 # 0.2.7.7 compile fail
2717+ - random-source
2718+ - rvar
2719+ - SafeSemaphore
1870 - streamproc
2720 - streamproc
2721+ - stringsearch # for cgi
2722+ - titlecase
1871
2723
1872 "Mark Fine <mark.fine@gmail.com> @markfine":
2724 "Mark Fine <mark.fine@gmail.com> @markfine":
1873 - postgresql-schema
2725 - postgresql-schema
1874− # test failures https://github.com/fpco/stackage/issues/873 - sbp
2726+ - sbp
1875
2727
1876 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
2728 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
1877 - moesocks
2729 - moesocks
1878
2730
1879 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
2731 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
1880− - fasta
1881 - diversity
2732 - diversity
2733+ - fasta
1882 - modify-fasta
2734 - modify-fasta
1883 - tree-fun
2735 - tree-fun
1884 - random-tree
2736 - random-tree
1885 - clumpiness
2737 - clumpiness
1886 - find-clumpiness
2738 - find-clumpiness
1887 - blosum
2739 - blosum
2740+ - rank-product
1888
2741
1889 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
2742 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
1890 - compactmap
2743 - compactmap
@@ -1895,39 +2748,49 @@ packages:
1895 - withdependencies
2748 - withdependencies
1896 - hruby
2749 - hruby
1897 - language-puppet
2750 - language-puppet
1898− # Doesn't allow http-types >= 0.9.1 - stm-firehose
2751+ - tar-conduit
1899− # GHC 8 & doesn't allow aeson >= 0.11.2.0 & doesn't allow lens >= 4.14 - hslogstash
1900
2752
1901− "Mark Karpov <markkarpov@opmbx.org> @mrkkrp":
2753+ "Mark Karpov <markkarpov92@gmail.com> @mrkkrp":
1902− - megaparsec
1903− - htaglib
1904− - slug
1905− - path-io
1906− - hspec-megaparsec
1907− - plan-b
1908− - zip
1909 - JuicyPixels-extra
2754 - JuicyPixels-extra
2755+ - cue-sheet
2756+ - flac
2757+ - flac-picture
2758+ - forma
2759+ - ghc-syntax-highlighter
2760+ - hspec-megaparsec
2761+ - htaglib
2762+ - html-entity-map
1910 - identicon
2763 - identicon
2764+ - lame
2765+ - megaparsec
2766+ - megaparsec-tests
2767+ - mmark
2768+ - mmark-cli
2769+ - mmark-ext
2770+ - modern-uri
2771+ - ormolu
1911 - pagination
2772 - pagination
1912− - data-check
2773+ - parser-combinators
2774+ - parser-combinators-tests
2775+ - path
2776+ - path-io
2777+ - req
2778+ - req-conduit
2779+ - stache
2780+ - tagged-identity
1913 - text-metrics
2781 - text-metrics
1914−
2782+ - wave
1915− # "Thomas Bereknyei <tomberek@gmail.com>":
2783+ - zip
1916− # GHC 8 - multiplate
1917−
1918− # "Sumit Sahrawat <sumit.sahrawat.apm13@iitbhu.ac.in> @sumitsahrawat":
1919− # GHC 8 & via plot - plot-gtk-ui
1920− # GHC 8 - calculator
1921
2784
1922 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
2785 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
1923 - app-settings
2786 - app-settings
1924 - hsexif
2787 - hsexif
2788+ - slack-web
1925
2789
1926 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
2790 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
1927 - http-api-data
2791 - http-api-data
1928− # - smsaero # https://github.com/GetShopTV/smsaero/issues/12
1929 - swagger2
2792 - swagger2
1930− - servant-swagger
2793+ - telegram-bot-simple
1931
2794
1932 "Jared Tobin <jared@jtobin.ca> @jtobin":
2795 "Jared Tobin <jared@jtobin.ca> @jtobin":
1933 - mwc-probability
2796 - mwc-probability
@@ -1938,93 +2801,66 @@ packages:
1938 - declarative
2801 - declarative
1939 - sampling
2802 - sampling
1940 - flat-mcmc
2803 - flat-mcmc
2804+ - urbit-hob
2805+ - hnock
1941
2806
1942 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
2807 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
1943 - distributed-process
2808 - distributed-process
1944− # GHC 8 - distributed-process-async
1945− # GHC 8 - distributed-process-client-server
1946− # GHC 8 - distributed-process-execution
1947− # GHC 8 - distributed-process-extras
1948− # GHC 8 - distributed-process-registry
1949− # GHC 8 - distributed-process-supervisor
1950− # GHC 8 - distributed-process-task
1951 - distributed-process-simplelocalnet
2809 - distributed-process-simplelocalnet
2810+ - distributed-process-tests
1952 - distributed-static
2811 - distributed-static
2812+ - inline-c
2813+ - jvm-batching
1953 - network-transport
2814 - network-transport
2815+ - network-transport-tests
1954 - network-transport-tcp
2816 - network-transport-tcp
1955 - network-transport-inmemory
2817 - network-transport-inmemory
1956 - network-transport-composed
2818 - network-transport-composed
2819+ - pthread
1957 - rank1dynamic
2820 - rank1dynamic
1958
2821
1959− # "Alexander Vershilov <alexander.vershilov@tweag.io> @qnikst":
2822+ "Dave Tapley <dukedave@gmail.com> @dukedave":
1960− # https://github.com/qnikst/imagemagick/issues/41 - imagemagick
2823+ - inline-c-cpp
1961− # GHC 8 - network-transport-zeromq
1962
2824
1963− "Takahiro Himura <himuratk421@gmail.com> @thimura":
2825+ "Takahiro Himura <himuratk421@gmail.com> @himura":
1964 - lens-regex
2826 - lens-regex
1965− # - twitter-conduit # BLOCKED http-conduit 2.2
2827+ - twitter-conduit
1966− # - twitter-types # BLOCKED derive
2828+ - twitter-types
1967− # - twitter-types-lens # BLOCKED derive
2829+ - twitter-types-lens
1968
2830
1969− # "Robbin C. <robbinch33@gmail.com> robbinch":
2831+ "Robbin C. <robbinch33@gmail.com> @robbinch":
1970− # via lzma-conduit - zim-parser
2832+ - zim-parser
1971
2833
1972 "David Wiltshire <david.wiltshire@metark.com> @dave77":
2834 "David Wiltshire <david.wiltshire@metark.com> @dave77":
1973 # on behalf of Alexey Karakulov @w3rs
2835 # on behalf of Alexey Karakulov @w3rs
1974 - hashable-time
2836 - hashable-time
1975
2837
1976− # "Tim Baumann <tim@timbaumann.info> @timjb":
1977− # GHC 8 & via engine-io - engine-io-yesod
1978−
1979− "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
1980− # bounds - riak
1981− - airship
1982−
1983 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
2838 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
1984− - pdf-toolbox-core
1985 - pdf-toolbox-content
2839 - pdf-toolbox-content
2840+ - pdf-toolbox-core
1986 - pdf-toolbox-document
2841 - pdf-toolbox-document
1987 - io-region
2842 - io-region
1988 - scanner
2843 - scanner
1989
2844
1990 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
2845 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
1991− # GHC 8 - partial-isomorphisms
2846+ - partial-isomorphisms
1992− - vinyl
1993
2847
1994 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
2848 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
1995 - IntervalMap
2849 - IntervalMap
1996
2850
1997 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
2851 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
1998− - docopt
1999 - pathwalk
2852 - pathwalk
2000
2853
2001 "John Galt <jgalt@centromere.net> @centromere":
2854 "John Galt <jgalt@centromere.net> @centromere":
2002 - cacophony
2855 - cacophony
2003− - pipes-cacophony
2004 - blake2
2856 - blake2
2857+ - nfc
2005
2858
2006− "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
2007− []
2008− # - webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2009−
2010− "Luke Iannini <lukexi@me.com> @lukexi":
2011− - inline-c
2012− - inline-c-cpp
2013− - ekg
2014−
2015− # "Emin Karayel <me@eminkarayel.de> @ekarayel":
2016− # GHC 8 - sync-mht
2017
2859
2018 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2860 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2019 - ctrie
2861 - ctrie
2020 - ttrie
2862 - ttrie
2021
2863
2022− "Greg Weber <greg@gregweber.info> @gregwebs":
2023− - base-noprelude
2024−
2025− # "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2026− # Missing test files https://github.com/fpco/stackage/pull/979 - exp-pairs
2027−
2028 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2864 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2029 - hsndfile
2865 - hsndfile
2030 - hsndfile-vector
2866 - hsndfile-vector
@@ -2032,21 +2868,9 @@ packages:
2032 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2868 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2033 - tagstream-conduit
2869 - tagstream-conduit
2034
2870
2035− # "Johannes Hilden <hildenjohannes@gmail.com> @johanneshilden":
2871+ "Johannes Hilden <hildenjohannes@gmail.com> @laserpants":
2036− # Missing test files https://github.com/fpco/stackage/issues/1001 - hashids
2872+ - hashids
2037−
2873+ - fuzzyset
2038− # "Joe Hermaszewski <stackage@monoid.al> @expipiplus1":
2039− # GHC 8 & via memoize - exact-real
2040−
2041− # "Jonatan Sundqvist jonatanhsundqvist@gmail.com @SwiftsNamesake":
2042− # bounds - Cartesian
2043− # bounds - Michelangelo
2044−
2045− "Henry J. Wylde <public@hjwylde.com> @hjwylde":
2046− - git-fmt
2047− - omnifmt
2048− # aeson & extra - werewolf
2049− # aeson & extra & http-client & http-client-tls - werewolf-slack
2050
2874
2051 "Will Sewell <me@willsewell.com> @willsewell":
2875 "Will Sewell <me@willsewell.com> @willsewell":
2052 - benchpress
2876 - benchpress
@@ -2055,14 +2879,21 @@ packages:
2055 "Yorick Laupa yo.eight@gmail.com @YoEight":
2879 "Yorick Laupa yo.eight@gmail.com @YoEight":
2056 - eventstore
2880 - eventstore
2057 - dotnet-timespan
2881 - dotnet-timespan
2882+ - eventsource-api
2883+ - eventsource-geteventstore-store
2884+ - eventsource-store-specs
2885+ - eventsource-stub-store
2058
2886
2059 "Sebastian Dröge slomo@coaxion.net @sdroege":
2887 "Sebastian Dröge slomo@coaxion.net @sdroege":
2060− - conduit-iconv
2888+ - conduit-iconv < 0 # 0.1.1.3 compile fail MonadFail
2061 - conduit-connection
2889 - conduit-connection
2062
2890
2063 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2891 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2064 - aeson-casing
2892 - aeson-casing
2065− - graylog
2893+ - graylog < 0 # 0.1.0.1 compile fail Couldn't find module Network.BSD
2894+ - parsec-numeric
2895+ - mallard
2896+ - gdax
2066
2897
2067 "Callum Rogers @CRogers":
2898 "Callum Rogers @CRogers":
2068 - should-not-typecheck
2899 - should-not-typecheck
@@ -2076,19 +2907,11 @@ packages:
2076 - pkcs10
2907 - pkcs10
2077
2908
2078 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2909 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2079− - binary-typed
2080 - pgp-wordlist
2910 - pgp-wordlist
2911+ - show-prettyprint
2081
2912
2082 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2913 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2083 - boomerang
2914 - boomerang
2084− - clckwrks
2085− - clckwrks-cli
2086− - clckwrks-plugin-page
2087− - clckwrks-plugin-media
2088− - clckwrks-theme-bootstrap
2089− - hackage-whatsnew
2090− - happstack-authenticate
2091− - happstack-clientsession
2092 - happstack-hsp
2915 - happstack-hsp
2093 - happstack-jmacro
2916 - happstack-jmacro
2094 - happstack-server
2917 - happstack-server
@@ -2113,20 +2936,14 @@ packages:
2113 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2936 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2114 - ascii-progress
2937 - ascii-progress
2115 - drawille
2938 - drawille
2116− # - extract-dependencies # BLOCKED wreq
2117 - file-modules
2939 - file-modules
2118 - frontmatter
2940 - frontmatter
2119 - read-editor
2941 - read-editor
2120− - hspec-setup
2942+ - list-prompt < 0 # 0.1.1.0 compile fail https://github.com/yamadapc/list-prompt/issues/3
2121− # bounds - hzulip
2122− - list-prompt
2123− # GHC 8 - memoization-utils
2124− # - package-description-remote # BLOCKED wreq
2943+ - package-description-remote < 0 # 0.2.0.0 compile fail
2125 - projectroot
2944 - projectroot
2126 - questioner
2945 - questioner
2127− # - stack-run-auto # BLOCKED wreq
2946+ - language-dockerfile < 0 # 0.3.6.0 compile fail https://github.com/beijaflor-io/haskell-language-dockerfile/issues/11
2128− # aeson 1.0 - hpack-convert
2129− - language-dockerfile
2130
2947
2131 "Pascal Hartig <phartig@rdrei.net> @passy":
2948 "Pascal Hartig <phartig@rdrei.net> @passy":
2132 - giphy-api
2949 - giphy-api
@@ -2136,18 +2953,29 @@ packages:
2136 - open-browser
2953 - open-browser
2137
2954
2138 "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2955 "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2139− - tracy
2140− # GHC 8 - hreader-lens
2956+ - hreader-lens
2957+ - schematic
2141
2958
2142 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2959 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2143 - yes-precure5-command
2960 - yes-precure5-command
2961+ - th-strict-compat
2962+ - main-tester
2963+ - skews
2964+ - wss-client
2965+ - network-messagepack-rpc
2966+ - network-messagepack-rpc-websocket
2967+ - unicode-show
2968+ - deriveJsonNoPrefix
2969+ - fakefs
2970+ - fakepull
2144
2971
2145 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2972 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2146 - avwx
2973 - avwx
2974+ - saltine < 0.2.0.0 # https://github.com/tel/saltine/issues/58
2147 - wai-session-postgresql
2975 - wai-session-postgresql
2148
2976
2149 "Haisheng Wu <freizl@gmail.com> @freizl":
2977 "Haisheng Wu <freizl@gmail.com> @freizl":
2150− - hoauth2
2978+ - hoauth2 < 2.0 # https://github.com/commercialhaskell/stackage/issues/6424
2151
2979
2152 "Falko Peters <falko.peters@gmail.com> @informatikr":
2980 "Falko Peters <falko.peters@gmail.com> @informatikr":
2153 - scrypt
2981 - scrypt
@@ -2156,11 +2984,10 @@ packages:
2156 - dawg-ord
2984 - dawg-ord
2157
2985
2158 "Amit Levy <amit@amitlevy.com> @alevy":
2986 "Amit Levy <amit@amitlevy.com> @alevy":
2159− # 0.4.1 compilation failure - postgresql-orm
2160 - simple
2987 - simple
2161 - simple-templates
2988 - simple-templates
2162 - simple-session
2989 - simple-session
2163− # via postgresql-orm - simple-postgresql-orm
2990+ - postgresql-orm
2164
2991
2165 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2992 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2166 # Stackage server uses Ubuntu 16.04 which ships libzip-1.0.1.
2993 # Stackage server uses Ubuntu 16.04 which ships libzip-1.0.1.
@@ -2169,22 +2996,29 @@ packages:
2169 - LibZip >= 1.0
2996 - LibZip >= 1.0
2170
2997
2171 "Anthony Cowley <acowley@gmail.com> @acowley":
2998 "Anthony Cowley <acowley@gmail.com> @acowley":
2999+ - vinyl
2172 - Frames
3000 - Frames
3001+ - hpp
2173
3002
2174 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
3003 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
2175 - binary-search
3004 - binary-search
2176− - unicode-show
2177
3005
2178 "Jason Shipman <jasonpshipman@gmail.com> @jship":
3006 "Jason Shipman <jasonpshipman@gmail.com> @jship":
2179− # on behalf of Boris Sukholitko @bosu
3007+ - logging-effect-extra
2180− - pure-cdb
3008+ - logging-effect-extra-file
3009+ - logging-effect-extra-handler
3010+ - overhang
3011+ - tao
3012+ - tao-example
2181
3013
2182 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
3014 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
2183 - extensible-effects
3015 - extensible-effects
2184
3016
2185 "Justus Adam <dev@justus.science> @JustusAdam":
3017 "Justus Adam <dev@justus.science> @JustusAdam":
2186− []
3018+ - marvin
2187− #- mustache # BLOCKED wreq
3019+ - marvin-interpolate
3020+ - mustache < 2.4.0 # https://github.com/commercialhaskell/stackage/issues/6421
3021+ - exit-codes >= 1.0.0
2188
3022
2189 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
3023 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
2190 - NoTrace
3024 - NoTrace
@@ -2199,39 +3033,40 @@ packages:
2199 - cmark
3033 - cmark
2200 - texmath
3034 - texmath
2201 - highlighting-kate
3035 - highlighting-kate
3036+ - skylighting
3037+ - skylighting-core
2202 - pandoc-types
3038 - pandoc-types
2203 - zip-archive
3039 - zip-archive
3040+ - doclayout
2204 - doctemplates
3041 - doctemplates
2205− # - pandoc # BLOCKED aeson 1.0
3042+ - emojis
3043+ - pandoc
2206− # - pandoc-citeproc # BLOCKED aeson 1.0
3044+ - citeproc
3045+ - commonmark
3046+ - commonmark-extensions
3047+ - commonmark-pandoc
3048+ - unicode-collation
3049+ - HsYAML-aeson
3050+ - ipynb
2207
3051
2208 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
3052 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
2209 - doctest-discover
3053 - doctest-discover
2210
3054
2211− "Elie Genard <elaye.github.io@gmail.com> @eliegenard":
3055+ "Elie Genard <elaye.github.io@gmail.com> @elaye":
2212 - turtle-options
3056 - turtle-options
2213
3057
2214− # "Ruey-Lin Hsu <petercommand@gmail.com> @petercommand":
2215− # GHC 8 - MASMGen
2216−
2217 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
3058 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
2218 - string-conv
3059 - string-conv
2219 - rng-utils
3060 - rng-utils
2220− - rotating-log
2221− # - ua-parser # BLOCKED derive
3061+ - ua-parser
2222 - hs-GeoIP
3062 - hs-GeoIP
2223 - retry
3063 - retry
2224− # GHC 8 - katip
3064+ - katip
2225− # via katip - katip-elasticsearch
3065+ - katip-elasticsearch < 0 # 0.7.0.0 compile fail https://github.com/commercialhaskell/stackage/issues/6341
2226
3066
2227 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
3067 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
2228 - tuple
3068 - tuple
2229 - OneTuple
3069 - OneTuple
2230− - SVGFonts
2231− - Chart-diagrams
2232−
2233− # "Aaron Levin <aaron.levin@soundcloud.com> @aaronmblevin":
2234− # GHC 8 & lots of other packages - haskell-kubernetes
2235
3070
2236 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
3071 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
2237 - free-vl
3072 - free-vl
@@ -2240,33 +3075,33 @@ packages:
2240 - xlsx-tabular
3075 - xlsx-tabular
2241
3076
2242 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
3077 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
2243− - Cabal
3078+ # - Cabal # take the one that ships with GHC
2244 - cabal-install
3079 - cabal-install
2245 - pointful
3080 - pointful
2246
3081
2247 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
3082 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
2248 - binary-bits
3083 - binary-bits
2249
3084
2250− "Nicolas Trangez <ikke@nicolast.be> @NicolasT":
2251− - reedsolomon
2252−
2253− "Alp Mestanogullari <alpmestan@gmail.com> @alpmestan":
2254− - taggy
2255− - taggy-lens
2256− # 0.1 Compilation failure https://github.com/fpco/stackage/issues/1660 - inline-java
2257− # via inline-java - sparkle
2258−
2259− "Alex McLean <lxyxpx@gmail.com> @yaxu":
3085+ "Alex McLean <alex@slab.org> @yaxu":
2260 - tidal
3086 - tidal
3087+ - hosc
2261
3088
2262 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3089 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3090+ - th-data-compat
3091+ - th-reify-compat
2263 - relational-query
3092 - relational-query
2264 - relational-query-HDBC
3093 - relational-query-HDBC
2265 - persistable-types-HDBC-pg
3094 - persistable-types-HDBC-pg
2266 - relational-record
3095 - relational-record
2267 - text-ldap
3096 - text-ldap
2268 - debian-build
3097 - debian-build
3098+ - aeson-generic-compat
2269 - json-rpc-generic
3099 - json-rpc-generic
3100+ - protocol-radius
3101+ - protocol-radius-test
3102+ - th-bang-compat
3103+ - th-constraint-compat
3104+ - persistable-record
2270
3105
2271 "wren romano <wren@community.haskell.org> @wrengr":
3106 "wren romano <wren@community.haskell.org> @wrengr":
2272 - bytestring-lexing
3107 - bytestring-lexing
@@ -2280,57 +3115,120 @@ packages:
2280 - unification-fd
3115 - unification-fd
2281 - unix-bytestring
3116 - unix-bytestring
2282
3117
2283− # "Carlo Hamalainen <carlo@carlo-hamalainen.net> @carlohamalainen":
2284− # GHC 8 - ghc-imported-from
2285−
2286 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3118 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3119+ - concise
3120+ - dyre
2287 - jose
3121 - jose
2288
3122
2289− "Yutaka Nishimura <ytk.nishimura@gmail.com> @ynishi":
2290− []
2291− # - atndapi # https://github.com/ynishi/atndapi/issues/1
2292−
2293 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
3123 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
2294 - zot
3124 - zot
2295 - yjtools
3125 - yjtools
2296 - io-machine
3126 - io-machine
3127+ - yjsvg
3128+ - x11-xim
3129+ - X11-xft
3130+ - Imlib
3131+ - xturtle
3132+ - gluturtle
3133+ - papillon
3134+ - zasni-gerna
3135+ - exception-hierarchy
3136+ - simplest-sqlite
3137+ - warp-tls-uid
3138+ - nowdoc
3139+ - typecheck-plugin-nat-simple
3140+ - ranged-list
3141+ - c-enum
3142+ - c-struct
3143+ - union-angle
2297
3144
2298 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
3145 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
2299 - irc-dcc
3146 - irc-dcc
2300− - xdcc
3147+
3148+ "Alexey Raga <alexey.raga@gmail.com> @AlexeyRaga":
3149+ - hw-kafka-client
2301
3150
2302 "John Ky newhoggy@gmail.com @newhoggy":
3151 "John Ky newhoggy@gmail.com @newhoggy":
3152+ - aeson-lens
3153+ - antiope-core
3154+ - antiope-dynamodb
3155+ - antiope-messages
3156+ - antiope-s3
3157+ - antiope-sns
3158+ - antiope-sqs
3159+ - arbor-lru-cache
3160+ - arbor-postgres
3161+ - asif
3162+ - avro
3163+ - bits-extra
3164+ - hw-balancedparens
2303 - hw-bits
3165 - hw-bits
2304 - hw-conduit
3166 - hw-conduit
3167+ - hw-conduit-merges
2305 - hw-diagnostics
3168 - hw-diagnostics
2306− # https://github.com/haskell-works/hw-json/issues/4
3169+ - hw-dsv
3170+ - hw-eliasfano
3171+ - hw-excess
3172+ - hw-fingertree
3173+ - hw-fingertree-strict
3174+ - hw-hedgehog
3175+ - hw-hspec-hedgehog
3176+ - hw-int
3177+ - hw-ip
3178+ - hw-json
3179+ - hw-json-simple-cursor
2307− # - hw-json
3180+ - hw-json-standard-cursor
3181+ - hw-mquery
3182+ - hw-packed-vector
2308 - hw-parser
3183 - hw-parser
2309 - hw-prim
3184 - hw-prim
2310 - hw-rankselect
3185 - hw-rankselect
3186+ - hw-rankselect-base
3187+ - hw-simd
3188+ - hw-streams
2311 - hw-succinct
3189 - hw-succinct
3190+ - hw-xml
3191+ - tasty-discover
3192+
3193+ "George Wilson <george@wils.online> @gwils":
3194+ - hedgehog-fn
3195+ - sv
3196+ - sv-cassava
3197+ - sv-core
3198+ - tasty-hedgehog
2312
3199
2313 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
3200 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
2314− []
2315− # - handwriting # BLOCKED wreq
3201+ - handwriting
2316
3202
2317− "Stephen Diehl <stephen.m.diehl@gamil.com> @sdiehl":
3203+ "Stephen Diehl <stephen.m.diehl@gmail.com> @sdiehl":
3204+ - llvm-hs-pretty
2318 - protolude
3205 - protolude
2319−
3206+ - repline
3207+ - picosat
3208+ - aos-signature
3209+ - bulletproofs
3210+ - pedersen-commitment
3211+ - merkle-tree
3212+ - oblivious-transfer
3213+ - pairing
3214+ - libraft
3215+ - galois-field
3216+
2320− "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji_dayo":
3217+ "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji-dayo":
2321− []
3218+ - api-field-json-th
2322− # - yesod-job-queue # BLOCKED cron
2323−
2324− # "Braden Walters <vc@braden-walters.info> @meoblast001":
2325− # - hakyll-sass
2326
3219
2327 "Patrick Thomson <patrick@helium.com> @helium":
3220 "Patrick Thomson <patrick@helium.com> @helium":
2328 - postgresql-transactional
3221 - postgresql-transactional
2329
3222
2330− "Tom Murphy <amindfv@gmail.com> @amindfv":
3223+ "Tom Murphy <amindfv@gmail.com>":
2331− # 0.2.0.5 compilation failure - vivid
3224+ - gingersnap
3225+ - microspec
2332− # GHC 8 - midair
3226+ - midair
2333 - nano-erl
3227 - nano-erl
3228+ - rando
3229+ - vivid
3230+ - vivid-osc
3231+ - vivid-supercollider
2334
3232
2335 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
3233 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
2336 - fold-debounce
3234 - fold-debounce
@@ -2339,8 +3237,10 @@ packages:
2339 - wikicfp-scraper
3237 - wikicfp-scraper
2340 - wild-bind
3238 - wild-bind
2341 - wild-bind-x11
3239 - wild-bind-x11
2342− - wild-bind-indicator
3240+ - greskell
2343− - wild-bind-task-x11
3241+ - greskell-core
3242+ - greskell-websocket
3243+ - hspec-need-env
2344
3244
2345 "Cies Breijs <cies@kde.nl> @cies":
3245 "Cies Breijs <cies@kde.nl> @cies":
2346 - htoml
3246 - htoml
@@ -2349,36 +3249,47 @@ packages:
2349 - protobuf-simple
3249 - protobuf-simple
2350
3250
2351 "David Reaver <johndreaver@gmail.com> @jdreaver":
3251 "David Reaver <johndreaver@gmail.com> @jdreaver":
3252+ - eventful-core
3253+ - eventful-dynamodb
3254+ - eventful-memory
3255+ - eventful-postgresql
3256+ - eventful-sql-common
3257+ - eventful-sqlite
3258+ - eventful-test-helpers
2352 - stratosphere
3259 - stratosphere
2353−
3260+ - sum-type-boilerplate
2354− "Alexey Rodiontsev <alex.rodiontsev@gmail.com> @klappvisor":
2355− []
2356− # - telegram-api https://github.com/fpco/stackage/issues/1689
2357
3261
2358 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
3262 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
2359− # Pinned to versions not using custom-setup, since stack does
2360− # not understand that syntax yet:
2361− # https://github.com/commercialhaskell/stack/issues/2094
2362− - gi-atk == 2.0.3
2363− - gi-cairo == 1.0.3
2364− - gi-gdk == 3.0.3
2365− - gi-gdkpixbuf == 2.0.3
2366− - gi-gio == 2.0.3
2367− - gi-glib == 2.0.3
2368− - gi-gobject == 2.0.3
2369− - gi-gtk == 3.0.3
2370− - gi-pango == 1.0.3
2371− - gi-soup == 2.4.3
2372− - gi-javascriptcore == 3.0.3
2373− - gi-webkit == 3.0.3
2374 - haskell-gi
3263 - haskell-gi
3264+ - haskell-gi-base
3265+ - gi-atk
3266+ - gi-cairo
3267+ - gi-dbusmenu
3268+ - gi-dbusmenugtk3
3269+ - gi-gdk == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3270+ - gi-gdkpixbuf
3271+ - gi-gdkx11 == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3272+ - gi-gio
3273+ - gi-glib
3274+ - gi-gobject
3275+ - gi-graphene
3276+ - gi-gtk == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3277+ - gi-gtk-hs
3278+ - gi-gmodule
3279+ - gi-pango
3280+ - gi-xlib
3281+ - gi-harfbuzz
3282+ - gi-gsk
3283+ - gi-gtksource
3284+ - gi-javascriptcore
3285+ - gi-vte
3286+ - gi-webkit2
2375
3287
2376 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
3288 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
2377 - directory-tree
3289 - directory-tree
2378
3290
2379 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
3291 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
2380 - hjsonpointer
3292 - hjsonpointer
2381− - hjsonschema
2382
3293
2383 "Drew Hess <src@drewhess.com> @dhess":
3294 "Drew Hess <src@drewhess.com> @dhess":
2384 - hpio
3295 - hpio
@@ -2386,8 +3297,6 @@ packages:
2386 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
3297 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
2387 - th-desugar
3298 - th-desugar
2388 - singletons
3299 - singletons
2389− - units
2390− - units-defs
2391 - HUnit-approx
3300 - HUnit-approx
2392 - units-parser
3301 - units-parser
2393
3302
@@ -2401,47 +3310,83 @@ packages:
2401
3310
2402 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
3311 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
2403 - hquantlib
3312 - hquantlib
2404− - persistent-redis
3313+ - hquantlib-time
3314+ - HSvm
2405
3315
2406 "Henri Verroken <henriverroken@gmail.com> @hverr":
3316 "Henri Verroken <henriverroken@gmail.com> @hverr":
3317+ - bordacount
2407 - cache
3318 - cache
3319+ - haskey
3320+ - haskey-btree
3321+ - haskey-mtl
3322+ - intset-imperative
3323+ - lxd-client
3324+ - lxd-client-config
3325+ - xxhash-ffi
3326+ - zeromq4-patterns
2408
3327
2409 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
3328 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
2410 - ansigraph
3329 - ansigraph
2411− - quantum-random
3330+ - microsoft-translator
2412
3331
2413 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
3332 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
2414− - bitx-bitcoin
3333+ - bitx-bitcoin < 0 # 0.12.0.0 compile fail
2415
3334
2416 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
3335 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2417 - exp-pairs
3336 - exp-pairs
2418− - fast-digits
3337+ - fast-digits < 0 # 0.3.1.0 Cabal 3 vs stack incompat https://github.com/commercialhaskell/stackage/issues/6167
2419−
3338+ - chimera
2420− "Greg Hurrell <greg@hurrell.net> @wincent":
3339+ - quadratic-irrational
2421− - docvim
3340+ - primitive-addr
3341+ - quickcheck-classes
3342+ - quickcheck-classes-base
3343+ - arithmoi
3344+ - bitvec
3345+ - poly
3346+ - extended-reals
3347+ - ChasingBottoms
3348+ - data-interval
3349+ - vector-rotcev
3350+ - mod
3351+ - tasty-rerun
3352+ - integer-roots
3353+ - smallcheck
3354+ - quote-quot
3355+ - tasty-bench
3356+ - tasty-inspection-testing
3357+ - text-rope
2422
3358
2423 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
3359 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
2424 - countable
3360 - countable
3361+ - witness
3362+ - open-witness
2425
3363
2426 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
3364 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
2427 - mongoDB
3365 - mongoDB
2428 - bson
3366 - bson
2429
3367
2430 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3368 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3369+ - freer-simple
3370+ - monad-mock
2431 - test-fixture
3371 - test-fixture
2432 - text-conversions
3372 - text-conversions
3373+ - th-to-exp
3374+ - type-assertions
2433
3375
2434 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
3376 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
2435− # - solga # BLOCKED aeson-qq
2436− # - solga-swagger # aeson-qq
2437− # Doesn't build on stackage server https://github.com/fpco/stackage/pull/1692 - clang-pure
2438 - webrtc-vad
3377 - webrtc-vad
3378+ - clang-pure < 0 # 0.2.0.6 missing system libraries #3810/closed
3379+ - codec
2439
3380
2440 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
3381 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
2441 - hmpfr
3382 - hmpfr
3383+ - collect-errors
3384+ - mixed-types-num
3385+ - cdar-mBound
3386+ - aern2-mp
3387+ - aern2-real
2442
3388
2443 "Bartosz Nitka <niteria@gmail.com> @niteria":
3389 "Bartosz Nitka <niteria@gmail.com> @niteria":
2444− - haskell-packages
2445 - oeis
3390 - oeis
2446
3391
2447 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
3392 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
@@ -2450,51 +3395,55 @@ packages:
2450 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
3395 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
2451 - pixelated-avatar-generator
3396 - pixelated-avatar-generator
2452
3397
2453− "Allele Dev <allele.dev@gmail.com> @queertypes":
2454− - freer
2455− - wai-request-spec
2456−
2457 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
3398 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
2458 - array-memoize
3399 - array-memoize
2459− - camfort
2460− - codo-notation
3400+ - codo-notation < 0 # 0.5.2 compile fail MonadFail
2461 - fortran-src
3401 - fortran-src
2462− # 0.57 Compilation failure https://github.com/fpco/stackage/pull/1710#issuecomment-235067168 - ixmonad
2463− - language-fortran
2464−
2465− "Philipp Schuster <phischu3000@gmail.com> @phischu":
2466− - haskell-names
2467
3402
2468− "Shao Cheng <astrohavoc@gmail.com> @TerrorJack":
3403+ "Cheng Shao <astrohavoc@gmail.com> @TerrorJack":
2469− - simple-download
3404+ - binaryen
2470− - encoding-io
3405+ - cabal-toolkit
3406+ - direct-rocksdb
2471
3407
2472 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
3408 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
2473 - aeson-injector
3409 - aeson-injector
2474−
3410+ - JuicyPixels-blp
2475− "Rune K. Svendsen <runesvend@gmail.com> @runeks":
2476− []
2477− # - bitcoin-payment-channel # BLOCKED aeson 1.0
2478
3411
2479 "Al Zohali <zohl@fmap.me> @zohl":
3412 "Al Zohali <zohl@fmap.me> @zohl":
2480 - servant-auth-cookie
3413 - servant-auth-cookie
3414+ - dictionaries
3415+ - cereal-time
2481
3416
2482 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
3417 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
2483 - libmpd
3418 - libmpd
2484
3419
2485 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
3420 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
2486 - lrucaching
3421 - lrucaching
3422+ - llvm-hs
3423+ - llvm-hs-pure
2487
3424
2488 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3425 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3426+ - heatshrink
2489 - hocilib
3427 - hocilib
2490
3428
2491− "Matthias Herrmann <matthias.mh.herrmann@gmail.com> @2chilled":
2492− []
2493− # - scrape-changes # BLOCKED wreq
2494−
2495 "Daniel Mendler <mail@daniel-mendler.de> @minad":
3429 "Daniel Mendler <mail@daniel-mendler.de> @minad":
3430+ - quickcheck-special
2496 - writer-cps-mtl
3431 - writer-cps-mtl
2497 - writer-cps-transformers
3432 - writer-cps-transformers
3433+ - writer-cps-morph < 0 # 0.1.0.2 compile fail https://github.com/louispan/writer-cps-morph/issues/2
3434+ - writer-cps-lens
3435+ - writer-cps-full
3436+ - writer-cps-exceptions
3437+ - wl-pprint-annotated
3438+ - wl-pprint-console
3439+ - console-style
3440+ - unlit
3441+ - intro
3442+ - tasty-stats
3443+ - colorful-monoids
3444+ - ihs
3445+ - paripari
3446+ - persist
2498
3447
2499 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
3448 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
2500 - do-list
3449 - do-list
@@ -2503,6 +3452,12 @@ packages:
2503 - cpuinfo
3452 - cpuinfo
2504 - lmdb
3453 - lmdb
2505 - rdf
3454 - rdf
3455+ - data-compat
3456+ - deepseq-instances
3457+
3458+ "Michael Swan <mswan@fastmail.com> @michael-swan":
3459+ - pcf-font < 0 # 0.2.2.0 compile fail MonadFail
3460+ - pcf-font-embed
2506
3461
2507 "Iago Abal <iagoabal+stack@gmail.com>":
3462 "Iago Abal <iagoabal+stack@gmail.com>":
2508 - bv
3463 - bv
@@ -2512,9 +3467,7 @@ packages:
2512
3467
2513 "Florian Hofmann fho@f12n.de @fhaust":
3468 "Florian Hofmann fho@f12n.de @fhaust":
2514 - vector-split
3469 - vector-split
2515−
3470+ - vector-mmap
2516− "Alex Mason <alex.mason@data61.csiro.au> @Axman6":
2517− - foldl-statistics
2518
3471
2519 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
3472 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
2520 - json-stream
3473 - json-stream
@@ -2522,15 +3475,26 @@ packages:
2522 "Philipp Balzarek <p.balzarek@googlemail.com>":
3475 "Philipp Balzarek <p.balzarek@googlemail.com>":
2523 - xml-picklers
3476 - xml-picklers
2524
3477
2525− "Lennart Spitzner lsp@informatik.uni-kiel.de @lspitzner":
3478+ "Lennart Spitzner <hexagoxel@hexagoxel.de> @lspitzner":
2526 - multistate
3479 - multistate
2527 - pqueue
3480 - pqueue
3481+ - butcher
3482+ - czipwith
3483+ - data-tree-print
3484+ - brittany
2528
3485
2529 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
3486 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
2530− - hdbc-mysql
3487+ - HDBC-mysql
3488+
3489+ "Tony Morris <haskell@tmorris.net> @tonymorris":
3490+ - validation
2531
3491
2532 "Tony Day <tonyday567@gmail.com> @tonyday567":
3492 "Tony Day <tonyday567@gmail.com> @tonyday567":
2533− - chart-unit
3493+ - numhask
3494+ - numhask-array
3495+ - numhask-prelude
3496+ - numhask-space
3497+ - perf
2534
3498
2535 "Iphigenia Df <iphydf@gmail.com> @iphydf":
3499 "Iphigenia Df <iphydf@gmail.com> @iphydf":
2536 - data-msgpack
3500 - data-msgpack
@@ -2541,136 +3505,3296 @@ packages:
2541 - hsinstall
3505 - hsinstall
2542 - tce-conf
3506 - tce-conf
2543
3507
2544− "Jonathan Fischoff <jonathangfischoff@gmail.com>":
3508+ "Jonathan Fischoff <jonathangfischoff@gmail.com> @jfischoff":
2545− - threads-extra
2546 - clock-extras
3509 - clock-extras
2547− - next-ref
3510+ - postgres-options
2548−
3511+ - tmp-postgres
2549− "Bernie Pope <bjpope@unimelb.edu.au> @bjpop":
3512+ - pg-transact
2550− - language-python
3513+ - port-utils
2551−
3514+ - postgresql-libpq-notify
3515+ - hasql-queue
3516+
3517+ "Jonathan Knowles <stackage@jonathanknowles.net> @jonathanknowles":
3518+ - bech32
3519+ - bech32-th
3520+ - cardano-coin-selection
3521+ - quiet
3522+ - roc-id
3523+
2552− "Mahdi Dibaiee <mdibaiee@aol.com>":
3524+ "Mahdi Dibaiee <mdibaiee@aol.com> @mdibaiee":
2553 - picedit
3525 - picedit
2554−
3526+ - mathexpr
2555− "Alexis Williams <sasinestro@gmail.com> @sasinestro":
3527+ - termcolor
2556− - stb-image-redux
2557− - wavefront-obj
2558
3528
2559 "XT <e@xtendo.org> @xtendo-org":
3529 "XT <e@xtendo.org> @xtendo-org":
2560 - rawfilepath
3530 - rawfilepath
3531+
2561 "Konstantin Zudov <co@zudov.me> @zudov":
3532 "Konstantin Zudov <co@zudov.me> @zudov":
2562 - html-email-validate
3533 - html-email-validate
2563
3534
2564 "Carl Baatz <carl.baatz@gmail.com> @cbaatz":
3535 "Carl Baatz <carl.baatz@gmail.com> @cbaatz":
2565 - atom-basic
3536 - atom-basic
2566
3537
2567− # If you stop maintaining a package you can move it here.
3538+ "Reuben D'Netto <rdnetto@gmail.com>":
2568− # It will then be disabled if it starts causing problems.
3539+ - glob-posix
2569− # See https://github.com/fpco/stackage/issues/1056
3540+
2570− "Abandoned packages":
3541+ "Kadzuya Okamoto <arow.okamoto@gmail.com> @arowM":
2571− - curl
3542+ - type-level-kv-list
3543+ - heterocephalus
3544+ - bookkeeping
3545+ - ochintin-daicho
3546+ - transaction
3547+ - tonaparser
3548+ - tonalude
3549+ - tonatona
3550+ - tonatona-logger
3551+ - tonatona-servant
3552+ - tonatona-persistent-sqlite
3553+ - tonatona-persistent-postgresql
3554+
3555+ "Marcin Tolysz <tolysz@gmail.com> @tolysz":
3556+ - rawstring-qm
3557+
3558+ "Daniel YU <leptonyu@gmail.com>":
3559+ - salak
3560+ - salak-yaml
3561+ - salak-toml
3562+ - tensors
3563+ - menshen
3564+ - crc32c
3565+ - boots
3566+
3567+ "Tom Nielsen <tanielsen@gmail.com> @glutamate":
3568+ - plotlyhs
3569+ - inliterate
3570+
3571+ "Hyunje Jun <me@noraesae.net> @noraesae":
3572+ - line
3573+
3574+ "Hannes Saffrich <m0rphism@zankapfel.org> @m0rphism":
3575+ - printcess
3576+
3577+ "Alexey Kuleshevich <lehins@yandex.ru> @lehins":
3578+ - wai-middleware-auth
3579+ - hip
3580+ - massiv
3581+ - massiv-io
3582+ - massiv-test
3583+ - massiv-serialise
3584+ - massiv-persist
3585+ - scheduler
3586+ - Color
3587+ - safe-decimal
3588+ - flush-queue
3589+ - pvar
3590+
3591+ "Hans-Peter Deifel <hpd@hpdeifel.de> @hpdeifel":
3592+ - hledger-iadd
3593+
3594+ "Roy Levien <royl@aldaron.com> @orome":
3595+ - crypto-enigma
3596+
3597+ "Boldizsár Németh <nboldi@elte.hu> @nboldi":
3598+ - instance-control
3599+ - references < 0 # 0.3.3.1 compile fail
3600+ - classyplate
3601+ - haskell-tools-ast
3602+ - haskell-tools-backend-ghc
3603+ - haskell-tools-prettyprint
3604+ - haskell-tools-refactor
3605+ - haskell-tools-rewrite
3606+ - haskell-tools-demo
3607+ - haskell-tools-cli
3608+ - haskell-tools-daemon
3609+ - haskell-tools-debug
3610+
3611+ "David Fisher <ddf1991@gmail.com> @ddfisher":
3612+ - socket-activation
3613+
3614+ "aiya000 <aiya000.develop@gmail.com> @aiya000":
3615+ - character-cases
3616+ - throwable-exceptions
3617+
3618+ "Mitsutoshi Aoe <maoe@foldr.in> @maoe":
3619+ - influxdb
3620+ - sensu-run
3621+ - viewprof
3622+
3623+ "Dylan Simon <dylan-stack@dylex.net> @dylex":
3624+ - postgresql-typed
3625+ - invertible
3626+ - ztail
3627+ - zip-stream
3628+
3629+ "Louis Pan <louis@pan.me> @louispan":
3630+ - alternators
3631+ - arrow-extras
3632+ - data-diverse
3633+ - data-diverse-lens < 0 # 4.3.0.0 compile fail (lens)
3634+ - ghcjs-base-stub
3635+ - glaze
3636+ - glazier < 0 # 1.0.0.0 compile fail (lens)
3637+ - glazier-react
3638+ - glazier-react-widget
3639+ - javascript-extras
3640+ - lens-misc
3641+ - l10n
3642+ - pipes-category
3643+ - pipes-fluid
3644+ - pipes-misc
3645+ - stm-extras
3646+
3647+ "Siniša Biđin <sinisa@bidin.eu> @sbidin":
3648+ - sdl2-image
3649+ - sdl2-mixer
3650+ - sdl2-gfx
3651+
3652+ "Aditya Manthramurthy <aditya.mmy@gmail.com> @donatello":
3653+ - minio-hs
3654+ - webby
3655+
3656+ "ncaq <ncaq@ncaq.net> @ncaq":
3657+ - debug-trace-var
3658+ - haskell-import-graph
3659+ - string-transform
3660+ - uniq-deep
3661+ - yesod-form-bootstrap4
3662+ - yesod-recaptcha2
3663+
3664+ "Andrei Barbu <andrei@0xab.com> @abarbu":
3665+ - nondeterminism
3666+ - csp
3667+ - matplotlib
3668+
3669+ "mackeyrms <librarymaintainer@mackeycorp.com> @mackeyrms":
3670+ - tsv2csv
3671+
3672+ "Thomas Sutton <me@thomas-sutton.id.au> @thsutton":
3673+ - aeson-diff
3674+ - edit-distance-vector
3675+
3676+ "Kyle Van Berendonck <kvanberendonck+stackage@gmail.com> @donkeybonks":
3677+ - rot13
3678+ - dvorak
3679+
3680+ "Cuedo Business Solutions <foss@cuedo.com.au> @cuedo":
3681+ - github-webhooks
3682+
3683+ "Pavel Yakovlev <pavel@yakovlev.me> @zmactep":
3684+ - hasbolt
3685+ - uniprot-kb
3686+ - mmtf < 0 # 0.1.3.1 compile fail MonadFail
3687+
3688+ "Christopher A. Gorski <cgorski@cgorski.org> @cgorski":
3689+ - general-games
3690+
3691+ "Cristian Adrián Ontivero <cristianontivero@gmail.com> @contivero":
3692+ - hasmin
3693+ - hopfli
3694+
3695+ "Peter Trško <peter.trsko@gmail.com> @trskop":
3696+ - between
3697+ - connection-pool
3698+ - verbosity
3699+
3700+ "Devon Hollowood <devonhollowood@gmail.com> @devonhollowood":
3701+ - search-algorithms
3702+
3703+ "Chris Dornan <chris@chrisdornan.com> @cdornan":
3704+ - sort
3705+ - regex
3706+ - regex-pcre-text
3707+ - regex-with-pcre
3708+ - possibly
3709+ - enum-text
3710+ - rg
3711+ - columnar
3712+ - no-value
3713+ - optparse-enum
3714+ - fmt
3715+
3716+ "Elliot Cameron <eacameron@gmail.com> @3noch":
3717+ - ziptastic-client
3718+ - ziptastic-core
3719+
3720+ "Hardy Jones <jones3.hardy@gmail.com> @joneshf":
3721+ - katip-rollbar
3722+ - rollbar-hs
3723+ - servant-ruby
3724+ - wai-middleware-rollbar
3725+
3726+ "Andrey Mokhov <andrey.mokhov@gmail.com> @snowleopard":
3727+ - algebraic-graphs < 0.6 # https://github.com/commercialhaskell/stackage/issues/6362
3728+
3729+ "Albert Krewinkel <albert+stackage@zeitkraut.de> @tarleb":
3730+ - hslua
3731+ - hslua-aeson
3732+ - hslua-classes
3733+ - hslua-core
3734+ - hslua-marshalling
3735+ - hslua-module-doclayout < 0 # https://github.com/commercialhaskell/stackage/issues/6416
3736+ - hslua-module-path
3737+ - hslua-module-system
3738+ - hslua-module-text
3739+ - hslua-module-version
3740+ - hslua-objectorientation
3741+ - hslua-packaging
3742+ - jira-wiki-markup
3743+ - lpeg
3744+ - lua
3745+ - lua-arbitrary
3746+ - pandoc-lua-marshal
3747+ - tasty-hslua
3748+ - tasty-lua
3749+
3750+ "Judah Jacobson <judah.jacobson@gmail.com> @judah":
3751+ - proto-lens-protobuf-types
3752+ - proto-lens-protoc
3753+ - proto-lens-runtime
3754+ - proto-lens-setup
3755+ - proto-lens
3756+ - proto-lens-arbitrary
3757+ - proto-lens-optparse
3758+ - tensorflow-test
3759+ - pier-core
3760+ - pier
3761+ - haskeline
3762+ - ghc-source-gen # tests disabled due to QuickCheck < 2.14
3763+
3764+ "Christof Schramm <christof.schramm@campus.lmu.de>":
3765+ - mnist-idx
3766+
3767+ "Naushadh <naushadh@protonmail.com> @naushadh":
3768+ - persistent-mysql-haskell
3769+
3770+ "Moritz Schulte <mtesseract@silverratio.net> @mtesseract":
3771+ - async-refresh
3772+ - async-refresh-tokens
3773+ - type-level-integers
3774+ - partial-order
3775+ - async-timer
3776+ - nakadi-client
3777+ - throttle-io-stream
3778+ - conduit-throttle
3779+
3780+ "Simon Hafner <hafnersimon@gmail.com> @reactormonk":
3781+ - uri-bytestring-aeson
3782+ - katip-scalyr-scribe
3783+
3784+ "Sebastian Witte <woozletoff@gmail.com> @saep":
3785+ - nvim-hs
3786+ - nvim-hs-contrib
3787+ - nvim-hs-ghcid
3788+
3789+ "Sam Protas <sam.protas@gmail.com> @SamProtas":
3790+ - triplesec
3791+ - composable-associations
3792+ - composable-associations-aeson
3793+ - JuicyPixels-blurhash
3794+
3795+ "Anton Ekblad <anton@ekblad.cc> @valderman":
3796+ - selda
3797+ - selda-sqlite
3798+ - selda-postgresql
3799+ - selda-json
3800+
3801+ "Luis Pedro Coelho <luis@luispedro.org> @luispedro":
3802+ - safeio
3803+ - conduit-algorithms < 0 # 0.0.11.0 compile fail
3804+ - conduit-zstd
3805+
3806+ "Alex Biehl <alexbiehl@gmail.com> @alexbiehl":
3807+ - haddock-library
3808+ - http-client-openssl
3809+
3810+ "Steven Vandevelde <icid.asset@gmail.com> @icidasset":
3811+ - shikensu
3812+
3813+ "George Pollard <porges@porg.es> @Porges":
3814+ - email-validate
3815+
3816+ "Alexander Ignatyev <ignatyev.alexander@gmail.com> @aligusnet":
3817+ - astro
3818+ - mltool
3819+ - hmatrix-morpheus
3820+
3821+ "Matt Noonan <matt.noonan@gmail.com> @matt-noonan":
3822+ - justified-containers
3823+ - roles >= 0.2
3824+ - lawful
3825+ - gdp
3826+
3827+ "Levent Erkok <erkokl@gmail.com> @LeventErkok":
3828+ - sbv
3829+ - crackNum
3830+
3831+ "János Tapolczai <janos.tapolczai@gmail.com> @jtapolczai":
3832+ - listsafe
3833+
3834+ "Serokell <libraries@serokell.io> @serokell":
3835+ - importify
3836+ - log-warper
3837+ - o-clock
3838+ - tasty-hunit-compat
3839+ - universum
3840+ - with-utf8
3841+ - uncaught-exception
3842+
3843+ "Holmusk <tech@holmusk.com> @arbus":
3844+ - elm-street
3845+
3846+ "Noel Kwan <noelkwan1998@gmail.com> @kwannoel":
3847+ - servant-docs-simple
3848+
3849+ "Lorenz Moesenlechner <moesenle@gmail.com> @moesenle":
3850+ - servant-websockets
3851+
3852+ "Daniel Campoverde <alx@sillybytes.net> @alx741":
3853+ - currencies
3854+ - alerts
3855+ - yesod-alerts
3856+ - graphite
3857+
3858+ "José Lorenzo Rodríguez <jose.zap@gmail.com> @lorenzo":
3859+ - wrecker
3860+ - language-docker
3861+ - docker-build-cacher
3862+ - mysql-haskell-nem
3863+ - hadolint
3864+
3865+ "Phil Ruffwind <rf@rufflewind.com> @Rufflewind":
3866+ - blas-hs
3867+
3868+ "Eitan Chatav <eitan@gmail.com> @echatav":
3869+ - free-categories
3870+ - squeal-postgresql
3871+
3872+ "Sam Quinn <lazersmoke@gmail.com> @Lazersmoke":
3873+ - ghost-buster
3874+
3875+ "typeable.io <makeit@typeable.io>":
3876+ - dom-parser
3877+ - xml-isogen
3878+
3879+ "Jeremy Huffman <jeremy@jeremyhuffman.com> @jeremyjh":
3880+ - higher-leveldb
3881+ - distributed-process-lifted
3882+ - distributed-process-monad-control
2572
3883
2573− # Purescript
3884+ "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
2574− - bower-json
3885+ - webdriver
2575− - boxes
3886+ - cond
2576− - pattern-arrows
3887+
2577− # - purescript # BLOCKED aeson-1.0
3888+ "Naoto Shimazaki <naoto.shimazaki@gmail.com> @nshimaza":
3889+ - thread-hierarchy
3890+ - thread-supervisor
3891+ - bitset-word8
3892+ - webex-teams-api
3893+ - webex-teams-conduit
3894+ - webex-teams-pipes
3895+
3896+ "Deni Bertovic <deni@denibertovic.com> @denibertovic & James Parker <dev@jamesparker.me> @jprider63":
3897+ - docker
3898+
3899+ "Hexirp <hexirp@gmail.com> @Hexirp":
3900+ - doctest-driver-gen
3901+
3902+ "Václav Haisman <vhaisman@gmail.com> @wilx":
3903+ - hs-bibutils
3904+
3905+ "Christian Kjær Laustsen <ckl@codetalk.io> @tehnix":
3906+ - ghc-core
3907+ - colorize-haskell
3908+
3909+ "Chris Martin <ch.martin@gmail.com> @chris-martin":
3910+ - data-forest
3911+ - loc
3912+ - partial-semigroup
3913+ - path-text-utf8
3914+
3915+ "Type Classes <hello@typeclasses.com> @argumatronic @chris-martin":
3916+ - ascii
3917+ - ascii-case
3918+ - ascii-char
3919+ - ascii-group
3920+ - ascii-predicates
3921+ - ascii-superset
3922+ - ascii-th
3923+ - aws-cloudfront-signed-cookies
3924+ - d10
3925+ - hex-text
3926+ - stripe-concepts
3927+ - stripe-signature
3928+ - stripe-scotty
3929+ - stripe-wreq
3930+
3931+ "Viacheslav Lotsmanov <lotsmanov89@gmail.com> @unclechu":
3932+ - place-cursor-at
3933+ - qm-interpolated-string
3934+
3935+ "Douglas Burke <dburke.gw@gmail.com> @DougBurke":
3936+ - swish
3937+ - hvega
3938+ - ihaskell-hvega
3939+
3940+ "Adam Flott <adam@adamflott.com> @adamflott":
3941+ - milena
3942+
3943+ "Csongor Kiss <kiss.csongor.kiss@gmail.com> @kcsongor":
3944+ - generic-lens
3945+ - generic-optics
3946+ - generic-lens-core
3947+
3948+ "Bogdan Neterebskii <bog2dan1@gmail.com> @ozzzzz":
3949+ - cast
3950+ - aeson-picker
3951+
3952+ "Warlock <internalmike@gmail.com> @A1-Triard":
3953+ - errors-ext
3954+ - binary-ext
3955+
3956+ "Bob Long <robertjflong@gmail.com> @bobjflong":
3957+ - yesod-csp < 0 # 0.2.5.0 text 1.2.5.0 exports `elem`
3958+
3959+ "Alexander Vershilov <alexander.vershilov@gmail.com> @qnikst":
3960+ - stm-conduit
3961+ - co-log-concurrent
3962+ - HaskellNet
2578
3963
2579− - type-list
3964+ "Tung Dao <me@tungdao.com> @tungd":
2580− - zoom-refs
3965+ - time-locale-vietnamese
2581− - vinyl-utils
2582− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
2583
3966
2584− # If you want to make sure a package is removed from stackage,
3967+ "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
2585− # place it here with a `< 0` constraint and send a pull
3968+ - riak
2586− # request. This will tell us if other packages would be
3969+ - riak-protobuf
2587− # affected. Packages will be kept in this list indefinitely so
3970+ - airship
2588− # that new packages depending on it will be flagged as well.
3971+ - hedgehog-corpus
2589− "Removed packages": []
3972+
3973+ "Tom Sydney Kerckhove <syd.kerckhove@gmail.com> @NorfairKing":
3974+ - autodocodec
3975+ - autodocodec-openapi3
3976+ - autodocodec-schema
3977+ - autodocodec-yaml
3978+ - cursor
3979+ - cursor-brick
3980+ - cursor-fuzzy-time
3981+ - cursor-gen
3982+ - fuzzy-time
3983+ - genvalidity
3984+ - genvalidity-aeson
3985+ - genvalidity-bytestring
3986+ - genvalidity-containers
3987+ - genvalidity-criterion
3988+ - genvalidity-hspec
3989+ - genvalidity-hspec-aeson
3990+ - genvalidity-hspec-binary
3991+ - genvalidity-hspec-cereal
3992+ - genvalidity-hspec-hashable
3993+ - genvalidity-hspec-optics
3994+ - genvalidity-hspec-persistent
3995+ - genvalidity-mergeful
3996+ - genvalidity-mergeless
3997+ - genvalidity-path
3998+ - genvalidity-persistent
3999+ - genvalidity-property
4000+ - genvalidity-scientific
4001+ - genvalidity-sydtest
4002+ - genvalidity-sydtest-aeson
4003+ - genvalidity-sydtest-hashable
4004+ - genvalidity-sydtest-lens
4005+ - genvalidity-sydtest-persistent
4006+ - genvalidity-text
4007+ - genvalidity-time
4008+ - genvalidity-typed-uuid
4009+ - genvalidity-unordered-containers
4010+ - genvalidity-uuid
4011+ - genvalidity-vector
4012+ - mergeful
4013+ - mergeless
4014+ - pretty-relative-time
4015+ - safe-coloured-text
4016+ - safe-coloured-text-terminfo
4017+ - sydtest
4018+ - sydtest-discover
4019+ - sydtest-persistent
4020+ - sydtest-persistent-sqlite
4021+ - sydtest-servant
4022+ - sydtest-wai
4023+ - sydtest-yesod
4024+ - typed-uuid
4025+ - validity
4026+ - validity-aeson
4027+ - validity-bytestring
4028+ - validity-containers
4029+ - validity-path
4030+ - validity-persistent
4031+ - validity-primitive
4032+ - validity-scientific
4033+ - validity-text
4034+ - validity-time
4035+ - validity-unordered-containers
4036+ - validity-uuid
4037+ - validity-vector
4038+ - yamlparse-applicative
4039+
4040+
4041+ "Henry Laxen <nadine.and.henry@pobox.com> @HenryLaxen":
4042+ - bbdb
4043+
4044+ "Stevan Andjelkovic <stevan.andjelkovic@here.com> @stevana":
4045+ - quickcheck-state-machine
2590
4046
2591− "GHC upper bounds":
4047+ "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
2592− # Need to always match the version shipped with GHC
4048+ - hdevtools < 0 # 0.1.8.0 compile fail
2593− - Win32 == 2.3.1.1
4049+ - servant-exceptions
4050+ - servant-exceptions-server
4051+
4052+ "Vaibhav Sagar <vaibhavsagar@gmail.com> @vaibhavsagar":
4053+ - ihaskell
4054+ - ghc-parser
4055+
4056+ "Alexis Williams <alexis@typedr.at> @typedrat":
4057+ - stb-image-redux < 0.2.1.3 || > 0.2.1.3 # deprecated version
4058+
4059+ "Alexandre Peyroux <alex@px.io> @apeyroux":
4060+ - HSlippyMap
4061+ - google-isbn
4062+ - nuxeo
4063+
4064+ "Andrey Sverdlichenko <blaze@ruddy.ru> @rblaze":
4065+ - credential-store
4066+ - dbus
4067+ - re2
4068+
4069+ "Bardur Arantsson <stackage@scientician.net> @BardurArantsson":
4070+ - peregrin
4071+ - pg-harness-client
4072+ - pg-harness-server
4073+ - unliftio-pool
4074+ - unliftio-streams
4075+
4076+ "Sebastian Graf <sgraf1337@gmail.com> @sgraf812":
4077+ - pomaps
4078+
4079+ "Alexey Kotlyarov <a@koterpillar.com> @koterpillar":
4080+ - appendmap
4081+ - serverless-haskell
4082+
4083+ "Guru Devanla <grdvnl@gmail.com> @gdevanla":
4084+ - pptable
4085+ - cassava-records < 0 # 0.1.0.4 compile fail MonadFail
4086+ - pandoc-markdown-ghci-filter < 0 # 0.1.0.0 compile fail https://github.com/gdevanla/pandoc-markdown-ghci-filter/issues/3
4087+
4088+ "Lucas David Traverso <lucas6246@gmail.com> @ludat":
4089+ - map-syntax
4090+ - heist
4091+ - snap
4092+ - conferer
4093+ - conferer-snap
4094+ - conferer-warp
4095+ - conferer-hspec
4096+ - conferer-aeson
4097+
4098+ "Tim Humphries <tim+stackage@utf8.me> @thumphries":
4099+ - transformers-either
4100+ - transformers-fix
4101+
4102+ "Dan Firth <dan.firth@homotopic.tech> @locallycompact":
4103+ - aeson-with
4104+ - binary-instances
4105+ - comonad-extras
4106+ - compact
4107+ - composite-aeson
4108+ - composite-aeson-path
4109+ - composite-aeson-refined
4110+ - composite-aeson-throw
4111+ - composite-base
4112+ - composite-binary
4113+ - composite-ekg
4114+ - composite-hashable
4115+ - composite-tuple
4116+ - composite-xstep
4117+ - ixset-typed-binary-instance
4118+ - ixset-typed-conversions
4119+ - ixset-typed-hashable-instance
4120+ - lucid-cdn
4121+ - natural-arithmetic
4122+ - pandoc-dhall-decoder
4123+ - pandoc-throw
4124+ - path-binary-instance
4125+ - path-dhall-instance
4126+ - path-extensions
4127+ - path-formatting
4128+ - path-like
4129+ - path-utils
4130+ - polysemy-extra
4131+ - polysemy-fs
4132+ - polysemy-fskvstore
4133+ - polysemy-kvstore-jsonfile
4134+ - polysemy-kvstore
4135+ - polysemy-methodology
4136+ - polysemy-path
4137+ - polysemy-several
4138+ - polysemy-socket
4139+ - polysemy-uncontrolled
4140+ - polysemy-video
4141+ - polysemy-vinyl
4142+ - primitive-offset
4143+ - shake-plus
4144+ - shake-plus-extended
4145+ - simple-media-timestamp
4146+ - simple-media-timestamp-formatting
4147+ - simple-media-timestamp-attoparsec
4148+ - srt
4149+ - srt-attoparsec
4150+ - srt-dhall
4151+ - srt-formatting
4152+ - tuples
4153+ - unliftio-path
4154+ - variable-media-field
4155+ - variable-media-field-dhall
4156+ - variable-media-field-optics
4157+ - vinyl-loeb
4158+ - within
4159+ - zipper-extra
4160+
4161+ "Domen Kozar <domen@enlambda.com> @domenkozar":
4162+ - elm2nix
4163+ - mixpanel-client
4164+ - netrc
4165+ - pretty-sop
4166+ - servant-auth
4167+ - servant-auth-server
4168+ - servant-auth-client
4169+ - servant-auth-swagger
4170+ - servant-auth-docs
4171+ - servant-elm
4172+ - systemd
4173+
4174+ "Andre Van Der Merwe <stackage@andrevdm.com> @andrevdm":
4175+ - bhoogle
4176+ - hyraxAbif
4177+ - postgresql-migration
4178+
4179+ "David Millar-Durrant <dmillardurrant@gmail.com> @DavidM-D":
4180+ - indexed-list-literals
4181+
4182+ "Dmitry Dzhus <dima@dzhus.org> @dzhus":
4183+ - csg
4184+ - simple-vec3
4185+ - static-text
4186+ - th-env
4187+ - th-nowq
4188+
4189+ "Dan Fithian <daniel.m.fithian@gmail.com> @dfithian":
4190+ - oauthenticated
4191+ - datadog
4192+ - interpolator
4193+ - file-path-th
4194+
4195+ "Raghu Kaippully <rkaippully@gmail.com> @rkaippully":
4196+ - webgear-core
4197+ - webgear-openapi
4198+ - webgear-server
4199+
4200+ "Alex Washburn <github@recursion.ninja> @recursion-ninja":
4201+ - bv-little
4202+ - mono-traversable-keys
4203+
4204+ "Avi Press <mail@avi.press> @aviaviavi":
4205+ - curl-runnings
4206+ - cryptocompare
4207+
4208+ "Jack Kiefer <jack.c.kiefer@gmail.com> @JackKiefer":
4209+ - herms
4210+
4211+ "Sergey Vinokurov <serg.foo@gmail.com> @sergv":
4212+ - bencoding
4213+ - emacs-module < 0 # 0.1.1 compile fail ghc 8.10.1 #5436/closed
4214+ - tasty-ant-xml
4215+
4216+ "Eugene Smolanka <esmolanka@gmail.com> @esmolanka":
4217+ - sexp-grammar
4218+ - invertible-grammar
4219+
4220+ "Maximilian Tagher <feedback.tagher@gmail.com> @MaxGabriel":
4221+ - aeson-iproute
4222+ - persistent-iproute
4223+
4224+ "Damian Nadales <damian.nadales@gmail.com> @capitanbatata":
4225+ - hierarchy
4226+
4227+ "Kofi Gumbs <h.kofigumbs@gmail.com> @hkgumbs":
4228+ - codec-beam
4229+
4230+ "Chris Parks <christopher.daniel.parks@gmail.com> @cdparks":
4231+ - closed
4232+
4233+ "Chris Coffey <chris@foldl.io> @ChrisCoffey":
4234+ - servant-tracing
4235+ - cuckoo-filter
4236+ - confcrypt
4237+
4238+ "Rick Owens <rick@owensmurray.com> @owensmurray":
4239+ - om-elm
4240+
4241+ "ALeX Kazik <alex@kazik.de> @alexkazik":
4242+ - exomizer
4243+ - qnap-decrypt
4244+ - qrcode-core
4245+ - qrcode-juicypixels
4246+
4247+ "Reed Oei <oei.reed@gmail.com> @ReedOei":
4248+ - fuzzy-dates
4249+
4250+ "Matthew Farkas-Dyck <strake888@gmail.com> @strake":
4251+ - Fin
4252+ - alg
4253+ - category
4254+ - constraint
4255+ - dual
4256+ - either-both
4257+ - filtrable
4258+ - foldable1
4259+ - hs-functors
4260+ - lenz
4261+ - natural-induction
4262+ - peano
4263+ - unconstrained
4264+ - util < 0 # 0.1.17.1 compile fail needs DerivingVia enabled
4265+
4266+ "Ben Sima <ben@bsima.me> @bensima":
4267+ - yesod-text-markdown
4268+
4269+ "Alexander Krupenkin <mail@akru.me> @akru":
4270+ - web3
4271+
4272+ "Georg Rudoy <0xd34df00d@gmail.com> @0xd34df00d":
4273+ - binary-generic-combinators
4274+ - can-i-haz
4275+ - enum-subset-generate
4276+
4277+ "Trevis Elser <trevis@silencedpoet.com> @telser":
4278+ - sendfile
4279+
4280+ "Kristen Kozak <grayjay@wordroute.com> @grayjay":
4281+ - json-rpc-server
4282+ - json-rpc-client
4283+
4284+ "Magnus Therning <magnus@therning.org> @magthe":
4285+ - hsini
4286+
4287+ "Baojun Wang <wangbj@gmail.com> @wangbj":
4288+ - elf
4289+
4290+ "Tom Oram <tom@x2k.co.uk> @tomphp":
4291+ - cfenv
4292+
4293+ "Owen Lynch <root@owenlynch.org> @olynch":
4294+ - natural-sort
4295+
4296+ "John Biesnecker <jbiesnecker@gmail.com> @biesnecker":
4297+ - async-pool
4298+
4299+ "Zoltan Kelemen <kelemzol@elte.hu> @kelemzol":
4300+ - fswatch
4301+
4302+ "Matthew Wraith <matt@bitnomial.com> @wraithm":
4303+ - prometheus
4304+ - prometheus-wai-middleware
4305+ - hgrev
4306+ - seqid
4307+ - seqid-streams
4308+
4309+ "Daniel Gorin <jcpetruzza@gmail.com> @jcpetruzza":
4310+ - barbies
4311+ - data-hash
4312+
4313+ "Eduard Sergeev <eduard.sergeev@gmail.com> @EduardSergeev":
4314+ - monad-memo
4315+
4316+ "Wanja Chresta <wanja.hs@chrummibei.ch> @wchresta":
4317+ - matrix-static
4318+
4319+ "Jean-Pierre Rupp <xenog@protonmail.com> @xenog":
4320+ - json-rpc
4321+ - rfc1751
4322+ - murmur3
4323+ - nqe
4324+ - secp256k1-haskell
4325+ - rocksdb-haskell
4326+ - rocksdb-haskell-jprupp
4327+ - rocksdb-query
4328+ - haskoin-core
4329+ - haskoin-node
4330+ - haskoin-store
4331+
4332+ "asakamirai <asakamirai_hackage@towanowa.net> @asakamirai":
4333+ - kazura-queue
4334+
4335+ "Eric Torreborre <etorreborre@yahoo.com> @etorreborre":
4336+ - registry
4337+
4338+ "Ryota Kameoka <kameoka.ryota@gmail.com> @ryota-ka":
4339+ - duration
4340+
4341+ "Takenobu Tani <takenobu.hs@gmail.com> @takenobu-hs":
4342+ - ghci-hexcalc
4343+
4344+ "Nikos Karagianndis <nkarag@gmail.com> @nkarag":
4345+ - DBFunctor
4346+
4347+ "Marat Khafizov <xafizoff@gmail.com> @xafizoff":
4348+ - n2o
4349+ - n2o-nitro
4350+ - n2o-protocols
4351+ - n2o-web
4352+
4353+ "David Smith <shmish111@gmail.com> @shmish111":
4354+ - bazel-runfiles
4355+
4356+ "Rob Rix <robrix@github.com> @robrix":
4357+ - fused-effects
4358+
4359+ "Josef Thorne <joseft.168@gmail.com> @Grendel-Grendel-Grendel":
4360+ - focuslist
4361+
4362+ "Pavan Rikhi <pavan.rikhi@gmail.com> @prikhi":
4363+ - hs-php-session
4364+ - wordpress-auth
4365+ - servant-auth-wordpress
4366+ - ca-province-codes
4367+ - mx-state-codes
4368+ - sitemap-gen
4369+ - tasty-wai
4370+ - stack-templatizer
4371+ - immortal-queue
4372+ - wai-middleware-clacks
4373+ - hledger-stockquotes
4374+ - bnb-staking-csvs
4375+ - solana-staking-csvs
4376+ - cointracking-imports
4377+
4378+ "David Baynard <haskell@baynard.dev> @dbaynard":
4379+ - time-qq
4380+ - ucam-webauth
4381+ - ucam-webauth-types
4382+
4383+ "Erick Gonzalez <erick@codemonkeylabs.de> @codemonkeylabs-de":
4384+ - eap
4385+ - failable
4386+ - ttl-hashtables
4387+ - radius
4388+ - structured-cli
4389+
4390+ "Jan Path <jan@jpath.de> @janpath":
4391+ - smallcheck-series
4392+
4393+ "Taisuke Hikawa <23.prime.37@gmail.com> @23prime":
4394+ - oeis2
4395+
4396+ "David Himmelstrup <lemmih@gmail.com> @lemmih":
4397+ - chiphunk
4398+ - reanimate-svg
4399+ - reanimate
4400+ - earcut
4401+ - vector-circular
4402+ - hgeometry >= 0.12.0.2 # required by reanimate as of 0.4.2.0
4403+ - hgeometry-combinatorial
4404+ - approximate-equality # required by hgeometry-combinatorial
4405+ - type-level-natural-number # required by approximate-equality
4406+
4407+ "Vitaly Bragilevsky <vit.bragilevsky@gmail.com> @bravit":
4408+ - Chart
4409+ - Chart-diagrams
2594
4410
2595− "Stackage upper bounds":
4411+ "Juri Chomé <juri.chome@gmail.com> @2mol":
4412+ - msgpack
4413+ - msgpack-rpc
4414+ - msgpack-idl
4415+ - msgpack-aeson
4416+ - int-cast
4417+
4418+ "Akihito Kirisaki <kirisaki@klaraworks.net> @kirisaki":
4419+ - caster
4420+
4421+ "Felix Paulusma <felix.paulusma@gmail.com> @Vlix":
4422+ - safe-json
4423+
4424+ "Olle Fredriksson <fredriksson.olle@gmail.com> @ollef":
4425+ - rope-utf16-splay
4426+
4427+ "Venkateswara Rao Mandela <venkat.mandela@gmail.com> @vmandela":
4428+ - pandoc-csv2table
4429+
4430+ "Elben Shira <elben@shira.im> @elben":
4431+ - pencil
4432+
4433+ "Ivan Malison <IvanMalison@gmail.com> @IvanMalison":
4434+ - ConfigFile
4435+ - dbus-hslogger
4436+ - gi-cairo-connector
4437+ - gi-cairo-render
4438+ - gtk-sni-tray
4439+ - gtk-strut
4440+ - rate-limit
4441+ - status-notifier-item
4442+ - taffybar < 0 # https://github.com/taffybar/taffybar/issues/542
4443+ - time-units
4444+ - xml-helpers
4445+ - xdg-desktop-entry
4446+
4447+ "ARATA Mizuki <minorinoki@gmail.com> @minoki":
4448+ - unboxing-vector
4449+
4450+ "Brandon Chinn <brandon@leapyear.io> @brandon-leapyear":
4451+ - aeson-schemas
4452+ - github-rest
4453+ - graphql-client
4454+ - hpc-lcov
4455+ - th-test-utils
4456+
4457+ "Brandon Chinn <brandonchinn178@gmail.com> @brandonchinn178":
4458+ - fourmolu
4459+ - http-api-data-qq
4460+ - persistent-mtl
4461+
4462+ "Akshay Mankar <itsakshaymankar@gmail.com> @akshaymankar":
4463+ - jsonpath
4464+
4465+ "James Brock <jamesbrock@gmail.com> @jamesdbrock":
4466+ - replace-megaparsec
4467+ - replace-attoparsec
4468+
4469+ "Robbie McMichael @robbiemcmichael":
4470+ - http-client-overrides
4471+
4472+ "Ian Graves <thegravian@gmail.com> @igraves":
4473+ - monad-resumption
4474+
4475+ "Marius Ghita <mhitza@gmail.com> @mhitza":
4476+ - minimal-configuration
4477+
4478+ "Davit Nalchevanidze <d.nalchevanidze@gmail.com> @nalchevanidze":
4479+ - morpheus-graphql
4480+ - morpheus-graphql-core
4481+ - morpheus-graphql-client
4482+ - morpheus-graphql-subscriptions
4483+ - morpheus-graphql-app
4484+ - morpheus-graphql-code-gen
4485+ - morpheus-graphql-tests
4486+
4487+ "Satoshi Egi <egi@egison.org> @egisatoshi":
4488+ - backtracking
4489+ - egison
4490+ - mini-egison
4491+ - sweet-egison
4492+ - egison-pattern-src
4493+ - egison-pattern-src-th-mode
4494+
4495+ "Travis Cardwell <travis.cardwell@extrema.is> @TravisCardwell":
4496+ - literatex
4497+ - ttc
4498+
4499+ "Jasper Woudenberg <mail@jasperwoudenberg.com> @jwoudenberg":
4500+ - bugsnag-hs
4501+ - junit-xml
4502+ - wai-feature-flags
4503+ - tasty-test-reporter
4504+ - pretty-diff
4505+
4506+ "Eric Conlon <ejconlon@gmail.com> @ejconlon":
4507+ - blanks
4508+ - climb
4509+ - linenoise
4510+ - little-rio
4511+ - little-logger
4512+ # Maintainership with @23Skidoo
4513+ - ekg
4514+ - ekg-core
4515+ - ekg-json
4516+ - ekg-statsd
2596
4517
2597− # https://github.com/fpco/stackage/issues/1767
4518+ "Jorah Gao <jorah@version.cloud> @gqk007":
2598− - SVGFonts < 1.6
4519+ - aeson-default
4520+ - vformat
4521+ - vformat-time
4522+ - vformat-aeson
4523+ - hkd-default
2599
4524
2600− # https://github.com/fpco/stackage/issues/1784
4525+ "Shintaro Sakata <shintaro.sakata.tokyo@gmail.com> @chemirea":
2601− - optparse-applicative < 0.13.0.0 # May need to disable test suite when lifting this https://github.com/pcapriotti/optparse-applicative/issues/228
4526+ - utf8-conversions
2602− - diagrams-canvas < 1.3.0.7
2603− - diagrams-cairo < 1.3.1.2
2604− - diagrams-rasterific < 1.3.1.9
2605− - diagrams-svg < 1.4.0.4
2606− - tttool < 1.6.1.3
2607
4527
2608− # https://github.com/fpco/stackage/issues/1842
4528+ "Alessandro Marrella <amarrella@earnestresearch.com> @amarrella":
2609− - dependent-sum < 0.4
4529+ - kubernetes-webhook-haskell
2610
4530
2611− # https://github.com/fpco/stackage/issues/1876
4531+ "8c6794b6 <8c6794b6@gmail.com> @8c6794b6":
2612− - fixed-vector < 0.9
4532+ - hpc-codecov
2613
4533
2614− # https://github.com/fpco/stackage/issues/1902
4534+ "Hiromi Ishii <konn.jinro@gmail.com> @konn":
2615− - hspec < 2.2.4
4535+ - equational-reasoning
2616− - hspec-core < 2.2.4
4536+ - ghc-typelits-presburger
2617− - hspec-discover < 2.2.4
4537+ - singletons-presburger
4538+ - type-natural
4539+ - subcategories
4540+ - sized
2618
4541
2619− # https://github.com/fpco/stackage/issues/1993
4542+ "Frank Doepper <stackage@woffs.de> @woffs":
2620− - hspec < 2.3
4543+ - amqp-utils
4544+ - magic
2621
4545
2622− # https://github.com/fpco/stackage/issues/1965
4546+ "Ziyang Liu <free@cofree.io> @zliu41":
2623− - HUnit < 1.4.0.0
4547+ - apply-refact
2624− - hspec-expectations < 0.8.2
4548+ - hadoop-streaming
4549+ - indexed-containers
4550+ - math-extras
4551+ - min-max-pqueue
4552+ - multi-containers
4553+
4554+ "Vaclav Svejcar <vaclav.svejcar@gmail.com> @vaclavsvejcar":
4555+ - headroom
4556+ - vcs-ignore
4557+
4558+ "Adrian Sieber <stackage@ad-si.com> @ad-si":
4559+ - ulid
4560+
4561+ "Rickey Visinski <rickeyvisinski+hs@gmail.com> @rickeyski":
4562+ - slack-api
4563+
4564+ "Dobromir Nikolov <dnikolovv@hotmail.com> @dnikolovv":
4565+ - it-has
4566+
4567+ "Gabriele Sales <gbrsales@gmail.com> @gbrsales":
4568+ - cabal-appimage
4569+
4570+ "Dominik Schrempf <dominik.schrempf@gmail.com> @dschrempf":
4571+ - circular
4572+ - covariance
4573+ - dirichlet
4574+ - elynx
4575+ - elynx-markov
4576+ - elynx-nexus
4577+ - elynx-seq
4578+ - elynx-tools
4579+ - elynx-tree
4580+ - glasso
4581+ - mcmc
4582+ - pava
4583+ - slynx
4584+ - tlynx
4585+
4586+ "Eric Rochester <erochest@gmail.com> @erochest":
4587+ - text-regex-replace
4588+
4589+ "Masahiro Honma <hiratara@cpan.org> @hiratara":
4590+ - string-random
4591+
4592+ "Michael B. Gale <github@michael-gale.co.uk> @mbg":
4593+ - c14n
4594+ - katip-logstash
4595+ - logstash
4596+ - monad-logger-logstash
4597+ - moss
4598+ - wai-rate-limit
4599+ - wai-rate-limit-redis
4600+ - wai-saml2
4601+
4602+ "Jun Narumi <narumij@gmail.com> @narumij":
4603+ - matrix-as-xyz
4604+ - hall-symbols
4605+ - symmetry-operations-symbols
4606+
4607+ "Hideaki Kawai <kayhide@gmail.com> @kayhide":
4608+ - wakame
4609+
4610+ "Michael Williams <mlcfp@icloud.com> @mlcfp":
4611+ - zenacy-html
4612+ - zenacy-unicode
4613+
4614+ "Maxim Koltsov <kolmax94@gmail.com> @maksbotan":
4615+ - openapi3
4616+ - servant-openapi3
4617+
4618+ "Song Zhang <HaskellZhangSong@hotmail.com> @HaskellZhangSong":
4619+ - derive-topdown
4620+
4621+ "NoRedInk <haskell-open-source@noredink.com>":
4622+ - nri-env-parser
4623+ - nri-http
4624+ - nri-kafka
4625+ - nri-observability
4626+ - nri-prelude
4627+ - nri-postgresql
4628+ - nri-redis
4629+ - nri-test-encoding
4630+
4631+ "Behrang Norouzinia <behrangn@gmail.com> @behrang":
4632+ - jalaali
4633+
4634+ "Alexander Batischev <eual.jp@gmail.com> @Minoru":
4635+ - hakyll-convert
4636+
4637+ "Edward Nerd <nerded.nerded@gmail.com> @nerded1337":
4638+ - zydiskell
4639+
4640+ "Alejandro Peralta Bazas <aleperaltabazas@gmail.com> @aleperaltabazas":
4641+ - hocon
4642+
4643+ "Joshua Booth <joshua.n.booth@gmail.com> @jnbooth":
4644+ - bitwise-enum
4645+
4646+ "Shlomo Shuck <stevenjshuck@gmail.com> @sjshuck":
4647+ - pcre2
4648+
4649+ "Emil Axelsson <78emil@gmail.com> @emax":
4650+ - tree-view
4651+
4652+ "Samuel Gélineau <gelisam@gmail.com> @gelisam":
4653+ - haskell-awk
4654+ - hint
4655+ - recursion-schemes
2625
4656
2626− # https://github.com/fpco/stackage/issues/1970
4657+ "Kyriakos Papachrysanthou <k.papachrisanthou@gmail.com> @3kyro":
2627− - haskell-gi-base < 0.19
4658+ - keep-alive
2628
4659
2629− # https://github.com/fpco/stackage/issues/1971
4660+ "Brooklyn Zelenka <hello@brooklynzelenka.com> @expede":
2630− - hspec-expectations < 0.8.0
4661+ - rescue
2631− - hspec-wai < 0.7.0
2632− - hspec-wai-json < 0.7.0
2633− - hspec-meta < 2.3.0
2634
4662
2635− # https://github.com/fpco/stackage/issues/1972
4663+ "Artem Pelenitsyn <artem.pelenitsyn@gmail.com> @ulysses4ever":
2636− - lens < 4.15 # Re-enable `lens' benchmarks when lifted
4664+ - alex-meta
4665+ - happy-meta
4666+ - BNFC-meta
2637
4667
2638− # https://github.com/fpco/stackage/issues/1991
4668+ "Tomasz Maciosowski <t4ccer@gmail.com> @t4ccer":
2639− - hackernews < 1.0
4669+ - wai-session-redis
2640
4670
2641− # https://github.com/fpco/stackage/issues/1994
4671+ "Rory Tyler Hayford <rory.hayford@protonmail.com> @ngua":
2642− - hspec-wai < 0.8.0
4672+ - ipa
2643
4673
2644− # https://github.com/fpco/stackage/issues/2007
4674+ "Andreas Herrmann <andreas.herrmann@tweag.io> @aherrmann":
2645− - ShellCheck < 0.4.5
4675+ - capability
2646
4676
2647− # https://github.com/fpco/stackage/issues/2017
4677+ "Dustin Sallings <dustin@spy.net> @dustin":
2648− - Rasterific < 0.7
4678+ - net-mqtt
2649− - rasterific-svg < 0.3.2
4679+ - net-mqtt-lens
2650− - svg-tree < 0.6
2651
4680
2652− # https://github.com/ndmitchell/bake/issues/40
4681+ "David A Roberts <d@vidr.cc> @davidar":
2653− - extra < 1.5.1
4682+ - streamt
2654
4683
2655− # https://github.com/fpco/stackage/issues/2023
4684+ "Martin Sosic <sosic.martin@gmail.com> @Martinsos":
2656− - diagrams-core < 1.4
4685+ - strong-path
2657− - diagrams-lib < 1.4
2658− - diagrams-postscript < 1.4
2659− - diagrams < 1.4
2660− - diagrams-contrib < 1.4
2661
4686
2662− # only pulled in by hledger-ui
4687+ "Arnaud Spiwack <arnaud.spiwack@tweag.io> @aspiwack":
2663− - brick < 0.9
4688+ - linear-base
2664
4689
2665−# end of packages
4690+ "Ollie Charles <ollie@ocharles.org.up> @ocharles":
4691+ - rel8
2666
4692
4693+ "Grzegorz Milka <grzegorzmilka@gmail.com> @gregorias":
4694+ - trimdent
4695+
4696+ "xmonad <xmonad@haskell.org>":
4697+ - X11
4698+ - xmonad
4699+ - xmonad-contrib
4700+
4701+ "Marcellus Siegburg <marcellus.siegburg@gmail.com> @marcellussiegburg":
4702+ - call-alloy
4703+
4704+ "Rickard Andersson <gonz@severnatazvezda.com> @GoNZooo":
4705+ - gotyno-hs
4706+ - reddit-scrape
4707+
4708+ "James Cranch <cranch@cantab.net> @jcranch":
4709+ - tophat
4710+
4711+ "Jan Synacek <jan.synacek@scrive.com> @jsynacek":
4712+ - hpqtypes
4713+ - hpqtypes-extras
4714+ - fields-json
4715+ - log-base
4716+ - unjson
4717+
4718+ "Daan Leijen <daan@effp.org> @daanx":
4719+ - isocline
4720+
4721+ "Chase <totallynotchase42@@gmail.com> @TotallyNotChase":
4722+ - valida
4723+ - valida-base
4724+
4725+ "Andrew Miller <andrew@amxl.com> @A1kmm":
4726+ - polysemy-webserver
4727+
4728+ "Simon Shine <shreddedglory@gmail.com> @sshine":
4729+ - evm-opcodes
4730+
4731+ "Francesco Ariis <fa-ml@ariis.it> @ffaf1":
4732+ - ansi-terminal-game
4733+ - lentil
4734+ - linebreak
4735+ - timers-tick
4736+ - unidecode
4737+
4738+ "Chris Smith <cdsmith@gmail.com>":
4739+ - HMock
4740+ - explainable-predicates
4741+
4742+ "Tim Emiola <tim.emiola@gmail.com> @adetokunbo":
4743+ - hspec-tmp-proc
4744+ - tmp-proc
4745+ - wai-middleware-delegate
4746+
4747+ "Francisco Vallarino <fjvallarino@gmail.com> @fjvallarino":
4748+ - monomer
4749+ - nanovg
4750+
4751+ "Ghais Issa <0x47@0x49.dev> @ghais":
4752+ - LetsBeRational
4753+
4754+ "Edward Yang <qwbarch@gmail.com> @qwbarch":
4755+ - captcha-core
4756+ - captcha-2captcha
4757+ - captcha-capmonster
4758+ - data-default-extra
4759+ - data-default-instances-base
4760+ - data-default-instances-bytestring
4761+ - data-default-instances-case-insensitive
4762+ - data-default-instances-new-base
4763+ - data-default-instances-text
4764+ - data-default-instances-unordered-containers
4765+ - data-default-instances-vector
4766+
4767+ "Grandfathered dependencies":
4768+ - Boolean
4769+ - Cabal-syntax
4770+ - Decimal
4771+ - Diff
4772+ - FloatingHex
4773+ - GenericPretty
4774+ - Glob
4775+ - HDBC
4776+ - HDBC-session
4777+ - HTTP
4778+ - HasBigDecimal
4779+ - HsOpenSSL
4780+ - HsYAML
4781+ - JuicyPixels-scale-dct
4782+ - MemoTrie
4783+ - NoHoed
4784+ - NumInstances
4785+ - Only
4786+ - ParsecTools
4787+ - QuickCheck
4788+ - RSA
4789+ - Stream
4790+ - aeson-compat
4791+ - aeson-extra
4792+ - aeson-optics
4793+ - alsa-mixer
4794+ - ansi-terminal
4795+ - appar
4796+ - arrows
4797+ - asn1-encoding
4798+ - asn1-parse
4799+ - asn1-types
4800+ - assoc
4801+ - attoparsec
4802+ - auto-update
4803+ - base-noprelude
4804+ - base64-bytestring
4805+ - base64-bytestring-type
4806+ - base64-string
4807+ - bimap
4808+ - bin # req'd by boring
4809+ - binary-orphans
4810+ - binary-parser
4811+ - binary-tagged
4812+ - bindings-DSL
4813+ - bitarray
4814+ - blaze-builder
4815+ - blaze-svg
4816+ - blaze-textual
4817+ - boring
4818+ - brick
4819+ - buffer-builder
4820+ - byte-order
4821+ - byteable
4822+ - bytestring-builder
4823+ - bzlib
4824+ - c2hs
4825+ - ca-province-codes
4826+ - cabal-doctest
4827+ - call-stack
4828+ - casing
4829+ - cassava-megaparsec
4830+ - cborg
4831+ - cereal
4832+ - cereal-text
4833+ - cereal-vector
4834+ - chunked-data
4835+ - cipher-aes128
4836+ - cipher-camellia
4837+ - cipher-des
4838+ - classy-prelude
4839+ - classy-prelude-conduit
4840+ - clientsession
4841+ - cmark-gfm
4842+ - colour
4843+ - concurrent-extra
4844+ - conduit
4845+ - config-ini
4846+ - configurator
4847+ - constraints-extras
4848+ - contravariant-extras
4849+ - control-monad-free
4850+ - control-monad-omega
4851+ - convertible
4852+ - cookie
4853+ - cpphs
4854+ - crypt-sha512
4855+ - crypto-api
4856+ - crypto-api-tests
4857+ - crypto-cipher-tests
4858+ - crypto-cipher-types
4859+ - crypto-numbers
4860+ - crypto-pubkey
4861+ - crypto-random
4862+ - cryptohash-cryptoapi
4863+ - cryptohash-sha256
4864+ - cryptohash-sha512
4865+ - cryptostore
4866+ - css-text
4867+ - csv
4868+ - cubicbezier
4869+ - data-binary-ieee754
4870+ - data-bword
4871+ - data-checked
4872+ - data-clist
4873+ - data-default
4874+ - data-default-class
4875+ - data-default-instances-containers
4876+ - data-default-instances-dlist
4877+ - data-default-instances-old-locale
4878+ - data-dword
4879+ - data-endian
4880+ - data-inttrie
4881+ - data-lens-light
4882+ - data-memocombinators
4883+ - data-msgpack-types
4884+ - data-serializer
4885+ - data-textual
4886+ - dec
4887+ - deepseq-generics
4888+ - deferred-folds
4889+ - dense-linear-algebra
4890+ - deque
4891+ - dictionary-sharing
4892+ - direct-sqlite
4893+ - discount
4894+ - dlist
4895+ - dlist-instances
4896+ - dlist-nonempty
4897+ - double-conversion < 2.0.3.0 # https://github.com/commercialhaskell/stackage/issues/6417
4898+ - dual-tree
4899+ - easy-file
4900+ - easytest
4901+ - ed25519
4902+ - edit-distance
4903+ - elm-bridge
4904+ - enclosed-exceptions
4905+ - entropy
4906+ - erf
4907+ - errors
4908+ - expiring-cache-map
4909+ - extensible-exceptions
4910+ - fail
4911+ - fast-logger
4912+ - fast-math
4913+ - fib
4914+ - file-embed
4915+ - file-embed-lzma
4916+ - filemanip
4917+ - fin
4918+ - fingertree
4919+ - fmlist
4920+ - friendly-time
4921+ - functor-classes-compat
4922+ - functor-combinators
4923+ - generic-arbitrary
4924+ - generics-sop-lens
4925+ - ghc-byteorder
4926+ - ghc-compact
4927+ - ghc-paths
4928+ - ghc-prof
4929+ - github
4930+ - groom
4931+ - groups
4932+ - hackage-security
4933+ - hashable
4934+ - haskell-gi-overloading
4935+ - haskell-lexer
4936+ - haskell-lsp-types
4937+ - haskell-src-exts
4938+ - haxl
4939+ - heap
4940+ - hex
4941+ - hmatrix
4942+ - hmatrix-gsl
4943+ - hostname
4944+ - hourglass
4945+ - hsc2hs
4946+ - hscolour
4947+ - hslogger
4948+ - hsp
4949+ - hspec-attoparsec
4950+ - hspec-contrib
4951+ - hspec-expectations
4952+ - hspec-expectations-lifted
4953+ - hspec-meta
4954+ - hspec-smallcheck
4955+ - html
4956+ - html-entities
4957+ - http-client-tls
4958+ - http-date
4959+ - http-reverse-proxy
4960+ - http-types
4961+ - http2
4962+ - httpd-shed
4963+ - hw-json-simd
4964+ - hw-string-parse
4965+ - hxt
4966+ - hxt-charproperties
4967+ - hxt-http
4968+ - hxt-regex-xmlschema
4969+ - hxt-unicode
4970+ - iconv
4971+ - ieee754
4972+ - indexed
4973+ - infer-license
4974+ - insert-ordered-containers
4975+ - inspection-testing
4976+ - integer-logarithms
4977+ - io-streams-haproxy
4978+ - ixset-typed
4979+ - json
4980+ - json-alt
4981+ - kleene
4982+ - language-haskell-extract
4983+ - largeword
4984+ - lattices
4985+ - lazy-csv
4986+ - lazysmallcheck
4987+ - libBF
4988+ - libyaml
4989+ - lifted-async
4990+ - lifted-base
4991+ - loch-th
4992+ - lockfree-queue
4993+ - log-base
4994+ - logging-facade
4995+ - lrucache
4996+ - lsp
4997+ - lsp-types
4998+ - lukko
4999+ - lz4
5000+ - lzma
5001+ - lzma-clib
5002+ - managed
5003+ - math-functions
5004+ - mersenne-random
5005+ - mersenne-random-pure64
5006+ - mfsolve
5007+ - microstache
5008+ - mmap
5009+ - mmorph
5010+ - mockery
5011+ - monad-control
5012+ - monad-logger
5013+ - monad-loops
5014+ - monad-time
5015+ - monads-tf
5016+ - mono-traversable-instances
5017+ - mono-traversable-keys
5018+ - multiset
5019+ - mwc-random
5020+ - names-th
5021+ - nanospec
5022+ - nettle
5023+ - network
5024+ - network-bsd
5025+ - network-byte-order
5026+ - network-info
5027+ - network-ip
5028+ - network-run
5029+ - network-uri < 2.7.0.0 || > 2.7.0.0 # 2.7.0.0 was deprecated, don't remove bound until >2.7.0.0 is released.
5030+ - newtype
5031+ - nicify-lib
5032+ - old-locale
5033+ - old-time
5034+ - one-liner
5035+ - operational
5036+ - optional-args
5037+ - options
5038+ - optparse-applicative
5039+ - parallel
5040+ - path-pieces
5041+ - pcg-random
5042+ - pipes-bytestring
5043+ - pipes-group
5044+ - placeholders
5045+ - poll
5046+ - polyparse
5047+ - postgresql-libpq
5048+ - postgresql-simple
5049+ - postgresql-simple-url
5050+ - pretty-hex
5051+ - pretty-show
5052+ - prettyprinter-convert-ansi-wl-pprint
5053+ - primes
5054+ - primitive
5055+ - primitive-unaligned
5056+ - process-extras
5057+ - product-isomorphic
5058+ - project-template
5059+ - protobuf < 0.2.1.4 || > 0.2.1.4 # deprecated version
5060+ - pureMD5
5061+ - quickcheck-instances
5062+ - quickcheck-io
5063+ - quickcheck-simple
5064+ - quickcheck-unicode
5065+ - quicklz
5066+ - ral # req'd by boring
5067+ - random
5068+ - random-shuffle
5069+ - range-set-list
5070+ - raw-strings-qq
5071+ - readable
5072+ - regex-applicative-text
5073+ - regex-pcre-builtin
5074+ - regex-tdfa-text
5075+ - relapse
5076+ - relational-schemas
5077+ - resolv
5078+ - resource-pool
5079+ - resourcet
5080+ - rfc5051
5081+ - rio
5082+ - rio-orphans
5083+ - safe-exceptions-checked
5084+ - safecopy
5085+ - scientific
5086+ - securemem
5087+ - selective
5088+ - semialign
5089+ - semialign-indexed
5090+ - semialign-optics
5091+ - serialise
5092+ - servant-client-core
5093+ - servant-multipart-client
5094+ - servant-swagger-ui
5095+ - servant-swagger-ui-core
5096+ - servant-swagger-ui-redoc
5097+ - servant-yaml
5098+ - setenv
5099+ - shakespeare
5100+ - shell-escape
5101+ - silently
5102+ - simple-reflect
5103+ - simple-sendfile
5104+ - singleton-bool
5105+ - size-based
5106+ - skein
5107+ - snap-core
5108+ - snappy
5109+ - some
5110+ - special-values
5111+ - splice
5112+ - split
5113+ - splitmix
5114+ - sql-words
5115+ - stateref
5116+ - statistics
5117+ - step-function
5118+ - stm-delay
5119+ - storable-complex
5120+ - streaming-cassava
5121+ - strict
5122+ - strict-list
5123+ - string-qq
5124+ - stringbuilder
5125+ - structured
5126+ - sundown
5127+ - syb
5128+ - system-fileio
5129+ - system-filepath
5130+ - tabular
5131+ - tar
5132+ - tasty-lua
5133+ - tasty-th
5134+ - tdigest
5135+ - template-haskell-compat-v0208
5136+ - temporary
5137+ - temporary-rc
5138+ - temporary-resourcet
5139+ - test-framework
5140+ - test-framework-hunit
5141+ - test-framework-quickcheck2
5142+ - test-framework-smallcheck
5143+ - test-framework-th
5144+ - testing-feat
5145+ - testing-type-modifiers
5146+ - text-icu
5147+ - text-latin1
5148+ - text-postgresql
5149+ - text-printer
5150+ - text-short
5151+ - text-zipper
5152+ - tf-random
5153+ - th-extras
5154+ - th-lift-instances
5155+ - th-utilities
5156+ - these
5157+ - these-lens < 1.0.1 || > 1.0.1
5158+ - these-optics < 1.0.1 || > 1.0.1
5159+ - threads
5160+ - thyme
5161+ - time-locale-compat
5162+ - time-parsers
5163+ - timeit
5164+ - tls-session-manager
5165+ - token-bucket
5166+ - tonatona
5167+ - transformers-base
5168+ - tree-diff
5169+ - trivial-constraint
5170+ - true-name
5171+ - tuple-th
5172+ - type-fun
5173+ - type-hint
5174+ - uglymemo
5175+ - unbounded-delays
5176+ - unicode-collation
5177+ - universe
5178+ - universe-base
5179+ - universe-dependent-sum
5180+ - universe-instances-base
5181+ - universe-instances-extended
5182+ - universe-instances-trans
5183+ - universe-reverse-instances
5184+ - universe-some
5185+ - unix-time
5186+ - url
5187+ - utf8-light
5188+ - utf8-string
5189+ - uuid-types
5190+ - vault
5191+ - vec
5192+ - vector
5193+ - vector-algorithms
5194+ - vector-binary-instances
5195+ - vector-space
5196+ - vector-th-unbox
5197+ - vty
5198+ - wai
5199+ - wai-app-static
5200+ - wai-conduit
5201+ - wai-eventsource
5202+ - wai-handler-launch
5203+ - wai-logger
5204+ - wai-session
5205+ - warp
5206+ - wcwidth
5207+ - with-location
5208+ - wizards
5209+ - word-wrap
5210+ - word8
5211+ - x509
5212+ - x509-store
5213+ - x509-system
5214+ - x509-validation
5215+ - xml
5216+ - xml-conduit
5217+ - xml-conduit-writer
5218+ - xml-hamlet
5219+ - xml-types
5220+ - xss-sanitize
5221+ - yeshql-core
5222+ - yeshql-hdbc
5223+ - yesod-core
5224+ - yesod-form
5225+ - yesod-persistent
5226+ - zlib
5227+ - zlib-bindings
5228+
5229+ # If you stop maintaining a package (either just on stackage, or
5230+ # completely),you can move it here. It will be disabled if it
5231+ # starts causing problems.
5232+ #
5233+ # See #1056/closed
5234+ #
5235+ # When disabling one of these packages, move it to "Removed packages".
5236+ "Abandoned packages":
5237+ - Earley
5238+ - bower-json
5239+ - boxes
5240+ - cassava
5241+ - charsetdetect-ae # #6326/closed
5242+ - coercible-utils # #6271
5243+ - compiler-warnings # #6326/closed
5244+ - curl
5245+ - docopt # #6326/closed
5246+ - dynamic-state # #6326/closed
5247+ - first-class-patterns # #5965/closed
5248+ - ghc-trace-events # #6326/closed
5249+ - hashing # #6271
5250+ - hnix-store-core # #6271
5251+ - ilist # #5965/closed
5252+ - io-storage # #6326/closed
5253+ - monadlist # #6271
5254+ - non-empty-sequence
5255+ - numeric-limits # #6326/closed
5256+ - oo-prototypes # #6326/closed
5257+ - opentelemetry # #6326/closed
5258+ - opentelemetry-extra # #6326/closed
5259+ - opentelemetry-lightstep # #6326/closed
5260+ - opentelemetry-wai # #6326/closed
5261+ - path # #6271
5262+ - pattern-arrows
5263+ - planb-token-introspection # #6326/closed
5264+ - pointedlist # #6326/closed
5265+ - relude # #5965/closed
5266+ - shellmet # #5965/closed
5267+ - slist # #5965/closed
5268+ - type-errors-pretty # #5965/closed
5269+ - typerep-map # #5965/closed
5270+ - unordered-intmap # #6326/closed
5271+ - validation-selective # #5965/closed
5272+ - word-trie # #6326/closed
5273+ - xdg-basedir # #6326/closed
5274+ - yi-rope # #6326/closed
5275+
5276+ # Packages without maintainers that cause issues,
5277+ # this is to prevent us from including them by accident. They can
5278+ # be removed from this list if they are fixed.
5279+ "Unmaintained packages with compilation failures": []
5280+
5281+ # If you want to make sure a package is removed from stackage,
5282+ # place it here with a `< 0` constraint and send a pull
5283+ # request. This will tell us if other packages would be
5284+ # affected. Packages will be kept in this list indefinitely so
5285+ # that new packages depending on it will be flagged as well.
5286+ "Removed packages":
5287+ - PSQueue < 0 # compile fail
5288+ - Unique < 0
5289+ - cli < 0 # compile fail
5290+ - co-log-core < 0 # #5965/closed
5291+ - co-log-polysemy < 0 # #5965/closed
5292+ - fingertree-psqueue < 0 # compile fail
5293+ - hastache < 0 # bounds
5294+ - heart-core < 0 # deprecated
5295+ - hnix < 0 # #6271/closed
5296+ - json-builder < 0 # compile fail https://github.com/lpsmith/json-builder/issues/2
5297+ - lens-labels < 0 # deprecated #4358/closed
5298+ - membrain < 0 # #5965/closed
5299+ - preprocessor-tools < 0 # compile fail
5300+ - present < 0 # #6271
5301+ - prim-array < 0 # compile fail
5302+ - proto-lens-combinators < 0 # deprecated https://github.com/commercialhaskell/stackage/pull/4358
5303+ - shortcut-links < 0 # #5965/closed
5304+ - snap-server < 0 # #6271
5305+ - syb-with-class < 0 # compile fail
5306+ - tinytemplate < 0 # compile fail
5307+ - tomland < 0 # #5965/closed
5308+ - type-combinators < 0 # compile fail https://github.com/kylcarte/type-combinators/issues/8
5309+ - wai-route < 0 # compile fail
5310+ - xxhash < 0 # compile fail
5311+ - universe-instances-base < 0 # deprecated
5312+ - universe-instances-trans < 0 # deprecated
5313+
5314+ "GHC upper bounds":
5315+ # Need to always match the version shipped with GHC
5316+ - Win32 == 2.12.0.1
5317+
5318+ # Section for packages that have been mass-disabled due to
5319+ # compilation failures, e.g. after we upgrade GHC. Every package
5320+ # should have a `< 0` constraint.
5321+ #
5322+ # These constraints can (should?) be moved under the maintainers
5323+ # name, but please add a "compile fail" comment to them there so
5324+ # it's clear that they must be built if we want to confirm that
5325+ # they are working.
5326+ "Compilation failures":
5327+ - Fin < 0 # 0.2.9.0 `@' not in scope
5328+ - HDBC-mysql < 0 # 0.7.1.0
5329+ - Spock-core < 0 # 0.14.0.0
5330+ - Workflow < 0 # 0.8.3
5331+ - accuerr < 0 # 0.2.0.2
5332+ - aeson-lens < 0 # 0.5.0.0
5333+ - auto < 0 # 0.4.3.1
5334+ - aws-xray-client < 0 # 0.1.0.1
5335+ - backprop < 0 # 0.2.6.4
5336+ - binary-ext < 0 # 2.0.4
5337+ - bins < 0 # 0.1.2.0
5338+ - bitcoin-script < 0 # 0.11.1
5339+ - btrfs < 0 # 0.2.0.0
5340+ - bv-little < 0 # 1.1.1 - can't reproduce locally: No instance for (Eq BigNat)
5341+ - cabal-debian < 0 # 5.1
5342+ - cabal-toolkit < 0 # 0.0.7
5343+ - chaselev-deque < 0 # 0.5.0.5
5344+ - compdata < 0 # 0.12.1
5345+ - courier < 0 # 0.1.1.5
5346+ - cql < 0 # 4.0.3
5347+ - crypto-numbers < 0 # 0.2.7
5348+ - cuckoo-filter < 0 # 0.2.0.2 benchmarks are an exe
5349+ - derive-topdown < 0 # 0.0.2.2
5350+ - distributed-closure < 0 # 0.4.2.0
5351+ - djinn-ghc < 0 # 0.0.2.3
5352+ - drinkery < 0 # 0.4
5353+ - enum-subset-generate < 0 # 0.1.0.0
5354+ - essence-of-live-coding-quickcheck < 0 # 0.2.5
5355+ - etcd < 0 # 1.0.5
5356+ - farmhash < 0 # 0.1.0.5
5357+ - eve < 0 # 0.1.9.0
5358+ - eventsource-store-specs < 0 # 1.2.1
5359+ - exinst < 0 # 0.8
5360+ - ftp-client-conduit < 0 # 0.5.0.5
5361+ - giphy-api < 0 # 0.7.0.0 https://github.com/passy/giphy-api/pull/19
5362+ - gluturtle < 0 # 0.0.58.1
5363+ - haskell-import-graph < 0 # 1.0.4
5364+ - haskell-spacegoo < 0 # 0.2.0.1
5365+ - haskoin-node < 0 # libsecp256k1
5366+ - haxl < 0 # 2.3.0.0
5367+ - hbeanstalk < 0 # 0.2.4
5368+ - heterocephalus < 0 # 1.0.5.4
5369+ - hexml-lens < 0 # 0.2.1
5370+ - hexstring < 0 # 0.11.1
5371+ - hs-functors < 0 # 0.1.7.1
5372+ - hschema < 0 # 0.0.1.1
5373+ - hstatsd < 0 # 0.1
5374+ - interpolator < 0 # 1.1.0.2
5375+ - io-choice < 0 # 0.0.7
5376+ - katydid < 0 # 0.4.0.2 MonadFail
5377+ - kdt < 0 # 0.2.4 https://github.com/giogadi/kdt/issues/5
5378+ - lens-typelevel < 0 # 0.1.1.0
5379+ - llvm-hs < 0 # llvm-config
5380+ - llvm-hs-pretty < 0 # 0.9.0.0
5381+ - machines-binary < 0 # 7.0.0.0
5382+ - machines-io < 0 # 7.0.0.0
5383+ - marvin-interpolate < 0 # 1.1.2
5384+ - mltool < 0 # 0.2.0.1
5385+ - moesocks < 0 # 1.0.1.0
5386+ - monad-recorder < 0 # 0.1.1
5387+ - monad-unlift < 0 # 0.2.0
5388+ - murmur < 0 # 0.0.0.2
5389+ - n2o-protocols < 0 # 0.11.2
5390+ - nvim-hs-contrib < 0 # 2.0.0.0
5391+ - odbc < 0 # odbc
5392+ - open-witness < 0 # 0.5
5393+ - pencil < 0 # 1.0.1
5394+ - pipes-aeson < 0 # 0.4.1.8
5395+ - pipes-binary < 0 # 0.4.3
5396+ - pipes-network < 0 # 0.6.5
5397+ - pipes-text < 0 # 1.0.0
5398+ - pkcs10 < 0 # 0.2.0.0
5399+ - planb-token-introspection < 0 # 0.1.4.0
5400+ - postgresql-transactional < 0 # 1.1.1
5401+ - raaz < 0 # 0.3.6 multiple libraries
5402+ - regex-compat-tdfa < 0 # 0.95.1.4
5403+ - rhine < 0 # 0.7.0
5404+ - rose-trees < 0 # compilation seems to hang?
5405+ - sdl2-gfx < 0 # SDL2_gfx
5406+ - sdl2-image < 0 # SDL2_image
5407+ - sdl2-mixer < 0 # SDL2_mixer
5408+ - sessiontypes < 0 # 0.1.2
5409+ - simplistic-generics < 0 # 2.0.0
5410+ - slack-api < 0 # 0.12
5411+ - squeal-postgresql < 0 # 0.8.1.1
5412+ - stm-stats < 0 # 0.2.0.0
5413+ - sydtest-persistent-sqlite < 0 # 0.2.0.0
5414+ - text-region < 0 # 0.3.1.0
5415+ - th-data-compat < 0 # 0.1.0.0
5416+ - throttle-io-stream < 0 # 0.2.0.1
5417+ - throwable-exceptions < 0 # 0.1.0.9
5418+ - thyme < 0 # 0.3.5.5 unknown argument --cpp
5419+ - time-qq < 0 # 0.0.1.0
5420+ - timemap < 0 # 0.0.7 https://github.com/athanclark/timemap/issues/1
5421+ - tintin < 0 # 1.10.1
5422+ - turtle-options < 0 # 0.1.0.4
5423+ - type-assertions < 0 # 0.1.0.0
5424+ - typecheck-plugin-nat-simple < 0 # 0.1.0.2
5425+ - ulid < 0 # 0.3.0.0
5426+ - uncertain < 0 # 0.3.1.0
5427+ - unordered-intmap < 0 # 0.1.1
5428+ - users-persistent < 0 # 0.5.0.2
5429+ - wai-predicates < 0 # 1.0.0
5430+ - webex-teams-pipes < 0 # 0.2.0.1
5431+ - websockets-rpc < 0 # 0.7.0
5432+ - word24 < 0 # 2.0.1
5433+ - xls < 0 # 0.1.3 gcc failed
5434+ - xml-conduit-parse < 0 # 0.3.1.2
5435+ - xml-lens < 0 # 0.3
5436+ - xturtle < 0 # xft
5437+ - yeshql-hdbc < 0 # 4.2.0.0
5438+
5439+
5440+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
5441+ #
5442+ # This section is meant for libraries and executables that have
5443+ # bene disabled due to bounds issues, there is a separate section
5444+ # for compilation failures as we need to build those packages to
5445+ # verify if they have been fixeq.
5446+ "Library and exe bounds failures":
5447+ - BiobaseHTTP < 0 # tried BiobaseHTTP-1.2.0, but its *library* does not support: network-3.1.2.7
5448+ - BlastHTTP < 0 # tried BlastHTTP-1.4.2, but its *library* does not support: network-3.1.2.7
5449+ - Chart-cairo < 0 # tried Chart-cairo-1.9.3, but its *library* requires the disabled package: cairo
5450+ - Chart-diagrams < 0 # tried Chart-diagrams-1.9.3, but its *library* does not support: SVGFonts-1.8.0.1
5451+ - EntrezHTTP < 0 # tried EntrezHTTP-1.0.4, but its *library* requires the disabled package: biocore
5452+ - FPretty < 0 # tried FPretty-1.1, but its *library* does not support: base-4.15.1.0
5453+ - GPipe < 0 # tried GPipe-2.2.5, but its *library* does not support: linear-1.21.8
5454+ - Genbank < 0 # tried Genbank-1.0.3, but its *library* requires the disabled package: biocore
5455+ - H < 0 # tried H-0.9.0.1, but its *executable* requires the disabled package: inline-r
5456+ - HaskellNet < 0 # tried HaskellNet-0.6, but its *library* does not support: base-4.15.1.0
5457+ - HaskellNet-SSL < 0 # tried HaskellNet-SSL-0.3.4.4, but its *library* requires the disabled package: HaskellNet
5458+ - Hoed < 0 # tried Hoed-0.5.1, but its *library* requires the disabled package: regex-tdfa-text
5459+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: fast-logger-3.1.1
5460+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: optparse-applicative-0.16.1.0
5461+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: IPv6Addr-2.0.4
5462+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: aeson-1.5.6.0
5463+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: attoparsec-0.14.4
5464+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: hedis-0.15.0
5465+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: unordered-containers-0.2.16.0
5466+ - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: attoparsec-0.14.4
5467+ - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: text-show-3.9.6
5468+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: Workflow
5469+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: monadloc
5470+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: pwstore-fast
5471+ - MapWith < 0 # tried MapWith-0.2.0.0, but its *library* does not support: base-4.15.1.0
5472+ - Network-NineP < 0 # tried Network-NineP-0.4.7.1, but its *library* requires the disabled package: mstate
5473+ - NoTrace < 0 # tried NoTrace-0.3.0.4, but its *library* does not support: base-4.15.1.0
5474+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseBlast-0.3.3.0
5475+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseFasta-0.4.0.1
5476+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseHTTP-1.2.0
5477+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseTypes-0.2.1.0
5478+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: aeson-1.5.6.0
5479+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: network-3.1.2.7
5480+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* requires the disabled package: hierarchical-clustering
5481+ - Spock < 0 # tried Spock-0.14.0.0, but its *library* requires the disabled package: Spock-core
5482+ - Spock-api-server < 0 # tried Spock-api-server-0.14.0.0, but its *library* requires the disabled package: Spock-core
5483+ - Spock-lucid < 0 # tried Spock-lucid-0.4.0.1, but its *library* requires the disabled package: Spock
5484+ - Spock-worker < 0 # tried Spock-worker-0.3.1.0, but its *library* requires the disabled package: Spock
5485+ - Strafunski-StrategyLib < 0 # tried Strafunski-StrategyLib-5.0.1.0, but its *library* does not support: base-4.15.1.0
5486+ - TotalMap < 0 # tried TotalMap-0.1.1.1, but its *library* does not support: base-4.15.1.0
5487+ - TotalMap < 0 # tried TotalMap-0.1.1.1, but its *library* does not support: lens-5.0.1
5488+ - YampaSynth < 0 # tried YampaSynth-0.2, but its *executable* requires the disabled package: Yampa
5489+ - accelerate < 0 # tried accelerate-1.3.0.0, but its *library* does not support: base-4.15.1.0
5490+ - accelerate-arithmetic < 0 # tried accelerate-arithmetic-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5491+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate
5492+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5493+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5494+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5495+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate
5496+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5497+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5498+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5499+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-bmp
5500+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-repa
5501+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-vector
5502+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: normaldistribution
5503+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate
5504+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5505+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5506+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5507+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: lens-accelerate
5508+ - accelerate-fftw < 0 # tried accelerate-fftw-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5509+ - accelerate-fftw < 0 # tried accelerate-fftw-1.0.0.1, but its *library* does not support: accelerate-io-1.3.0.0
5510+ - accelerate-fourier < 0 # tried accelerate-fourier-1.0.0.5, but its *library* does not support: accelerate-1.3.0.0
5511+ - accelerate-fourier < 0 # tried accelerate-fourier-1.0.0.5, but its *library* does not support: containers-0.6.4.1
5512+ - accelerate-io < 0 # tried accelerate-io-1.3.0.0, but its *library* requires the disabled package: accelerate
5513+ - accelerate-llvm < 0 # tried accelerate-llvm-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5514+ - accelerate-llvm-native < 0 # tried accelerate-llvm-native-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5515+ - accelerate-llvm-ptx < 0 # tried accelerate-llvm-ptx-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5516+ - accelerate-utility < 0 # tried accelerate-utility-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5517+ - aeson-diff < 0 # tried aeson-diff-1.1.0.9, but its *library* does not support: base-4.15.1.0
5518+ - aeson-injector < 0 # tried aeson-injector-1.1.5.0, but its *library* does not support: lens-5.0.1
5519+ - aeson-picker < 0 # tried aeson-picker-0.1.0.5, but its *library* does not support: lens-5.0.1
5520+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: base64-bytestring-1.2.1.0
5521+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: bytestring-trie-0.2.6
5522+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: semigroups-0.19.2
5523+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-3.2.3
5524+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-extra-3.1.8
5525+ - alg < 0 # tried alg-0.2.13.1, but its *library* requires the disabled package: util
5526+ - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: http-client-0.7.10
5527+ - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: unliftio-core-0.2.0.1
5528+ - amazonka-apigateway < 0 # tried amazonka-apigateway-1.6.1, but its *library* requires the disabled package: amazonka-core
5529+ - amazonka-application-autoscaling < 0 # tried amazonka-application-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
5530+ - amazonka-appstream < 0 # tried amazonka-appstream-1.6.1, but its *library* requires the disabled package: amazonka-core
5531+ - amazonka-athena < 0 # tried amazonka-athena-1.6.1, but its *library* requires the disabled package: amazonka-core
5532+ - amazonka-autoscaling < 0 # tried amazonka-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
5533+ - amazonka-budgets < 0 # tried amazonka-budgets-1.6.1, but its *library* requires the disabled package: amazonka-core
5534+ - amazonka-certificatemanager < 0 # tried amazonka-certificatemanager-1.6.1, but its *library* requires the disabled package: amazonka-core
5535+ - amazonka-cloudformation < 0 # tried amazonka-cloudformation-1.6.1, but its *library* requires the disabled package: amazonka-core
5536+ - amazonka-cloudfront < 0 # tried amazonka-cloudfront-1.6.1, but its *library* requires the disabled package: amazonka-core
5537+ - amazonka-cloudhsm < 0 # tried amazonka-cloudhsm-1.6.1, but its *library* requires the disabled package: amazonka-core
5538+ - amazonka-cloudsearch < 0 # tried amazonka-cloudsearch-1.6.1, but its *library* requires the disabled package: amazonka-core
5539+ - amazonka-cloudsearch-domains < 0 # tried amazonka-cloudsearch-domains-1.6.1, but its *library* requires the disabled package: amazonka-core
5540+ - amazonka-cloudtrail < 0 # tried amazonka-cloudtrail-1.6.1, but its *library* requires the disabled package: amazonka-core
5541+ - amazonka-cloudwatch < 0 # tried amazonka-cloudwatch-1.6.1, but its *library* requires the disabled package: amazonka-core
5542+ - amazonka-cloudwatch-events < 0 # tried amazonka-cloudwatch-events-1.6.1, but its *library* requires the disabled package: amazonka-core
5543+ - amazonka-cloudwatch-logs < 0 # tried amazonka-cloudwatch-logs-1.6.1, but its *library* requires the disabled package: amazonka-core
5544+ - amazonka-codebuild < 0 # tried amazonka-codebuild-1.6.1, but its *library* requires the disabled package: amazonka-core
5545+ - amazonka-codecommit < 0 # tried amazonka-codecommit-1.6.1, but its *library* requires the disabled package: amazonka-core
5546+ - amazonka-codedeploy < 0 # tried amazonka-codedeploy-1.6.1, but its *library* requires the disabled package: amazonka-core
5547+ - amazonka-codepipeline < 0 # tried amazonka-codepipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
5548+ - amazonka-cognito-identity < 0 # tried amazonka-cognito-identity-1.6.1, but its *library* requires the disabled package: amazonka-core
5549+ - amazonka-cognito-idp < 0 # tried amazonka-cognito-idp-1.6.1, but its *library* requires the disabled package: amazonka-core
5550+ - amazonka-cognito-sync < 0 # tried amazonka-cognito-sync-1.6.1, but its *library* requires the disabled package: amazonka-core
5551+ - amazonka-config < 0 # tried amazonka-config-1.6.1, but its *library* requires the disabled package: amazonka-core
5552+ - amazonka-core < 0 # tried amazonka-core-1.6.1, but its *library* does not support: http-client-0.7.10
5553+ - amazonka-datapipeline < 0 # tried amazonka-datapipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
5554+ - amazonka-devicefarm < 0 # tried amazonka-devicefarm-1.6.1, but its *library* requires the disabled package: amazonka-core
5555+ - amazonka-directconnect < 0 # tried amazonka-directconnect-1.6.1, but its *library* requires the disabled package: amazonka-core
5556+ - amazonka-discovery < 0 # tried amazonka-discovery-1.6.1, but its *library* requires the disabled package: amazonka-core
5557+ - amazonka-dms < 0 # tried amazonka-dms-1.6.1, but its *library* requires the disabled package: amazonka-core
5558+ - amazonka-ds < 0 # tried amazonka-ds-1.6.1, but its *library* requires the disabled package: amazonka-core
5559+ - amazonka-dynamodb < 0 # tried amazonka-dynamodb-1.6.1, but its *library* requires the disabled package: amazonka-core
5560+ - amazonka-dynamodb-streams < 0 # tried amazonka-dynamodb-streams-1.6.1, but its *library* requires the disabled package: amazonka-core
5561+ - amazonka-ecr < 0 # tried amazonka-ecr-1.6.1, but its *library* requires the disabled package: amazonka-core
5562+ - amazonka-ecs < 0 # tried amazonka-ecs-1.6.1, but its *library* requires the disabled package: amazonka-core
5563+ - amazonka-efs < 0 # tried amazonka-efs-1.6.1, but its *library* requires the disabled package: amazonka-core
5564+ - amazonka-elasticache < 0 # tried amazonka-elasticache-1.6.1, but its *library* requires the disabled package: amazonka-core
5565+ - amazonka-elasticbeanstalk < 0 # tried amazonka-elasticbeanstalk-1.6.1, but its *library* requires the disabled package: amazonka-core
5566+ - amazonka-elasticsearch < 0 # tried amazonka-elasticsearch-1.6.1, but its *library* requires the disabled package: amazonka-core
5567+ - amazonka-elastictranscoder < 0 # tried amazonka-elastictranscoder-1.6.1, but its *library* requires the disabled package: amazonka-core
5568+ - amazonka-elb < 0 # tried amazonka-elb-1.6.1, but its *library* requires the disabled package: amazonka-core
5569+ - amazonka-elbv2 < 0 # tried amazonka-elbv2-1.6.1, but its *library* requires the disabled package: amazonka-core
5570+ - amazonka-emr < 0 # tried amazonka-emr-1.6.1, but its *library* requires the disabled package: amazonka-core
5571+ - amazonka-gamelift < 0 # tried amazonka-gamelift-1.6.1, but its *library* requires the disabled package: amazonka-core
5572+ - amazonka-glacier < 0 # tried amazonka-glacier-1.6.1, but its *library* requires the disabled package: amazonka-core
5573+ - amazonka-glue < 0 # tried amazonka-glue-1.6.1, but its *library* requires the disabled package: amazonka-core
5574+ - amazonka-health < 0 # tried amazonka-health-1.6.1, but its *library* requires the disabled package: amazonka-core
5575+ - amazonka-iam < 0 # tried amazonka-iam-1.6.1, but its *library* requires the disabled package: amazonka-core
5576+ - amazonka-importexport < 0 # tried amazonka-importexport-1.6.1, but its *library* requires the disabled package: amazonka-core
5577+ - amazonka-inspector < 0 # tried amazonka-inspector-1.6.1, but its *library* requires the disabled package: amazonka-core
5578+ - amazonka-iot < 0 # tried amazonka-iot-1.6.1, but its *library* requires the disabled package: amazonka-core
5579+ - amazonka-iot-dataplane < 0 # tried amazonka-iot-dataplane-1.6.1, but its *library* requires the disabled package: amazonka-core
5580+ - amazonka-kinesis < 0 # tried amazonka-kinesis-1.6.1, but its *library* requires the disabled package: amazonka-core
5581+ - amazonka-kinesis-analytics < 0 # tried amazonka-kinesis-analytics-1.6.1, but its *library* requires the disabled package: amazonka-core
5582+ - amazonka-kinesis-firehose < 0 # tried amazonka-kinesis-firehose-1.6.1, but its *library* requires the disabled package: amazonka-core
5583+ - amazonka-kms < 0 # tried amazonka-kms-1.6.1, but its *library* requires the disabled package: amazonka-core
5584+ - amazonka-lambda < 0 # tried amazonka-lambda-1.6.1, but its *library* requires the disabled package: amazonka-core
5585+ - amazonka-lightsail < 0 # tried amazonka-lightsail-1.6.1, but its *library* requires the disabled package: amazonka-core
5586+ - amazonka-marketplace-analytics < 0 # tried amazonka-marketplace-analytics-1.6.1, but its *library* requires the disabled package: amazonka-core
5587+ - amazonka-marketplace-metering < 0 # tried amazonka-marketplace-metering-1.6.1, but its *library* requires the disabled package: amazonka-core
5588+ - amazonka-ml < 0 # tried amazonka-ml-1.6.1, but its *library* requires the disabled package: amazonka-core
5589+ - amazonka-opsworks < 0 # tried amazonka-opsworks-1.6.1, but its *library* requires the disabled package: amazonka-core
5590+ - amazonka-opsworks-cm < 0 # tried amazonka-opsworks-cm-1.6.1, but its *library* requires the disabled package: amazonka-core
5591+ - amazonka-pinpoint < 0 # tried amazonka-pinpoint-1.6.1, but its *library* requires the disabled package: amazonka-core
5592+ - amazonka-polly < 0 # tried amazonka-polly-1.6.1, but its *library* requires the disabled package: amazonka-core
5593+ - amazonka-rds < 0 # tried amazonka-rds-1.6.1, but its *library* requires the disabled package: amazonka-core
5594+ - amazonka-redshift < 0 # tried amazonka-redshift-1.6.1, but its *library* requires the disabled package: amazonka-core
5595+ - amazonka-rekognition < 0 # tried amazonka-rekognition-1.6.1, but its *library* requires the disabled package: amazonka-core
5596+ - amazonka-route53 < 0 # tried amazonka-route53-1.6.1, but its *library* requires the disabled package: amazonka-core
5597+ - amazonka-route53-domains < 0 # tried amazonka-route53-domains-1.6.1, but its *library* requires the disabled package: amazonka-core
5598+ - amazonka-s3 < 0 # tried amazonka-s3-1.6.1, but its *library* requires the disabled package: amazonka-core
5599+ - amazonka-sdb < 0 # tried amazonka-sdb-1.6.1, but its *library* requires the disabled package: amazonka-core
5600+ - amazonka-servicecatalog < 0 # tried amazonka-servicecatalog-1.6.1, but its *library* requires the disabled package: amazonka-core
5601+ - amazonka-ses < 0 # tried amazonka-ses-1.6.1, but its *library* requires the disabled package: amazonka-core
5602+ - amazonka-shield < 0 # tried amazonka-shield-1.6.1, but its *library* requires the disabled package: amazonka-core
5603+ - amazonka-sms < 0 # tried amazonka-sms-1.6.1, but its *library* requires the disabled package: amazonka-core
5604+ - amazonka-snowball < 0 # tried amazonka-snowball-1.6.1, but its *library* requires the disabled package: amazonka-core
5605+ - amazonka-sns < 0 # tried amazonka-sns-1.6.1, but its *library* requires the disabled package: amazonka-core
5606+ - amazonka-sqs < 0 # tried amazonka-sqs-1.6.1, but its *library* requires the disabled package: amazonka-core
5607+ - amazonka-ssm < 0 # tried amazonka-ssm-1.6.1, but its *library* requires the disabled package: amazonka-core
5608+ - amazonka-stepfunctions < 0 # tried amazonka-stepfunctions-1.6.1, but its *library* requires the disabled package: amazonka-core
5609+ - amazonka-storagegateway < 0 # tried amazonka-storagegateway-1.6.1, but its *library* requires the disabled package: amazonka-core
5610+ - amazonka-sts < 0 # tried amazonka-sts-1.6.1, but its *library* requires the disabled package: amazonka-core
5611+ - amazonka-support < 0 # tried amazonka-support-1.6.1, but its *library* requires the disabled package: amazonka-core
5612+ - amazonka-swf < 0 # tried amazonka-swf-1.6.1, but its *library* requires the disabled package: amazonka-core
5613+ - amazonka-test < 0 # tried amazonka-test-1.6.1, but its *library* requires the disabled package: amazonka-core
5614+ - amazonka-waf < 0 # tried amazonka-waf-1.6.1, but its *library* requires the disabled package: amazonka-core
5615+ - amazonka-workspaces < 0 # tried amazonka-workspaces-1.6.1, but its *library* requires the disabled package: amazonka-core
5616+ - amazonka-xray < 0 # tried amazonka-xray-1.6.1, but its *library* requires the disabled package: amazonka-core
5617+ - ansigraph < 0 # tried ansigraph-0.3.0.5, but its *library* does not support: ansi-terminal-0.11.1
5618+ - ansigraph < 0 # tried ansigraph-0.3.0.5, but its *library* does not support: base-4.15.1.0
5619+ - antiope-core < 0 # tried antiope-core-7.5.3, but its *library* requires the disabled package: amazonka
5620+ - antiope-core < 0 # tried antiope-core-7.5.3, but its *library* requires the disabled package: amazonka-core
5621+ - antiope-dynamodb < 0 # tried antiope-dynamodb-7.5.3, but its *library* requires the disabled package: amazonka
5622+ - antiope-dynamodb < 0 # tried antiope-dynamodb-7.5.3, but its *library* requires the disabled package: amazonka-core
5623+ - antiope-messages < 0 # tried antiope-messages-7.5.3, but its *library* requires the disabled package: amazonka
5624+ - antiope-messages < 0 # tried antiope-messages-7.5.3, but its *library* requires the disabled package: amazonka-core
5625+ - antiope-s3 < 0 # tried antiope-s3-7.5.3, but its *library* requires the disabled package: amazonka
5626+ - antiope-s3 < 0 # tried antiope-s3-7.5.3, but its *library* requires the disabled package: amazonka-core
5627+ - antiope-sns < 0 # tried antiope-sns-7.5.3, but its *library* requires the disabled package: amazonka
5628+ - antiope-sns < 0 # tried antiope-sns-7.5.3, but its *library* requires the disabled package: amazonka-core
5629+ - antiope-sqs < 0 # tried antiope-sqs-7.5.3, but its *library* requires the disabled package: amazonka
5630+ - antiope-sqs < 0 # tried antiope-sqs-7.5.3, but its *library* requires the disabled package: amazonka-core
5631+ - aos-signature < 0 # tried aos-signature-0.1.1, but its *library* requires the disabled package: protolude
5632+ - arbor-postgres < 0 # tried arbor-postgres-0.0.5, but its *library* does not support: lens-5.0.1
5633+ - arbor-postgres < 0 # tried arbor-postgres-0.0.5, but its *library* does not support: optparse-applicative-0.16.1.0
5634+ - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: haskell-src-exts-1.23.1
5635+ - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: template-haskell-2.17.0.0
5636+ - asif < 0 # tried asif-6.0.4, but its *library* requires the disabled package: thyme
5637+ - async-timer < 0 # tried async-timer-0.2.0.0, but its *library* does not support: unliftio-core-0.2.0.1
5638+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: attoparsec-0.14.4
5639+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: base-4.15.1.0
5640+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: cryptonite-0.29
5641+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: memory-0.16.0
5642+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: template-haskell-2.17.0.0
5643+ - avers-api < 0 # tried avers-api-0.1.0, but its *library* requires the disabled package: avers
5644+ - avers-server < 0 # tried avers-server-0.1.0.1, but its *library* requires the disabled package: avers
5645+ - avwx < 0 # tried avwx-0.3.0.3, but its *library* does not support: lens-5.0.1
5646+ - aws-xray-client-wai < 0 # tried aws-xray-client-wai-0.1.0.1, but its *library* requires the disabled package: aws-xray-client
5647+ - axel < 0 # tried axel-0.0.12, but its *library* does not support: base-4.15.1.0
5648+ - axiom < 0 # tried axiom-0.4.7, but its *library* requires the disabled package: transient-universe
5649+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: aeson-1.5.6.0
5650+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: hspec-2.8.5
5651+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: lens-5.0.1
5652+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: shake-0.19.6
5653+ - b9 < 0 # tried b9-3.2.0, but its *library* requires the disabled package: posix-pty
5654+ - b9 < 0 # tried b9-3.2.0, but its *library* requires the disabled package: template
5655+ - base-noprelude < 0 # tried base-noprelude-4.13.0.0, but its *library* does not support: base-4.15.1.0
5656+ - bcp47 < 0 # tried bcp47-0.2.0.5, but its *library* requires the disabled package: country
5657+ - bcp47-orphans < 0 # tried bcp47-orphans-0.1.0.4, but its *library* requires the disabled package: bcp47
5658+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: aeson-1.5.6.0
5659+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: beam-core-0.9.2.0
5660+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: hashable-1.3.5.0
5661+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: mysql-0.2.1
5662+ - bench-show < 0 # tried bench-show-0.3.1, but its *library* does not support: statistics-0.16.0.1
5663+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: brick-0.66.1
5664+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: bytestring-0.10.12.1
5665+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: directory-1.3.6.2
5666+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: filepath-1.4.2.1
5667+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: lens-5.0.1
5668+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: process-1.6.13.2
5669+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: protolude-0.3.0
5670+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: text-1.2.5.0
5671+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: time-1.9.3
5672+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: typed-process-0.2.8.0
5673+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: vector-0.12.3.1
5674+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: vty-5.33
5675+ - binary-bits < 0 # tried binary-bits-0.5, but its *library* does not support: base-4.15.1.0
5676+ - bioace < 0 # tried bioace-0.0.1, but its *library* requires the disabled package: biocore
5677+ - bioalign < 0 # tried bioalign-0.0.5, but its *library* requires the disabled package: biocore
5678+ - biocore < 0 # tried biocore-0.3.1, but its *library* does not support: base-4.15.1.0
5679+ - biocore < 0 # tried biocore-0.3.1, but its *library* requires the disabled package: stringable
5680+ - biofasta < 0 # tried biofasta-0.0.3, but its *library* requires the disabled package: biocore
5681+ - biofastq < 0 # tried biofastq-0.1, but its *library* requires the disabled package: biocore
5682+ - biopsl < 0 # tried biopsl-0.4, but its *library* requires the disabled package: biocore
5683+ - bitcoin-api < 0 # tried bitcoin-api-0.12.1, but its *library* requires the disabled package: bitcoin-script
5684+ - bitcoin-api < 0 # tried bitcoin-api-0.12.1, but its *library* requires the disabled package: hexstring
5685+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-api
5686+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-block
5687+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-tx
5688+ - bitcoin-block < 0 # tried bitcoin-block-0.13.1, but its *library* requires the disabled package: hexstring
5689+ - bitcoin-tx < 0 # tried bitcoin-tx-0.13.1, but its *library* requires the disabled package: bitcoin-script
5690+ - bitcoin-tx < 0 # tried bitcoin-tx-0.13.1, but its *library* requires the disabled package: hexstring
5691+ - bitcoin-types < 0 # tried bitcoin-types-0.9.2, but its *library* requires the disabled package: hexstring
5692+ - blastxml < 0 # tried blastxml-0.3.2, but its *library* requires the disabled package: biocore
5693+ - blosum < 0 # tried blosum-0.1.1.4, but its *executable* requires the disabled package: pipes-text
5694+ - boolean-normal-forms < 0 # tried boolean-normal-forms-0.0.1.1, but its *library* does not support: base-4.15.1.0
5695+ - boundingboxes < 0 # tried boundingboxes-0.2.3, but its *library* does not support: lens-5.0.1
5696+ - brittany < 0 # tried brittany-0.14.0.2, but its *library* does not support: aeson-1.5.6.0
5697+ - brittany < 0 # tried brittany-0.14.0.2, but its *library* does not support: yaml-0.11.6.0
5698+ - buchhaltung < 0 # tried buchhaltung-0.0.7, but its *library* requires the disabled package: regex-tdfa-text
5699+ - bulletproofs < 0 # tried bulletproofs-1.1.0, but its *library* requires the disabled package: elliptic-curve
5700+ - butcher < 0 # tried butcher-1.3.3.2, but its *library* does not support: base-4.15.1.0
5701+ - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: Cabal-3.4.1.0
5702+ - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: base-4.15.1.0
5703+ - cairo < 0 # tried cairo-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5704+ - category < 0 # tried category-0.2.5.0, but its *library* requires the disabled package: alg
5705+ - cereal-time < 0 # tried cereal-time-0.1.0.0, but its *library* does not support: time-1.9.3
5706+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-1.5.6.0
5707+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-casing-0.2.0.0
5708+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: connection-0.3.1
5709+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-api-data-0.4.3
5710+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-client-0.7.10
5711+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: req-3.9.2
5712+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytebuild
5713+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: byteslice
5714+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytesmith
5715+ - chronos-bench < 0 # tried chronos-bench-0.2.0.2, but its *library* requires the disabled package: chronos
5716+ - clang-compilation-database < 0 # tried clang-compilation-database-0.1.0.1, but its *library* does not support: base-4.15.1.0
5717+ - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: base-4.15.1.0
5718+ - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: template-haskell-2.17.0.0
5719+ - clock-extras < 0 # tried clock-extras-0.1.0.2, but its *library* does not support: clock-0.8.2
5720+ - cmark-highlight < 0 # tried cmark-highlight-0.2.0.0, but its *library* does not support: cmark-0.6
5721+ - co-log-concurrent < 0 # tried co-log-concurrent-0.5.1.0, but its *library* requires the disabled package: co-log-core
5722+ - codec < 0 # tried codec-0.2.1, but its *library* requires the disabled package: binary-bits
5723+ - colour-accelerate < 0 # tried colour-accelerate-0.4.0.0, but its *library* requires the disabled package: accelerate
5724+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: generic-deriving-1.14.1
5725+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: profunctors-5.6.2
5726+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
5727+ - composite-aeson-path < 0 # tried composite-aeson-path-0.7.5.0, but its *library* does not support: path-0.9.2
5728+ - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: composite-aeson
5729+ - composite-aeson-throw < 0 # tried composite-aeson-throw-0.1.0.0, but its *library* requires the disabled package: composite-aeson
5730+ - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: profunctors-5.6.2
5731+ - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
5732+ - composite-binary < 0 # tried composite-binary-0.7.5.0, but its *library* requires the disabled package: composite-base
5733+ - composite-ekg < 0 # tried composite-ekg-0.7.5.0, but its *library* requires the disabled package: composite-base
5734+ - composite-ekg < 0 # tried composite-ekg-0.7.5.0, but its *library* requires the disabled package: ekg-core
5735+ - composite-hashable < 0 # tried composite-hashable-0.7.5.0, but its *library* requires the disabled package: composite-base
5736+ - composite-tuple < 0 # tried composite-tuple-0.1.2.0, but its *library* requires the disabled package: composite-base
5737+ - composite-xstep < 0 # tried composite-xstep-0.1.0.0, but its *library* requires the disabled package: composite-base
5738+ - compressed < 0 # tried compressed-3.11, but its *library* does not support: containers-0.6.4.1
5739+ - compressed < 0 # tried compressed-3.11, but its *library* does not support: hashable-1.3.5.0
5740+ - conduit-throttle < 0 # tried conduit-throttle-0.3.1.0, but its *library* requires the disabled package: throttle-io-stream
5741+ - confcrypt < 0 # tried confcrypt-0.2.3.3, but its *library* does not support: optparse-applicative-0.16.1.0
5742+ - confcrypt < 0 # tried confcrypt-0.2.3.3, but its *library* requires the disabled package: crypto-pubkey-openssh
5743+ - conferer-hspec < 0 # tried conferer-hspec-1.1.0.0, but its *library* does not support: hspec-core-2.8.5
5744+ - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* does not support: conferer-1.1.0.0
5745+ - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* requires the disabled package: snap-server
5746+ - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: base-4.15.1.0
5747+ - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: megaparsec-9.2.0
5748+ - constraint < 0 # tried constraint-0.1.4.0, but its *library* requires the disabled package: category
5749+ - country < 0 # tried country-0.2.1, but its *library* does not support: attoparsec-0.14.4
5750+ - country < 0 # tried country-0.2.1, but its *library* does not support: base-4.15.1.0
5751+ - cql-io < 0 # tried cql-io-1.1.1, but its *library* requires the disabled package: cql
5752+ - crypto-pubkey < 0 # tried crypto-pubkey-0.2.8, but its *library* requires the disabled package: crypto-numbers
5753+ - cryptocipher < 0 # tried cryptocipher-0.6.2, but its *library* requires the disabled package: cipher-blowfish
5754+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: QuickCheck-2.14.2
5755+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: attoparsec-0.14.4
5756+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: simple-vec3-0.6.0.1
5757+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: strict-0.4.0.1
5758+ - css-syntax < 0 # tried css-syntax-0.1.0.0, but its *library* does not support: base-4.15.1.0
5759+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: Cabal-3.4.1.0
5760+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: attoparsec-0.14.4
5761+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: base-4.15.1.0
5762+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: constraints-0.13.2
5763+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: cryptonite-0.29
5764+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: memory-0.16.0
5765+ - darcs < 0 # tried darcs-2.16.4, but its *library* requires the disabled package: regex-compat-tdfa
5766+ - data-accessor-template < 0 # tried data-accessor-template-0.2.1.16, but its *library* does not support: template-haskell-2.17.0.0
5767+ - data-compat < 0 # tried data-compat-0.1.0.3, but its *library* does not support: base-4.15.1.0
5768+ - data-tree-print < 0 # tried data-tree-print-0.1.0.2, but its *library* does not support: base-4.15.1.0
5769+ - decidable < 0 # tried decidable-0.3.0.0, but its *library* requires the disabled package: functor-products
5770+ - deepseq-instances < 0 # tried deepseq-instances-0.1.0.1, but its *library* does not support: base-4.15.1.0
5771+ - dhall-lsp-server < 0 # tried dhall-lsp-server-1.0.17, but its *library* requires the disabled package: haskell-lsp
5772+ - dhall-nix < 0 # tried dhall-nix-1.1.23, but its *library* requires the disabled package: hnix
5773+ - diagrams-builder < 0 # tried diagrams-builder-0.8.0.5, but its *library* requires the disabled package: haskell-src-exts-simple
5774+ - diagrams-cairo < 0 # tried diagrams-cairo-1.4.1.1, but its *library* requires the disabled package: statestack
5775+ - diagrams-canvas < 0 # tried diagrams-canvas-1.4.1, but its *library* requires the disabled package: blank-canvas
5776+ - diagrams-canvas < 0 # tried diagrams-canvas-1.4.1, but its *library* requires the disabled package: statestack
5777+ - diagrams-gtk < 0 # tried diagrams-gtk-1.4, but its *library* requires the disabled package: gtk
5778+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: base-4.15.1.0
5779+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: containers-0.6.4.1
5780+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: diagrams-core-1.5.0
5781+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: lens-5.0.1
5782+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: optparse-applicative-0.16.1.0
5783+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* requires the disabled package: statestack
5784+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* requires the disabled package: static-canvas
5785+ - diagrams-postscript < 0 # tried diagrams-postscript-1.5.1, but its *library* requires the disabled package: statestack
5786+ - dialogflow-fulfillment < 0 # tried dialogflow-fulfillment-0.1.1.4, but its *library* does not support: base-4.15.1.0
5787+ - dice < 0 # tried dice-0.1.0.1, but its *library* requires the disabled package: random-fu
5788+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *executable* does not support: criterion-1.5.12.0
5789+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: attoparsec-0.14.4
5790+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: base-4.15.1.0
5791+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: containers-0.6.4.1
5792+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: exceptions-0.10.4
5793+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: time-1.9.3
5794+ - direct-rocksdb < 0 # tried direct-rocksdb-0.0.3, but its *library* does not support: Cabal-3.4.1.0
5795+ - direct-rocksdb < 0 # tried direct-rocksdb-0.0.3, but its *library* requires the disabled package: cabal-toolkit
5796+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: containers-0.6.4.1
5797+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: hashable-1.3.5.0
5798+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: random-1.2.1
5799+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: stm-2.5.0.0
5800+ - distributed-process-lifted < 0 # tried distributed-process-lifted-0.3.0.1, but its *library* requires the disabled package: distributed-process
5801+ - distributed-process-monad-control < 0 # tried distributed-process-monad-control-0.5.1.3, but its *library* requires the disabled package: distributed-process
5802+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: containers-0.6.4.1
5803+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-3.1.2.7
5804+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-transport-tcp-0.8.0
5805+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* requires the disabled package: network-multicast
5806+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: network-3.1.2.7
5807+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: random-1.2.1
5808+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* requires the disabled package: rematch
5809+ - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: containers-0.6.4.1
5810+ - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: random-1.2.1
5811+ - diversity < 0 # tried diversity-0.8.1.0, but its *library* requires the disabled package: fasta
5812+ - docker < 0 # tried docker-0.6.0.6, but its *library* does not support: unliftio-core-0.2.0.1
5813+ - docker-build-cacher < 0 # tried docker-build-cacher-2.1.1, but its *library* does not support: language-docker-10.4.0
5814+ - dom-parser < 0 # tried dom-parser-3.1.0, but its *library* requires the disabled package: xml-lens
5815+ - drawille < 0 # tried drawille-0.1.2.0, but its *library* does not support: containers-0.6.4.1
5816+ - earcut < 0 # tried earcut-0.1.0.4, but its *library* does not support: base-4.15.1.0
5817+ - easytest < 0 # tried easytest-0.3, but its *library* does not support: hedgehog-1.0.5
5818+ - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: QuickCheck-2.14.2
5819+ - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: base-4.15.1.0
5820+ - effect-handlers < 0 # tried effect-handlers-0.1.0.8, but its *library* does not support: free-5.1.7
5821+ - egison < 0 # tried egison-4.1.3, but its *library* requires the disabled package: sweet-egison
5822+ - egison-pattern-src < 0 # tried egison-pattern-src-0.2.1.2, but its *library* does not support: parser-combinators-1.3.0
5823+ - egison-pattern-src-th-mode < 0 # tried egison-pattern-src-th-mode-0.2.1.2, but its *library* does not support: template-haskell-2.17.0.0
5824+ - ekg < 0 # tried ekg-0.4.0.15, but its *library* does not support: base-4.15.1.0
5825+ - ekg < 0 # tried ekg-0.4.0.15, but its *library* requires the disabled package: snap-server
5826+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: amazonka
5827+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: amazonka-core
5828+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: ekg-core
5829+ - ekg-core < 0 # tried ekg-core-0.1.1.7, but its *library* does not support: base-4.15.1.0
5830+ - ekg-core < 0 # tried ekg-core-0.1.1.7, but its *library* does not support: ghc-prim-0.7.0
5831+ - ekg-json < 0 # tried ekg-json-0.1.0.6, but its *library* does not support: base-4.15.1.0
5832+ - ekg-statsd < 0 # tried ekg-statsd-0.2.5.0, but its *library* does not support: base-4.15.1.0
5833+ - ekg-wai < 0 # tried ekg-wai-0.1.0.3, but its *library* does not support: time-1.9.3
5834+ - elm-street < 0 # tried elm-street-0.1.0.4, but its *library* does not support: base-4.15.1.0
5835+ - epub-metadata < 0 # tried epub-metadata-4.5, but its *library* requires the disabled package: regex-compat-tdfa
5836+ - euler-tour-tree < 0 # tried euler-tour-tree-0.1.1.0, but its *library* requires the disabled package: Unique
5837+ - event < 0 # tried event-0.1.4, but its *library* does not support: containers-0.6.4.1
5838+ - event < 0 # tried event-0.1.4, but its *library* does not support: semigroups-0.19.2
5839+ - eventful-dynamodb < 0 # tried eventful-dynamodb-0.2.0, but its *library* requires the disabled package: amazonka
5840+ - eventful-postgresql < 0 # tried eventful-postgresql-0.2.0, but its *library* requires the disabled package: eventful-sql-common
5841+ - eventful-sql-common < 0 # tried eventful-sql-common-0.2.0, but its *library* does not support: persistent-template-2.12.0.0
5842+ - eventful-sqlite < 0 # tried eventful-sqlite-0.2.0, but its *library* requires the disabled package: eventful-sql-common
5843+ - eventsource-geteventstore-store < 0 # tried eventsource-geteventstore-store-1.2.1, but its *library* requires the disabled package: eventsource-store-specs
5844+ - exception-hierarchy < 0 # tried exception-hierarchy-0.1.0.4, but its *library* does not support: template-haskell-2.17.0.0
5845+ - fasta < 0 # tried fasta-0.10.4.2, but its *library* requires the disabled package: pipes-text
5846+ - fib < 0 # tried fib-0.1.0.1, but its *library* requires the disabled package: base-noprelude
5847+ - filecache < 0 # tried filecache-0.4.1, but its *library* requires the disabled package: strict-base-types
5848+ - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: BiobaseNewick
5849+ - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: hierarchical-clustering
5850+ - foldable1 < 0 # tried foldable1-0.1.0.0, but its *library* requires the disabled package: util
5851+ - friday < 0 # tried friday-0.2.3.1, but its *library* does not support: containers-0.6.4.1
5852+ - friday < 0 # tried friday-0.2.3.1, but its *library* requires the disabled package: ratio-int
5853+ - friday-juicypixels < 0 # tried friday-juicypixels-0.1.2.4, but its *library* requires the disabled package: friday
5854+ - fswatch < 0 # tried fswatch-0.1.0.6, but its *library* does not support: base-4.15.1.0
5855+ - fswatch < 0 # tried fswatch-0.1.0.6, but its *library* does not support: haskeline-0.8.2
5856+ - galois-field < 0 # tried galois-field-1.0.2, but its *library* does not support: poly-0.5.0.0
5857+ - galois-field < 0 # tried galois-field-1.0.2, but its *library* does not support: protolude-0.3.0
5858+ - gdax < 0 # tried gdax-0.6.0.0, but its *library* requires the disabled package: regex-tdfa-text
5859+ - generic-xmlpickler < 0 # tried generic-xmlpickler-0.1.0.6, but its *library* does not support: base-4.15.1.0
5860+ - generic-xmlpickler < 0 # tried generic-xmlpickler-0.1.0.6, but its *library* does not support: generic-deriving-1.14.1
5861+ - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: dhall-1.40.2
5862+ - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: ghc-9.0.2
5863+ - ghc-syb-utils < 0 # tried ghc-syb-utils-0.3.0.0, but its *library* does not support: ghc-9.0.2
5864+ - ghcjs-dom < 0 # tried ghcjs-dom-0.9.5.0, but its *library* requires the disabled package: ghcjs-dom-jsaddle
5865+ - gi-gsk < 0 # tried gi-gsk-4.0.4, but its *library* does not support: gi-gdk-3.0.25
5866+ - gi-webkit2 < 0 # tried gi-webkit2-4.0.28, but its *library* requires the disabled package: gi-soup
5867+ - gingersnap < 0 # tried gingersnap-0.3.1.0, but its *library* requires the disabled package: snap-core
5868+ - gio < 0 # tried gio-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5869+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: IfElse
5870+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: aws
5871+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: bloomfilter
5872+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: fdo-notify
5873+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: git-lfs
5874+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: http-client-restricted
5875+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: network-multicast
5876+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: sandi
5877+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: torrent
5878+ - git-vogue < 0 # tried git-vogue-0.3.0.2, but its *executable* requires the disabled package: stylish-haskell
5879+ - github-webhook-handler < 0 # tried github-webhook-handler-0.0.8, but its *library* does not support: base-4.15.1.0
5880+ - github-webhook-handler-snap < 0 # tried github-webhook-handler-snap-0.0.7, but its *library* does not support: base-4.15.1.0
5881+ - gitlib-libgit2 < 0 # tried gitlib-libgit2-3.1.2.1, but its *library* requires the disabled package: gitlib
5882+ - glaze < 0 # tried glaze-0.3.0.1, but its *library* does not support: lens-5.0.1
5883+ - glazier-react < 0 # tried glazier-react-1.0.0.0, but its *library* requires the disabled package: data-diverse-lens
5884+ - glazier-react < 0 # tried glazier-react-1.0.0.0, but its *library* requires the disabled package: glazier
5885+ - glazier-react-widget < 0 # tried glazier-react-widget-1.0.0.0, but its *library* requires the disabled package: data-diverse-lens
5886+ - glazier-react-widget < 0 # tried glazier-react-widget-1.0.0.0, but its *library* requires the disabled package: glazier
5887+ - glib < 0 # tried glib-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5888+ - gloss-accelerate < 0 # tried gloss-accelerate-2.1.0.0, but its *library* requires the disabled package: accelerate
5889+ - gloss-accelerate < 0 # tried gloss-accelerate-2.1.0.0, but its *library* requires the disabled package: linear-accelerate
5890+ - gloss-examples < 0 # tried gloss-examples-1.13.0.3, but its *executable* does not support: random-1.2.1
5891+ - gloss-raster-accelerate < 0 # tried gloss-raster-accelerate-2.1.0.0, but its *library* requires the disabled package: accelerate
5892+ - gogol < 0 # tried gogol-0.5.0, but its *library* requires the disabled package: gogol-core
5893+ - gogol-adexchange-buyer < 0 # tried gogol-adexchange-buyer-0.5.0, but its *library* requires the disabled package: gogol-core
5894+ - gogol-adexchange-seller < 0 # tried gogol-adexchange-seller-0.5.0, but its *library* requires the disabled package: gogol-core
5895+ - gogol-admin-datatransfer < 0 # tried gogol-admin-datatransfer-0.5.0, but its *library* requires the disabled package: gogol-core
5896+ - gogol-admin-directory < 0 # tried gogol-admin-directory-0.5.0, but its *library* requires the disabled package: gogol-core
5897+ - gogol-admin-emailmigration < 0 # tried gogol-admin-emailmigration-0.3.0, but its *library* requires the disabled package: gogol-core
5898+ - gogol-admin-reports < 0 # tried gogol-admin-reports-0.5.0, but its *library* requires the disabled package: gogol-core
5899+ - gogol-adsense < 0 # tried gogol-adsense-0.5.0, but its *library* requires the disabled package: gogol-core
5900+ - gogol-adsense-host < 0 # tried gogol-adsense-host-0.5.0, but its *library* requires the disabled package: gogol-core
5901+ - gogol-affiliates < 0 # tried gogol-affiliates-0.3.0, but its *library* requires the disabled package: gogol-core
5902+ - gogol-analytics < 0 # tried gogol-analytics-0.5.0, but its *library* requires the disabled package: gogol-core
5903+ - gogol-android-enterprise < 0 # tried gogol-android-enterprise-0.5.0, but its *library* requires the disabled package: gogol-core
5904+ - gogol-android-publisher < 0 # tried gogol-android-publisher-0.5.0, but its *library* requires the disabled package: gogol-core
5905+ - gogol-appengine < 0 # tried gogol-appengine-0.5.0, but its *library* requires the disabled package: gogol-core
5906+ - gogol-apps-activity < 0 # tried gogol-apps-activity-0.5.0, but its *library* requires the disabled package: gogol-core
5907+ - gogol-apps-calendar < 0 # tried gogol-apps-calendar-0.5.0, but its *library* requires the disabled package: gogol-core
5908+ - gogol-apps-licensing < 0 # tried gogol-apps-licensing-0.5.0, but its *library* requires the disabled package: gogol-core
5909+ - gogol-apps-reseller < 0 # tried gogol-apps-reseller-0.5.0, but its *library* requires the disabled package: gogol-core
5910+ - gogol-apps-tasks < 0 # tried gogol-apps-tasks-0.5.0, but its *library* requires the disabled package: gogol-core
5911+ - gogol-appstate < 0 # tried gogol-appstate-0.5.0, but its *library* requires the disabled package: gogol-core
5912+ - gogol-autoscaler < 0 # tried gogol-autoscaler-0.3.0, but its *library* requires the disabled package: gogol-core
5913+ - gogol-bigquery < 0 # tried gogol-bigquery-0.5.0, but its *library* requires the disabled package: gogol-core
5914+ - gogol-billing < 0 # tried gogol-billing-0.5.0, but its *library* requires the disabled package: gogol-core
5915+ - gogol-blogger < 0 # tried gogol-blogger-0.5.0, but its *library* requires the disabled package: gogol-core
5916+ - gogol-books < 0 # tried gogol-books-0.5.0, but its *library* requires the disabled package: gogol-core
5917+ - gogol-civicinfo < 0 # tried gogol-civicinfo-0.5.0, but its *library* requires the disabled package: gogol-core
5918+ - gogol-classroom < 0 # tried gogol-classroom-0.5.0, but its *library* requires the disabled package: gogol-core
5919+ - gogol-cloudmonitoring < 0 # tried gogol-cloudmonitoring-0.3.0, but its *library* requires the disabled package: gogol-core
5920+ - gogol-cloudtrace < 0 # tried gogol-cloudtrace-0.5.0, but its *library* requires the disabled package: gogol-core
5921+ - gogol-compute < 0 # tried gogol-compute-0.5.0, but its *library* requires the disabled package: gogol-core
5922+ - gogol-container < 0 # tried gogol-container-0.5.0, but its *library* requires the disabled package: gogol-core
5923+ - gogol-customsearch < 0 # tried gogol-customsearch-0.5.0, but its *library* requires the disabled package: gogol-core
5924+ - gogol-dataflow < 0 # tried gogol-dataflow-0.5.0, but its *library* requires the disabled package: gogol-core
5925+ - gogol-dataproc < 0 # tried gogol-dataproc-0.5.0, but its *library* requires the disabled package: gogol-core
5926+ - gogol-datastore < 0 # tried gogol-datastore-0.5.0, but its *library* requires the disabled package: gogol-core
5927+ - gogol-debugger < 0 # tried gogol-debugger-0.5.0, but its *library* requires the disabled package: gogol-core
5928+ - gogol-deploymentmanager < 0 # tried gogol-deploymentmanager-0.5.0, but its *library* requires the disabled package: gogol-core
5929+ - gogol-dfareporting < 0 # tried gogol-dfareporting-0.5.0, but its *library* requires the disabled package: gogol-core
5930+ - gogol-discovery < 0 # tried gogol-discovery-0.5.0, but its *library* requires the disabled package: gogol-core
5931+ - gogol-dns < 0 # tried gogol-dns-0.5.0, but its *library* requires the disabled package: gogol-core
5932+ - gogol-doubleclick-bids < 0 # tried gogol-doubleclick-bids-0.5.0, but its *library* requires the disabled package: gogol-core
5933+ - gogol-doubleclick-search < 0 # tried gogol-doubleclick-search-0.5.0, but its *library* requires the disabled package: gogol-core
5934+ - gogol-drive < 0 # tried gogol-drive-0.5.0, but its *library* requires the disabled package: gogol-core
5935+ - gogol-firebase-rules < 0 # tried gogol-firebase-rules-0.5.0, but its *library* requires the disabled package: gogol-core
5936+ - gogol-fitness < 0 # tried gogol-fitness-0.5.0, but its *library* requires the disabled package: gogol-core
5937+ - gogol-fonts < 0 # tried gogol-fonts-0.5.0, but its *library* requires the disabled package: gogol-core
5938+ - gogol-freebasesearch < 0 # tried gogol-freebasesearch-0.3.0, but its *library* requires the disabled package: gogol-core
5939+ - gogol-fusiontables < 0 # tried gogol-fusiontables-0.5.0, but its *library* requires the disabled package: gogol-core
5940+ - gogol-games < 0 # tried gogol-games-0.5.0, but its *library* requires the disabled package: gogol-core
5941+ - gogol-games-configuration < 0 # tried gogol-games-configuration-0.5.0, but its *library* requires the disabled package: gogol-core
5942+ - gogol-games-management < 0 # tried gogol-games-management-0.5.0, but its *library* requires the disabled package: gogol-core
5943+ - gogol-genomics < 0 # tried gogol-genomics-0.5.0, but its *library* requires the disabled package: gogol-core
5944+ - gogol-gmail < 0 # tried gogol-gmail-0.5.0, but its *library* requires the disabled package: gogol-core
5945+ - gogol-groups-migration < 0 # tried gogol-groups-migration-0.5.0, but its *library* requires the disabled package: gogol-core
5946+ - gogol-groups-settings < 0 # tried gogol-groups-settings-0.5.0, but its *library* requires the disabled package: gogol-core
5947+ - gogol-identity-toolkit < 0 # tried gogol-identity-toolkit-0.5.0, but its *library* requires the disabled package: gogol-core
5948+ - gogol-kgsearch < 0 # tried gogol-kgsearch-0.5.0, but its *library* requires the disabled package: gogol-core
5949+ - gogol-latencytest < 0 # tried gogol-latencytest-0.3.0, but its *library* requires the disabled package: gogol-core
5950+ - gogol-logging < 0 # tried gogol-logging-0.5.0, but its *library* requires the disabled package: gogol-core
5951+ - gogol-maps-coordinate < 0 # tried gogol-maps-coordinate-0.3.0, but its *library* requires the disabled package: gogol-core
5952+ - gogol-maps-engine < 0 # tried gogol-maps-engine-0.3.0, but its *library* requires the disabled package: gogol-core
5953+ - gogol-mirror < 0 # tried gogol-mirror-0.5.0, but its *library* requires the disabled package: gogol-core
5954+ - gogol-monitoring < 0 # tried gogol-monitoring-0.5.0, but its *library* requires the disabled package: gogol-core
5955+ - gogol-oauth2 < 0 # tried gogol-oauth2-0.5.0, but its *library* requires the disabled package: gogol-core
5956+ - gogol-pagespeed < 0 # tried gogol-pagespeed-0.5.0, but its *library* requires the disabled package: gogol-core
5957+ - gogol-partners < 0 # tried gogol-partners-0.5.0, but its *library* requires the disabled package: gogol-core
5958+ - gogol-people < 0 # tried gogol-people-0.5.0, but its *library* requires the disabled package: gogol-core
5959+ - gogol-play-moviespartner < 0 # tried gogol-play-moviespartner-0.5.0, but its *library* requires the disabled package: gogol-core
5960+ - gogol-plus < 0 # tried gogol-plus-0.5.0, but its *library* requires the disabled package: gogol-core
5961+ - gogol-plus-domains < 0 # tried gogol-plus-domains-0.5.0, but its *library* requires the disabled package: gogol-core
5962+ - gogol-prediction < 0 # tried gogol-prediction-0.5.0, but its *library* requires the disabled package: gogol-core
5963+ - gogol-proximitybeacon < 0 # tried gogol-proximitybeacon-0.5.0, but its *library* requires the disabled package: gogol-core
5964+ - gogol-pubsub < 0 # tried gogol-pubsub-0.5.0, but its *library* requires the disabled package: gogol-core
5965+ - gogol-qpxexpress < 0 # tried gogol-qpxexpress-0.5.0, but its *library* requires the disabled package: gogol-core
5966+ - gogol-replicapool < 0 # tried gogol-replicapool-0.5.0, but its *library* requires the disabled package: gogol-core
5967+ - gogol-replicapool-updater < 0 # tried gogol-replicapool-updater-0.5.0, but its *library* requires the disabled package: gogol-core
5968+ - gogol-resourcemanager < 0 # tried gogol-resourcemanager-0.5.0, but its *library* requires the disabled package: gogol-core
5969+ - gogol-resourceviews < 0 # tried gogol-resourceviews-0.3.0, but its *library* requires the disabled package: gogol-core
5970+ - gogol-script < 0 # tried gogol-script-0.5.0, but its *library* requires the disabled package: gogol-core
5971+ - gogol-sheets < 0 # tried gogol-sheets-0.5.0, but its *library* requires the disabled package: gogol-core
5972+ - gogol-shopping-content < 0 # tried gogol-shopping-content-0.5.0, but its *library* requires the disabled package: gogol-core
5973+ - gogol-siteverification < 0 # tried gogol-siteverification-0.5.0, but its *library* requires the disabled package: gogol-core
5974+ - gogol-spectrum < 0 # tried gogol-spectrum-0.5.0, but its *library* requires the disabled package: gogol-core
5975+ - gogol-sqladmin < 0 # tried gogol-sqladmin-0.5.0, but its *library* requires the disabled package: gogol-core
5976+ - gogol-storage < 0 # tried gogol-storage-0.5.0, but its *library* requires the disabled package: gogol-core
5977+ - gogol-storage-transfer < 0 # tried gogol-storage-transfer-0.5.0, but its *library* requires the disabled package: gogol-core
5978+ - gogol-tagmanager < 0 # tried gogol-tagmanager-0.5.0, but its *library* requires the disabled package: gogol-core
5979+ - gogol-taskqueue < 0 # tried gogol-taskqueue-0.3.0, but its *library* requires the disabled package: gogol-core
5980+ - gogol-translate < 0 # tried gogol-translate-0.5.0, but its *library* requires the disabled package: gogol-core
5981+ - gogol-urlshortener < 0 # tried gogol-urlshortener-0.5.0, but its *library* requires the disabled package: gogol-core
5982+ - gogol-useraccounts < 0 # tried gogol-useraccounts-0.3.0, but its *library* requires the disabled package: gogol-core
5983+ - gogol-vision < 0 # tried gogol-vision-0.5.0, but its *library* requires the disabled package: gogol-core
5984+ - gogol-webmaster-tools < 0 # tried gogol-webmaster-tools-0.5.0, but its *library* requires the disabled package: gogol-core
5985+ - gogol-youtube < 0 # tried gogol-youtube-0.5.0, but its *library* requires the disabled package: gogol-core
5986+ - gogol-youtube-analytics < 0 # tried gogol-youtube-analytics-0.5.0, but its *library* requires the disabled package: gogol-core
5987+ - gogol-youtube-reporting < 0 # tried gogol-youtube-reporting-0.5.0, but its *library* requires the disabled package: gogol-core
5988+ - google-cloud < 0 # tried google-cloud-0.0.4, but its *library* does not support: base-4.15.1.0
5989+ - google-oauth2-jwt < 0 # tried google-oauth2-jwt-0.3.3, but its *library* does not support: base64-bytestring-1.2.1.0
5990+ - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-api-data-0.4.3
5991+ - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-client-0.7.10
5992+ - graphql-client < 0 # tried graphql-client-1.1.1, but its *executable* does not support: path-0.9.2
5993+ - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-0.12.0
5994+ - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-th-0.12
5995+ - groundhog-mysql < 0 # tried groundhog-mysql-0.12, but its *library* does not support: mysql-0.2.1
5996+ - grouped-list < 0 # tried grouped-list-0.2.2.1, but its *library* does not support: base-4.15.1.0
5997+ - gtk3 < 0 # tried gtk3-0.15.6, but its *library* does not support: Cabal-3.4.1.0
5998+ - hOpenPGP < 0 # tried hOpenPGP-2.9.7, but its *library* requires the disabled package: ixset-typed
5999+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: http-client-0.7.10
6000+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-0.18.3
6001+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-client-0.18.3
6002+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* does not support: deepseq-1.4.5.0
6003+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: colourista
6004+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: spdx
6005+ - hapistrano < 0 # tried hapistrano-0.4.3.0, but its *library* does not support: path-0.9.2
6006+ - happstack-hsp < 0 # tried happstack-hsp-7.3.7.5, but its *library* requires the disabled package: harp
6007+ - haskell-lsp < 0 # tried haskell-lsp-0.24.0.0, but its *executable* does not support: base-4.15.1.0
6008+ - haskell-lsp-client < 0 # tried haskell-lsp-client-1.0.0.1, but its *library* requires the disabled package: haskell-lsp
6009+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: base-4.15.1.0
6010+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: ghc-9.0.2
6011+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6012+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* requires the disabled package: references
6013+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: base-4.15.1.0
6014+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: ghc-9.0.2
6015+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: ghc-boot-th-9.0.2
6016+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6017+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* requires the disabled package: references
6018+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *executable* does not support: Glob-0.10.2
6019+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *executable* does not support: optparse-applicative-0.16.1.0
6020+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: base-4.15.1.0
6021+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: ghc-9.0.2
6022+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: strict-0.4.0.1
6023+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6024+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* requires the disabled package: references
6025+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: Cabal-3.4.1.0
6026+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: Diff-0.4.1
6027+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6028+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: base-4.15.1.0
6029+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: ghc-9.0.2
6030+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: network-3.1.2.7
6031+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: optparse-applicative-0.16.1.0
6032+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: strict-0.4.0.1
6033+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6034+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6035+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* requires the disabled package: references
6036+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: base-4.15.1.0
6037+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: ghc-9.0.2
6038+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6039+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6040+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* requires the disabled package: references
6041+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6042+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: base-4.15.1.0
6043+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: ghc-9.0.2
6044+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: warp-3.3.18
6045+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6046+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* requires the disabled package: references
6047+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* does not support: base-4.15.1.0
6048+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* does not support: ghc-9.0.2
6049+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* requires the disabled package: references
6050+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: Cabal-3.4.1.0
6051+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6052+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: base-4.15.1.0
6053+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: ghc-9.0.2
6054+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6055+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* requires the disabled package: references
6056+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* does not support: base-4.15.1.0
6057+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* does not support: ghc-9.0.2
6058+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* requires the disabled package: references
6059+ - haskey < 0 # tried haskey-0.3.1.0, but its *library* does not support: stm-containers-1.2
6060+ - haskey-mtl < 0 # tried haskey-mtl-0.3.1.0, but its *library* does not support: monad-control-1.0.3.1
6061+ - haskoin-store < 0 # tried haskoin-store-0.64.18, but its *library* requires the disabled package: haskoin-node
6062+ - haskoin-store < 0 # tried haskoin-store-0.64.18, but its *library* requires the disabled package: haskoin-store-data
6063+ - hasmin < 0 # tried hasmin-1.0.3, but its *executable* does not support: optparse-applicative-0.16.1.0
6064+ - hasmin < 0 # tried hasmin-1.0.3, but its *library* does not support: attoparsec-0.14.4
6065+ - haxl-amazonka < 0 # tried haxl-amazonka-0.1.1, but its *library* requires the disabled package: haxl
6066+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: aeson-1.5.6.0
6067+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: attoparsec-0.14.4
6068+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: base-4.15.1.0
6069+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: dlist-1.0
6070+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: ansi-terminal-0.11.1
6071+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: brick-0.66.1
6072+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: optparse-applicative-0.16.1.0
6073+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: semigroups-0.19.2
6074+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: vty-5.33
6075+ - hgeometry < 0 # tried hgeometry-0.13, but its *library* requires the disabled package: vector-circular
6076+ - hgeometry-combinatorial < 0 # tried hgeometry-combinatorial-0.13, but its *library* requires the disabled package: vector-circular
6077+ - hgrev < 0 # tried hgrev-0.2.6, but its *library* does not support: base-4.15.1.0
6078+ - hgrev < 0 # tried hgrev-0.2.6, but its *library* does not support: template-haskell-2.17.0.0
6079+ - hidden-char < 0 # tried hidden-char-0.1.0.2, but its *library* does not support: base-4.15.1.0
6080+ - hierarchy < 0 # tried hierarchy-1.0.2, but its *library* does not support: base-4.15.1.0
6081+ - highjson-swagger < 0 # tried highjson-swagger-0.5.0.0, but its *library* requires the disabled package: swagger2
6082+ - highjson-th < 0 # tried highjson-th-0.5.0.0, but its *library* requires the disabled package: swagger2
6083+ - hip < 0 # tried hip-1.5.6.0, but its *library* requires the disabled package: Chart-diagrams
6084+ - hit < 0 # tried hit-0.7.0, but its *executable* requires the disabled package: git
6085+ - hmatrix-backprop < 0 # tried hmatrix-backprop-0.1.3.0, but its *library* requires the disabled package: backprop
6086+ - hmpfr < 0 # tried hmpfr-0.4.4, but its *library* does not support: integer-gmp-1.1
6087+ - holy-project < 0 # tried holy-project-0.2.0.1, but its *library* requires the disabled package: hastache
6088+ - hopenpgp-tools < 0 # tried hopenpgp-tools-0.23.6, but its *executable* requires the disabled package: ixset-typed
6089+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: aeson-1.5.6.0
6090+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: containers-0.6.4.1
6091+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: retry-0.9.0.0
6092+ - hpc-lcov < 0 # tried hpc-lcov-1.0.1, but its *executable* does not support: path-0.9.2
6093+ - hpio < 0 # tried hpio-0.9.0.7, but its *executable* does not support: optparse-applicative-0.16.1.0
6094+ - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: QuickCheck-2.14.2
6095+ - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: protolude-0.3.0
6096+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: containers-0.6.4.1
6097+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: hmatrix-0.20.2
6098+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: statistics-0.16.0.1
6099+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: time-1.9.3
6100+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: vector-algorithms-0.8.0.4
6101+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* requires the disabled package: hmatrix-special
6102+ - hquantlib-time < 0 # tried hquantlib-time-0.0.4.1, but its *library* does not support: time-1.9.3
6103+ - hsb2hs < 0 # tried hsb2hs-0.3.1, but its *executable* requires the disabled package: preprocessor-tools
6104+ - hschema-aeson < 0 # tried hschema-aeson-0.0.1.1, but its *library* requires the disabled package: hschema
6105+ - hschema-prettyprinter < 0 # tried hschema-prettyprinter-0.0.1.1, but its *library* requires the disabled package: hschema
6106+ - hschema-quickcheck < 0 # tried hschema-quickcheck-0.0.1.1, but its *library* requires the disabled package: hschema
6107+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: attoparsec-0.14.4
6108+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-boot-9.0.2
6109+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6110+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: hlint-3.3.6
6111+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: http-client-0.7.10
6112+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: lens-5.0.1
6113+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: optparse-applicative-0.16.1.0
6114+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: template-haskell-2.17.0.0
6115+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* requires the disabled package: text-region
6116+ - hspec-tables < 0 # tried hspec-tables-0.0.1, but its *library* does not support: base-4.15.1.0
6117+ - hspec-tables < 0 # tried hspec-tables-0.0.1, but its *library* does not support: hspec-core-2.8.5
6118+ - hspec-wai-json < 0 # tried hspec-wai-json-0.11.0, but its *library* does not support: hspec-wai-0.11.1
6119+ - hspec-webdriver < 0 # tried hspec-webdriver-1.2.0, but its *library* requires the disabled package: webdriver
6120+ - hsx2hs < 0 # tried hsx2hs-0.14.1.8, but its *library* does not support: template-haskell-2.17.0.0
6121+ - hw-hspec-hedgehog < 0 # tried hw-hspec-hedgehog-0.1.1.0, but its *library* does not support: hspec-2.8.5
6122+ - hyraxAbif < 0 # tried hyraxAbif-0.2.3.27, but its *library* does not support: text-1.2.5.0
6123+ - idris < 0 # tried idris-1.3.4, but its *library* does not support: Cabal-3.4.1.0
6124+ - idris < 0 # tried idris-1.3.4, but its *library* does not support: network-3.1.2.7
6125+ - importify < 0 # tried importify-1.0.1, but its *library* requires the disabled package: hse-cpp
6126+ - indentation-core < 0 # tried indentation-core-0.0.0.2, but its *library* does not support: base-4.15.1.0
6127+ - indentation-parsec < 0 # tried indentation-parsec-0.0.0.2, but its *library* does not support: base-4.15.1.0
6128+ - inline-java < 0 # tried inline-java-0.10.0, but its *library* does not support: ghc-9.0.2
6129+ - inline-java < 0 # tried inline-java-0.10.0, but its *library* requires the disabled package: jni
6130+ - inline-r < 0 # tried inline-r-0.10.5, but its *library* does not support: singletons-3.0.1
6131+ - interpolatedstring-qq2 < 0 # tried interpolatedstring-qq2-0.1.0.0, but its *library* does not support: template-haskell-2.17.0.0
6132+ - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: attoparsec-0.14.4
6133+ - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: base-4.15.1.0
6134+ - ipa < 0 # tried ipa-0.3.1.1, but its *library* does not support: unicode-transforms-0.4.0
6135+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: attoparsec-0.14.4
6136+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: network-3.1.2.7
6137+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: path-0.9.2
6138+ - it-has < 0 # tried it-has-0.2.0.0, but its *library* does not support: generic-lens-2.2.0.0
6139+ - ixset < 0 # tried ixset-1.1.1.1, but its *library* requires the disabled package: syb-with-class
6140+ - ixset-typed < 0 # tried ixset-typed-0.5, but its *library* does not support: template-haskell-2.17.0.0
6141+ - ixset-typed-binary-instance < 0 # tried ixset-typed-binary-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
6142+ - ixset-typed-conversions < 0 # tried ixset-typed-conversions-0.1.2.0, but its *library* requires the disabled package: ixset-typed
6143+ - ixset-typed-hashable-instance < 0 # tried ixset-typed-hashable-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
6144+ - jmacro-rpc-snap < 0 # tried jmacro-rpc-snap-0.3, but its *library* requires the disabled package: snap-core
6145+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: attoparsec-0.14.4
6146+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: base64-bytestring-1.2.1.0
6147+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: ref-tf-0.5.0.1
6148+ - json-alt < 0 # tried json-alt-1.0.0, but its *library* does not support: aeson-1.5.6.0
6149+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: aeson-1.5.6.0
6150+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: lens-5.0.1
6151+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: smallcheck-1.2.1
6152+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* requires the disabled package: run-haskell-module
6153+ - json-rpc-client < 0 # tried json-rpc-client-0.2.5.0, but its *library* does not support: aeson-1.5.6.0
6154+ - json-rpc-client < 0 # tried json-rpc-client-0.2.5.0, but its *library* does not support: base-4.15.1.0
6155+ - json-rpc-server < 0 # tried json-rpc-server-0.2.6.0, but its *library* does not support: base-4.15.1.0
6156+ - jvm < 0 # tried jvm-0.6.0, but its *library* requires the disabled package: distributed-closure
6157+ - jvm < 0 # tried jvm-0.6.0, but its *library* requires the disabled package: jni
6158+ - jvm-batching < 0 # tried jvm-batching-0.2.0, but its *library* requires the disabled package: distributed-closure
6159+ - jvm-batching < 0 # tried jvm-batching-0.2.0, but its *library* requires the disabled package: jni
6160+ - jvm-streaming < 0 # tried jvm-streaming-0.4.0, but its *library* requires the disabled package: distributed-closure
6161+ - jvm-streaming < 0 # tried jvm-streaming-0.4.0, but its *library* requires the disabled package: jni
6162+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: aeson-1.5.6.0
6163+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: async-2.2.4
6164+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: katip-0.8.7.0
6165+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: rollbar-hs-0.3.1.0
6166+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: time-1.9.3
6167+ - katip-scalyr-scribe < 0 # tried katip-scalyr-scribe-0.1.0.1, but its *library* does not support: aeson-1.5.6.0
6168+ - katip-scalyr-scribe < 0 # tried katip-scalyr-scribe-0.1.0.1, but its *library* does not support: katip-0.8.7.0
6169+ - kraken < 0 # tried kraken-0.1.0, but its *library* does not support: base-4.15.1.0
6170+ - lambdabot-core < 0 # tried lambdabot-core-5.3.0.2, but its *library* requires the disabled package: random-fu
6171+ - lambdabot-irc-plugins < 0 # tried lambdabot-irc-plugins-5.3.0.2, but its *library* requires the disabled package: lambdabot-core
6172+ - language-haskell-extract < 0 # tried language-haskell-extract-0.2.4, but its *library* does not support: template-haskell-2.17.0.0
6173+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: base16-bytestring-1.0.2.0
6174+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: formatting-7.1.3
6175+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: lens-5.0.1
6176+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: megaparsec-9.2.0
6177+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: memory-0.16.0
6178+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: servant-0.18.3
6179+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: servant-client-0.18.3
6180+ - large-hashable < 0 # tried large-hashable-0.1.0.4, but its *library* does not support: template-haskell-2.17.0.0
6181+ - lens-accelerate < 0 # tried lens-accelerate-0.3.0.0, but its *library* does not support: lens-5.0.1
6182+ - lens-datetime < 0 # tried lens-datetime-0.3, but its *library* does not support: lens-5.0.1
6183+ - lens-simple < 0 # tried lens-simple-0.1.0.9, but its *library* does not support: lens-family-2.1.1
6184+ - lens-simple < 0 # tried lens-simple-0.1.0.9, but its *library* does not support: lens-family-core-2.1.0
6185+ - lenz < 0 # tried lenz-0.4.2.0, but its *library* requires the disabled package: hs-functors
6186+ - libinfluxdb < 0 # tried libinfluxdb-0.0.4, but its *library* does not support: base-4.15.1.0
6187+ - libjwt-typed < 0 # tried libjwt-typed-0.2, but its *library* does not support: base-4.15.1.0
6188+ - libjwt-typed < 0 # tried libjwt-typed-0.2, but its *library* does not support: text-1.2.5.0
6189+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: ekg
6190+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: ekg-core
6191+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: protolude
6192+ - licensor < 0 # tried licensor-0.5.0, but its *library* does not support: Cabal-3.4.1.0
6193+ - licensor < 0 # tried licensor-0.5.0, but its *library* does not support: base-4.15.1.0
6194+ - linear-accelerate < 0 # tried linear-accelerate-0.7.0.0, but its *library* does not support: lens-5.0.1
6195+ - linked-list-with-iterator < 0 # tried linked-list-with-iterator-0.1.1.0, but its *library* does not support: containers-0.6.4.1
6196+ - liquid-fixpoint < 0 # tried liquid-fixpoint-8.10.7, but its *library* does not support: megaparsec-9.2.0
6197+ - liquid-fixpoint < 0 # tried liquid-fixpoint-8.10.7, but its *library* requires the disabled package: rest-rewrite
6198+ - list-witnesses < 0 # tried list-witnesses-0.1.3.2, but its *library* requires the disabled package: functor-products
6199+ - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log
6200+ - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log-core
6201+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: aeson-1.5.6.0
6202+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: o-clock-1.2.1
6203+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: universum-1.7.2
6204+ - logger-thread < 0 # tried logger-thread-0.1.0.2, but its *library* requires the disabled package: protolude
6205+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* does not support: base-4.15.1.0
6206+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* does not support: prettyprinter-1.7.1
6207+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* requires the disabled package: logging-effect
6208+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* does not support: base-4.15.1.0
6209+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* does not support: prettyprinter-1.7.1
6210+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* requires the disabled package: logging-effect
6211+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: base-4.15.1.0
6212+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: prettyprinter-1.7.1
6213+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* requires the disabled package: logging-effect
6214+ - loopbreaker < 0 # tried loopbreaker-0.1.1.1, but its *library* does not support: ghc-9.0.2
6215+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: network-3.1.2.7
6216+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-0.18.3
6217+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-client-0.18.3
6218+ - machines-directory < 0 # tried machines-directory-7.0.0.0, but its *library* requires the disabled package: machines-io
6219+ - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-core
6220+ - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-wai
6221+ - makefile < 0 # tried makefile-1.1.0.0, but its *library* does not support: attoparsec-0.14.4
6222+ - mallard < 0 # tried mallard-0.6.1.1, but its *library* does not support: megaparsec-9.2.0
6223+ - mallard < 0 # tried mallard-0.6.1.1, but its *library* requires the disabled package: Interpolation
6224+ - map-syntax < 0 # tried map-syntax-0.3, but its *library* does not support: base-4.15.1.0
6225+ - markup < 0 # tried markup-4.2.0, but its *library* requires the disabled package: attoparsec-uri
6226+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: aeson-1.5.6.0
6227+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: http-client-0.7.10
6228+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: lens-5.0.1
6229+ - marvin < 0 # tried marvin-0.2.5, but its *library* requires the disabled package: marvin-interpolate
6230+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: extra-1.7.10
6231+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: formatting-7.1.3
6232+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: http-client-0.7.10
6233+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: optparse-applicative-0.16.1.0
6234+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: scalpel-core-0.6.2
6235+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: time-1.9.3
6236+ - menshen < 0 # tried menshen-0.0.3, but its *library* does not support: regex-tdfa-1.3.1.1
6237+ - merkle-tree < 0 # tried merkle-tree-0.1.1, but its *library* requires the disabled package: protolude
6238+ - messagepack-rpc < 0 # tried messagepack-rpc-0.5.1, but its *library* does not support: containers-0.6.4.1
6239+ - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *executable* requires the disabled package: aws-lambda-haskell-runtime-wai
6240+ - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *library* requires the disabled package: xml-lens
6241+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.10
6242+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-media-0.8.0.0
6243+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-0.18.3
6244+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-client-0.18.3
6245+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: time-1.9.3
6246+ - midi-music-box < 0 # tried midi-music-box-0.0.1.2, but its *executable* requires the disabled package: diagrams-postscript
6247+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: lens-5.0.1
6248+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.7
6249+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: random-1.2.1
6250+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: semigroups-0.19.2
6251+ - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src
6252+ - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src-th-mode
6253+ - minio-hs < 0 # tried minio-hs-1.5.3, but its *library* requires the disabled package: protolude
6254+ - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: knob
6255+ - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: random-fu
6256+ - miso < 0 # tried miso-1.8.1.0, but its *library* requires the disabled package: jsaddle
6257+ - modify-fasta < 0 # tried modify-fasta-0.8.3.0, but its *executable* requires the disabled package: pipes-text
6258+ - mole < 0 # tried mole-0.0.7, but its *executable* does not support: base-4.15.1.0
6259+ - mole < 0 # tried mole-0.0.7, but its *executable* requires the disabled package: snap-server
6260+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: base-4.15.1.0
6261+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: mwc-random-0.15.0.2
6262+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: statistics-0.16.0.1
6263+ - monad-metrics < 0 # tried monad-metrics-0.2.2.0, but its *library* requires the disabled package: ekg-core
6264+ - monad-mock < 0 # tried monad-mock-0.2.0.0, but its *library* does not support: template-haskell-2.17.0.0
6265+ - monad-unlift-ref < 0 # tried monad-unlift-ref-0.2.1, but its *library* requires the disabled package: monad-unlift
6266+ - msgpack < 0 # tried msgpack-1.0.1.0, but its *library* does not support: base-4.15.1.0
6267+ - msgpack-aeson < 0 # tried msgpack-aeson-0.1.0.0, but its *library* requires the disabled package: msgpack
6268+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: blaze-builder-0.4.2.2
6269+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: filepath-1.4.2.1
6270+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: msgpack-1.0.1.0
6271+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: template-haskell-2.17.0.0
6272+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* requires the disabled package: peggy
6273+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* requires the disabled package: shakespeare-text
6274+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: base-4.15.1.0
6275+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: binary-conduit-1.3.1
6276+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-1.3.4.2
6277+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-extra-1.3.5
6278+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.7
6279+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: random-1.2.1
6280+ - multistate < 0 # tried multistate-0.8.0.3, but its *library* does not support: base-4.15.1.0
6281+ - mwc-random-accelerate < 0 # tried mwc-random-accelerate-0.2.0.0, but its *library* requires the disabled package: accelerate
6282+ - mysql-haskell < 0 # tried mysql-haskell-0.8.4.3, but its *library* does not support: memory-0.16.0
6283+ - mysql-haskell < 0 # tried mysql-haskell-0.8.4.3, but its *library* requires the disabled package: word24
6284+ - mysql-haskell-nem < 0 # tried mysql-haskell-nem-0.1.0.0, but its *library* requires the disabled package: mysql-haskell
6285+ - mysql-haskell-openssl < 0 # tried mysql-haskell-openssl-0.8.3.1, but its *library* requires the disabled package: mysql-haskell
6286+ - mysql-haskell-openssl < 0 # tried mysql-haskell-openssl-0.8.3.1, but its *library* requires the disabled package: tcp-streams-openssl
6287+ - n-tuple < 0 # tried n-tuple-0.0.2.0, but its *library* does not support: base-4.15.1.0
6288+ - n-tuple < 0 # tried n-tuple-0.0.2.0, but its *library* does not support: singletons-3.0.1
6289+ - n2o-web < 0 # tried n2o-web-0.11.2, but its *library* requires the disabled package: n2o-protocols
6290+ - nakadi-client < 0 # tried nakadi-client-0.7.0.0, but its *library* requires the disabled package: async-timer
6291+ - naqsha < 0 # tried naqsha-0.3.0.1, but its *library* does not support: base-4.15.1.0
6292+ - net-mqtt < 0 # tried net-mqtt-0.8.2.0, but its *library* does not support: attoparsec-0.14.4
6293+ - net-mqtt-lens < 0 # tried net-mqtt-lens-0.1.1.0, but its *library* requires the disabled package: net-mqtt
6294+ - netrc < 0 # tried netrc-0.2.0.0, but its *library* does not support: base-4.15.1.0
6295+ - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: hexstring
6296+ - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: network-attoparsec
6297+ - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* does not support: network-3.1.2.7
6298+ - network-transport-inmemory < 0 # tried network-transport-inmemory-0.5.2, but its *library* does not support: containers-0.6.4.1
6299+ - nri-test-encoding < 0 # tried nri-test-encoding-0.1.1.1, but its *library* requires the disabled package: servant-auth-server
6300+ - numhask-prelude < 0 # tried numhask-prelude-0.5.0, but its *library* does not support: numhask-0.8.1.0
6301+ - nvim-hs-ghcid < 0 # tried nvim-hs-ghcid-2.0.0.0, but its *library* requires the disabled package: nvim-hs-contrib
6302+ - oblivious-transfer < 0 # tried oblivious-transfer-0.1.0, but its *library* requires the disabled package: protolude
6303+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: Cabal-3.4.1.0
6304+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: base-4.15.1.0
6305+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: template-haskell-2.17.0.0
6306+ - oset < 0 # tried oset-0.4.0.1, but its *library* does not support: base-4.15.1.0
6307+ - packdeps < 0 # tried packdeps-0.6.0.0, but its *library* does not support: Cabal-3.4.1.0
6308+ - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: groups-0.5.3
6309+ - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: protolude-0.3.0
6310+ - pairing < 0 # tried pairing-1.1.0, but its *library* requires the disabled package: elliptic-curve
6311+ - pango < 0 # tried pango-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
6312+ - papillon < 0 # tried papillon-0.1.1.1, but its *library* does not support: template-haskell-2.17.0.0
6313+ - paripari < 0 # tried paripari-0.7.0.0, but its *library* does not support: parser-combinators-1.3.0
6314+ - path-text-utf8 < 0 # tried path-text-utf8-0.0.1.8, but its *library* does not support: path-0.9.2
6315+ - pcf-font-embed < 0 # tried pcf-font-embed-0.1.2.0, but its *library* requires the disabled package: pcf-font
6316+ - pedersen-commitment < 0 # tried pedersen-commitment-0.2.0, but its *library* requires the disabled package: protolude
6317+ - perfect-vector-shuffle < 0 # tried perfect-vector-shuffle-0.1.1.1, but its *library* does not support: base-4.15.1.0
6318+ - persistable-record < 0 # tried persistable-record-0.6.0.5, but its *library* requires the disabled package: th-data-compat
6319+ - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: persistable-record
6320+ - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: relational-query-HDBC
6321+ - persistent-mysql-haskell < 0 # tried persistent-mysql-haskell-0.6.0, but its *library* does not support: tls-1.5.7
6322+ - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: random-1.2.1
6323+ - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: scotty-0.12
6324+ - picedit < 0 # tried picedit-0.2.3.0, but its *executable* requires the disabled package: cli
6325+ - picedit < 0 # tried picedit-0.2.3.0, but its *library* does not support: JuicyPixels-3.3.6
6326+ - picedit < 0 # tried picedit-0.2.3.0, but its *library* does not support: hmatrix-0.20.2
6327+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: Cabal-3.4.1.0
6328+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: aeson-1.5.6.0
6329+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: base-4.15.1.0
6330+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: binary-orphans-1.0.2
6331+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: containers-0.6.4.1
6332+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: hashable-1.3.5.0
6333+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: shake-0.19.6
6334+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: yaml-0.11.6.0
6335+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: Cabal-3.4.1.0
6336+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base-4.15.1.0
6337+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
6338+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: containers-0.6.4.1
6339+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: hashable-1.3.5.0
6340+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: http-client-0.7.10
6341+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: shake-0.19.6
6342+ - pinboard < 0 # tried pinboard-0.10.2.0, but its *library* does not support: http-client-0.7.10
6343+ - pipes-category < 0 # tried pipes-category-0.3.0.0, but its *library* does not support: lens-5.0.1
6344+ - pipes-misc < 0 # tried pipes-misc-0.5.0.0, but its *library* requires the disabled package: pipes-category
6345+ - pipes-network-tls < 0 # tried pipes-network-tls-0.4, but its *library* requires the disabled package: pipes-network
6346+ - pixelated-avatar-generator < 0 # tried pixelated-avatar-generator-0.1.3, but its *executable* requires the disabled package: cli
6347+ - plot < 0 # tried plot-0.2.3.11, but its *library* requires the disabled package: cairo
6348+ - plot < 0 # tried plot-0.2.3.11, but its *library* requires the disabled package: pango
6349+ - pointful < 0 # tried pointful-1.1.0.0, but its *library* does not support: base-4.15.1.0
6350+ - pointful < 0 # tried pointful-1.1.0.0, but its *library* requires the disabled package: haskell-src-exts-simple
6351+ - polysemy-zoo < 0 # tried polysemy-zoo-0.7.0.2, but its *library* does not support: constraints-0.13.2
6352+ - pomaps < 0 # tried pomaps-0.2.0.1, but its *library* does not support: base-4.15.1.0
6353+ - pomaps < 0 # tried pomaps-0.2.0.1, but its *library* does not support: ghc-prim-0.7.0
6354+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: base-4.15.1.0
6355+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: hasql-1.5.0.1
6356+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: retry-0.9.0.0
6357+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: swagger2-2.7
6358+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* requires the disabled package: hasql-dynamic-statements
6359+ - prairie < 0 # tried prairie-0.0.1.0, but its *library* does not support: template-haskell-2.17.0.0
6360+ - pred-set < 0 # tried pred-set-0.0.1, but its *library* requires the disabled package: HSet
6361+ - pred-trie < 0 # tried pred-trie-0.6.1, but its *library* requires the disabled package: pred-set
6362+ - pred-trie < 0 # tried pred-trie-0.6.1, but its *library* requires the disabled package: tries
6363+ - printcess < 0 # tried printcess-0.1.0.3, but its *library* does not support: containers-0.6.4.1
6364+ - printcess < 0 # tried printcess-0.1.0.3, but its *library* does not support: lens-5.0.1
6365+ - product-isomorphic < 0 # tried product-isomorphic-0.0.3.3, but its *library* requires the disabled package: th-data-compat
6366+ - protolude < 0 # tried protolude-0.3.0, but its *library* does not support: base-4.15.1.0
6367+ - protolude < 0 # tried protolude-0.3.0, but its *library* does not support: ghc-prim-0.7.0
6368+ - publicsuffix < 0 # tried publicsuffix-0.20200526, but its *library* does not support: base-4.15.1.0
6369+ - pure-io < 0 # tried pure-io-0.2.1, but its *library* does not support: base-4.15.1.0
6370+ - qnap-decrypt < 0 # tried qnap-decrypt-0.3.5, but its *executable* does not support: optparse-applicative-0.16.1.0
6371+ - questioner < 0 # tried questioner-0.1.1.0, but its *library* does not support: ansi-terminal-0.11.1
6372+ - questioner < 0 # tried questioner-0.1.1.0, but its *library* requires the disabled package: readline
6373+ - quickcheck-arbitrary-template < 0 # tried quickcheck-arbitrary-template-0.2.1.1, but its *library* does not support: template-haskell-2.17.0.0
6374+ - quickcheck-combinators < 0 # tried quickcheck-combinators-0.0.5, but its *library* requires the disabled package: unfoldable-restricted
6375+ - quickcheck-state-machine < 0 # tried quickcheck-state-machine-0.7.1, but its *library* requires the disabled package: markov-chain-usage-model
6376+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: aeson-1.5.6.0
6377+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: connection-0.3.1
6378+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: constraints-0.13.2
6379+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-api-data-0.4.3
6380+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-client-0.7.10
6381+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: lens-5.0.1
6382+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: req-3.9.2
6383+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* requires the disabled package: extensible
6384+ - ranged-list < 0 # tried ranged-list-0.1.0.0, but its *library* requires the disabled package: typecheck-plugin-nat-simple
6385+ - rank-product < 0 # tried rank-product-0.2.2.0, but its *library* requires the disabled package: random-fu
6386+ - rdf < 0 # tried rdf-0.1.0.5, but its *library* does not support: attoparsec-0.14.4
6387+ - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry
6388+ - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry-combinatorial
6389+ - reform-hsp < 0 # tried reform-hsp-0.2.7.2, but its *library* requires the disabled package: hsx2hs
6390+ - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-base-0.94.0.2
6391+ - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-pcre-builtin-0.95.2.3.8.44
6392+ - regex-tdfa-text < 0 # tried regex-tdfa-text-1.0.0.3, but its *library* does not support: regex-base-0.94.0.2
6393+ - registry < 0 # tried registry-0.2.1.0, but its *library* requires the disabled package: protolude
6394+ - relapse < 0 # tried relapse-1.0.0.0, but its *library* does not support: attoparsec-0.14.4
6395+ - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: persistable-record
6396+ - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: product-isomorphic
6397+ - relational-query-HDBC < 0 # tried relational-query-HDBC-0.7.2.0, but its *library* requires the disabled package: th-data-compat
6398+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: persistable-record
6399+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: product-isomorphic
6400+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: relational-query-HDBC
6401+ - relational-schemas < 0 # tried relational-schemas-0.1.8.0, but its *library* requires the disabled package: relational-query
6402+ - repa-algorithms < 0 # tried repa-algorithms-3.4.1.4, but its *library* does not support: base-4.15.1.0
6403+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *executable* does not support: aeson-1.5.6.0
6404+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: base-4.15.1.0
6405+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: req-3.9.2
6406+ - rethinkdb-client-driver < 0 # tried rethinkdb-client-driver-0.0.25, but its *library* does not support: base-4.15.1.0
6407+ - rhine-gloss < 0 # tried rhine-gloss-0.7.0, but its *library* requires the disabled package: rhine
6408+ - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: attoparsec-0.14.4
6409+ - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: network-3.1.2.7
6410+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: aeson-1.5.6.0
6411+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: http-client-0.7.10
6412+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: network-3.1.2.7
6413+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: time-1.9.3
6414+ - safe-tensor < 0 # tried safe-tensor-0.2.1.1, but its *library* does not support: singletons-3.0.1
6415+ - salak-toml < 0 # tried salak-toml-0.3.5.3, but its *library* requires the disabled package: tomland
6416+ - sandwich-webdriver < 0 # tried sandwich-webdriver-0.1.0.6, but its *library* requires the disabled package: webdriver
6417+ - scalendar < 0 # tried scalendar-1.2.0, but its *library* does not support: containers-0.6.4.1
6418+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* does not support: aeson-1.5.6.0
6419+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* requires the disabled package: hjsonschema
6420+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* requires the disabled package: validationt
6421+ - sendgrid-v3 < 0 # tried sendgrid-v3-0.3.0.0, but its *library* does not support: base-4.15.1.0
6422+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: aeson-1.5.6.0
6423+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: base-4.15.1.0
6424+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: http-client-0.7.10
6425+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: lens-5.0.1
6426+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: optparse-applicative-0.16.1.0
6427+ - seqloc < 0 # tried seqloc-0.6.1.1, but its *library* requires the disabled package: biocore
6428+ - sequence-formats < 0 # tried sequence-formats-1.6.1, but its *library* does not support: base-4.15.1.0
6429+ - sequenceTools < 0 # tried sequenceTools-1.5.0, but its *library* requires the disabled package: sequence-formats
6430+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: blaze-builder-0.4.2.2
6431+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: cryptonite-0.29
6432+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: exceptions-0.10.4
6433+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: http-api-data-0.4.3
6434+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: http-types-0.12.3
6435+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: memory-0.16.0
6436+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: servant-0.18.3
6437+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: servant-server-0.18.3
6438+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: time-1.9.3
6439+ - servant-auth-docs < 0 # tried servant-auth-docs-0.2.10.0, but its *library* does not support: base-4.15.1.0
6440+ - servant-auth-server < 0 # tried servant-auth-server-0.4.6.0, but its *library* does not support: base64-bytestring-1.2.1.0
6441+ - servant-auth-swagger < 0 # tried servant-auth-swagger-0.2.10.1, but its *library* does not support: swagger2-2.7
6442+ - servant-errors < 0 # tried servant-errors-0.1.6.0, but its *library* does not support: base-4.15.1.0
6443+ - servant-js < 0 # tried servant-js-0.9.4.2, but its *executable* does not support: aeson-1.5.6.0
6444+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: containers-0.6.4.1
6445+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: formatting-7.1.3
6446+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: lens-5.0.1
6447+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: servant-0.18.3
6448+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: time-1.9.3
6449+ - servant-mock < 0 # tried servant-mock-0.8.7, but its *library* does not support: QuickCheck-2.14.2
6450+ - servant-mock < 0 # tried servant-mock-0.8.7, but its *library* does not support: base-4.15.1.0
6451+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: http-media-0.8.0.0
6452+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: lens-5.0.1
6453+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: pandoc-types-1.22.1
6454+ - servant-quickcheck < 0 # tried servant-quickcheck-0.0.10.0, but its *library* does not support: base-4.15.1.0
6455+ - servant-quickcheck < 0 # tried servant-quickcheck-0.0.10.0, but its *library* does not support: hspec-2.8.5
6456+ - servant-streaming < 0 # tried servant-streaming-0.3.0.0, but its *library* does not support: base-4.15.1.0
6457+ - servant-streaming < 0 # tried servant-streaming-0.3.0.0, but its *library* does not support: servant-0.18.3
6458+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: base-4.15.1.0
6459+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: http-media-0.8.0.0
6460+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: servant-0.18.3
6461+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: servant-client-core-0.18.3
6462+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: base-4.15.1.0
6463+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: http-media-0.8.0.0
6464+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: servant-server-0.18.3
6465+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* requires the disabled package: streaming-wai
6466+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: Cabal-3.4.1.0
6467+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: base-4.15.1.0
6468+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: lens-5.0.1
6469+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: swagger2-2.7
6470+ - servant-yaml < 0 # tried servant-yaml-0.1.0.1, but its *library* does not support: base-4.15.1.0
6471+ - servant-yaml < 0 # tried servant-yaml-0.1.0.1, but its *library* does not support: servant-0.18.3
6472+ - serverless-haskell < 0 # tried serverless-haskell-0.12.6, but its *library* requires the disabled package: amazonka-core
6473+ - serversession-backend-persistent < 0 # tried serversession-backend-persistent-1.0.5, but its *library* does not support: base64-bytestring-1.2.1.0
6474+ - serversession-backend-redis < 0 # tried serversession-backend-redis-1.0.4, but its *library* does not support: hedis-0.15.0
6475+ - serversession-frontend-yesod < 0 # tried serversession-frontend-yesod-1.0, but its *library* does not support: yesod-core-1.6.21.0
6476+ - sessiontypes-distributed < 0 # tried sessiontypes-distributed-0.1.1, but its *library* does not support: exceptions-0.10.4
6477+ - sessiontypes-distributed < 0 # tried sessiontypes-distributed-0.1.1, but its *library* requires the disabled package: sessiontypes
6478+ - sexpr-parser < 0 # tried sexpr-parser-0.2.0.0, but its *library* does not support: base-4.15.1.0
6479+ - sexpr-parser < 0 # tried sexpr-parser-0.2.0.0, but its *library* does not support: megaparsec-9.2.0
6480+ - shake-plus-extended < 0 # tried shake-plus-extended-0.4.1.0, but its *library* requires the disabled package: ixset-typed
6481+ - show-prettyprint < 0 # tried show-prettyprint-0.3.0.1, but its *library* does not support: trifecta-2.1.2
6482+ - shower < 0 # tried shower-0.2.0.2, but its *library* does not support: base-4.15.1.0
6483+ - simplest-sqlite < 0 # tried simplest-sqlite-0.1.0.2, but its *library* does not support: template-haskell-2.17.0.0
6484+ - size-based < 0 # tried size-based-0.1.2.0, but its *library* does not support: template-haskell-2.17.0.0
6485+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: aeson-1.5.6.0
6486+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: base-4.15.1.0
6487+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: constraints-0.13.2
6488+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: lens-5.0.1
6489+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: random-1.2.1
6490+ - skeletons < 0 # tried skeletons-0.4.0, but its *executable* requires the disabled package: tinytemplate
6491+ - slack-web < 0 # tried slack-web-0.4.0.0, but its *library* does not support: http-client-0.7.10
6492+ - smallcheck-series < 0 # tried smallcheck-series-0.7.1.0, but its *library* does not support: base-4.15.1.0
6493+ - smash-lens < 0 # tried smash-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
6494+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: aeson-1.5.6.0
6495+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: attoparsec-0.14.4
6496+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: base-4.15.1.0
6497+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: dlist-1.0
6498+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: lens-5.0.1
6499+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: mwc-random-0.15.0.2
6500+ - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: pwstore-fast
6501+ - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: snap-server
6502+ - snap-blaze < 0 # tried snap-blaze-0.2.1.5, but its *library* requires the disabled package: snap-core
6503+ - snap-core < 0 # tried snap-core-1.0.4.2, but its *library* does not support: attoparsec-0.14.4
6504+ - socket-activation < 0 # tried socket-activation-0.1.0.2, but its *library* does not support: network-3.1.2.7
6505+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: inline-java-0.10.0
6506+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: jvm-0.6.0
6507+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: distributed-closure
6508+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: jni
6509+ - sparse-tensor < 0 # tried sparse-tensor-0.2.1.5, but its *library* does not support: ad-4.5
6510+ - speculation < 0 # tried speculation-1.5.0.3, but its *library* does not support: stm-2.5.0.0
6511+ - sqlite-simple-errors < 0 # tried sqlite-simple-errors-0.6.1.0, but its *library* does not support: text-1.2.5.0
6512+ - streamproc < 0 # tried streamproc-1.6.2, but its *library* does not support: base-4.15.1.0
6513+ - strict-base-types < 0 # tried strict-base-types-0.7, but its *library* requires the disabled package: strict-lens
6514+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-2.8.5
6515+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-core-2.8.5
6516+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: random-1.2.1
6517+ - structured-haskell-mode < 0 # tried structured-haskell-mode-1.1.0, but its *executable* does not support: haskell-src-exts-1.23.1
6518+ - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: Cabal-3.4.1.0
6519+ - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6520+ - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: attoparsec-0.14.4
6521+ - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: base-4.15.1.0
6522+ - sv-cassava < 0 # tried sv-cassava-0.3, but its *library* does not support: attoparsec-0.14.4
6523+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: attoparsec-0.14.4
6524+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: base-4.15.1.0
6525+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: lens-5.0.1
6526+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: profunctors-5.6.2
6527+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: containers-0.6.4.1
6528+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-api-data-0.4.3
6529+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-client-0.7.10
6530+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-media-0.8.0.0
6531+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: katip-0.8.7.0
6532+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: network-3.1.2.7
6533+ - swagger2 < 0 # tried swagger2-2.7, but its *library* does not support: aeson-1.5.6.0
6534+ - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src
6535+ - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src-th-mode
6536+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: containers-0.6.4.1
6537+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: tasty-1.4.2.1
6538+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: time-1.9.3
6539+ - tcp-streams-openssl < 0 # tried tcp-streams-openssl-1.0.1.0, but its *library* does not support: network-3.1.2.7
6540+ - termcolor < 0 # tried termcolor-0.2.0.0, but its *executable* requires the disabled package: cli
6541+ - termonad < 0 # tried termonad-4.2.0.0, but its *library* requires the disabled package: xml-html-qq
6542+ - test-fixture < 0 # tried test-fixture-0.5.1.0, but its *library* does not support: template-haskell-2.17.0.0
6543+ - test-framework-th < 0 # tried test-framework-th-0.2.4, but its *library* requires the disabled package: language-haskell-extract
6544+ - testing-feat < 0 # tried testing-feat-1.1.0.0, but its *library* requires the disabled package: size-based
6545+ - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-1.2.5.0
6546+ - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-format-0.3.2
6547+ - text-format < 0 # tried text-format-0.3.2, but its *library* does not support: base-4.15.1.0
6548+ - text-generic-pretty < 0 # tried text-generic-pretty-1.2.1, but its *library* does not support: wl-pprint-text-1.2.0.2
6549+ - th-to-exp < 0 # tried th-to-exp-0.0.1.1, but its *library* does not support: template-haskell-2.17.0.0
6550+ - threepenny-gui < 0 # tried threepenny-gui-0.9.1.0, but its *library* requires the disabled package: snap-server
6551+ - threepenny-gui-flexbox < 0 # tried threepenny-gui-flexbox-0.4.2, but its *library* requires the disabled package: threepenny-gui
6552+ - thumbnail-plus < 0 # tried thumbnail-plus-1.0.5, but its *library* does not support: either-5.0.1.1
6553+ - token-bucket < 0 # tried token-bucket-0.1.0.1, but its *library* does not support: base-4.15.1.0
6554+ - tonalude < 0 # tried tonalude-0.1.1.1, but its *library* does not support: base-4.15.1.0
6555+ - tonaparser < 0 # tried tonaparser-0.1.0.1, but its *library* does not support: base-4.15.1.0
6556+ - tonatona < 0 # tried tonatona-0.1.2.1, but its *library* does not support: base-4.15.1.0
6557+ - tonatona-logger < 0 # tried tonatona-logger-0.2.0.2, but its *library* does not support: base-4.15.1.0
6558+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: base-4.15.1.0
6559+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-2.13.2.2
6560+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-postgresql-2.13.2.2
6561+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: base-4.15.1.0
6562+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-2.13.2.2
6563+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-sqlite-2.13.0.4
6564+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: base-4.15.1.0
6565+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-0.18.3
6566+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-server-0.18.3
6567+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: wai-extra-3.1.8
6568+ - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: base-4.15.1.0
6569+ - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: writer-cps-transformers-0.5.6.1
6570+ - transient-universe < 0 # tried transient-universe-0.6.0.1, but its *library* does not support: network-3.1.2.7
6571+ - tries < 0 # tried tries-0.0.6.1, but its *library* requires the disabled package: rose-trees
6572+ - true-name < 0 # tried true-name-0.1.0.3, but its *library* does not support: template-haskell-2.17.0.0
6573+ - type-combinators-singletons < 0 # tried type-combinators-singletons-0.2.1.0, but its *library* requires the disabled package: type-combinators
6574+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6575+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: attoparsec-0.14.4
6576+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: base-4.15.1.0
6577+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: cryptonite-0.29
6578+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: parser-combinators-1.3.0
6579+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6580+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base-4.15.1.0
6581+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
6582+ - unfoldable-restricted < 0 # tried unfoldable-restricted-0.0.3, but its *library* requires the disabled package: unfoldable
6583+ - uniprot-kb < 0 # tried uniprot-kb-0.1.2.0, but its *library* does not support: attoparsec-0.14.4
6584+ - uri-templater < 0 # tried uri-templater-0.3.1.0, but its *library* does not support: trifecta-2.1.2
6585+ - urlpath < 0 # tried urlpath-9.0.1, but its *library* requires the disabled package: attoparsec-uri
6586+ - userid < 0 # tried userid-0.1.3.6, but its *library* does not support: base-4.15.1.0
6587+ - utf8-conversions < 0 # tried utf8-conversions-0.1.0.4, but its *library* does not support: text-short-0.1.5
6588+ - vado < 0 # tried vado-0.0.13, but its *library* does not support: attoparsec-0.14.4
6589+ - vado < 0 # tried vado-0.0.13, but its *library* does not support: base-4.15.1.0
6590+ - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: base-4.15.1.0
6591+ - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: containers-0.6.4.1
6592+ - vector-circular < 0 # tried vector-circular-0.1.3, but its *library* does not support: template-haskell-2.17.0.0
6593+ - vector-fftw < 0 # tried vector-fftw-0.1.4.0, but its *library* does not support: base-4.15.1.0
6594+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: base-4.15.1.0
6595+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: brick-0.66.1
6596+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: lens-5.0.1
6597+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: vty-5.33
6598+ - wai-middleware-crowd < 0 # tried wai-middleware-crowd-0.1.4.2, but its *executable* does not support: optparse-applicative-0.16.1.0
6599+ - wai-middleware-metrics < 0 # tried wai-middleware-metrics-0.2.4, but its *library* requires the disabled package: ekg-core
6600+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: aeson-1.5.6.0
6601+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: http-client-0.7.10
6602+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: time-1.9.3
6603+ - wai-middleware-throttle < 0 # tried wai-middleware-throttle-0.3.0.1, but its *library* requires the disabled package: token-bucket
6604+ - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-predicates
6605+ - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-route
6606+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: attoparsec-0.14.4
6607+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: base-4.15.1.0
6608+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: dlist-1.0
6609+ - web-routes-th < 0 # tried web-routes-th-0.22.6.6, but its *library* does not support: template-haskell-2.17.0.0
6610+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: OneTuple-0.3.1
6611+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: aeson-1.5.6.0
6612+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: attoparsec-0.14.4
6613+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: base-4.15.1.0
6614+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: cryptonite-0.29
6615+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: hspec-2.8.5
6616+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: http-client-0.7.10
6617+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: memory-0.16.0
6618+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-0.18.3
6619+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-client-0.18.3
6620+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: template-haskell-2.17.0.0
6621+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: vinyl-0.13.3
6622+ - webby < 0 # tried webby-1.0.1, but its *library* does not support: formatting-7.1.3
6623+ - webdriver < 0 # tried webdriver-0.9.0.1, but its *library* does not support: base-4.15.1.0
6624+ - webdriver-angular < 0 # tried webdriver-angular-0.1.11, but its *library* does not support: language-javascript-0.7.1.0
6625+ - webdriver-angular < 0 # tried webdriver-angular-0.1.11, but its *library* does not support: webdriver-0.9.0.1
6626+ - websockets-snap < 0 # tried websockets-snap-0.10.3.1, but its *library* requires the disabled package: snap-server
6627+ - wl-pprint-extras < 0 # tried wl-pprint-extras-3.5.0.5, but its *library* does not support: containers-0.6.4.1
6628+ - wl-pprint-terminfo < 0 # tried wl-pprint-terminfo-3.7.1.4, but its *library* does not support: containers-0.6.4.1
6629+ - wrecker < 0 # tried wrecker-1.3.2.0, but its *library* requires the disabled package: next-ref
6630+ - wrecker < 0 # tried wrecker-1.3.2.0, but its *library* requires the disabled package: threads-extras
6631+ - writer-cps-full < 0 # tried writer-cps-full-0.1.0.0, but its *library* requires the disabled package: writer-cps-morph
6632+ - writer-cps-lens < 0 # tried writer-cps-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
6633+ - ws < 0 # tried ws-0.0.5, but its *library* requires the disabled package: attoparsec-uri
6634+ - xml-html-qq < 0 # tried xml-html-qq-0.1.0.1, but its *library* requires the disabled package: heterocephalus
6635+ - xml-isogen < 0 # tried xml-isogen-0.3.0, but its *library* requires the disabled package: dom-parser
6636+ - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* does not support: yeshql-core-4.2.0.0
6637+ - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* requires the disabled package: yeshql-hdbc
6638+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: persistent-2.13.2.2
6639+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-auth-1.6.10.5
6640+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-core-1.6.21.0
6641+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-form-1.7.0
6642+ - yesod-form-richtext < 0 # tried yesod-form-richtext-0.1.0.2, but its *library* does not support: yesod-core-1.6.21.0
6643+ - yesod-form-richtext < 0 # tried yesod-form-richtext-0.1.0.2, but its *library* does not support: yesod-form-1.7.0
6644+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *executable* does not support: yesod-1.6.1.2
6645+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: language-javascript-0.7.1.0
6646+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: yesod-core-1.6.21.0
6647+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: yesod-static-1.6.1.0
6648+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* requires the disabled package: hamlet
6649+ - zasni-gerna < 0 # tried zasni-gerna-0.0.7.1, but its *library* requires the disabled package: papillon
6650+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: base-compat-0.11.2
6651+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: servant-0.18.3
6652+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: servant-client-0.18.3
6653+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: aeson-1.5.6.0
6654+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: base-compat-0.11.2
6655+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: http-api-data-0.4.3
6656+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: servant-0.18.3
6657+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: containers-0.6.4.1
6658+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: flat-0.4.4
6659+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: model-0.5
6660+ - zydiskell < 0 # tried zydiskell-0.2.0.0, but its *library* does not support: base-4.15.1.0
6661+ - zydiskell < 0 # tried zydiskell-0.2.0.0, but its *library* does not support: storable-record-0.0.6
6662+ # End of Library and exe bounds failures
6663+
6664+ "Stackage upper bounds":
6665+
6666+ # https://github.com/commercialhaskell/stackage/issues/6122
6667+ - mmorph < 1.2
6668+
6669+ # https://github.com/commercialhaskell/stackage/issues/6184
6670+ - base-compat < 0.12
6671+
6672+ # https://github.com/commercialhaskell/stackage/issues/6185
6673+ - base-compat-batteries < 0.12
6674+
6675+ # aeson-2
6676+ # https://github.com/commercialhaskell/stackage/issues/6217
6677+ # https://github.com/commercialhaskell/stackage/issues/6402
6678+ # https://github.com/commercialhaskell/stackage/issues/6243
6679+ # https://github.com/commercialhaskell/stackage/issues/6393
6680+ - aeson < 2.0.0.0
6681+ - aura < 3.2.6
6682+ - avro < 0.6.0.0
6683+ - cabal-flatpak < 0.1.0.3
6684+ - core-data < 0.3.0.0
6685+ - eventstore < 1.4.2
6686+ - faktory < 1.1.2.1
6687+ - flow < 2.0.0.0
6688+ - forma < 1.2.0
6689+ - geojson < 4.1.0
6690+ - greskell < 2.0.0.0
6691+ - greskell-core < 1.0.0.0
6692+ - greskell-websocket < 1.0.0.0
6693+ - hruby < 0.4.0.0
6694+ - hspec-expectations-json < 1.0.0.5
6695+ - http2 < 3.0.3
6696+ - jose < 0.9
6697+ - jsonpath < 0.2.1.0
6698+ - kanji < 3.5
6699+ - microlens-aeson < 2.4
6700+ - mmark-cli < 0.0.5.1
6701+ - pandoc-plot < 1.4.0
6702+ - postgresql-binary < 0.12.4.2
6703+ - servant-tracing < 0.2.0.0
6704+ - shikensu < 0.4.0
6705+ - stache < 2.3.1
6706+ - stripe-scotty < 1.1.0.1
6707+ - stripe-wreq < 1.0.1.12
6708+ - yaml < 0.11.7
6709+
6710+ # https://github.com/commercialhaskell/stackage/issues/6264
6711+ # Requires GHC 9.2
6712+ # Any new package-version that must use GHC 9.2 should be added here.
6713+ # We'll Remove this section along with the nightly upgrade to GHC 9.2.
6714+ - dbus < 1.2.23
6715+ - eliminators < 0.9
6716+ - ghc-exactprint < 1.1
6717+ - ghc-lib < 9.2.1.20211030
6718+ - ghc-lib-parser < 9.2.1.20211030
6719+ - ghc-lib-parser-ex < 9.2.0.0
6720+ - ghc-syntax-highlighter < 0.0.8 # requires ghc-lib-parser >= 9.2
6721+ - ormolu < 0.4.0.0
6722+ - singletons-base < 3.1
6723+ - singletons-th < 3.1
6724+ - th-desugar < 1.13
6725+ - fourmolu < 0.5.0.0
6726+
6727+ # https://github.com/commercialhaskell/stackage/issues/6268
6728+ - hashable < 1.4.0.0
6729+
6730+ # https://github.com/commercialhaskell/stackage/issues/6273
6731+ - freckle-app < 1.0.1
6732+
6733+ # https://github.com/commercialhaskell/stackage/issues/6292
6734+ - doctest < 0.19
6735+
6736+ # https://github.com/commercialhaskell/stackage/issues/6297
6737+ - hspec-discover < 2.9
6738+
6739+ # https://github.com/commercialhaskell/stackage/issues/6298
6740+ - hspec-core < 2.9
6741+ - hspec-meta < 2.9
6742+
6743+ # https://github.com/commercialhaskell/stackage/issues/6299
6744+ - hspec < 2.9
6745+
6746+ # https://github.com/commercialhaskell/stackage/issues/6308
6747+ - semigroups < 0.20
6748+
6749+ # https://github.com/commercialhaskell/stackage/issues/6309
6750+ - polysemy < 1.7
6751+ - polysemy-plugin < 0.4.2
6752+
6753+ # https://github.com/commercialhaskell/stackage/issues/6310
6754+ - lens < 5.1
6755+
6756+ # https://github.com/commercialhaskell/stackage/issues/6322
6757+ - hashtables < 1.3
6758+
6759+ # https://github.com/commercialhaskell/stackage/issues/6348
6760+ - headed-megaparsec < 0.2.0.2
6761+ - rebase < 1.14
6762+ - rerebase < 1.14
6763+ - selective < 0.5
6764+ - yaml-unscrambler < 0.1.0.5
6765+
6766+ # https://github.com/commercialhaskell/stackage/issues/6388
6767+ # issue is for 5.0, but 4.0.4 is deprecated.
6768+ - hw-kafka-client < 4.0.4
6769+
6770+ # https://github.com/commercialhaskell/stackage/issues/6395
6771+ - wuss < 2.0
6772+
6773+ # https://github.com/haskell-game/sdl2/issues/240 (need newer Ubuntu)
6774+ - sdl2 < 2.5.3.1
6775+
6776+ # https://github.com/commercialhaskell/stack/issues/5670 (fails with Cabal-3.4)
6777+ - stack < 0
6778+
6779+ # https://github.com/commercialhaskell/stackage/issues/6401
6780+ - rope-utf16-splay < 0.4
6781+
6782+# end of packages
2667
6783
2668# Package flags are applied to individual packages, and override the values of
6784# Package flags are applied to individual packages, and override the values of
2669# global-flags
6785# global-flags
2670package-flags:
6786package-flags:
6787+ QuickCheck:
6788+ old-random: false
6789+ pathtype:
6790+ old-time: false
6791+
2671 brick:
6792 brick:
2672 demos: true
6793 demos: true
2673
6794
6795+ bz2:
6796+ with-bzlib: false # Exclude bzlib from benchmarks to avoid unnecessary dependencies.
6797+
2674 mersenne-random-pure64:
6798 mersenne-random-pure64:
2675 small_base: false
6799 small_base: false
2676
6800
@@ -2679,12 +6803,15 @@ package-flags:
2679 simplelocalnet: true
6803 simplelocalnet: true
2680 p2p: true
6804 p2p: true
2681
6805
2682− logfloat:
2683− splitbase: true
2684−
2685 curl:
6806 curl:
2686 new-base: true
6807 new-base: true
2687
6808
6809+ hpio:
6810+ test-hlint: false
6811+
6812+ idris:
6813+ ffi: true
6814+
2688 hxt:
6815 hxt:
2689 network-uri: true
6816 network-uri: true
2690 hxt-http:
6817 hxt-http:
@@ -2692,28 +6819,15 @@ package-flags:
2692 hxt-relaxng:
6819 hxt-relaxng:
2693 network-uri: true
6820 network-uri: true
2694
6821
2695− pandoc:
2696− https: true
2697− old-locale: false
2698−
2699 text:
6822 text:
2700 integer-simple: false
6823 integer-simple: false
2701
6824
2702 tar:
6825 tar:
2703 old-time: false
6826 old-time: false
2704
6827
2705− # https://github.com/fpco/stackage/pull/482#issuecomment-83635207
2706− jose-jwt:
2707− doctest: false
2708−
2709 time-locale-compat:
6828 time-locale-compat:
2710 old-locale: false
6829 old-locale: false
2711
6830
2712− th-data-compat:
2713− template-haskell-210: false
2714− th-reify-compat:
2715− template-haskell-210: false
2716−
2717 HsOpenSSL:
6831 HsOpenSSL:
2718 fast-bignum: false
6832 fast-bignum: false
2719
6833
@@ -2740,34 +6854,63 @@ package-flags:
2740 ghc_7_7: false
6854 ghc_7_7: false
2741 ghc_8_0: true
6855 ghc_8_0: true
2742
6856
6857+ functor-classes-compat:
6858+ containers: true
6859+
6860+ # 2021-11-14
6861+ # Since we are shipping Win32-2.10 (thus not 2.13.1), this flag needs to be set to 'false'.
6862+ # https://github.com/RyanGlScott/mintty/issues/4#issuecomment-968329124
6863+ # TODO: revisit when Win32 is bumped
6864+ mintty:
6865+ win32-2-13-1: false
6866+
6867+ cassava:
6868+ bytestring--lt-0_10_4: false
6869+
6870+ alerta:
6871+ servant-client-core: false
6872+
6873+ cabal-install:
6874+ # https://github.com/haskell/cabal/issues/4883
6875+ native-dns: false
6876+
6877+ # https://github.com/fpco/stackage/issues/3619
6878+ transformers-compat:
6879+ five-three: true
6880+
6881+ greskell:
6882+ hint-test: false
6883+
6884+ windns:
6885+ allow-non-windows: true
6886+
6887+ hsdev:
6888+ docs: false
6889+
6890+ bson:
6891+ _old-network: false
6892+
6893+ mongoDB:
6894+ _old-network: false
6895+
6896+
2743# end of package-flags
6897# end of package-flags
2744
6898
2745# Special configure options for individual packages
6899# Special configure options for individual packages
2746
6900
6901+# This used to be used for extra-include-dirs and extra-lib-dirs
6902+# Instead, we set this in the Docker image itself
2747−configure-args:
6903+configure-args: {}
2748− jni:
2749− - --extra-lib-dirs
2750− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2751− - --extra-include-dirs
2752− - /usr/lib/jvm/java-8-openjdk-amd64/include
2753− sparkle:
2754− - --extra-lib-dirs
2755− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2756− - --extra-include-dirs
2757− - /usr/lib/jvm/java-8-openjdk-amd64/include
2758− hocilib:
2759− - --extra-lib-dirs
2760− - /usr/local/lib
2761−
2762# end of configure-args
6904# end of configure-args
2763
6905
2764
6906
2765# Used for packages that cannot be built on Linux
6907# Used for packages that cannot be built on Linux
2766skipped-builds:
6908skipped-builds:
2767 - hfsevents
6909 - hfsevents
6910+ - lzma-clib
2768 - Win32
6911 - Win32
2769 - Win32-notify
6912 - Win32-notify
2770− - Win32-extras
6913+ - windns
2771
6914
2772# end of skipped-builds
6915# end of skipped-builds
2773
6916
@@ -2777,313 +6920,912 @@ skipped-builds:
2777# or if Setup fails because of missing foreign libraries.
6920# or if Setup fails because of missing foreign libraries.
2778# Otherwise place them in expected-test-failures.
6921# Otherwise place them in expected-test-failures.
2779skipped-tests:
6922skipped-tests:
2780− # Outdated dependencies
6923+ # aeson-2
2781− # These can periodically be checked for updates;
6924+ # https://github.com/commercialhaskell/stackage/issues/6217
2782− # just remove these lines and run `stackage-curator check' to verify.
6925+ - jsonifier
2783− - Cabal # QuickCheck 2.9
6926+ - req
2784− - ChasingBottoms # QuickCheck 2.9
6927+
2785− - ReadArgs # https://github.com/rampion/ReadArgs/issues/8
6928+ # Missing foreign libraries
2786− - bytestring-handle # QuickCheck 2.9
6929+ - symengine
2787− - cases # https://github.com/nikita-volkov/cases/pull/3
6930+
2788− - cgi # QuickCheck 2.9
6931+ # Timeouts
2789− - chell # options & via chell-quickcheck
6932+ # These tests sometimes take too long and hit the stackage build
2790− - concurrent-extra # https://github.com/basvandijk/concurrent-extra/pull/15
6933+ # servers time limit so these shouldn't be removed from
2791− - ed25519 # QuickCheck 2.9
6934+ # skipped-tests unless we know a fix has been released.
2792− - hasql # QuickCheck 2.9
6935+ - accelerate-fourier
2793− - hastache # https://github.com/lymar/hastache/pull/53
6936+ - cabal-helper
2794− - heaps # https://github.com/ekmett/heaps/pull/8
6937+ - graphviz
2795− - hyphenation # https://github.com/ekmett/hyphenation/pull/10
6938+ - network-attoparsec
2796− - pure-cdb # test-simple
6939+ - punycode
2797− - state-plus # QuickCheck 2.9
6940+ - unagi-chan
2798− - system-filepath # QuickCheck 2.9
6941+ - zeromq4-patterns
2799− - vector # https://github.com/haskell/vector/commit/31edb3fc51e76facc1e291f1e9e721663d91dbd8
6942+ - port-utils
2800− - zlib # 0.6.1.1-r3 https://github.com/haskell/zlib/issues/2
2801− - snap # QuickCheck 2.9
2802− - terminal-progress-bar # depends on older version of itself
2803−
2804− # Transitive outdated dependencies
2805− # These packages
2806− # These can also be checked for updates periodically.
2807− - MissingH # via testpack https://github.com/jgoerzen/testpack/issues/11
2808− - clustering # via RLang-QQ via HList https://github.com/kaizhang/clustering/issues/2 (also sent e-mail to HList maintainer)
2809− - options # QuickCheck via chell-quickcheck
2810− - uri-bytestring # haskell-src-exts via derive
2811−
2812− # Blocked by stackage upper bounds. These can be re-enabled once
2813− # the relevant stackage upper bound is lifted.
2814−
2815−
2816− # Runtime issues
2817 - blank-canvas # Never finishes https://github.com/ku-fpg/blank-canvas/issues/73
6943 - blank-canvas # Never finishes https://github.com/ku-fpg/blank-canvas/issues/73
2818 - binary-search # Never finishes https://github.com/nushio3/binary-search/issues/2
6944 - binary-search # Never finishes https://github.com/nushio3/binary-search/issues/2
2819 - jsaddle # Never finishes without framebuffer https://github.com/ghcjs/jsaddle/issues/9
6945 - jsaddle # Never finishes without framebuffer https://github.com/ghcjs/jsaddle/issues/9
6946+ - hpc-codecov # timeouts? https://github.com/commercialhaskell/stackage/issues/5976
6947+
6948+ # Wontfix. The maintainer doesn't want to keep test dependencies
6949+ # up to date or be notified about it, or doesn't want stackage to
6950+ # run the tests.
6951+ # Only re-enable if requested.
6952+ ## @hvr https://github.com/fpco/stackage/issues/2538#issuecomment-304458844
6953+ - cassava
6954+ - cryptohash-md5
6955+ - cryptohash-sha1
6956+ - cryptohash-sha256
6957+ - cryptohash-sha512
6958+ - HsYAML
6959+ - lzma
6960+ - resolv
6961+ - token-bucket
6962+ - uuid
6963+ - uuid-types
6964+ # @nikita-volkov https://github.com/fpco/stackage/issues/2538#issuecomment-305129396
6965+ - base-prelude
6966+ - bytestring-strict-builder
6967+ - bytestring-tree-builder
6968+ - cases
6969+ - focus
6970+ - hasql
6971+ - hasql-pool
6972+ - list-t
6973+ - mtl-prelude
6974+ - neat-interpolation
6975+ - partial-handler
6976+ - postgresql-binary
6977+ - refined
6978+ - slave-thread
6979+ - stm-containers
6980+ - text-builder
6981+ # @ivan-m https://github.com/fpco/stackage/issues/2538#issuecomment-307290070
6982+ - fgl
6983+ - fgl-arbitrary
6984+ - graphviz
6985+ - wl-pprint-text
6986+ # @phadej
6987+ - aeson-compat
6988+ - aeson-extra
6989+ - base64-bytestring-type
6990+ - binary-orphans
6991+ - edit-distance
6992+ - fin
6993+ - http-api-data
6994+ - integer-logarithms
6995+ - postgresql-simple-url
6996+ - range-set-list
6997+ - time-parsers
6998+ - time-parsers
6999+ - universe-base
7000+ - vec
7001+ # @jsynacek
7002+ - hpqtypes # needs a running postgres database
7003+ - hpqtypes-extras # needs a running postgres database
7004+ # norfairking
7005+ - autodocodec # runs doctest
7006+ - captcha-core
7007+ - captcha-2captcha
7008+ - captcha-capmonster
7009+
7010+ # Uses Cabal's "library internal" stanza feature
7011+ - s3-signer
7012+
7013+ # Due to cycles, which are actually just limitations in Stack right now.
7014+ - HUnit
7015+ - attoparsec
7016+ - base-orphans # via hspec
7017+ - bifunctors # via hspec
7018+ - call-stack
7019+ - case-insensitive
7020+ - clock
7021+ - criterion
7022+ - distributive # via hspec
7023+ - doctest # via hspec
7024+ - foundation
7025+ - hspec
7026+ - hspec-discover # via logging-facade/mockery
7027+ - js-flot
7028+ - js-jquery
7029+ - nanospec
7030+ - optparse-applicative # via QuickCheck
7031+ - primitive
7032+ - random
7033+ - scientific
7034+ - split
7035+ - splitmix
7036+ - tasty-expected-failure # via tasty-hedgehog
7037+ - vector # doctest
7038+ - vector-binary-instances
2820
7039
2821− # Missing foreign library
7040+ # TODO
2822− - symengine # symengine
7041+ - rpmbuild-order
2823−
7042+
7043+ # Revision to package caused it to require bounds and break
7044+ - htoml # https://github.com/commercialhaskell/stackage/issues/6239
7045+
7046+ # was in expected test failures, but seems we may have to skip
7047+ # entirely for unknown reasons, previously:
7048+ # https://github.com/clash-lang/clash-compiler/issues/1622
7049+ - clash-prelude
7050+
7051+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
7052+ #
7053+ # Test bounds issues
7054+ - ENIG # tried ENIG-0.0.1.0, but its *test-suite* requires the disabled package: test-framework-th
7055+ - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: hspec-2.8.5
7056+ - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: http-client-0.7.10
7057+ - MissingH # tried MissingH-1.4.3.0, but its *test-suite* requires the disabled package: errorcall-eq-instance
7058+ - aeson # tried aeson-1.5.6.0, but its *test-suite* does not support: hashable-time-0.3
7059+ - airship # tried airship-0.9.4, but its *test-suite* does not support: tasty-1.4.2.1
7060+ - algebraic-graphs # tried algebraic-graphs-0.5, but its *test-suite* does not support: QuickCheck-2.14.2
7061+ - antiope-core # tried antiope-core-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7062+ - antiope-core # tried antiope-core-7.5.3, but its *test-suite* requires the disabled package: aeson-lens
7063+ - antiope-messages # tried antiope-messages-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7064+ - antiope-s3 # tried antiope-s3-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7065+ - antiope-sns # tried antiope-sns-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7066+ - antiope-sqs # tried antiope-sqs-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7067+ - arbor-lru-cache # tried arbor-lru-cache-0.1.1.1, but its *test-suite* does not support: hspec-2.8.5
7068+ - asif # tried asif-6.0.4, but its *test-suite* does not support: doctest-0.18.2
7069+ - avro # tried avro-0.5.2.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7070+ - barrier # tried barrier-0.1.1, but its *test-suite* does not support: lens-family-core-2.1.0
7071+ - barrier # tried barrier-0.1.1, but its *test-suite* does not support: tasty-1.4.2.1
7072+ - bits-extra # tried bits-extra-0.0.2.0, but its *test-suite* does not support: hspec-2.8.5
7073+ - blaze-html # tried blaze-html-0.9.1.2, but its *test-suite* does not support: QuickCheck-2.14.2
7074+ - bloodhound # tried bloodhound-0.18.0.0, but its *test-suite* requires the disabled package: quickcheck-properties
7075+ - boolean-normal-forms # tried boolean-normal-forms-0.0.1.1, but its *test-suite* does not support: QuickCheck-2.14.2
7076+ - cassava-conduit # tried cassava-conduit-0.6.0, but its *test-suite* does not support: QuickCheck-2.14.2
7077+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: hspec-2.8.5
7078+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: servant-server-0.18.3
7079+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: warp-3.3.18
7080+ - clay # tried clay-0.13.3, but its *test-suite* does not support: hspec-2.8.5
7081+ - clay # tried clay-0.13.3, but its *test-suite* does not support: hspec-discover-2.8.5
7082+ - colour # tried colour-2.3.6, but its *test-suite* does not support: random-1.2.1
7083+ - csg # tried csg-0.1.0.6, but its *test-suite* does not support: doctest-0.18.2
7084+ - csg # tried csg-0.1.0.6, but its *test-suite* does not support: tasty-1.4.2.1
7085+ - darcs # tried darcs-2.16.4, but its *test-suite* does not support: QuickCheck-2.14.2
7086+ - dhall-lsp-server # tried dhall-lsp-server-1.0.17, but its *test-suite* does not support: lsp-test-0.14.0.2
7087+ - distributed-process-lifted # tried distributed-process-lifted-0.3.0.1, but its *test-suite* does not support: network-transport-tcp-0.8.0
7088+ - distributed-process-lifted # tried distributed-process-lifted-0.3.0.1, but its *test-suite* requires the disabled package: rematch
7089+ - doldol # tried doldol-0.4.1.2, but its *test-suite* requires the disabled package: test-framework-th
7090+ - drawille # tried drawille-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7091+ - dual-tree # tried dual-tree-0.2.3.0, but its *test-suite* requires the disabled package: testing-feat
7092+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: QuickCheck-2.14.2
7093+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: directory-1.3.6.2
7094+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: doctest-0.18.2
7095+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: hlint-3.3.6
7096+ - edit # tried edit-1.0.1.0, but its *test-suite* does not support: doctest-0.18.2
7097+ - edit # tried edit-1.0.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7098+ - elm-street # tried elm-street-0.1.0.4, but its *test-suite* does not support: hspec-2.8.5
7099+ - errors-ext # tried errors-ext-0.4.2, but its *test-suite* requires the disabled package: binary-ext
7100+ - euler-tour-tree # tried euler-tour-tree-0.1.1.0, but its *test-suite* requires the disabled package: sequence
7101+ - eventsource-stub-store # tried eventsource-stub-store-1.1.1, but its *test-suite* requires the disabled package: eventsource-store-specs
7102+ - extensible-effects # tried extensible-effects-5.0.0.1, but its *test-suite* requires the disabled package: test-framework-th
7103+ - filtrable # tried filtrable-0.1.6.0, but its *test-suite* does not support: tasty-1.4.2.1
7104+ - focuslist # tried focuslist-0.1.1.0, but its *test-suite* does not support: genvalidity-1.0.0.1
7105+ - focuslist # tried focuslist-0.1.1.0, but its *test-suite* does not support: validity-0.12.0.0
7106+ - ftp-client # tried ftp-client-0.5.1.4, but its *test-suite* does not support: tasty-1.4.2.1
7107+ - ftp-client # tried ftp-client-0.5.1.4, but its *test-suite* does not support: tasty-hspec-1.2
7108+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: QuickCheck-2.14.2
7109+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: bitvec-1.1.2.0
7110+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: groups-0.5.3
7111+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: integer-gmp-1.1
7112+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: semirings-0.6
7113+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: tasty-1.4.2.1
7114+ - generic-xmlpickler # tried generic-xmlpickler-0.1.0.6, but its *test-suite* does not support: tasty-1.4.2.1
7115+ - ghc-prof # tried ghc-prof-1.4.1.9, but its *test-suite* does not support: attoparsec-0.14.4
7116+ - gitlib-libgit2 # tried gitlib-libgit2-3.1.2.1, but its *test-suite* requires the disabled package: gitlib-test
7117+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-2.8.5
7118+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-discover-2.8.5
7119+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: optparse-applicative-0.16.1.0
7120+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: tree-diff-0.2.1.1
7121+ - haskell-names # tried haskell-names-0.9.9, but its *test-suite* does not support: tasty-1.4.2.1
7122+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7123+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* requires the disabled package: knob
7124+ - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: Glob-0.10.2
7125+ - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7126+ - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: network-3.1.2.7
7127+ - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7128+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: polyparse-1.13
7129+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7130+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: time-1.9.3
7131+ - haskell-tools-rewrite # tried haskell-tools-rewrite-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7132+ - haskey-mtl # tried haskey-mtl-0.3.1.0, but its *test-suite* does not support: lens-5.0.1
7133+ - hasmin # tried hasmin-1.0.3, but its *test-suite* does not support: doctest-0.18.2
7134+ - heist # tried heist-1.1.0.1, but its *test-suite* does not support: lens-5.0.1
7135+ - hidden-char # tried hidden-char-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7136+ - hspec-tables # tried hspec-tables-0.0.1, but its *test-suite* does not support: hspec-2.8.5
7137+ - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7138+ - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: base-4.15.1.0
7139+ - http-streams # tried http-streams-0.8.9.4, but its *test-suite* requires the disabled package: snap-server
7140+ - hw-balancedparens # tried hw-balancedparens-0.4.1.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7141+ - hw-bits # tried hw-bits-0.7.2.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7142+ - hw-conduit # tried hw-conduit-0.2.1.0, but its *test-suite* does not support: hspec-2.8.5
7143+ - hw-dsv # tried hw-dsv-0.4.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7144+ - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7145+ - hw-excess # tried hw-excess-0.2.3.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7146+ - hw-fingertree # tried hw-fingertree-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7147+ - hw-fingertree-strict # tried hw-fingertree-strict-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7148+ - hw-int # tried hw-int-0.0.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7149+ - hw-ip # tried hw-ip-2.4.2.0, but its *test-suite* does not support: hspec-2.8.5
7150+ - hw-json # tried hw-json-1.3.2.2, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7151+ - hw-json-simple-cursor # tried hw-json-simple-cursor-0.1.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7152+ - hw-json-standard-cursor # tried hw-json-standard-cursor-0.2.3.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7153+ - hw-mquery # tried hw-mquery-0.2.1.0, but its *test-suite* does not support: hspec-2.8.5
7154+ - hw-packed-vector # tried hw-packed-vector-0.2.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7155+ - hw-parser # tried hw-parser-0.1.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7156+ - hw-prim # tried hw-prim-0.6.3.0, but its *test-suite* does not support: hspec-2.8.5
7157+ - hw-rankselect # tried hw-rankselect-0.13.4.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7158+ - hw-rankselect-base # tried hw-rankselect-base-0.3.4.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7159+ - hw-simd # tried hw-simd-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7160+ - hw-streams # tried hw-streams-0.0.1.0, but its *test-suite* does not support: hspec-2.8.5
7161+ - hw-xml # tried hw-xml-0.5.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7162+ - indexed-containers # tried indexed-containers-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7163+ - irc-dcc # tried irc-dcc-2.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7164+ - irc-dcc # tried irc-dcc-2.0.1, but its *test-suite* does not support: tasty-hspec-1.2
7165+ - json-rpc-client # tried json-rpc-client-0.2.5.0, but its *test-suite* does not support: QuickCheck-2.14.2
7166+ - jwt # tried jwt-0.11.0, but its *test-suite* does not support: doctest-0.18.2
7167+ - libjwt-typed # tried libjwt-typed-0.2, but its *test-suite* does not support: hspec-2.8.5
7168+ - libjwt-typed # tried libjwt-typed-0.2, but its *test-suite* does not support: hspec-core-2.8.5
7169+ - libraft # tried libraft-0.5.0.0, but its *test-suite* requires the disabled package: quickcheck-state-machine
7170+ - linear-accelerate # tried linear-accelerate-0.7.0.0, but its *test-suite* does not support: doctest-0.18.2
7171+ - lrucaching # tried lrucaching-0.3.3, but its *test-suite* does not support: hspec-2.8.5
7172+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: Glob-0.10.2
7173+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7174+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: base-4.15.1.0
7175+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: doctest-0.18.2
7176+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-1.4.2.1
7177+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-hunit-0.10.0.3
7178+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-quickcheck-0.10.2
7179+ - map-syntax # tried map-syntax-0.3, but its *test-suite* does not support: hspec-2.8.5
7180+ - menshen # tried menshen-0.0.3, but its *test-suite* does not support: QuickCheck-2.14.2
7181+ - messagepack # tried messagepack-0.5.4, but its *test-suite* requires the disabled package: test-framework-th
7182+ - monad-par # tried monad-par-0.3.5, but its *test-suite* requires the disabled package: test-framework-th
7183+ - msgpack # tried msgpack-1.0.1.0, but its *test-suite* does not support: QuickCheck-2.14.2
7184+ - msgpack # tried msgpack-1.0.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7185+ - multistate # tried multistate-0.8.0.3, but its *test-suite* does not support: hspec-2.8.5
7186+ - nakadi-client # tried nakadi-client-0.7.0.0, but its *test-suite* does not support: classy-prelude-1.5.0.2
7187+ - netrc # tried netrc-0.2.0.0, but its *test-suite* does not support: tasty-1.4.2.1
7188+ - network-transport-inmemory # tried network-transport-inmemory-0.5.2, but its *test-suite* does not support: network-transport-tests-0.3.0
7189+ - numhask-prelude # tried numhask-prelude-0.5.0, but its *test-suite* does not support: doctest-0.18.2
7190+ - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell
7191+ - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell-quickcheck
7192+ - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-2.8.5
7193+ - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-discover-2.8.5
7194+ - partial-semigroup # tried partial-semigroup-0.5.1.14, but its *test-suite* does not support: doctest-0.18.2
7195+ - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
7196+ - postgrest # tried postgrest-8.0.0, but its *test-suite* does not support: hspec-2.8.5
7197+ - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: HUnit-1.6.2.0
7198+ - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: QuickCheck-2.14.2
7199+ - qnap-decrypt # tried qnap-decrypt-0.3.5, but its *test-suite* does not support: hspec-2.8.5
7200+ - quickcheck-state-machine # tried quickcheck-state-machine-0.7.1, but its *test-suite* requires the disabled package: hs-rqlite
7201+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: hspec-2.8.5
7202+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: servant-server-0.18.3
7203+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: warp-3.3.18
7204+ - records-sop # tried records-sop-0.1.1.0, but its *test-suite* does not support: hspec-2.8.5
7205+ - req-url-extra # tried req-url-extra-0.1.1.0, but its *test-suite* does not support: hspec-2.8.5
7206+ - safeio # tried safeio-0.0.5.0, but its *test-suite* requires the disabled package: test-framework-th
7207+ - salak-toml # tried salak-toml-0.3.5.3, but its *test-suite* does not support: QuickCheck-2.14.2
7208+ - scalendar # tried scalendar-1.2.0, but its *test-suite* requires the disabled package: SCalendar
7209+ - schematic # tried schematic-0.5.1.0, but its *test-suite* does not support: base-4.15.1.0
7210+ - servant-auth-client # tried servant-auth-client-0.4.1.0, but its *test-suite* does not support: hspec-discover-2.8.5
7211+ - servant-auth-server # tried servant-auth-server-0.4.6.0, but its *test-suite* does not support: hspec-2.8.5
7212+ - servant-auth-server # tried servant-auth-server-0.4.6.0, but its *test-suite* does not support: hspec-discover-2.8.5
7213+ - servant-docs # tried servant-docs-0.11.9, but its *test-suite* does not support: tasty-1.4.2.1
7214+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* does not support: hspec-2.8.5
7215+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* does not support: hspec-discover-2.8.5
7216+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* requires the disabled package: language-ecmascript
7217+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: aeson-1.5.6.0
7218+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: hspec-2.8.5
7219+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: http-api-data-0.4.3
7220+ - servant-mock # tried servant-mock-0.8.7, but its *test-suite* does not support: hspec-wai-0.11.1
7221+ - servant-quickcheck # tried servant-quickcheck-0.0.10.0, but its *test-suite* does not support: hspec-core-2.8.5
7222+ - servant-streaming # tried servant-streaming-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7223+ - servant-streaming-client # tried servant-streaming-client-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7224+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7225+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: streaming-bytestring-0.2.1
7226+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: warp-3.3.18
7227+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: doctest-0.18.2
7228+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: hspec-2.8.5
7229+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: hspec-discover-2.8.5
7230+ - servant-yaml # tried servant-yaml-0.1.0.1, but its *test-suite* does not support: aeson-1.5.6.0
7231+ - servant-yaml # tried servant-yaml-0.1.0.1, but its *test-suite* does not support: servant-server-0.18.3
7232+ - sessiontypes-distributed # tried sessiontypes-distributed-0.1.1, but its *test-suite* does not support: hspec-2.8.5
7233+ - sessiontypes-distributed # tried sessiontypes-distributed-0.1.1, but its *test-suite* does not support: network-transport-tcp-0.8.0
7234+ - sexpr-parser # tried sexpr-parser-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
7235+ - simple-log # tried simple-log-0.9.12, but its *test-suite* does not support: hspec-2.8.5
7236+ - sized-grid # tried sized-grid-0.2.0.1, but its *test-suite* does not support: ansi-terminal-0.11.1
7237+ - snap # tried snap-1.1.3.1, but its *test-suite* does not support: QuickCheck-2.14.2
7238+ - stb-image-redux # tried stb-image-redux-0.2.1.2, but its *test-suite* does not support: hspec-2.8.5
7239+ - stm-supply # tried stm-supply-0.2.0.0, but its *test-suite* requires the disabled package: Unique
7240+ - streaming-cassava # tried streaming-cassava-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
7241+ - stripe-http-client # tried stripe-http-client-2.6.2, but its *test-suite* does not support: hspec-2.8.5
7242+ - superbuffer # tried superbuffer-0.3.1.1, but its *test-suite* does not support: HTF-0.14.0.6
7243+ - superbuffer # tried superbuffer-0.3.1.1, but its *test-suite* does not support: QuickCheck-2.14.2
7244+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: lens-5.0.1
7245+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7246+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: tasty-hedgehog-1.1.0.0
7247+ - sv-core # tried sv-core-0.5, but its *test-suite* does not support: tasty-1.4.2.1
7248+ - sydtest-yesod # tried sydtest-yesod-0.3.0.0, but its *test-suite* requires the disabled package: sydtest-persistent-sqlite
7249+ - system-fileio # tried system-fileio-0.3.16.4, but its *test-suite* requires the disabled package: chell
7250+ - system-filepath # tried system-filepath-0.4.14, but its *test-suite* requires the disabled package: chell
7251+ - system-filepath # tried system-filepath-0.4.14, but its *test-suite* requires the disabled package: chell-quickcheck
7252+ - tar # tried tar-0.5.1.1, but its *test-suite* requires the disabled package: bytestring-handle
7253+ - temporary-resourcet # tried temporary-resourcet-0.1.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7254+ - test-framework # tried test-framework-0.8.2.0, but its *test-suite* requires the disabled package: libxml
7255+ - transient # tried transient-0.7.0.0, but its *test-suite* does not support: random-1.2.1
7256+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7257+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: generic-random-1.5.0.1
7258+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
7259+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* requires the disabled package: time-qq
7260+ - ucam-webauth-types # tried ucam-webauth-types-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
7261+ - uniprot-kb # tried uniprot-kb-0.1.2.0, but its *test-suite* does not support: QuickCheck-2.14.2
7262+ - uniprot-kb # tried uniprot-kb-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7263+ - validation # tried validation-1.1.2, but its *test-suite* does not support: lens-5.0.1
7264+ - validation-selective # tried validation-selective-0.1.0.1, but its *test-suite* does not support: hspec-2.8.5
7265+ - web-routes-th # tried web-routes-th-0.22.6.6, but its *test-suite* does not support: hspec-2.8.5
7266+ - web3 # tried web3-0.9.1.0, but its *test-suite* does not support: hspec-discover-2.8.5
7267+ - web3 # tried web3-0.9.1.0, but its *test-suite* does not support: random-1.2.1
7268+ - wreq # tried wreq-0.5.3.3, but its *test-suite* requires the disabled package: snap-server
7269+ - xmlhtml # tried xmlhtml-0.2.5.2, but its *test-suite* does not support: hspec-2.8.5
7270+ - yesod-static-angular # tried yesod-static-angular-0.1.8, but its *test-suite* does not support: yesod-test-1.6.12
7271+ - zm # tried zm-0.3.2, but its *test-suite* does not support: doctest-0.18.2
7272+ - zm # tried zm-0.3.2, but its *test-suite* does not support: tasty-1.4.2.1
7273+ - zm # tried zm-0.3.2, but its *test-suite* does not support: tasty-quickcheck-0.10.2
7274+ - zm # tried zm-0.3.2, but its *test-suite* does not support: timeit-2.0
7275+ # End of Test bounds issues
7276+
7277+ # https://github.com/commercialhaskell/stackage/issues/6363
7278+ - amqp
2824
7279
2825− # Wontfix. The maintainer chose to keep these broken/outdated, only
7280+ - c2hs # https://github.com/commercialhaskell/stackage/issues/6420
2826− # re-enable if requested.
2827− - postgresql-binary # https://github.com/nikita-volkov/postgresql-binary/issues/6#issuecomment-243063139
2828
7281
2829# end of skipped-tests
7282# end of skipped-tests
2830
7283
2831−# Tests which we should build and run, but which are expected to fail. We
7284+# Tests listed in expected-test-failures configure correctly but may fail to run
7285+# or even build correctly. A Stackage build should not fail based on a test build
2832−# should not fail a build based on a test failure for one of these packages.
7286+# or test run failure for these packages.
7287+# (Testsuites which can't configure should be placed under skipped-tests.)
7288+#
7289+# We need to build and run test suites to verify if tests listed here
7290+# can be re-enabled, so we usually wait for the maintainer to file a
7291+# PR to re-enable them.
2833expected-test-failures:
7292expected-test-failures:
2834
7293
2835 # Intermittent failures or unreliable. These tests may pass when
7294 # Intermittent failures or unreliable. These tests may pass when
2836− # re-enabled, but will eventually fail again. Only remove these
7295+ # re-enabled, but will eventually fail again.
2837− # from expected-failures if we know a fix has been released.
7296+ #
2838 - aeson-lens # https://github.com/tanakh/aeson-lens/issues/10
7297 - aeson-lens # https://github.com/tanakh/aeson-lens/issues/10
7298+ - base64 # https://github.com/emilypi/base64/issues/31
7299+ - binary-instances # https://github.com/haskellari/binary-instances/issues/7
2839 - cabal-debian # https://github.com/ddssff/cabal-debian/issues/50
7300 - cabal-debian # https://github.com/ddssff/cabal-debian/issues/50
7301+ - capataz # https://github.com/roman/Haskell-capataz/issues/6
7302+ - concurrent-extra # https://github.com/basvandijk/concurrent-extra/issues/12
2840 - crypto-numbers
7303 - crypto-numbers
2841− - css-text # 0.1.2.2 https://github.com/yesodweb/css-text/issues/10
7304+ - css-text # 0.1.3.0 https://github.com/yesodweb/css-text/issues/10
2842 - distributed-process
7305 - distributed-process
2843 - distributed-process-execution # https://github.com/haskell-distributed/distributed-process-execution/issues/2
7306 - distributed-process-execution # https://github.com/haskell-distributed/distributed-process-execution/issues/2
2844 - distributed-process-task
7307 - distributed-process-task
7308+ - fft # test-fft: exited with: ExitFailure (-11)
7309+ - foldl-statistics # https://github.com/data61/foldl-statistics/issues/2
2845 - fsnotify # Often runs out of inotify handles
7310 - fsnotify # Often runs out of inotify handles
7311+ - hastache
2846 - idris # https://github.com/fpco/stackage/issues/1382
7312 - idris # https://github.com/fpco/stackage/issues/1382
2847 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
7313 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
2848 - math-functions # https://github.com/bos/math-functions/issues/25
7314 - math-functions # https://github.com/bos/math-functions/issues/25
7315+ - mltool # https://github.com/Alexander-Ignatyev/mltool/issues/1
2849 - network # Unfortunately network failures seem to happen haphazardly
7316 - network # Unfortunately network failures seem to happen haphazardly
2850 - nsis # Intermittent on non-Windows systems
7317 - nsis # Intermittent on non-Windows systems
2851− - pandoc-citeproc # https://github.com/jgm/pandoc-citeproc/issues/172
2852− - spdx # https://github.com/phadej/spdx/issues/8
2853 - statistics # https://github.com/bos/statistics/issues/42
7318 - statistics # https://github.com/bos/statistics/issues/42
2854
7319
2855− # Timeouts
2856− # These tests sometimes take too long and hit the stackage build
2857− # servers time limit so these shouldn't be removed from
2858− # expected-tests unless we know a fix has been released.
2859− - cabal-helper
2860− - graphviz
2861− - punycode
2862− - zip
2863−
2864− # Requires running servers, accounts, or a specific
7320+ # Requires running servers, accounts, or a specific environment.
2865− # environment. These shouldn't be re-enabled unless we know a fix
7321+ #
2866− # has been released.
7322+ # If a maintainer wants us to run a partial tests suite with tests
2867− - mysql-haskell # Requires local mysql server with a test account, and binlog enabled.
7323+ # that do not require external dependencies, see
7324+ # https://github.com/commercialhaskell/stackage/issues/6172#issuecomment-902072030
7325+ #
7326+ - matplotlib # https://github.com/fpco/stackage/issues/2365
2868 - GLFW-b # X
7327 - GLFW-b # X
2869 - HTF # Requires shell script and are incompatible with sandboxed package databases
7328 - HTF # Requires shell script and are incompatible with sandboxed package databases
2870− - HaRe # # Needs ~/.ghc-mod/cabal-helper https://github.com/fpco/stackage/pull/906
7329+ - HaRe # Needs ~/.ghc-mod/cabal-helper https://github.com/fpco/stackage/pull/906
7330+ - IPv6DB
7331+ - accelerate-bignum # CUDA GPU
7332+ - alex
2871 - amqp
7333 - amqp
2872 - aws # AWS Credentials
7334 - aws # AWS Credentials
7335+ - beam-postgres # requires Postgress instance
2873 - bindings-GLFW # Expects running X server
7336 - bindings-GLFW # Expects running X server
2874 - bitcoin-api
7337 - bitcoin-api
2875 - bitcoin-api-extra
7338 - bitcoin-api-extra
2876− - bitcoin-api-extra
2877 - bloodhound # ElasticSearch
7339 - bloodhound # ElasticSearch
2878 - cabal-install
7340 - cabal-install
7341+ - cayley-client
2879 - consul-haskell
7342 - consul-haskell
7343+ - cql-io # Cassandra
7344+ - credential-store # requieres dbus sockets
7345+ - datadog # requires API keys in env vars https://github.com/fpco/stackage/pull/3308#issuecomment-369535040
7346+ - dbcleaner # Requires running PostgreSQL server
2880 - dbmigrations # PostgreSQL
7347 - dbmigrations # PostgreSQL
2881− - dns # https://github.com/kazu-yamamoto/dns/issues/29
7348+ - dns # https://github.com/commercialhaskell/stackage/issues/6374
2882 - drifter-postgresql # PostgreSQL
7349 - drifter-postgresql # PostgreSQL
2883− - ersatz # Requires SAT solver
7350+ - egison # executable not found https://github.com/egison/egison/issues/250
7351+ - esqueleto # mysql and postgresql
2884 - etcd # etcd https://github.com/fpco/stackage/issues/811
7352 - etcd # etcd https://github.com/fpco/stackage/issues/811
7353+ - eventful-dynamodb
7354+ - eventful-postgresql
7355+ - eventsource-geteventstore-store
2885 - eventstore # Event Store
7356 - eventstore # Event Store
7357+ - faktory # connection refused, https://github.com/commercialhaskell/stackage/issues/5905
2886 - fb # Facebook app
7358 - fb # Facebook app
7359+ - gdax # Needs environment variables set
2887 - ghc-imported-from # depends on haddocks being generated first https://github.com/fpco/stackage/pull/1315
7360 - ghc-imported-from # depends on haddocks being generated first https://github.com/fpco/stackage/pull/1315
2888 - ghc-mod # https://github.com/DanielG/ghc-mod/issues/611
7361 - ghc-mod # https://github.com/DanielG/ghc-mod/issues/611
7362+ - githash # Needs a git repo
2889 - gitson # 0.5.2 error with git executable https://github.com/myfreeweb/gitson/issues/1
7363 - gitson # 0.5.2 error with git executable https://github.com/myfreeweb/gitson/issues/1
2890 - gitson # https://github.com/myfreeweb/gitson/issues/1
7364 - gitson # https://github.com/myfreeweb/gitson/issues/1
2891 - happy # Needs mtl in the user package DB
7365 - happy # Needs mtl in the user package DB
2892 - haskell-neo4j-client # neo4j with auth disabled
7366 - haskell-neo4j-client # neo4j with auth disabled
7367+ - haskell-tools-cli # https://github.com/haskell-tools/haskell-tools/issues/230
7368+ - haskell-tools-refactor # https://github.com/haskell-tools/haskell-tools/issues/231
2893 - hasql # PostgreSQL
7369 - hasql # PostgreSQL
7370+ - hasql-notifications # PostgreSQL
7371+ - hasql-queue
7372+ - hasql-transaction # PostgreSQL
2894 - hedis
7373 - hedis
7374+ - hie-bios # cabal, stack, ghc; see https://github.com/commercialhaskell/stackage/issues/5025
7375+ - hjsmin # Test-runner expects a cabal-style 'dist-newstyle' directory
7376+ - hnix # #5469/closed
2895 - hocilib # oracle
7377 - hocilib # oracle
7378+ - http-client # httpbin issues, https://github.com/snoyberg/http-client/issues/439
7379+ - http-directory # httpbin issues, https://github.com/juhp/http-directory/issues/1
7380+ - http2 # executable not found https://github.com/kazu-yamamoto/http2/issues/22
2896 - hworker
7381 - hworker
7382+ - influxdb
7383+ - json-autotype # Requires filesystem access
7384+ - jvm
2897 - katip-elasticsearch # elasticsearch
7385 - katip-elasticsearch # elasticsearch
7386+ - log # ElasticSearch
7387+ - lsp-test
7388+ - lxd-client # Needs LXD, not available on debian
7389+ - lz4 # executable not found https://github.com/commercialhaskell/stackage/issues/6226
2898 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
7390 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
2899 - memcached-binary # memcached
7391 - memcached-binary # memcached
2900− - mongoDB # mongoDB - https://github.com/mongodb-haskell/mongodb/issues/61
7392+ - milena
7393+ - mongoDB # Requires local MongoDB server
2901 - mysql # MySQL
7394 - mysql # MySQL
7395+ - mysql-haskell # Requires local mysql server with a test account, and binlog enabled.
2902 - mysql-simple # MySQL
7396 - mysql-simple # MySQL
2903 - network-anonymous-i2p
7397 - network-anonymous-i2p
7398+ - nri-kafka # requires kafka
7399+ - nri-postgresql # requires postgres
7400+ - nri-redis # requires redis
7401+ - odbc # "Need ODBC_TEST_CONNECTION_STRING environment variable"
2904 - opaleye # PostgreSQL
7402 - opaleye # PostgreSQL
7403+ - optima # `demo` invoked with bad arguments https://github.com/commercialhaskell/stackage/pull/6102
7404+ - pandoc-plot # requires matlab, etc and DISPLAY for tcltk
7405+ - pantry # https://github.com/commercialhaskell/stackage/issues/4628
7406+ - peregrin # Requires running pg-harness-server
2905 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
7407 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
2906 - pipes-mongodb
7408 - pipes-mongodb
7409+ - postgresql-libpq-notify
2907 - postgresql-query # PostgreSQL
7410 - postgresql-query # PostgreSQL
2908 - postgresql-simple # PostgreSQL
7411 - postgresql-simple # PostgreSQL
7412+ - postgresql-simple-migration
7413+ - postgresql-simple-queue
7414+ - postgresql-syntax # hedgehog-test executable not found https://github.com/commercialhaskell/stackage/pull/6102
7415+ - postgresql-typed # PostgreSQL
7416+ - postgrest # PostgreSQL
2909 - purescript # git 128 https://github.com/purescript/purescript/issues/2292
7417 - purescript # git 128 https://github.com/purescript/purescript/issues/2292
7418+ - rattle # needs fsatrace
2910 - redis-io
7419 - redis-io
7420+ - rel8
2911 - rethinkdb
7421 - rethinkdb
2912 - rethinkdb-client-driver
7422 - rethinkdb-client-driver
2913− - riak
7423+ - riak # needs riak server on localhost:8098
7424+ - sdl2 # "Failed to connect to the Mir Server"
7425+ - sendgrid-v3 # Requires sendgrid API key in env #5951/closed
2914 - serialport # "The tests need two serial ports as command line arguments" https://github.com/jputcu/serialport/issues/30
7426 - serialport # "The tests need two serial ports as command line arguments" https://github.com/jputcu/serialport/issues/30
2915 - serversession-backend-redis # redis
7427 - serversession-backend-redis # redis
2916 - shake # Needs ghc on $PATH with some installed haskell packages
7428 - shake # Needs ghc on $PATH with some installed haskell packages
2917− - singletons # Needs ghc on $PATH with som installed haskell packages
7429+ - slack-api # needs api key https://github.com/commercialhaskell/stackage/pull/5345
7430+ - stripe-http-streams # https://github.com/fpco/stackage/issues/2945, needs Stripe account
7431+ - sourcemap # requires npm installed packages
7432+ - users-persistent # sqlite
2918 - users-postgresql-simple # PostgreSQL
7433 - users-postgresql-simple # PostgreSQL
2919 - wai-cors # PhantomJS
7434 - wai-cors # PhantomJS
7435+ - wai-rate-limit-redis # Redis
2920 - wai-session-postgresql # PostgreSQL
7436 - wai-session-postgresql # PostgreSQL
7437+ - wai-session-redis # https://github.com/commercialhaskell/stackage/pull/5980
7438+ - web3 # requires running server
2921 - webdriver-angular # webdriver server
7439 - webdriver-angular # webdriver server
2922− - yahoo-finance-api # Requires being able to access Yahoo Finance API
7440+ - websockets
2923−
2924− # Deprecated
2925− # Eventually we'll have to disable these packages completely.
2926− - doctest-prop # https://github.com/fpco/stackage/issues/1817
2927− - system-filepath # https://github.com/jmillikin/haskell-filesystem/issues/3
2928
7441
2929 # Missing test files in sdist
7442 # Missing test files in sdist
2930− # Hopefully gets fixed in the next release...
7443+ #
2931− - angel # https://github.com/MichaelXavier/Angel/issues/43
7444+ # The cause is that a test suite requires a file that is not
2932− - camfort # 0.900 https://github.com/camfort/camfort/issues/41
7445+ # present in the tarball that is uploaded to Hackage. It can be
7446+ # fixed by adding these files to `extra-source-files` in the
7447+ # .cabal file.
7448+ #
7449+ - bugsnag-haskell # https://github.com/commercialhaskell/stackage/issues/6372
7450+ - cpio-conduit # Test file not in tarball https://github.com/da-x/cpio-conduit/issues/1
2933 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7451 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7452+ - doctest-discover # https://github.com/karun012/doctest-discover/issues/33
2934− - ghc-events # https://github.com/haskell/ghc-events/issues/9
7453+ - ghc-events # https://github.com/haskell/ghc-events/issues/70
2935− - graylog # 0.1.0.1 https://github.com/fpco/stackage/pull/1254
7454+ - gitlab-haskell # https://github.com/commercialhaskell/stackage/issues/6088
2936− - haskell-names # 0.7.0 https://github.com/haskell-suite/haskell-names/issues/78
7455+ - hspec-core # https://github.com/commercialhaskell/stackage/issues/6291
7456+ - hspec-junit-formatter # https://github.com/freckle/hspec-junit-formatter/issues/14
2937− - rematch # No issue tracker, sent e-mail to maintainer https://github.com/fpco/stackage/issues/376
7457+ - persistent # https://github.com/commercialhaskell/stackage/issues/6037
2938− - xlsior # https://github.com/rcallahan/xlsior/issues/1
7458+ - reanimate-svg # https://github.com/commercialhaskell/stackage/issues/5688
2939−
7459+
7460+ # Testcase assertion failures, or other runtime failures.
2940− # Assertion failures, these can be real bugs or just limitations
7461+ # These can be real testsuite bugs, or maybe limitations in test cases or the test setup.
2941− # in the test cases.
7462+ #
2942− - DRBG # https://github.com/TomMD/DRBG/issues/7
7463+ - dbus # https://github.com/commercialhaskell/stackage/issues/6373
2943− - cayley-client # https://github.com/MichelBoucey/cayley-client/issues/2
7464+ - generic-optics # optimization output https://github.com/kcsongor/generic-lens/issues/133
2944− - clash-prelude # 0.10.14 Runtime errors https://github.com/clash-lang/clash-prelude/issues/57
7465+ - binary-parsers # runtime failure https://github.com/winterland1989/binary-parsers/issues/3
2945− - direct-sqlite # 2.3.17 https://github.com/IreneKnapp/direct-sqlite/issues/63
7466+ - JuicyPixels-blurhash
7467+ - aeson-casing
7468+ - algebraic-graphs # Module not visible https://github.com/commercialhaskell/stackage/issues/4670
7469+ - base32
7470+ - blaze-colonnade
7471+ - bsb-http-chunked
7472+ - c2hs
7473+ - cfenv # https://github.com/tomphp/haskell-cfenv/issues/1
2946− - ed25519 # 0.0.5.0 https://github.com/thoughtpolice/hs-ed25519/issues/15
7474+ - character-cases # 0.1.0.6 https://github.com/aiya000/hs-character-cases/issues/3
7475+ - colonnade
7476+ - composable-associations-aeson
7477+ - control-dsl
7478+ - crypto-enigma
7479+ - curl-runnings
7480+ - debian
7481+ - dhall-yaml # https://github.com/commercialhaskell/stackage/issues/5640
7482+ - dimensional
7483+ - doctest-parallel # https://github.com/commercialhaskell/stackage/issues/6380
7484+ - download # https://github.com/fpco/stackage/issues/2811
7485+ - duration
7486+ - ede
7487+ - error # https://github.com/commercialhaskell/stackage/issues/6300
7488+ - exp-pairs # https://github.com/Bodigrim/exp-pairs/issues/16
7489+ - fixed-vector-hetero
7490+ - freckle-app # 1.0.0.4 https://github.com/commercialhaskell/stackage/issues/6197
7491+ - genvalidity-persistent
7492+ - genvalidity-property
7493+ - ghc-prof
7494+ - gingersnap
7495+ - github-types
7496+ - haskeline # https://github.com/commercialhaskell/stackage/issues/5439
7497+ - haskell-src-exts # https://github.com/commercialhaskell/stackage/issues/5151
7498+ - haskoin-core
7499+ - hpack # https://github.com/commercialhaskell/stackage/issues/4512
7500+ - hpack-dhall # https://github.com/BlockScope/hpack-dhall/issues/25
7501+ - hspec-golden-aeson
7502+ - incremental-parser # 0.5.0.2
7503+ - jose
7504+ - justified-containers
7505+ - jwt
7506+ - katip
7507+ - language-docker # https://github.com/commercialhaskell/stackage/issues/5407
7508+ - lens-regex
7509+ - list-transformer
7510+ - lz4-frame-conduit # https://github.com/nh2/lz4-frame-conduit/issues/3
7511+ - massiv-io
7512+ - megaparsec-tests # 9.2.0
7513+ - mighty-metropolis # https://github.com/jtobin/mighty-metropolis/issues/6
7514+ - mixpanel-client # https://github.com/domenkozar/mixpanel-client/issues/7
7515+ - mmark # https://github.com/mmark-md/mmark/issues/80
7516+ - mmark-ext # https://github.com/mmark-md/mmark/issues/80
7517+ - morpheus-graphql-app
7518+ - mwc-random
2947− - nettle # https://github.com/stbuehler/haskell-nettle/issues/8
7519+ - nettle # https://github.com/stbuehler/haskell-nettle/issues/10
7520+ - nri-observability # https://github.com/commercialhaskell/stackage/issues/6179
7521+ - nri-prelude # https://github.com/commercialhaskell/stackage/issues/6179
7522+ - numhask-array
7523+ - ochintin-daicho
7524+ - openapi3
7525+ - pcre-heavy
7526+ - persistent-sqlite # https://github.com/yesodweb/persistent/issues/989
7527+ - posix-paths
7528+ - prettyprinter
7529+ - prettyprinter-ansi-terminal
7530+ - rando # https://github.com/commercialhaskell/stackage/issues/4249
7531+ - rank1dynamic
7532+ - rescue
7533+ - rose-trees
7534+ - safe-decimal
7535+ - simple-affine-space
7536+ - simple-vec3 # https://github.com/commercialhaskell/stackage/pull/5410
7537+ - singletons-base
7538+ - sized
7539+ - spatial-math
7540+ - subcategories
7541+ - tasty-fail-fast
7542+ - triplesec
7543+ - turtle
7544+ - type-level-kv-list
7545+ - unicode-show
7546+ - universe-some
7547+ - universum
7548+ - utf8-conversions
7549+ - varying
7550+ - vector-algorithms
7551+ - vivid-osc
7552+ - wakame
7553+ - world-peace
2948− - th-printf # 0.3.1 https://github.com/pikajude/th-printf/issues/3
7554+ - xml-picklers # https://github.com/Philonous/xml-picklers/issues/5
2949− - wreq # https://github.com/bos/wreq/issues/53
7555+ - xmlbf
2950− - xmonad # 0.12 https://github.com/xmonad/xmonad/issues/36
7556+ - yesod-gitrev # needs a git repo https://github.com/commercialhaskell/stackage/issues/6132
7557+ - yesod-markdown # https://github.com/pbrisbin/yesod-markdown/issues/77
7558+
7559+ # Assertion failures due to module name ambiguity.
7560+ # These _should_ be fixed by using the `hide` section of this file
7561+ - reanimate # https://github.com/commercialhaskell/stackage/issues/5626
2951
7562
2952 # Compilation failures
7563 # Compilation failures
2953− - ListLike # No issue tracker, e-mail sent to maintainer
7564+ - blake2 # 0.3.0
2954− - dbus # 0.10.12 No issue tracker, e-mail sent to maintainer
7565+ - blas-hs # 0.1.1.0
2955− - hspec-expectations-pretty-diff # GHC 8 issue not reported upstream since issue tracker disabled
7566+ - butter # 0.1.0.6
2956− - safecopy # time 1.6 https://github.com/acid-state/safecopy/issues/45
7567+ - cabal-file-th # 0.2.7
2957− - sourcemap # https://github.com/chrisdone/sourcemap/issues/3
7568+ - cacophony # 0.10.1 https://github.com/centromere/cacophony/issues/15
2958− - text-ldap # # https://github.com/khibino/haskell-text-ldap/issues/1
7569+ - conduit-connection # 0.1.0.5
2959− - thyme # https://github.com/liyang/thyme/issues/50
7570+ - config-ini # 0.2.4.0 https://github.com/aisamanra/config-ini/issues/22
2960− - tries # https://github.com/athanclark/tries/issues/2
7571+ - construct # 0.3.0.2
2961− - wai-middleware-content-type # 0.4.1 - https://github.com/athanclark/wai-middleware-content-type/issues/2
7572+ - cryptohash # 0.11.9 Stack builds test and benchmarks in one pass so benchmark could prevent tests from getting built
2962− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
7573+ - data-diverse # 4.7.0.0
2963−
7574+ - do-notation # 0.1.0.2
2964− # Misc.
7575+ - domain-optics # 0.1.0.2 https://github.com/commercialhaskell/stackage/pull/6102
2965− - distributed-process-supervisor # # https://github.com/haskell-d
7576+ - easy-logger # https://github.com/commercialhaskell/stackage/issues/6384
2966− - ghcid # Weird conflicts with sandboxingistributed/distributed-process-supervisor/issues/1
7577+ - flat # 0.4.4
2967−
7578+ - flay # 0.4
2968− # Doctest ran across ambiguous modules
7579+ - functor-combinators # https://github.com/commercialhaskell/stackage/issues/6376
2969− # https://github.com/bergmark/blog/blob/master/2016/package-faq.md#ambiguous-modules-when-using-doctest
2970− - doctest # 0.11.0 https://github.com/sol/doctest/issues/137
2971− - jwt # https://bitbucket.org/ssaasen/haskell-jwt/issues/18/test-suite-build-failure-in-stackage
2972− - monad-logger-prefix # https://github.com/fpco/stackage/issues/1831
7580+ - generic-lens # https://github.com/commercialhaskell/stackage/issues/6377
2973− - warp # https://github.com/yesodweb/wai/issues/579
7581+ - geojson # 4.0.2
2974−
7582+ - heap # 1.0.4 https://github.com/pruvisto/heap/issues/11
2975− # Stackage upper bounds, re-enable these when their upper bound is removed
7583+ - hsini # 0.5.1.2
2976− - hindent # 4.6.4
7584+ - hweblib # 0.6.3 https://github.com/aycanirican/hweblib/issues/3
7585+ - leveldb-haskell
7586+ - mfsolve # https://github.com/commercialhaskell/stackage/issues/6379
7587+ - multiarg # 0.30.0.10
7588+ - parameterized # 0.5.0.0 https://github.com/commercialhaskell/stackage/issues/5746
7589+ - protobuf # 0.2.1.4
7590+ - record-wrangler # 0.1.1.0
7591+ - relapse # 1.0.0.0 #5948/closed
7592+ - secp256k1-haskell # #5948/closed
7593+ - servant-static-th # 1.0.0.0 Tasty issue: https://github.com/commercialhaskell/stackage/issues/6090
7594+ - snap-core # 1.0.4.2 random 1.2
7595+ - snappy # Could not find module ‘Functions’
7596+ - text-icu # 0.7.1.0 https://github.com/bos/text-icu/issues/32
7597+ - thread-supervisor # 0.2.0.0
7598+ - type-of-html-static # 0.1.0.2 https://github.com/commercialhaskell/stackage/issues/5728
7599+ - vivid-supercollider # 0.4.1.2 https://github.com/commercialhaskell/stackage/issues/4250
7600+ - xmlgen # 0.6.2.2 https://github.com/skogsbaer/xmlgen/issues/6
2977
7601
2978 # Recursive deps https://github.com/fpco/stackage/issues/1818
7602 # Recursive deps https://github.com/fpco/stackage/issues/1818
2979− - clock # 0.7.2 clock:test => tasty:lib => clock:lib
2980 - options
7603 - options
2981 - text # 1.2.2.1
7604 - text # 1.2.2.1
2982− - wai-logger # Missing build dep because of this https://github.com/kazu-yamamoto/logger/issues/42
2983
7605
2984 # Problem on the stackage build server, we need to dig deeper into
7606 # Problem on the stackage build server, we need to dig deeper into
2985 # these if we want them fixed
7607 # these if we want them fixed
2986− - stack # Permissions failure when creating /home/stackage/.stack.
7608+ - ghci-hexcalc # https://github.com/takenobu-hs/ghci-hexcalc/issues/2
7609+ - haskell-tools-daemon # openFile: permission denied https://github.com/fpco/stackage/issues/2502
7610+ - isocline # segfault https://github.com/daanx/isocline/issues/1
7611+ - rounded # segfault
7612+ - shake-language-c # Cannot reproduce locally, looks like it may be a bug in Stack or curator
2987 - skein # openfile: does not exist https://github.com/fpco/stackage/issues/1187
7613 - skein # openfile: does not exist https://github.com/fpco/stackage/issues/1187
2988
7614
2989− - snap-core # https://github.com/snapframework/snap-core/issues/26
7615+ # doctests can be flaky on the build server, add packages here if
2990−
7616+ # they start causing issues.
2991− - hackernews # https://github.com/dmjio/hackernews/issues/19
7617+ - bookkeeping
2992−
7618+ - detour-via-sci # https://github.com/commercialhaskell/stackage/issues/6360
7619+ - dhall
7620+ - doctest-driver-gen
7621+ - envelope # https://github.com/commercialhaskell/stackage/issues/6383
7622+ - email-validate
2993− - heist # https://github.com/snapframework/heist/issues/95
7623+ - fmt # https://github.com/commercialhaskell/stackage/issues/6375
2994−
7624+ - greskell
2995− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
7625+ - greskell-core
2996−
7626+ - headroom
2997− - commutative # https://github.com/athanclark/commutative/issues/4
7627+ - hint
7628+ - hledger-lib
7629+ - iproute
7630+ - kawhi
7631+ - makefile # Doctests require hidden Glob package
7632+ - multiset # Doctests require hidden Glob package
7633+ - perf
7634+ - prometheus-client
7635+ - xml-indexed-cursor
7636+ - yesod-paginator
7637+
7638+ # Misc. Please check if there is a better section before adding more packages here.
7639+ - ghc-exactprint # https://github.com/alanz/ghc-exactprint/issues/82
7640+ - ghcid # Weird conflicts with sandboxingistributed/distributed-process-supervisor/issues/1
2998
7641
2999− - docopt # https://github.com/docopt/docopt.hs/issues/29
7642+ - hspec-expectations-pretty-diff # https://github.com/unrelentingtech/hspec-expectations-pretty-diff/issues/7
7643+ - hw-kafka-client # missing exe https://github.com/commercialhaskell/stackage/pull/5542
7644+ - lzma-conduit # https://github.com/alphaHeavy/lzma-conduit/issues/19
7645+ - pandoc # https://github.com/jgm/pandoc/issues/5582
7646+ - password # Module not visible https://github.com/cdepillabout/password/issues/2
7647+ - password-instances # Module not visible https://github.com/commercialhaskell/stackage/issues/4653
7648+ - pcg-random # https://github.com/cchalmers/pcg-random/pull/7
7649+ - persistent-mongoDB # Requires a running server
7650+ - persistent-mysql # https://github.com/commercialhaskell/stackage/issues/4764
7651+ - persistent-postgresql # https://github.com/commercialhaskell/stackage/issues/4763
7652+ - pg-transact # https://github.com/jfischoff/pg-transact/issues/2
7653+ - poly
7654+ - postgresql-simple-queue # same issue as before, see also https://github.com/fpco/stackage/issues/2592 as that will fix both
7655+ - raaz # https://github.com/commercialhaskell/stackage/issues/4784
7656+ - rattletrap # OOM? https://github.com/fpco/stackage/issues/2232
7657+ - relude # doctest fails due to GHC bugs, will be fixed in the next `relude` release
7658+ - sbv
7659+ - servant-elm # https://github.com/haskell-servant/servant-elm/issues/62
7660+ - servant-ruby # Module not visible https://github.com/commercialhaskell/stackage/issues/4650
7661+ - skews # https://github.com/iij-ii/direct-hs/issues/100
7662+ - stm-delay # https://github.com/joeyadams/haskell-stm-delay/issues/5
7663+ - tar-conduit # to get fixed in version after 0.3.2 https://github.com/snoyberg/tar-conduit/issues/28
7664+ - tasty-discover # https://github.com/commercialhaskell/stackage/issues/4722
7665+ - threads # https://github.com/basvandijk/threads/issues/10
7666+ - tmp-postgres # https://github.com/jfischoff/tmp-postgres/issues/1
7667+ - yesod-core # https://github.com/yesodweb/yesod/issues/1711
7668+
7669+ # Please review the sections above before adding packages to a new section or to Misc.
3000
7670
3001# end of expected-test-failures
7671# end of expected-test-failures
3002
7672
3003−# Benchmarks which are known not to build. Note that, currently we do not run
3004−# benchmarks, and therefore failures are only for building, not running.
3005−expected-benchmark-failures:
3006− # Recursive deps https://github.com/fpco/stackage/issues/1818
3007− - attoparsec
3008− - hashable
3009− - unordered-containers # 0.2.7.1 unordered-containers:bench -> criterion:lib -> aeson:lib -> unordered-containers:lib
3010−
3011− # stack bug https://github.com/commercialhaskell/stack/issues/2153
3012− - scientific
3013− - vector-binary-instances
3014−
3015− # Missing files in sdist
3016− - cassava # https://github.com/hvr/cassava/pull/117
3017− - picoparsec # https://bitbucket.org/blamario/picoparsec/issues/3/benchmark-compilation-failure
3018−
3019− # Compilation failures
3020− - Frames # https://github.com/acowley/Frames/issues/47
3021− - cryptohash # https://github.com/vincenthz/hs-cryptohash/pull/43
3022− - dbus # No issue tracker, sent e-mail to maintainer
3023− - lens # Fixed in lens-4.15
3024− - thyme # https://github.com/liyang/thyme/issues/50
3025− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
3026−
3027−# end of expected-benchmark-failures
3028−
3029
7673
3030# Haddocks which are expected to fail. Same concept as expected test failures.
7674# Haddocks which are expected to fail. Same concept as expected test failures.
3031expected-haddock-failures:
7675expected-haddock-failures:
3032
7676
3033 # Requires build before haddock, which doesn't always happen in incremental
7677 # Requires build before haddock, which doesn't always happen in incremental
3034 # builds. Could consider special-casing this requirement.
7678 # builds. Could consider special-casing this requirement.
3035− - gtk
3036 - gtk3
7679 - gtk3
3037
7680
3038− # Intermittent failures or unreliable. These tay pass when
7681+ # Intermittent failures or unreliable. These may pass when
3039 # re-enabled, but will eventually fail again. Only remove these
7682 # re-enabled, but will eventually fail again. Only remove these
3040 # from expected-haddock-failures if we know a fix has been released.
7683 # from expected-haddock-failures if we know a fix has been released.
3041 - gi-gtk # Uses all memory
7684 - gi-gtk # Uses all memory
3042
7685
3043 # Problem on the stackage build server, we need to dig deeper into
7686 # Problem on the stackage build server, we need to dig deeper into
3044 # these if we want them fixed
7687 # these if we want them fixed
3045− - yesod-job-queue # https://github.com/fpco/stackage/issues/1383
3046
7688
3047− # "Compilation" errors
7689+ # internal error when calculating transitive package dependencies
7690+ - hw-balancedparens
3048− - MemoTrie # https://github.com/conal/MemoTrie/issues/10
7691+ - hw-ip # https://github.com/commercialhaskell/stackage/issues/5014
3049− - metrics # https://github.com/iand675/metrics/issues/5
7692+ - hw-json # https://github.com/commercialhaskell/stackage/issues/5014
3050−
7693+ - hw-rankselect
3051− # Haddock bugs
7694+ - doctest-parallel # https://github.com/commercialhaskell/stackage/issues/5014
3052− - swagger2 # https://github.com/GetShopTV/swagger2/issues/66
3053
7695
3054# end of expected-haddock-failures
7696# end of expected-haddock-failures
3055
7697
7698+# For packages with haddock issues
7699+skipped-haddocks:
7700+- modular # Module uses compiler plugins https://github.com/haskell/haddock/issues/900
7701+# end of skipped-haddocks
7702+
7703+# Benchmarks which are known not to build. Note that, currently we do not run
7704+# benchmarks, and therefore failures are only for building, not running.
7705+expected-benchmark-failures:
7706+ # Compilation failures
7707+ - OrderedBits # 0.0.2.0
7708+ - aeson-combinators # 0.0.5.0
7709+ - cmark-gfm # https://github.com/kivikakk/cmark-gfm-hs/issues/5
7710+ - cryptohash # 0.11.9 https://github.com/vincenthz/hs-cryptohash/pull/43
7711+ - incremental-parser # 0.5.0.2
7712+ - lz4 # https://github.com/fpco/stackage/issues/3510
7713+ - raaz # https://github.com/commercialhaskell/stackage/issues/4766
7714+ - serialise # 0.2.4.0 https://github.com/commercialhaskell/stackage/issues/6340
7715+ - thyme
7716+ - universum
7717+ - vector-algorithms # 0.8.0.4
7718+ - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
7719+
7720+
7721+# end of expected-benchmark-failures
7722+
7723+
3056# Benchmarks which should not be built. Note that Stackage builds benchmarks but does not run them.
7724# Benchmarks which should not be built. Note that Stackage builds benchmarks but does not run them.
3057# By skipping a benchmark, we do not pull in the build dependencies
7725# By skipping a benchmark, we do not pull in the build dependencies
3058# Packages should only be added here if required by `stackage-curator check'
7726# Packages should only be added here if required by `stackage-curator check'
3059# or if Setup fails because of missing foreign libraries.
7727# or if Setup fails because of missing foreign libraries.
3060# Otherwise place them in expected-benchmark-failures.
7728# Otherwise place them in expected-benchmark-failures.
3061skipped-benchmarks:
7729skipped-benchmarks:
7730+ # aeson-2
7731+ # https://github.com/commercialhaskell/stackage/issues/6217
7732+ - jsonifier
3062
7733
3063− # Outdated dependencies
7734+ # Cyclic dependencies
3064− # These can periodically be checked for updates;
7735+ - attoparsec
3065− # just remove these lines and run `stackage-curator check'
7736+ - case-insensitive
3066− # to verify.
7737+ - cassava
3067− - criterion-plus
7738+ - clock
3068−
7739+ - criterion
3069− # Transitive outdated dependencies
7740+ - foundation
3070− # These packages
7741+ - hashable # https://github.com/fpco/stackage/issues/1818
3071− # These can also be checked for updates periodically.
7742+ - hspec
3072− - cases # via criterion-plus
7743+ - nanospec
3073− - hasql-postgres # via criterion-plus
7744+ - scientific
3074− - ttrie # via criterion-plus
7745+ - vector-binary-instances
3075− - machines # via pipes
3076−
3077− # Compilation failures
3078− - cipher-aes # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3079− - cipher-blowfish # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3080− - cipher-camellia # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3081− - cipher-des # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3082− - cipher-rc4 # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3083− - data-msgpack # https://github.com/TokTok/hs-msgpack/issues/20
3084
7746
3085− # GHC Bugs
7747+ # Timeouts
7748+ - gogol-youtube
7749+
7750+ # Very resource intensive
7751+ - OpenGLRaw
7752+ - pandoc
7753+ - git-annex
7754+
7755+ # Maintainers who don't want to update benchmarks
7756+ # Only re-enable if requested.
3086− - hledger-lib # https://github.com/fpco/stackage/issues/1587
7757+ ## @hvr https://github.com/fpco/stackage/issues/2538#issuecomment-304458844
7758+ - cassava
7759+ - cryptohash-md5
7760+ - cryptohash-sha1
7761+ - cryptohash-sha256
7762+ - uuid
7763+ - uuid-types
7764+ # @nikita-volkov https://github.com/fpco/stackage/issues/2538#issuecomment-305129396
7765+ - base-prelude
7766+ - bytestring-strict-builder
7767+ - bytestring-tree-builder
7768+ - cases
7769+ - focus
7770+ - hasql
7771+ - hasql-pool
7772+ - list-t
7773+ - mtl-prelude
7774+ - neat-interpolation
7775+ - partial-handler
7776+ - postgresql-binary
7777+ - refined
7778+ - slave-thread
7779+ - stm-containers
7780+ - vector-builder
7781+ # @ivan-m https://github.com/fpco/stackage/issues/2538#issuecomment-307290070
7782+ - fgl
7783+ - fgl-arbitrary
7784+ - graphviz
7785+ - graphviz
7786+ - wl-pprint-text
7787+ # @phadej
7788+ - dlist-nonempty # criterion-1.3
7789+ - splitmix # criterion-1.3
7790+ # @sjakobi
7791+ - prettyprinter
7792+ - prettyprinter-ansi-terminal # https://github.com/commercialhaskell/stackage/issues/5560
7793+
7794+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
7795+ #
7796+ # Benchmark bounds issues
7797+ - IntervalMap # tried IntervalMap-0.6.1.2, but its *benchmarks* requires the disabled package: SegmentTree
7798+ - accelerate-bignum # tried accelerate-bignum-0.3.0.0, but its *benchmarks* requires the disabled package: accelerate-io-vector
7799+ - accelerate-fourier # tried accelerate-fourier-1.0.0.5, but its *benchmarks* does not support: accelerate-llvm-native-1.3.0.0
7800+ - accelerate-fourier # tried accelerate-fourier-1.0.0.5, but its *benchmarks* does not support: criterion-1.5.12.0
7801+ - binary-parsers # tried binary-parsers-0.2.4.0, but its *benchmarks* does not support: criterion-1.5.12.0
7802+ - buffer-builder # tried buffer-builder-0.2.4.7, but its *benchmarks* requires the disabled package: json-builder
7803+ - chronos # tried chronos-1.1.3, but its *benchmarks* requires the disabled package: thyme
7804+ - cipher-aes # tried cipher-aes-0.2.11, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7805+ - cipher-camellia # tried cipher-camellia-0.0.2, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7806+ - cipher-des # tried cipher-des-0.0.6, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7807+ - cipher-rc4 # tried cipher-rc4-0.1.4, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7808+ - distributed-process # tried distributed-process-0.7.4, but its *benchmarks* does not support: network-transport-tcp-0.8.0
7809+ - ed25519 # tried ed25519-0.0.5.0, but its *benchmarks* does not support: criterion-1.5.12.0
7810+ - extensible-effects # tried extensible-effects-5.0.0.1, but its *benchmarks* requires the disabled package: test-framework-th
7811+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: aeson-1.5.6.0
7812+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: time-1.9.3
7813+ - heist # tried heist-1.1.0.1, but its *benchmarks* does not support: statistics-0.16.0.1
7814+ - hip # tried hip-1.5.6.0, but its *benchmarks* requires the disabled package: repa-algorithms
7815+ - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *benchmarks* requires the disabled package: hw-hspec-hedgehog
7816+ - o-clock # tried o-clock-1.2.1, but its *benchmarks* requires the disabled package: tiempo
7817+ - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: PSQueue
7818+ - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: fingertree-psqueue
7819+ - regex-applicative # tried regex-applicative-0.3.4, but its *benchmarks* requires the disabled package: parsers-megaparsec
7820+ - sbv # tried sbv-8.17, but its *benchmarks* requires the disabled package: bench-show
7821+ - servant-auth-cookie # tried servant-auth-cookie-0.6.0.3, but its *benchmarks* does not support: criterion-1.5.12.0
7822+ - superbuffer # tried superbuffer-0.3.1.1, but its *benchmarks* does not support: criterion-1.5.12.0
7823+ - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: criterion-plus
7824+ - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: stm-stats
7825+ - tz # tried tz-0.1.3.5, but its *benchmarks* requires the disabled package: thyme
7826+ - unicode-transforms # tried unicode-transforms-0.4.0, but its *benchmarks* does not support: path-0.9.2
7827+ - xxhash-ffi # tried xxhash-ffi-0.2.0.0, but its *benchmarks* requires the disabled package: xxhash
7828+ # End of Benchmark bounds issues
3087
7829
3088# end of skipped-benchmarks
7830# end of skipped-benchmarks
3089
7831
@@ -3121,11 +7863,11 @@ github-users:
3121 - meteficha
7863 - meteficha
3122 analytics:
7864 analytics:
3123 - ekmett
7865 - ekmett
7866+ haskell-openal:
7867+ - svenpanne
3124 haskell-opengl:
7868 haskell-opengl:
3125 - ekmett
7869 - ekmett
3126 - svenpanne
7870 - svenpanne
3127− # - elliottt
3128− # - jmcarthur
3129 lambdabot:
7871 lambdabot:
3130 - DanBurton
7872 - DanBurton
3131 - mokus0
7873 - mokus0
@@ -3136,11 +7878,10 @@ github-users:
3136 clckwrks:
7878 clckwrks:
3137 - stepcut
7879 - stepcut
3138 stackbuilders:
7880 stackbuilders:
3139− - sestrella
3140 - jsl
7881 - jsl
3141− - jpvillaisaza
7882+ - sestrella
3142− - jsantos17
7883+ - juanpaucar
3143− - mrkkrp
7884+ - CristhianMotoche
3144 scotty-web:
7885 scotty-web:
3145 - RyanGlScott
7886 - RyanGlScott
3146 - xich
7887 - xich
@@ -3148,9 +7889,6 @@ github-users:
3148 - RyanGlScott
7889 - RyanGlScott
3149 haskell-compat:
7890 haskell-compat:
3150 - RyanGlScott
7891 - RyanGlScott
3151− haskell-servant:
3152− - jkarni
3153− - SoenkeHahn
3154 vivid:
7892 vivid:
3155 - vivid-synth
7893 - vivid-synth
3156 midair:
7894 midair:
@@ -3164,7 +7902,26 @@ github-users:
3164 arithmoi:
7902 arithmoi:
3165 - Bodigrim
7903 - Bodigrim
3166 - cartazio
7904 - cartazio
3167− - phadej
7905+ IxpertaSolutions:
7906+ - Siprj
7907+ - liskin
7908+ - trskop
7909+ - xkollar
7910+ ekmett:
7911+ - RyanGlScott
7912+ onrock-eng:
7913+ - donkeybonks
7914+ tweag:
7915+ - bazel-runfiles
7916+ network-multicast:
7917+ - audreyt
7918+ xmonad:
7919+ - byorgey
7920+ - dmwit
7921+ - geekosaur
7922+ - liskin
7923+ - psibi
7924+ - slotThe
3168
7925
3169# end of github-users
7926# end of github-users
3170
7927
@@ -3192,11 +7949,100 @@ build-tool-overrides:
3192#
7949#
3193# Example:
7950# Example:
3194# If bindings-GLFW-3.1.2.1 is the current latest version write
7951# If bindings-GLFW-3.1.2.1 is the current latest version write
3195−# - bindings-GLFW-3.1.2.1 # Comment saying what should be done when the new version is releasedskipped test-suite
7952+# - bindings-GLFW-3.1.2.1 # Comment saying what should be done when the new version is released
3196−tell-me-when-its-released:
7953+tell-me-when-its-released: []
3197−- vector-0.11.0.0 # skipped test-suite
7954+
3198−- criterion-1.1.1.0 # fixes build on windows, upgrade in LTS 7 #1912
7955+# Packages which should be hidden after registering, to avoid module name
3199−- point-octree-0.5.5.3 # If this closes https://github.com/fpco/stackage/issues/1902 we can also resolve https://github.com/fpco/lts-haskell/issues/27
7956+# conflicts. This is intended for at least two use cases:
3200−- wreq-0.4.1.0 # Try to re-enable lots of packages, and the test-suite if https://github.com/bos/wreq/issues/53 is closed.
7957+#
3201−- gogol-0.1.0 # Re-enable package
7958+# * Making doctests pass (https://github.com/yesodweb/wai/issues/579)
3202−- bake-0.4 # Remove upper bound on extra https://github.com/ndmitchell/bake/issues/40
7959+#
7960+# * Allowing tools like Stack to get a mapping from module name to package name
7961+# for automatically installing dependencies
7962+hide:
7963+- HTF # conflicts with Test.Framework in test-framework
7964+- async-dejafu # https://github.com/yesodweb/wai/issues/579
7965+- base-compat # conflicts with base-compat-batteries, see https://github.com/fpco/stackage/issues/3607
7966+- base-noprelude # By design, conflicts with base
7967+- binary-ieee754 # conflicts with data-binary-ieee754
7968+- cipher-aes # Cryptonite deprecation
7969+- cipher-blowfish # Cryptonite deprecation
7970+- cipher-camellia # Cryptonite deprecation
7971+- cipher-des # Cryptonite deprecation
7972+- cipher-rc4 # Cryptonite deprecation
7973+- constraint # conflicts with constraints
7974+- control-monad-free # conflicts with Control.Monad.Free in free
7975+- courier # conflicts with Network.Transport in network-transport
7976+- crypto-api # `module Crypto.Random` conflicts with cryptonite
7977+- crypto-cipher-types # Cryptonite deprecation
7978+- crypto-numbers # Cryptonite deprecation
7979+- crypto-pubkey # Cryptonite deprecation
7980+- crypto-random # Cryptonite deprecation
7981+- cryptohash # Cryptonite deprecation
7982+- cryptohash-conduit # Cryptonite deprecation
7983+- cryptohash-md5 # cryptohash fork
7984+- cryptohash-sha1 # cryptohash fork
7985+- cryptohash-sha256 # cryptohash fork
7986+- fay-base # conflicts with many modules in base and others
7987+- filemanip # conflicts with System.FilePath.Glob in Glob
7988+- ghc-lib # per its own recommendation. conflicts with template-haskell
7989+- ghc-lib-parser # also conflicts with template-haskell
7990+- gl # conflicts with modules in OpenGLRaw
7991+- gtk3 # conflicts with many modules in gtk
7992+- hashmap # conflicts with Data.HashSet in unordered-containers
7993+- hledger-web # conflicts with Foundation in foundation
7994+- hs-functors # conflicts with profunctors, see #3609/closed
7995+- hxt-unicode # conflicts with Data.String.UTF8 in utf8-string
7996+- kawhi # conflicts with Control.Monad.Http in monad-http
7997+- language-c # conflicts with modules in language-c-quote
7998+- lenz # conflicts with lens, see https://github.com/fpco/stackage/issues/3600
7999+- log # conflicts with modules in its dependencies
8000+- matrices # conflicts with matrix
8001+- monad-extras # conflicts with Control.Monad.Extra in extra
8002+- monads-tf # mtl is preferred
8003+- nanospec # conflicts with Test.Hspec in hspec
8004+- objective # conflicts with Control.Object in natural-transformation
8005+- plot-gtk3 # conflicts with many modules in plot-gtk
8006+- pretty-class # conflicts with pretty and prettyclass
8007+- prettyclass # conflicts with pretty and pretty-class
8008+- prompt # conflicts with Control.Monad.Prompt in MonadPrompt
8009+- regex-compat-tdfa # conflicts with many modules in regex-compat
8010+- regex-pcre-builtin # conflicts with many modules in regex-pcre
8011+- rerebase # conflicts with base
8012+- svg-tree # conflicts with Graphics.Svg in svg-builder
8013+- temporary-rc # conflicts with temporary
8014+- temporary-resourcet # conflicts with temporary
8015+- zip # conflicts with Codec.Archive.Zip in zip-archive
8016+
8017+
8018+# Experimental: packages where Hackage cabal file revisions should be ignored.
8019+#
8020+# This always use the cabal file shipped with the sdist tarball instead of the latest revision.
8021+#
8022+# This only supports pinning to the initial release (revision 0), not to an arbitrary revision.
8023+no-revisions:
8024+- hjsonpointer
8025+- tls
8026+- mime-mail
8027+- basement
8028+- cryptonite
8029+- foundation
8030+- gauge
8031+- stack
8032+- http-download
8033+- pantry
8034+- rio-prettyprint
8035+- hi-file-parser
8036+
8037+
8038+# Note, this no longer actually does anything with curator2 unfortunately:
8039+# Do not build these packages in parallel with others. Useful for high memory
8040+# usage.
8041+non-parallel-builds:
8042+- pandoc
8043+- gogol-dfareporting
8044+- gogol-compute
8045+- idris
8046+- amazonka-ec2
8047+- massiv-persist
8048+- massiv-serialise
check+10−2
@@ -1,6 +1,14 @@
1−#!/bin/sh
1+#!/bin/bash
2
2
3# Convenience script for checking constraints locally
3# Convenience script for checking constraints locally
4
4
5cd `dirname $0`
5cd `dirname $0`
6+
7+export GHCVER=$(sed -n "s/^ghc-version: \"\(.*\)\"/\1/p" "build-constraints.yaml")
8+
9+NIGHTLY="nightly-$(date +%Y-%m-%d)"
10+curator update &&
11+ curator constraints --target=$NIGHTLY &&
12+ curator snapshot-incomplete --target=$NIGHTLY &&
13+ curator snapshot &&
6−exec stack exec --resolver ghc-8.0.1 stackage-curator check
14+ stack --resolver ghc-$GHCVER exec curator check-snapshot
commenternew file+20
@@ -0,0 +1,20 @@
1+#!/usr/bin/env bash
2+
3+if ! command -v cargo
4+then
5+ echo "Rust doesn't seem to be installed. https://rustup.rs/"
6+ exit 1
7+fi
8+
9+if [ "$1" = "outdated" ];
10+then
11+ if ! command -v latest-version &> /dev/null
12+ then
13+ echo "This command requires latest-version in your PATH"
14+ echo "Install it with: "
15+ echo "stack install --stack-yaml etc/commenter/latest-version/stack.yaml"
16+ exit 1
17+ fi
18+fi
19+
20+cargo run -q --release --manifest-path etc/commenter/Cargo.toml $@
debian-bootstrap.sh+211−41
@@ -4,93 +4,132 @@
4# up-and-running on a freshly installed Debian-based system (including Ubuntu).
4# up-and-running on a freshly installed Debian-based system (including Ubuntu).
5
5
6# Quick start:
6# Quick start:
7−# wget -O - https://raw.github.com/fpco/stackage/master/debian-bootstrap.sh | bash -ex
7+# wget -O - https://raw.github.com/commercialhaskell/stackage/master/debian-bootstrap.sh | bash -ex
8
8
9# NOTE: Requires that GHC and Cabal are installed and on your PATH. For
9# NOTE: Requires that GHC and Cabal are installed and on your PATH. For
10# instructions, see:
10# instructions, see:
11# http://www.stackage.org/install
11# http://www.stackage.org/install
12
12
13−set -exu
13+set -exuo pipefail
14
14
15−mkdir /home/stackage -p
15+mkdir -p /home/stackage
16−locale-gen en_US.UTF-8
17
16
17+export LANG=C.UTF-8
18export DEBIAN_FRONTEND=noninteractive
18export DEBIAN_FRONTEND=noninteractive
19−apt-get update
20−apt-get install -y software-properties-common
21
19
22−add-apt-repository ppa:hvr/ghc -y
20+# Get curl and unzip
23−add-apt-repository -y ppa:marutter/rrutter
21+apt-get update
24−# not sure what this was needed for
22+apt-get install -y curl unzip
25−#add-apt-repository -y ppa:openstack-ubuntu-testing/icehouse
26
23
27−# Set the GHC version
24+# Install AWS CLI
28−GHCVER=8.0.1
25+mkdir -p /tmp/awscli
26+(
27+cd /tmp/awscli
28+curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
29+unzip awscliv2.zip
30+./aws/install --bin-dir /usr/bin
31+)
32+rm -rf /tmp/awscli
29
33
30−# Get Stack
34+# Get Stack and GHC
31−apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 575159689BEFB442
35+curl -sSL https://get.haskellstack.org/ | sh -s - -d /usr/bin
32−echo 'deb http://download.fpcomplete.com/ubuntu xenial main'|tee /etc/apt/sources.list.d/fpco.list
36+stack setup --resolver ghc-$GHCVER
33
37
34apt-get update
38apt-get update
39+
35apt-get install -y \
40apt-get install -y \
41+ apt-transport-https \
36 build-essential \
42 build-essential \
37− ghc-$GHCVER \
43+ cmake \
38− ghc-$GHCVER-dyn \
39− ghc-$GHCVER-prof \
40− ghc-$GHCVER-htmldocs \
41− hscolour \
42− sudo \
43 curl \
44 curl \
45+ dvipng \
44 freeglut3-dev \
46 freeglut3-dev \
47+ freetds-dev \
48+ fsharp \
49+ g++ \
50+ gawk \
45 git \
51 git \
52+ gnupg \
53+ gradle \
54+ hscolour \
46 libadns1-dev \
55 libadns1-dev \
47 libaio1 \
56 libaio1 \
57+ libalut-dev \
48 libasound2-dev \
58 libasound2-dev \
49 libblas-dev \
59 libblas-dev \
50 libbz2-dev \
60 libbz2-dev \
51 libcairo2-dev \
61 libcairo2-dev \
52− libclang-3.7-dev \
62+ libclang-3.9-dev \
53 libcurl4-openssl-dev \
63 libcurl4-openssl-dev \
64+ libcwiid-dev \
65+ libdbusmenu-glib-dev \
66+ libdbusmenu-gtk3-dev \
54 libdevil-dev \
67 libdevil-dev \
55 libedit-dev \
68 libedit-dev \
56 libedit2 \
69 libedit2 \
57 libfftw3-dev \
70 libfftw3-dev \
71+ libflac-dev \
58 libfreenect-dev \
72 libfreenect-dev \
59− libgd2-xpm-dev \
73+ libgd-dev \
60 libgeoip-dev \
74 libgeoip-dev \
61 libgirepository1.0-dev \
75 libgirepository1.0-dev \
76+ libglew-dev \
62 libglfw3-dev \
77 libglfw3-dev \
63 libglib2.0-dev \
78 libglib2.0-dev \
64 libglu1-mesa-dev \
79 libglu1-mesa-dev \
65 libgmp3-dev \
80 libgmp3-dev \
66− libgnutls-dev \
81+ libgnutls28-dev \
82+ libgraphene-1.0-dev \
67 libgsasl7-dev \
83 libgsasl7-dev \
68− libgsl0-dev \
84+ libgsl-dev \
69 libgtk-3-dev \
85 libgtk-3-dev \
70 libgtk2.0-dev \
86 libgtk2.0-dev \
71 libgtksourceview-3.0-dev \
87 libgtksourceview-3.0-dev \
72 libhidapi-dev \
88 libhidapi-dev \
89+ libi2c-dev \
73 libicu-dev \
90 libicu-dev \
91+ libimlib2-dev \
92+ libjack-jackd2-dev \
93+ libjavascriptcoregtk-4.0-dev \
94+ libjansson-dev \
74 libjudy-dev \
95 libjudy-dev \
75 liblapack-dev \
96 liblapack-dev \
76 libleveldb-dev \
97 libleveldb-dev \
77 liblmdb-dev \
98 liblmdb-dev \
99+ liblz4-tool \
78 liblzma-dev \
100 liblzma-dev \
79 libmagic-dev \
101 libmagic-dev \
80 libmagickcore-dev \
102 libmagickcore-dev \
81 libmagickwand-dev \
103 libmagickwand-dev \
82 libmarkdown2-dev \
104 libmarkdown2-dev \
105+ libmono-2.0-dev \
106+ libmp3lame-dev \
83 libmpfr-dev \
107 libmpfr-dev \
108+ libmpich-dev \
84 libmysqlclient-dev \
109 libmysqlclient-dev \
85− libncurses-dev \
110+ libncurses5-dev \
111+ libnfc-dev \
112+ liboath-dev \
86 libnotify-dev \
113 libnotify-dev \
87 libopenal-dev \
114 libopenal-dev \
88 libpango1.0-dev \
115 libpango1.0-dev \
89 libpcap0.8-dev \
116 libpcap0.8-dev \
117+ libpcre2-dev \
90 libpq-dev \
118 libpq-dev \
119+ libprotobuf-dev \
120+ libre2-dev \
121+ librocksdb-dev \
122+ libsdl1.2-dev \
91 libsdl2-dev \
123 libsdl2-dev \
124+ libsdl2-gfx-dev \
125+ libsdl2-image-dev \
126+ libsdl2-mixer-dev \
127+ libsdl2-ttf-dev \
128+ libsecp256k1-dev \
92 libsnappy-dev \
129 libsnappy-dev \
93 libsndfile1-dev \
130 libsndfile1-dev \
131+ libsodium-dev \
132+ libsox-dev \
94 libsqlite3-dev \
133 libsqlite3-dev \
95 libssl-dev \
134 libssl-dev \
96 libsystemd-dev \
135 libsystemd-dev \
@@ -98,6 +137,7 @@ apt-get install -y \
98 libtre-dev \
137 libtre-dev \
99 libudev-dev \
138 libudev-dev \
100 libusb-1.0-0-dev \
139 libusb-1.0-0-dev \
140+ libvte-2.91-dev \
101 libwebkitgtk-3.0-dev \
141 libwebkitgtk-3.0-dev \
102 libxau-dev \
142 libxau-dev \
103 libxml2-dev \
143 libxml2-dev \
@@ -105,25 +145,53 @@ apt-get install -y \
105 libxss-dev \
145 libxss-dev \
106 libyaml-dev \
146 libyaml-dev \
107 libzip-dev \
147 libzip-dev \
148+ libzstd-dev \
108 libzmq3-dev \
149 libzmq3-dev \
109− llvm-3.7 \
150+ llvm-7 \
151+ llvm-8 \
152+ llvm-9 \
153+ locales \
110 m4 \
154 m4 \
155+ minisat \
156+ mono-mcs \
111 nettle-dev \
157 nettle-dev \
112− nodejs \
158+ ninja-build \
113− npm \
114 openjdk-8-jdk \
159 openjdk-8-jdk \
160+ python-mpltoolkits.basemap \
161+ python3-matplotlib \
162+ python3-numpy \
163+ python3-pip \
164+ python3-scipy \
115 r-base \
165 r-base \
116 r-base-dev \
166 r-base-dev \
167+ rpm \
117 ruby-dev \
168 ruby-dev \
118− stack \
169+ software-properties-common \
170+ sudo \
171+ texlive \
172+ unixodbc-dev \
119 wget \
173 wget \
120 xclip \
174 xclip \
121− z3 \
122 zip \
175 zip \
123− zlib1g-dev
176+ zlib1g-dev \
177+ zsh
124
178
125−# Put documentation where we expect it
179+# odbc
126−mv /opt/ghc/$GHCVER/share/doc/ghc-$GHCVER/ /opt/ghc/$GHCVER/share/doc/ghc
180+# TODO: See if we can fix this...
181+# E: Failed to fetch https://packages.microsoft.com/debian/9/prod/pool/main/u/unixodbc/odbcinst_2.3.7_amd64.deb 404 Not Found
182+#
183+# curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
184+# curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list
185+# apt-get update
186+# ACCEPT_EULA=Y apt-get install msodbcsql17 -y
187+
188+# llvm for llvm-hs
189+curl https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
190+add-apt-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main"
191+apt-get update
192+apt-get install llvm-9-dev -y
193+
194+locale-gen en_US.UTF-8
127
195
128# Buggy versions of ld.bfd fail to link some Haskell packages:
196# Buggy versions of ld.bfd fail to link some Haskell packages:
129# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
197# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
@@ -135,9 +203,13 @@ update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10
135# This version is tracked here:
203# This version is tracked here:
136# https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/Installing
204# https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/Installing
137#
205#
138−# GHC 8.0 requires LLVM 3.7 tools (specifically, llc-3.7 and opt-3.7).
206+# GHC 8.10 requires LLVM 9 tools (?) (specifically, llc-9 and opt-9).
139−update-alternatives --install "/usr/bin/llc" "llc" "/usr/bin/llc-3.7" 50
207+update-alternatives --install "/usr/bin/llc" "llc" "/usr/bin/llc-9" 50
140−update-alternatives --install "/usr/bin/opt" "opt" "/usr/bin/opt-3.7" 50
208+update-alternatives --install "/usr/bin/opt" "opt" "/usr/bin/opt-9" 50
209+
210+# nodejs 10 (nodejs8 in bionic needs conflicting libssl10-dev)
211+curl -sL https://deb.nodesource.com/setup_10.x | bash -
212+apt-get install -y nodejs
141
213
142# install ocilib dependencies then build and install ocilib
214# install ocilib dependencies then build and install ocilib
143cd /tmp \
215cd /tmp \
@@ -147,9 +219,9 @@ cd /tmp \
147 && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
219 && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
148 && dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
220 && dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
149 && rm -f oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
221 && rm -f oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
150− && wget https://github.com/vrogier/ocilib/archive/v4.2.1.tar.gz \
222+ && wget https://github.com/vrogier/ocilib/archive/v4.3.2.tar.gz \
151− && tar xvf v4.2.1.tar.gz \
223+ && tar xvf v4.3.2.tar.gz \
152− && cd /tmp/ocilib-4.2.1 \
224+ && cd /tmp/ocilib-4.3.2 \
153 && ./configure --with-oracle-import=linkage \
225 && ./configure --with-oracle-import=linkage \
154 --with-oracle-charset=ansi \
226 --with-oracle-charset=ansi \
155 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
227 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
@@ -157,7 +229,105 @@ cd /tmp \
157 && make \
229 && make \
158 && make install \
230 && make install \
159 && cd \
231 && cd \
160− && rm -rf /tmp/ocilib-4.2.1 \
232+ && rm -rf /tmp/ocilib-4.3.2 \
161 && echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf \
233 && echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf \
162 && echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle-client.conf \
234 && echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle-client.conf \
163 && ldconfig
235 && ldconfig
236+
237+# Add JDK to system paths.
238+echo "/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/" > /etc/ld.so.conf.d/openjdk.conf \
239+ && ldconfig
240+
241+# Install erlang/otp platform and its dependencies
242+ERLANG_DEB_FILE="esl-erlang_21.1-1~ubuntu~bionic_amd64.deb"
243+pushd /tmp \
244+ && wget https://packages.erlang-solutions.com/erlang/debian/pool/${ERLANG_DEB_FILE} \
245+ && (dpkg -i ${ERLANG_DEB_FILE}; apt-get install -yf) \
246+ && rm ${ERLANG_DEB_FILE} \
247+ && popd
248+
249+# Install the TensorFlow C API.
250+curl https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.1.0.tar.gz > libtensorflow.tar.gz \
251+ && sudo tar zxf libtensorflow.tar.gz -C /usr \
252+ && rm libtensorflow.tar.gz \
253+ && ldconfig
254+
255+# NOTE: also update Dockerfile when cuda version changes
256+# Install CUDA toolkit
257+# The current version can be found at: https://developer.nvidia.com/cuda-downloads
258+CUDA_PKG=10.0.130-1
259+CUDA_VER=10.0
260+CUDA_APT=10-0
261+
262+pushd /tmp \
263+ && wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
264+ && apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub \
265+ && dpkg -i cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
266+ && apt-get update -qq \
267+ && apt-get install -y cuda-drivers cuda-core-${CUDA_APT} cuda-cudart-dev-${CUDA_APT} cuda-cufft-dev-${CUDA_APT} cuda-cublas-dev-${CUDA_APT} cuda-cusparse-dev-${CUDA_APT} cuda-cusolver-dev-${CUDA_APT} \
268+ && rm cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
269+ && export CUDA_PATH=/usr/local/cuda-${CUDA_VER} \
270+ && export LD_LIBRARY_PATH=${CUDA_PATH}/nvvm/lib64:${LD_LIBRARY_PATH+x} \
271+ && export LD_LIBRARY_PATH=${CUDA_PATH}/lib64:${LD_LIBRARY_PATH} \
272+ && export PATH=${CUDA_PATH}/bin:${PATH} \
273+ && popd
274+
275+# non-free repo for mediabus-fdk-aac
276+apt-add-repository multiverse \
277+ && apt-get update \
278+ && apt-get install -y nvidia-cuda-dev
279+
280+export CLANG_PURE_LLVM_LIB_DIR=/usr/lib/llvm-9/lib;
281+export CLANG_PURE_LLVM_INCLUDE_DIR=/usr/lib/llvm-9/include;
282+
283+# protoc, for proto-lens-combinators test suite
284+# Instructions from: https://google.github.io/proto-lens/installing-protoc.html
285+PROTOC_ZIP=protoc-3.3.0-linux-x86_64.zip
286+curl -OL https://github.com/google/protobuf/releases/download/v3.3.0/$PROTOC_ZIP
287+sudo unzip -o $PROTOC_ZIP -d /usr bin/protoc
288+rm -f $PROTOC_ZIP
289+
290+# Update library search paths
291+echo /usr/local/cuda-10.0/lib64 > /etc/ld.so.conf.d/cuda.conf
292+echo /usr/local/cuda-10.0/nvvm/lib64 >> /etc/ld.so.conf.d/cuda.conf
293+
294+echo /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server > /etc/ld.so.conf.d/java.conf
295+
296+echo /usr/lib/llvm-3.7/lib > /etc/ld.so.conf.d/llvm.conf
297+
298+ldconfig
299+
300+# Install librdkafka (Apache Kafka C/C++ library)
301+wget -qO - https://packages.confluent.io/deb/5.2/archive.key | apt-key add -
302+add-apt-repository "deb https://packages.confluent.io/deb/5.2 stable main"
303+apt-get update && apt install -y librdkafka-dev
304+
305+Z3_VER=4.8.8
306+(
307+ cd /usr/local/ \
308+ && wget https://github.com/Z3Prover/z3/releases/download/z3-${Z3_VER}/z3-${Z3_VER}-x64-ubuntu-16.04.zip \
309+ && unzip z3-${Z3_VER}-x64-ubuntu-16.04.zip \
310+ && rm z3-${Z3_VER}-x64-ubuntu-16.04.zip \
311+ && ln -s /usr/local/z3-${Z3_VER}-x64-ubuntu-16.04/bin/z3 /usr/bin/z3
312+)
313+
314+LIBJWT_VER=1.12.1
315+(
316+pushd /tmp \
317+ && wget https://github.com/benmcollins/libjwt/archive/v${LIBJWT_VER}.zip \
318+ && unzip v${LIBJWT_VER}.zip \
319+ && pushd libjwt-${LIBJWT_VER} \
320+ && autoreconf -fiv \
321+ && ./configure --disable-valgrind --disable-doxygen-doc --prefix /usr \
322+ && make \
323+ && sudo make install \
324+ && popd \
325+ && popd
326+)
327+
328+
329+# EOF: don't build anything below this line
330+
331+# Cleanup
332+apt-get clean
333+rm -rf /var/lib/apt/lists/*
etc/check.shnew file+28
@@ -0,0 +1,28 @@
1+#!/usr/bin/env bash
2+
3+set -euxo pipefail
4+
5+ETC=$(cd $(dirname $0) ; pwd)
6+export GHCVER=$(sed -n "s/^ghc-version: \"\(.*\)\"/\1/p" "$ETC/../build-constraints.yaml")
7+
8+# Download and unpack the stack executable
9+mkdir -p ~/.local/bin
10+export PATH=$HOME/.local/bin:$PATH
11+curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
12+
13+# Get new Stackage curator
14+curl -L "https://github.com/commercialhaskell/curator/releases/download/commit-a79aadca0f6497ec6accc927df5be7c49f5de86a/curator.bz2" | bunzip2 > curator
15+chmod +x curator
16+
17+# Install GHC
18+stack setup $GHCVER
19+
20+# curator's constraint command has target as a required parameter
21+# because of a different constraints handling in minor LTS version bumps
22+NIGHTLY="nightly-$(date +%Y-%m-%d)"
23+# New curator check
24+./curator update &&
25+ ./curator constraints --target=$NIGHTLY &&
26+ ./curator snapshot-incomplete --target=$NIGHTLY &&
27+ ./curator snapshot &&
28+ stack --resolver ghc-$GHCVER exec ./curator check-snapshot
etc/commenter/.gitignorenew file+3
@@ -0,0 +1,3 @@
1+/target
2+/comments.txt
3+/out.txt
etc/commenter/Cargo.locknew file+365
@@ -0,0 +1,365 @@
1+# This file is automatically @generated by Cargo.
2+# It is not intended for manual editing.
3+version = 3
4+
5+[[package]]
6+name = "aho-corasick"
7+version = "0.7.18"
8+source = "registry+https://github.com/rust-lang/crates.io-index"
9+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
10+dependencies = [
11+ "memchr",
12+]
13+
14+[[package]]
15+name = "ansi_term"
16+version = "0.12.1"
17+source = "registry+https://github.com/rust-lang/crates.io-index"
18+checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
19+dependencies = [
20+ "winapi",
21+]
22+
23+[[package]]
24+name = "atty"
25+version = "0.2.14"
26+source = "registry+https://github.com/rust-lang/crates.io-index"
27+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
28+dependencies = [
29+ "hermit-abi",
30+ "libc",
31+ "winapi",
32+]
33+
34+[[package]]
35+name = "autocfg"
36+version = "1.0.1"
37+source = "registry+https://github.com/rust-lang/crates.io-index"
38+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
39+
40+[[package]]
41+name = "bitflags"
42+version = "1.3.2"
43+source = "registry+https://github.com/rust-lang/crates.io-index"
44+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
45+
46+[[package]]
47+name = "clap"
48+version = "2.34.0"
49+source = "registry+https://github.com/rust-lang/crates.io-index"
50+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
51+dependencies = [
52+ "ansi_term",
53+ "atty",
54+ "bitflags",
55+ "strsim",
56+ "textwrap",
57+ "unicode-width",
58+ "vec_map",
59+]
60+
61+[[package]]
62+name = "commenter"
63+version = "0.2.0"
64+dependencies = [
65+ "lazy-regex",
66+ "regex",
67+ "serde",
68+ "serde_yaml",
69+ "structopt",
70+]
71+
72+[[package]]
73+name = "hashbrown"
74+version = "0.11.2"
75+source = "registry+https://github.com/rust-lang/crates.io-index"
76+checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
77+
78+[[package]]
79+name = "heck"
80+version = "0.3.3"
81+source = "registry+https://github.com/rust-lang/crates.io-index"
82+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
83+dependencies = [
84+ "unicode-segmentation",
85+]
86+
87+[[package]]
88+name = "hermit-abi"
89+version = "0.1.19"
90+source = "registry+https://github.com/rust-lang/crates.io-index"
91+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
92+dependencies = [
93+ "libc",
94+]
95+
96+[[package]]
97+name = "indexmap"
98+version = "1.8.0"
99+source = "registry+https://github.com/rust-lang/crates.io-index"
100+checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
101+dependencies = [
102+ "autocfg",
103+ "hashbrown",
104+]
105+
106+[[package]]
107+name = "lazy-regex"
108+version = "2.2.2"
109+source = "registry+https://github.com/rust-lang/crates.io-index"
110+checksum = "919a16773ebf2de27e95fc58460110932e55bb0780e23aa51fa5a6b59c9e2b3d"
111+dependencies = [
112+ "lazy-regex-proc_macros",
113+ "once_cell",
114+ "regex",
115+]
116+
117+[[package]]
118+name = "lazy-regex-proc_macros"
119+version = "2.2.2"
120+source = "registry+https://github.com/rust-lang/crates.io-index"
121+checksum = "5fbe6bf0a04af51c07976625d5007e75ed9b8b955befc21c77b3947733496e36"
122+dependencies = [
123+ "proc-macro2",
124+ "quote",
125+ "regex",
126+ "syn",
127+]
128+
129+[[package]]
130+name = "lazy_static"
131+version = "1.4.0"
132+source = "registry+https://github.com/rust-lang/crates.io-index"
133+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
134+
135+[[package]]
136+name = "libc"
137+version = "0.2.112"
138+source = "registry+https://github.com/rust-lang/crates.io-index"
139+checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125"
140+
141+[[package]]
142+name = "linked-hash-map"
143+version = "0.5.4"
144+source = "registry+https://github.com/rust-lang/crates.io-index"
145+checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
146+
147+[[package]]
148+name = "memchr"
149+version = "2.4.1"
150+source = "registry+https://github.com/rust-lang/crates.io-index"
151+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
152+
153+[[package]]
154+name = "once_cell"
155+version = "1.9.0"
156+source = "registry+https://github.com/rust-lang/crates.io-index"
157+checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5"
158+
159+[[package]]
160+name = "proc-macro-error"
161+version = "1.0.4"
162+source = "registry+https://github.com/rust-lang/crates.io-index"
163+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
164+dependencies = [
165+ "proc-macro-error-attr",
166+ "proc-macro2",
167+ "quote",
168+ "syn",
169+ "version_check",
170+]
171+
172+[[package]]
173+name = "proc-macro-error-attr"
174+version = "1.0.4"
175+source = "registry+https://github.com/rust-lang/crates.io-index"
176+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
177+dependencies = [
178+ "proc-macro2",
179+ "quote",
180+ "version_check",
181+]
182+
183+[[package]]
184+name = "proc-macro2"
185+version = "1.0.36"
186+source = "registry+https://github.com/rust-lang/crates.io-index"
187+checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
188+dependencies = [
189+ "unicode-xid",
190+]
191+
192+[[package]]
193+name = "quote"
194+version = "1.0.14"
195+source = "registry+https://github.com/rust-lang/crates.io-index"
196+checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d"
197+dependencies = [
198+ "proc-macro2",
199+]
200+
201+[[package]]
202+name = "regex"
203+version = "1.5.4"
204+source = "registry+https://github.com/rust-lang/crates.io-index"
205+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
206+dependencies = [
207+ "aho-corasick",
208+ "memchr",
209+ "regex-syntax",
210+]
211+
212+[[package]]
213+name = "regex-syntax"
214+version = "0.6.25"
215+source = "registry+https://github.com/rust-lang/crates.io-index"
216+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
217+
218+[[package]]
219+name = "ryu"
220+version = "1.0.9"
221+source = "registry+https://github.com/rust-lang/crates.io-index"
222+checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
223+
224+[[package]]
225+name = "serde"
226+version = "1.0.133"
227+source = "registry+https://github.com/rust-lang/crates.io-index"
228+checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
229+dependencies = [
230+ "serde_derive",
231+]
232+
233+[[package]]
234+name = "serde_derive"
235+version = "1.0.133"
236+source = "registry+https://github.com/rust-lang/crates.io-index"
237+checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537"
238+dependencies = [
239+ "proc-macro2",
240+ "quote",
241+ "syn",
242+]
243+
244+[[package]]
245+name = "serde_yaml"
246+version = "0.8.23"
247+source = "registry+https://github.com/rust-lang/crates.io-index"
248+checksum = "a4a521f2940385c165a24ee286aa8599633d162077a54bdcae2a6fd5a7bfa7a0"
249+dependencies = [
250+ "indexmap",
251+ "ryu",
252+ "serde",
253+ "yaml-rust",
254+]
255+
256+[[package]]
257+name = "strsim"
258+version = "0.8.0"
259+source = "registry+https://github.com/rust-lang/crates.io-index"
260+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
261+
262+[[package]]
263+name = "structopt"
264+version = "0.3.25"
265+source = "registry+https://github.com/rust-lang/crates.io-index"
266+checksum = "40b9788f4202aa75c240ecc9c15c65185e6a39ccdeb0fd5d008b98825464c87c"
267+dependencies = [
268+ "clap",
269+ "lazy_static",
270+ "structopt-derive",
271+]
272+
273+[[package]]
274+name = "structopt-derive"
275+version = "0.4.18"
276+source = "registry+https://github.com/rust-lang/crates.io-index"
277+checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
278+dependencies = [
279+ "heck",
280+ "proc-macro-error",
281+ "proc-macro2",
282+ "quote",
283+ "syn",
284+]
285+
286+[[package]]
287+name = "syn"
288+version = "1.0.85"
289+source = "registry+https://github.com/rust-lang/crates.io-index"
290+checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7"
291+dependencies = [
292+ "proc-macro2",
293+ "quote",
294+ "unicode-xid",
295+]
296+
297+[[package]]
298+name = "textwrap"
299+version = "0.11.0"
300+source = "registry+https://github.com/rust-lang/crates.io-index"
301+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
302+dependencies = [
303+ "unicode-width",
304+]
305+
306+[[package]]
307+name = "unicode-segmentation"
308+version = "1.8.0"
309+source = "registry+https://github.com/rust-lang/crates.io-index"
310+checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
311+
312+[[package]]
313+name = "unicode-width"
314+version = "0.1.9"
315+source = "registry+https://github.com/rust-lang/crates.io-index"
316+checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
317+
318+[[package]]
319+name = "unicode-xid"
320+version = "0.2.2"
321+source = "registry+https://github.com/rust-lang/crates.io-index"
322+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
323+
324+[[package]]
325+name = "vec_map"
326+version = "0.8.2"
327+source = "registry+https://github.com/rust-lang/crates.io-index"
328+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
329+
330+[[package]]
331+name = "version_check"
332+version = "0.9.4"
333+source = "registry+https://github.com/rust-lang/crates.io-index"
334+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
335+
336+[[package]]
337+name = "winapi"
338+version = "0.3.9"
339+source = "registry+https://github.com/rust-lang/crates.io-index"
340+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
341+dependencies = [
342+ "winapi-i686-pc-windows-gnu",
343+ "winapi-x86_64-pc-windows-gnu",
344+]
345+
346+[[package]]
347+name = "winapi-i686-pc-windows-gnu"
348+version = "0.4.0"
349+source = "registry+https://github.com/rust-lang/crates.io-index"
350+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
351+
352+[[package]]
353+name = "winapi-x86_64-pc-windows-gnu"
354+version = "0.4.0"
355+source = "registry+https://github.com/rust-lang/crates.io-index"
356+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
357+
358+[[package]]
359+name = "yaml-rust"
360+version = "0.4.5"
361+source = "registry+https://github.com/rust-lang/crates.io-index"
362+checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
363+dependencies = [
364+ "linked-hash-map",
365+]
etc/commenter/Cargo.tomlnew file+14
@@ -0,0 +1,14 @@
1+[package]
2+name = "commenter"
3+version = "0.2.0"
4+authors = ["Adam Bergmark <adam@bergmark.nl>"]
5+edition = "2018"
6+
7+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
8+
9+[dependencies]
10+lazy-regex = "2.2.1"
11+regex = "1.5.4"
12+serde = { version = "1.0.133", features = ["derive"] }
13+serde_yaml = "0.8.23"
14+structopt = "0.3.25"
etc/commenter/README.mdnew file+3
@@ -0,0 +1,3 @@
1+Helps automate mass-disabling of packages in Stackage's build-constraint.yaml.
2+
3+See CURATORS.md for usage instructions.
etc/commenter/commenternew file+2
@@ -0,0 +1,2 @@
1+#!/bin/bash
2+cargo run -- $@
etc/commenter/latest-version/LICENSEnew file+30
@@ -0,0 +1,30 @@
1+Copyright Adam Bergmark (c) 2021
2+
3+All rights reserved.
4+
5+Redistribution and use in source and binary forms, with or without
6+modification, are permitted provided that the following conditions are met:
7+
8+ * Redistributions of source code must retain the above copyright
9+ notice, this list of conditions and the following disclaimer.
10+
11+ * Redistributions in binary form must reproduce the above
12+ copyright notice, this list of conditions and the following
13+ disclaimer in the documentation and/or other materials provided
14+ with the distribution.
15+
16+ * Neither the name of Author name here nor the names of other
17+ contributors may be used to endorse or promote products derived
18+ from this software without specific prior written permission.
19+
20+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
etc/commenter/latest-version/README.mdnew file+1
@@ -0,0 +1 @@
1+# latest-version
stackage/Setup.hs → etc/commenter/latest-version/Setup.hsrenamed

The content is the same.

etc/commenter/latest-version/cabal.projectnew file+6
@@ -0,0 +1,6 @@
1+source-repository-package
2+ type: git
3+ location: git://github.com/commercialhaskell/pantry.git
4+
5+packages: ./latest-version.cabal
6+with-compiler: ghc-8.10.7
etc/commenter/latest-version/latest-version.cabalnew file+23
@@ -0,0 +1,23 @@
1+name: latest-version
2+version: 0.1.0.0
3+homepage: https://github.com/githubuser/latest-version#readme
4+license: BSD3
5+license-file: LICENSE
6+author: Adam Bergmark
7+maintainer: adam@bergmark.nl
8+copyright: 2021 Adam Bergmark
9+category: Web
10+build-type: Simple
11+cabal-version: >=1.10
12+extra-source-files: README.md
13+
14+executable latest-version
15+ ghc-options: -Wall -threaded
16+ hs-source-dirs: src
17+ main-is: Main.hs
18+ default-language: Haskell2010
19+ build-depends: base >= 4.7 && < 5
20+ , pantry
21+ , Cabal
22+ , rio
23+ , containers
etc/commenter/latest-version/src/Main.hsnew file+28
@@ -0,0 +1,28 @@
1+module Main where
2+
3+import Data.List
4+import Distribution.Types.PackageName
5+import Distribution.Types.Version
6+import Pantry
7+import RIO
8+import System.Environment
9+import qualified Data.Map as Map
10+
11+main :: IO ()
12+main = do
13+ args <- getArgs
14+ (onlyVersion, packages) <- pure $ case args of
15+ "only-version" : packages -> (True, packages)
16+ packages -> (False, packages)
17+ runPantryApp $ liftIO . putStrLn . unlines_ =<< mapM (latestVersion onlyVersion) packages
18+ where
19+ -- unlines adds an extra trailing newline which can be annoying...
20+ unlines_ = intercalate "\n"
21+
22+latestVersion :: (HasPantryConfig env, HasLogFunc env) => Bool -> String -> RIO env String
23+latestVersion onlyVersion name = fmap (displayVersion onlyVersion) . getVersion . mkPackageName $ name
24+ where
25+ showVersion = intercalate "." . map show . versionNumbers . fst . head . Map.toDescList
26+ getVersion = getHackagePackageVersions YesRequireHackageIndex UsePreferredVersions
27+ displayVersion True v = showVersion v
28+ displayVersion False v = name <> "-" <> showVersion v
etc/commenter/latest-version/stack.yamlnew file+4
@@ -0,0 +1,4 @@
1+resolver:
2+ url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/18/18.yaml
3+packages:
4+- .
etc/commenter/latest-version/stack.yaml.locknew file+13
@@ -0,0 +1,13 @@
1+# This file was autogenerated by Stack.
2+# You should not edit this file by hand.
3+# For more information, please see the documentation at:
4+# https://docs.haskellstack.org/en/stable/lock_files
5+
6+packages: []
7+snapshots:
8+- completed:
9+ size: 586296
10+ url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/18/18.yaml
11+ sha256: 63539429076b7ebbab6daa7656cfb079393bf644971156dc349d7c0453694ac2
12+ original:
13+ url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/18/18.yaml
etc/commenter/src/lib.rsnew file+574
@@ -0,0 +1,574 @@
1+use std::collections::{BTreeMap, BTreeSet};
2+use std::error::Error;
3+use std::fmt;
4+use std::fs::File;
5+use std::io::{BufRead, BufReader, LineWriter, Lines, Write};
6+use std::path::Path;
7+use std::process::Command;
8+
9+use lazy_regex::regex;
10+use serde::{Deserialize, Deserializer};
11+
12+pub fn clear() {
13+ handle(true, |loc, _lines| match loc {
14+ // Add empty array to keep yaml valid
15+ Location::Lib => vec![" []".to_owned()],
16+ Location::Test | Location::Bench => vec![],
17+ });
18+}
19+
20+pub fn add(lib: Vec<String>, test: Vec<String>, bench: Vec<String>) {
21+ handle(true, |loc, mut lines| {
22+ lines.extend(match loc {
23+ Location::Lib => lib.clone(),
24+ Location::Test => test.clone(),
25+ Location::Bench => bench.clone(),
26+ });
27+ lines.sort();
28+ lines
29+ });
30+}
31+
32+enum VersionTag {
33+ Manual(Version),
34+ Auto(Version),
35+}
36+
37+impl VersionTag {
38+ fn tag(&self) -> &'static str {
39+ match self {
40+ VersionTag::Manual(_) => "manual",
41+ VersionTag::Auto(_) => "auto",
42+ }
43+ }
44+
45+ fn version(&self) -> &Version {
46+ match self {
47+ VersionTag::Manual(s) => s,
48+ VersionTag::Auto(s) => s,
49+ }
50+ }
51+}
52+
53+pub fn outdated() {
54+ let mut all: Vec<String> = vec![];
55+ let (versioned, disabled) = handle(false, |_loc, lines| {
56+ all.extend(lines);
57+ vec![]
58+ });
59+
60+ for DisabledPackage { package } in disabled {
61+ println!("WARN: {package} is disabled without a noted version");
62+ }
63+
64+ let mut map: BTreeMap<Package, VersionTag> = BTreeMap::new();
65+ for VersionedPackage { package, version } in versioned {
66+ map.insert(package, VersionTag::Manual(version));
67+ }
68+ let mut support: BTreeMap<(Package, Version), BTreeSet<(Package, Version)>> = BTreeMap::new();
69+ for v in all.into_iter() {
70+ let caps = regex!("tried ([^ ]+)-([^,-]+),").captures(&v).unwrap();
71+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
72+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
73+ map.insert(package.clone(), VersionTag::Auto(version.clone()));
74+
75+ if let Some(caps) = regex!("does not support: ([^ ]+)-([^-]+)").captures(&v) {
76+ let dep_package = Package(caps.get(1).unwrap().as_str().to_owned());
77+ let dep_version = Version(caps.get(2).unwrap().as_str().to_owned());
78+ let entry = support.entry((dep_package, dep_version)).or_default();
79+ entry.insert((package, version));
80+ }
81+ }
82+
83+ let latest_versions = {
84+ let mut packages: Vec<Package> = map.iter().map(|(package, _)| package.clone()).collect();
85+ packages.append(
86+ &mut support
87+ .iter()
88+ .map(|((package, _), _)| package.clone())
89+ .collect(),
90+ );
91+ latest_version(packages.into_iter())
92+ };
93+
94+ for (package, version) in map {
95+ if is_boot(&package) {
96+ continue;
97+ }
98+ let latest = latest_versions.get(&package).unwrap();
99+ if version.version() != latest {
100+ println!(
101+ "{package} mismatch, {tag}: {version}, hackage: {latest}",
102+ tag = version.tag(),
103+ version = version.version(),
104+ );
105+ }
106+ }
107+
108+ for ((package, version), dependents) in support {
109+ if is_boot(&package) {
110+ continue;
111+ }
112+
113+ let latest = latest_versions.get(&package).unwrap();
114+ if &version != latest {
115+ let max = 3;
116+ let dependents_stripped = dependents.len().saturating_sub(max);
117+ let dependents = dependents
118+ .into_iter()
119+ .take(max)
120+ .map(|(p, v)| format!("{p}-{v}"))
121+ .collect::<Vec<String>>()
122+ .join(", ");
123+ let dependents = if dependents_stripped > 0 {
124+ format!("{dependents} and {dependents_stripped} more")
125+ } else {
126+ dependents
127+ };
128+
129+ println!(
130+ "{package} mismatch, snapshot: {version}, hackage: {latest}, dependents: {dependents}"
131+ );
132+ }
133+ }
134+}
135+
136+fn is_boot(package: &Package) -> bool {
137+ [
138+ "Cabal",
139+ "base",
140+ "bytestring",
141+ "containers",
142+ "containers",
143+ "directory",
144+ "filepath",
145+ "deepseq",
146+ "ghc",
147+ "ghc-bignum",
148+ "ghc-boot",
149+ "ghc-boot-th",
150+ "ghc-prim",
151+ "ghc-lib-parser", // not a boot lib, but tied to the GHC version.
152+ "integer-gmp",
153+ "process",
154+ "stm",
155+ "template-haskell",
156+ "text",
157+ "time",
158+ ]
159+ .contains(&&*package.0)
160+}
161+
162+fn latest_version(packages: impl Iterator<Item = Package>) -> BTreeMap<Package, Version> {
163+ String::from_utf8(
164+ Command::new("latest-version")
165+ .args(packages.map(|p| p.0))
166+ .output()
167+ .expect("Could not find latest-version in PATH")
168+ .stdout,
169+ )
170+ .unwrap()
171+ .trim()
172+ .to_owned()
173+ .lines()
174+ .map(|s| {
175+ let VersionedPackage { package, version } = parse_versioned_package_canonical(s).unwrap();
176+ (package, version)
177+ })
178+ .collect()
179+}
180+
181+enum State {
182+ LookingForLibBounds,
183+ ProcessingLibBounds,
184+ LookingForTestBounds,
185+ ProcessingTestBounds,
186+ LookingForBenchBounds,
187+ ProcessingBenchBounds,
188+ Done,
189+}
190+
191+#[derive(PartialEq, Eq, Debug)]
192+struct VersionedPackage {
193+ package: Package,
194+ version: Version,
195+}
196+
197+fn parse_versioned_package_canonical(s: &str) -> Option<VersionedPackage> {
198+ if let Some(caps) = regex!(r#"^(.+)-([\d.]+)$"#).captures(s) {
199+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
200+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
201+ Some(VersionedPackage { package, version })
202+ } else {
203+ None
204+ }
205+}
206+
207+fn parse_versioned_package_yaml(s: &str) -> Option<VersionedPackage> {
208+ if let Some(caps) = regex!(r#"- *([^ ]+) < *0 *# *([\d.]+)"#).captures(s) {
209+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
210+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
211+ Some(VersionedPackage { package, version })
212+ } else if let Some(caps) = regex!(r#"- *([^ ]+) *# *([\d.]+)"#).captures(s) {
213+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
214+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
215+ Some(VersionedPackage { package, version })
216+ } else {
217+ None
218+ }
219+}
220+
221+struct DisabledPackage {
222+ package: String,
223+}
224+
225+fn parse_disabled_package(s: &str) -> Option<DisabledPackage> {
226+ if !regex!(r#"- *([^ ]+) < *0 *# tried"#).is_match(s) {
227+ if let Some(caps) = regex!(r#"- *([^ ]+) < *0 *# *[^\d]"#).captures(s) {
228+ let package = caps.get(1).unwrap().as_str().to_owned();
229+ Some(DisabledPackage { package })
230+ } else {
231+ None
232+ }
233+ } else {
234+ None
235+ }
236+}
237+
238+fn handle<F>(write: bool, mut f: F) -> (Vec<VersionedPackage>, Vec<DisabledPackage>)
239+where
240+ F: FnMut(Location, Vec<String>) -> Vec<String>,
241+{
242+ let path = "build-constraints.yaml";
243+ let mut new_lines: Vec<String> = vec![];
244+ let mut versioned_packages: Vec<VersionedPackage> = vec![];
245+ let mut disabled_packages: Vec<DisabledPackage> = vec![];
246+
247+ let mut state = State::LookingForLibBounds;
248+ let mut buf = vec![];
249+ for line in read_lines(path).map(|s| s.unwrap()) {
250+ if let Some(versioned_package) = parse_versioned_package_yaml(&line) {
251+ versioned_packages.push(versioned_package);
252+ } else if let Some(disabled_package) = parse_disabled_package(&line) {
253+ disabled_packages.push(disabled_package);
254+ }
255+
256+ match state {
257+ State::LookingForLibBounds => {
258+ if line == r#" "Library and exe bounds failures":"# {
259+ state = State::ProcessingLibBounds;
260+ }
261+ new_lines.push(line);
262+ }
263+ State::ProcessingLibBounds => {
264+ if line == r#" # End of Library and exe bounds failures"# {
265+ new_lines.extend(f(Location::Lib, buf).into_iter());
266+ buf = vec![];
267+ new_lines.push(line);
268+ state = State::LookingForTestBounds;
269+ } else {
270+ // Remove empty section
271+ if line != " []" {
272+ buf.push(line);
273+ }
274+ }
275+ }
276+ State::LookingForTestBounds => {
277+ if line == r#" # Test bounds issues"# {
278+ state = State::ProcessingTestBounds;
279+ }
280+ new_lines.push(line);
281+ }
282+ State::ProcessingTestBounds => {
283+ if line == r#" # End of Test bounds issues"# {
284+ new_lines.extend(f(Location::Test, buf).into_iter());
285+ buf = vec![];
286+ new_lines.push(line);
287+ state = State::LookingForBenchBounds;
288+ } else {
289+ buf.push(line);
290+ }
291+ }
292+ State::LookingForBenchBounds => {
293+ if line == r#" # Benchmark bounds issues"# {
294+ state = State::ProcessingBenchBounds;
295+ }
296+ new_lines.push(line);
297+ }
298+ State::ProcessingBenchBounds => {
299+ if line == r#" # End of Benchmark bounds issues"# {
300+ new_lines.extend(f(Location::Bench, buf).into_iter());
301+ buf = vec![];
302+ new_lines.push(line);
303+ state = State::Done;
304+ } else {
305+ buf.push(line);
306+ }
307+ }
308+ State::Done => {
309+ new_lines.push(line);
310+ }
311+ }
312+ }
313+
314+ if write {
315+ let file = File::create(path).unwrap();
316+ let mut file = LineWriter::new(file);
317+
318+ for line in new_lines {
319+ file.write_all((line + "\n").as_bytes()).unwrap();
320+ }
321+ file.flush().unwrap();
322+ }
323+
324+ (versioned_packages, disabled_packages)
325+}
326+
327+enum Location {
328+ Lib,
329+ Test,
330+ Bench,
331+}
332+
333+fn read_lines<P>(filename: P) -> Lines<BufReader<File>>
334+where
335+ P: AsRef<Path>,
336+{
337+ let file = File::open(filename).unwrap();
338+ BufReader::new(file).lines()
339+}
340+
341+#[derive(Deserialize)]
342+struct SnapshotYaml {
343+ // flags: BTreeMap<Package, BTreeMap<PackageFlag, bool>>,
344+ // publish_time
345+ packages: Vec<SnapshotPackage>,
346+ // hidden
347+ // resolver
348+}
349+
350+#[derive(Deserialize)]
351+struct SnapshotPackage {
352+ hackage: PackageWithVersionAndSha,
353+ // pantry-tree
354+}
355+
356+#[derive(PartialOrd, Ord, PartialEq, Eq, Clone, Debug)]
357+struct Package(String);
358+
359+impl fmt::Display for Package {
360+ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
361+ self.0.fmt(f)
362+ }
363+}
364+
365+#[derive(Clone, PartialOrd, Ord, PartialEq, Eq, Debug)]
366+struct Version(String);
367+
368+impl fmt::Display for Version {
369+ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
370+ self.0.fmt(f)
371+ }
372+}
373+
374+// zstd-0.1.3.0@sha256:4c0a372251068eb6086b8c3a0a9f347488f08b570a7705844ffeb2c720c97223,3723
375+struct PackageWithVersionAndSha {
376+ name: Package,
377+ version: Version,
378+}
379+
380+impl<'de> serde::Deserialize<'de> for PackageWithVersionAndSha {
381+ fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
382+ where
383+ D: Deserializer<'de>,
384+ {
385+ let s: String = String::deserialize(deserializer)?;
386+ let r = regex!(r#"^(.+?)-([.\d]+)@sha256:[\da-z]+,\d+$"#);
387+ if let Some(caps) = r.captures(&s) {
388+ let name = Package(caps.get(1).unwrap().as_str().to_owned());
389+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
390+ Ok(Self { name, version })
391+ } else {
392+ Err(serde::de::Error::invalid_value(
393+ serde::de::Unexpected::Other(&s),
394+ &"Invalid PackageVersionWithSha",
395+ ))
396+ }
397+ }
398+}
399+
400+fn yaml_from_file<A, P: AsRef<Path>>(path: P) -> Result<A, Box<dyn Error>>
401+where
402+ A: for<'de> Deserialize<'de>,
403+{
404+ let file = File::open(path)?;
405+ let reader = BufReader::new(file);
406+ let u = serde_yaml::from_reader(reader)?;
407+ Ok(u)
408+}
409+
410+struct Snapshot {
411+ packages: BTreeMap<Package, Diff<Version>>,
412+}
413+
414+#[derive(Clone, Copy)]
415+enum Diff<A> {
416+ Left(A),
417+ Right(A),
418+ Both(A, A),
419+}
420+
421+fn to_diff(a: SnapshotYaml, b: SnapshotYaml) -> Snapshot {
422+ let mut packages = BTreeMap::new();
423+ for s in a.packages {
424+ let package = s.hackage;
425+ packages.insert(package.name, Diff::Left(package.version));
426+ }
427+ for s in b.packages {
428+ let package = s.hackage;
429+ let name = package.name;
430+ let version = package.version;
431+ if let Some(a) = packages.remove(&name) {
432+ match a {
433+ Diff::Left(a) => {
434+ if a == version {
435+ packages.remove(&name);
436+ } else {
437+ packages.insert(name, Diff::Both(a, version));
438+ }
439+ }
440+ _ => unreachable!(),
441+ }
442+ } else {
443+ packages.insert(name, Diff::Right(version));
444+ }
445+ }
446+
447+ Snapshot { packages }
448+}
449+
450+pub fn diff_snapshot(a: String, b: String) {
451+ let diff = to_diff(yaml_from_file(a).unwrap(), yaml_from_file(b).unwrap());
452+ for (name, diff) in diff.packages {
453+ let s = match diff {
454+ Diff::Left(a) => format!("- {name}-{a}"),
455+ Diff::Right(b) => format!("+ {name}-{b}"),
456+ Diff::Both(a, b) => format!("~ {name}-{a} -> {b}"),
457+ };
458+ println!("{s}");
459+ }
460+}
461+
462+#[derive(PartialEq, Eq, Debug)]
463+struct DisabledTransitively {
464+ child: VersionedPackage,
465+ parent: Package,
466+}
467+
468+fn parse_disabled_transitviely(s: &str) -> Option<DisabledTransitively> {
469+ let r = regex!(
470+ r#"- *([^ ]+) < *0 *# tried [^ ]+-([\d.]+), but its \*[^*]+\* requires the disabled package: ([^ ]+)"#
471+ );
472+ if let Some(caps) = r.captures(s) {
473+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
474+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
475+ let parent = Package(caps.get(3).unwrap().as_str().to_owned());
476+ Some(DisabledTransitively {
477+ child: VersionedPackage { package, version },
478+ parent,
479+ })
480+ } else {
481+ None
482+ }
483+}
484+
485+#[test]
486+fn test_parse_disabled_transitviely() {
487+ let s = "- Network-NineP < 0 # tried Network-NineP-0.4.7.1, but its *library* requires the disabled package: mstate";
488+ assert_eq!(
489+ parse_disabled_transitviely(s),
490+ Some(DisabledTransitively {
491+ child: VersionedPackage {
492+ package: Package("Network-NineP".to_owned()),
493+ version: Version("0.4.7.1".to_owned())
494+ },
495+ parent: Package("mstate".to_owned()),
496+ })
497+ )
498+}
499+
500+type M = BTreeMap<Package, (Vec<VersionedPackage>, Option<usize>)>;
501+
502+pub fn disabled() {
503+ let mut disabled_transitively: Vec<DisabledTransitively> = vec![];
504+ handle(false, |loc, lines| {
505+ match loc {
506+ Location::Lib => disabled_transitively.extend(
507+ lines
508+ .into_iter()
509+ .map(|line| parse_disabled_transitviely(&line))
510+ .flatten()
511+ .collect::<Vec<_>>(),
512+ ),
513+ Location::Test | Location::Bench => (),
514+ }
515+ vec![]
516+ });
517+
518+ let mut packages: BTreeSet<Package> = BTreeSet::new();
519+ let mut disabled: M = BTreeMap::new();
520+
521+ for DisabledTransitively { child, parent } in disabled_transitively {
522+ packages.insert(child.package.clone());
523+ packages.insert(parent.clone());
524+ disabled
525+ .entry(child.package.clone())
526+ .or_insert_with(|| (vec![], None));
527+ let t = disabled.entry(parent).or_insert_with(|| (vec![], None));
528+ t.0.push(child);
529+ }
530+
531+ let mut packages_len = packages.len();
532+ while packages_len > 0 {
533+ let mut new_packages: BTreeSet<Package> = BTreeSet::new();
534+ for package in packages {
535+ let (_, count) = disabled.get(&package).unwrap();
536+ if count.is_none() && !process(&package, &mut disabled) {
537+ new_packages.insert(package.clone());
538+ }
539+ }
540+ packages = new_packages;
541+ packages_len = packages.len();
542+ }
543+
544+ let mut v: Vec<_> = disabled
545+ .into_iter()
546+ .map(|(package, (_, count))| (count, package))
547+ .collect();
548+ v.sort();
549+ for (count, package) in v {
550+ let count = count.unwrap();
551+ if count != 0 {
552+ println!("{package} is disabled with {count} dependents");
553+ }
554+ }
555+}
556+
557+fn process(package: &Package, m: &mut M) -> bool {
558+ let (children, count) = m.get(package).unwrap();
559+ assert!(count.is_none(), "{:?}", package);
560+ let mut count = 0;
561+ for child in children {
562+ let (_, child_count) = m
563+ .get(&child.package)
564+ .unwrap_or_else(|| panic!("{}", child.package));
565+ match child_count {
566+ None => return false,
567+ Some(i) => count += 1 + i,
568+ }
569+ }
570+ m.entry(package.clone())
571+ .and_modify(|tup| tup.1 = Some(count))
572+ .or_insert_with(|| panic!("{}", package));
573+ true
574+}
etc/commenter/src/main.rsnew file+171
@@ -0,0 +1,171 @@
1+use std::collections::HashMap;
2+use std::io::{self, BufRead};
3+
4+use lazy_regex::regex;
5+use regex::Regex;
6+use structopt::StructOpt;
7+
8+type H = HashMap<Header, Vec<(String, String, String)>>;
9+
10+#[derive(Debug, Clone, PartialEq, Eq, Hash)]
11+enum Header {
12+ Versioned { package: String, version: String },
13+ Missing { package: String },
14+}
15+
16+#[derive(Debug, StructOpt)]
17+#[structopt(
18+ name = "commenter",
19+ about = "Automates generation of bounds in build-constraints.yaml"
20+)]
21+enum Opt {
22+ Add,
23+ Clear,
24+ DiffSnapshot { a: String, b: String },
25+ Disabled,
26+ Outdated,
27+}
28+
29+fn main() {
30+ let opt = Opt::from_args();
31+ match opt {
32+ Opt::Add => add(),
33+ Opt::Clear => commenter::clear(),
34+ Opt::DiffSnapshot { a, b } => commenter::diff_snapshot(a, b),
35+ Opt::Disabled => commenter::disabled(),
36+ Opt::Outdated => commenter::outdated(),
37+ }
38+}
39+
40+fn add() {
41+ let mut lib_exes: H = Default::default();
42+ let mut tests: H = Default::default();
43+ let mut benches: H = Default::default();
44+ let mut last_header: Option<Header> = None;
45+
46+ let header_versioned = regex!(
47+ r#"^(?P<package>[a-zA-z]([a-zA-z0-9.-]*?))-(?P<version>(\d+(\.\d+)*)).+?is out of bounds for:$"#
48+ );
49+ let header_missing = regex!(r#"^(?P<package>[a-zA-z]([a-zA-z0-9.-]*)).+?depended on by:$"#);
50+ let package = regex!(
51+ r#"^- \[ \] (?P<package>[a-zA-z]([a-zA-z0-9.-]*?))-(?P<version>(\d+(\.\d+)*)).+?Used by: (?P<component>.+)$"#
52+ );
53+
54+ // Ignore everything until the bounds issues show up.
55+ let mut process_line = false;
56+
57+ for line in io::stdin().lock().lines().flatten() {
58+ if is_reg_match(&line, regex!(r#"^\s*$"#)) {
59+ // noop
60+ } else if line == "curator: Snapshot dependency graph contains errors:" {
61+ process_line = true;
62+ } else if !process_line {
63+ println!("[INFO] {line}");
64+ } else if let Some(cap) = package.captures(&line) {
65+ let root = last_header.clone().unwrap();
66+ let package = cap.name("package").unwrap().as_str();
67+ let version = cap.name("version").unwrap().as_str();
68+ let component = cap.name("component").unwrap().as_str();
69+ match component {
70+ "library" | "executable" => {
71+ insert(&mut lib_exes, root, package, version, component)
72+ }
73+ "benchmark" => insert(&mut benches, root, package, version, "benchmarks"),
74+ "test-suite" => insert(&mut tests, root, package, version, component),
75+ _ => panic!("Bad component: {}", component),
76+ }
77+ } else if let Some(cap) = header_versioned.captures(&line) {
78+ let package = cap.name("package").unwrap().as_str().to_owned();
79+ let version = cap.name("version").unwrap().as_str().to_owned();
80+ last_header = Some(Header::Versioned { package, version });
81+ } else if let Some(cap) = header_missing.captures(&line) {
82+ let package = cap.name("package").unwrap().as_str().to_owned();
83+ last_header = Some(Header::Missing { package });
84+ } else {
85+ panic!("Unhandled: {:?}", line);
86+ }
87+ }
88+
89+ let mut auto_lib_exes = vec![];
90+ let mut auto_tests = vec![];
91+ let mut auto_benches = vec![];
92+
93+ if !lib_exes.is_empty() {
94+ println!("\nLIBS + EXES\n");
95+ }
96+ for (header, packages) in lib_exes {
97+ for (package, version, component) in packages {
98+ let s = printer(" ", &package, true, &version, &component, &header);
99+ println!("{s}");
100+ auto_lib_exes.push(s);
101+ }
102+ }
103+
104+ if !tests.is_empty() {
105+ println!("\nTESTS\n");
106+ }
107+ for (header, packages) in tests {
108+ for (package, version, component) in packages {
109+ let s = printer(" ", &package, false, &version, &component, &header);
110+ println!("{s}");
111+ auto_tests.push(s);
112+ }
113+ }
114+
115+ if !benches.is_empty() {
116+ println!("\nBENCHMARKS\n");
117+ }
118+ for (header, packages) in benches {
119+ for (package, version, component) in packages {
120+ let s = printer(" ", &package, false, &version, &component, &header);
121+ println!("{s}");
122+ auto_benches.push(s);
123+ }
124+ }
125+
126+ println!();
127+ println!(
128+ "Adding {lib_exes} libs, {tests} tests, {benches} benches to build-constraints.yaml",
129+ lib_exes = auto_lib_exes.len(),
130+ tests = auto_tests.len(),
131+ benches = auto_benches.len()
132+ );
133+ commenter::add(auto_lib_exes, auto_tests, auto_benches);
134+}
135+
136+fn printer(
137+ indent: &str,
138+ package: &str,
139+ lt0: bool,
140+ version: &str,
141+ component: &str,
142+ header: &Header,
143+) -> String {
144+ let lt0 = if lt0 { " < 0" } else { "" };
145+ format!(
146+ "{indent}- {package}{lt0} # tried {package}-{version}, but its *{component}* {cause}",
147+ cause = match header {
148+ Header::Versioned { package, version } => format!(
149+ "does not support: {package}-{version}",
150+ package = package,
151+ version = version
152+ ),
153+ Header::Missing { package } => format!(
154+ "requires the disabled package: {package}",
155+ package = package
156+ ),
157+ },
158+ )
159+}
160+
161+fn insert(h: &mut H, header: Header, package: &str, version: &str, component: &str) {
162+ (*h.entry(header).or_insert_with(Vec::new)).push((
163+ package.to_owned(),
164+ version.to_owned(),
165+ component.to_owned(),
166+ ));
167+}
168+
169+fn is_reg_match(s: &str, r: &Regex) -> bool {
170+ r.captures(s).is_some()
171+}
etc/curator-exes/.gitignorenew file+1
@@ -0,0 +1 @@
1+/bin/
etc/curator-exes/Dockerfilenew file+13
@@ -0,0 +1,13 @@
1+FROM fpco/stack-build:lts-14
2+
3+# Prime the snapshot so rebuilds are faster
4+RUN mkdir -p /artifacts
5+RUN stack update
6+RUN stack build --no-install-ghc --resolver lts-13.28 --only-dependencies stack amazonka-s3
7+
8+RUN git clone --depth 1 https://github.com/commercialhaskell/stack && \
9+ git clone --depth 1 https://github.com/commercialhaskell/curator
10+
11+COPY stack.yaml .
12+
13+RUN stack --no-install-ghc install --local-bin-path /artifacts
etc/curator-exes/README.mdnew file+5
@@ -0,0 +1,5 @@
1+Scripts to create and upload the curator-exes.tar.bz2 files. Make sure to
2+update the hash in automated/build-next.sh.
3+
4+NOTE: Depending on what's exactly on the master branches when running the
5+`./run.sh` script, the `stack.yaml` file may need some tweaks.
etc/curator-exes/run.shnew file+11
@@ -0,0 +1,11 @@
1+#!/usr/bin/env bash
2+
3+set -eux
4+
5+rm -rf bin
6+mkdir -p bin
7+
8+docker build . --tag curator-exes
9+
10+docker run --rm -v $(pwd)/bin:/output curator-exes cp /artifacts/* output
11+aws s3 cp curators-exes/* s3://download.fpcomplete.com/curator-exes/
etc/curator-exes/stack.yamlnew file+22
@@ -0,0 +1,22 @@
1+resolver: lts-13.28
2+
3+packages:
4+- stack
5+- curator
6+
7+extra-deps:
8+- hi-file-parser-0.1.0.0@sha256:3fc95852035c8e0fa6d5f9d22e5108067c8f4816ac84675bddc971b20144a9ae,2317
9+- http-download-0.1.0.0@sha256:b02d76d28364b74fb90d3ec3c46fd81f9d77bcf71fa40c1d341a7251a0fc40e8,2023
10+- pantry-0.1.1.2@sha256:6f06556f8e934afd517559d6f3dae947db91ef3801ee4e5cee9916c83a0c4d52,4628
11+- rio-prettyprint-0.1.0.0@sha256:764e1a357275c3c62d57c494d038feae01cf745788e7d0e97367ba793c9670c3,1359
12+- ansi-terminal-0.9.1@sha256:48f53532d0f365ffa568c8cf0adc84c66f800a7d80d3329e4f04fa75392f4af1,3225
13+- rio-0.1.12.0@sha256:a0b42682a455ffde6a4d894b135117e379aea7ed1810c2cfed471b8f5879968c,3633
14+- unliftio-0.2.12@sha256:b089fbc2ff2628a963c2c4b12143f2020874e3e5144ffd6c62b25639a0ca1483,3325
15+
16+- github: fpco/casa
17+ commit: a0cd05c1a9ce33acbb1bdfb9324370f884916e88
18+ # sha256: 812e05de8f9abdbd1101fc94895dcfd5c35962c4d67a43cc20cbc06eb59ea1f0
19+ # size: 9508
20+ subdirs:
21+ - casa-client
22+ - casa-types
etc/diskspace/clean-old-stack-libs.shnew file+13
@@ -0,0 +1,13 @@
1+#!/bin/bash
2+
3+set -e
4+
5+if [ $# != 1 ]; then
6+ echo "Usage: $0 [nightly|lts-xx]"
7+ exit 1
8+fi
9+
10+cd ~/stackage/automated/work/$1/unpack-dir/.stack-work/install/x86_64-linux/*/*/lib/x86_64-linux-ghc-*
11+pwd
12+
13+stack --resolver lts-18.6 script ~/stackage/etc/diskspace/remove-old-stack-work-libs.hs
etc/diskspace/remove-old-stack-work-libs.hsnew file+57
@@ -0,0 +1,57 @@
1+#!/usr/bin/env stack
2+-- stack --resolver lts-18.6 script
3+
4+-- Utility to remove old libs installed under .stack-work/ to save diskspace
5+
6+-- Should be run in:
7+-- work/*/unpack-dir/.stack-work/install/x86_64-linux/*/*/lib/x86_64-linux-ghc-*
8+
9+import Data.List
10+import System.Directory
11+import System.FilePath
12+import Text.Regex.TDFA
13+
14+-- keep 2 latest builds
15+keepBuilds :: Int
16+keepBuilds = 2
17+
18+main = do
19+ files <- sort <$> listDirectory "."
20+ let (dynlibs,libdirs) = partition (".so" `isExtensionOf`) files
21+ pkglibdirs = groupBy samePkgLibDir libdirs
22+ pkgdynlibs = groupBy samePkgDynLib dynlibs
23+ mapM_ (removeOlder removeDirectoryRecursive) pkglibdirs
24+ mapM_ (removeOlder removeFile) pkgdynlibs
25+ where
26+ samePkgLibDir l1 l2 = pkgDirName l1 == pkgDirName l2
27+ where
28+ pkgDirName p =
29+ if length p < 25
30+ then error $ p ++ " too short to be in correct name-version-hash format"
31+ else extractNameInternal p
32+
33+ extractNameInternal :: String -> String
34+ extractNameInternal p =
35+ let (name,match,internal) = p =~ "-[0-9.]+-[0-9A-Za-z]{19,22}" :: (String, String, String)
36+ in if null match || null name then error $ p ++ " not in correct name-version-hash format"
37+ else name ++ internal
38+
39+ samePkgDynLib d1 d2 = pkgDynName d1 == pkgDynName d2
40+ where
41+ pkgDynName p =
42+ if length p < 42
43+ then error $ p ++ " too short to be libHSname-version-hash-ghc*.so format"
44+ else (extractNameInternal . removeDashSegment) p
45+
46+ removeDashSegment = dropWhileEnd (/= '-')
47+
48+ removeOlder remover files = do
49+ oldfiles <- drop keepBuilds . reverse <$> sortByAge files
50+ mapM_ remover oldfiles
51+
52+ sortByAge files = do
53+ timestamps <- mapM getModificationTime files
54+ let fileTimes = zip files timestamps
55+ return $ map fst $ sortBy compareSnd fileTimes
56+
57+ compareSnd (_,t1) (_,t2) = compare t1 t2
stackage/ChangeLog.mddeleted−9
@@ -1,9 +0,0 @@
1−## 0.7.3.0
2−
3−* Added the executables split off from stackage-cli.
4−
5−## 0.7.0.0
6−
7−* First release of this incarnation of the stackage package. Previously, this
8− package provided completely different functionality. That functionality has
9− since moved to stackage-curator.
stackage/LICENSEdeleted−20
@@ -1,20 +0,0 @@
1−Copyright (c) 2015 FP Complete
2−
3−Permission is hereby granted, free of charge, to any person obtaining
4−a copy of this software and associated documentation files (the
5−"Software"), to deal in the Software without restriction, including
6−without limitation the rights to use, copy, modify, merge, publish,
7−distribute, sublicense, and/or sell copies of the Software, and to
8−permit persons to whom the Software is furnished to do so, subject to
9−the following conditions:
10−
11−The above copyright notice and this permission notice shall be included
12−in all copies or substantial portions of the Software.
13−
14−THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15−EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16−MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17−IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18−CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19−TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20−SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
stackage/README.mddeleted−2
@@ -1,2 +0,0 @@
1−This is a dummy wrapper package, forcing installation of other packages which
2−provide real functionality.
stackage/Stackage/Dummy.hsdeleted−3
@@ -1,3 +0,0 @@
1−-- | This module does absolutely nothing. It's present so that cabal can more
2−-- easily track whether the stackage package is installed.
3−module Stackage.Dummy () where
stackage/stackage.cabaldeleted−29
@@ -1,29 +0,0 @@
1−name: stackage
2−version: 0.7.3.2
3−synopsis: Dummy package forcing installation of other Stackage packages
4−homepage: https://www.stackage.org/
5−license: MIT
6−license-file: LICENSE
7−author: Michael Snoyman
8−maintainer: michael@snoyman.com
9−category: Development
10−build-type: Simple
11−extra-source-files: README.md ChangeLog.md
12−cabal-version: >=1.10
13−
14−library
15− exposed-modules: Stackage.Dummy
16− build-depends: base < 10
17− , stackage-cli >= 0.1.0
18− , stackage-update
19− , stackage-upload
20− , stackage-install
21− , stackage-build-plan
22− , stackage-cabal >= 0.1.1
23− , stackage-sandbox >= 0.1.1
24− , stackage-setup >= 0.0.1
25− default-language: Haskell2010
26−
27−source-repository head
28− type: git
29− location: git://github.com/fpco/stackage.git
verify-packagenew file+47
@@ -0,0 +1,47 @@
1+#!/usr/bin/env bash
2+
3+# Script to verify a package to build successfully
4+# Provide pacakge name by the first argument
5+#
6+# Example:
7+# ./verify-package mtl
8+# or
9+# ./verify-package mtl-2.2.2
10+
11+set -eu
12+
13+die() {
14+ >&2 echo "$1"
15+ exit 1
16+}
17+
18+package="${1:-}"
19+if [[ -z $package ]]; then
20+ die "Package name is not given"
21+fi
22+
23+
24+here="$(cd "$(dirname "$0")" > /dev/null; pwd)"
25+dir="$(mktemp -d tmp.XXXX)"
26+
27+exit() {
28+ cd "$here"
29+ rm -rf "$dir"
30+}
31+trap exit EXIT
32+
33+# When updating these commands, make sure to update .github/PULL_REQUEST_TEMPLATE.md as well.
34+cd "$dir"
35+stack unpack "$package"
36+cd "$(ls | head -n 1)"
37+rm -f stack.yaml
38+stack init --resolver nightly --ignore-subdirs
39+stack build --resolver nightly --haddock --test --bench --no-run-benchmarks
40+
41+
42+cat <<EOF
43+
44+
45+ 🎉 It looks good!
46+
47+EOF