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 fpco/pid1: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−52
@@ -1,11 +1,11 @@
1#!/usr/bin/env bash
1#!/usr/bin/env bash
2
2
3−set -eu +x
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,46 +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# Determine the new build plan unless NOPLAN is set
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−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" ]
104then
106then
105− docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "stack update && exec stackage-curator create-plan --plan-file $PLAN_FILE --target $TARGET ${CONSTRAINTS:-}"
107+ docker run $ARGS_PREBUILD $IMAGE curator snapshot
108+elif [ $SHORTNAME = "lts" ]
109+then
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"
106fi
113fi
107
114
115+
108# Do the rest of the pre-build actions:
116# Do the rest of the pre-build actions:
109#
117#
110−# * Check that the plan is valid
118+# * Check that the snapshot is valid
111−# * Fetch all needed tarballs (the build step does not have write access to the tarball directory)
119+# * Fetch and unpack all needed tarballs (the build step does not have write access to the tarball directory)
112−# * Do a single unpack to create the package index cache (again due to directory perms)
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'
113−docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "stackage-curator check --plan-file $PLAN_FILE && stackage-curator fetch --plan-file $PLAN_FILE && cd /tmp && exec stack unpack random"
121+
122+case $SHORTNAME in
123+ lts) JOBS=1 ;;
124+ nightly) JOBS=2 ;;
125+esac
114
126
115# 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
116# 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
117# switch back to the current user
129# switch back to the current user
118−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"
119
131
120# 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
121# 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
122# 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
123# 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
124# were building.
136# were building.
125−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"
126
138
127# Successful build, so we need to:
139# Successful build, so we need to:
128#
140#
129# * Upload the docs to S3
141# * Upload the docs to S3
130−# * Upload the 00-index.tar file to S3 (TODO: this is probably no longer necessary, since snapshots never modify .cabal files)
131−# * 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
132−# * Register as a new Hackage distro
133−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
149+
150+if [ $SHORTNAME = "lts" ]
151+then
152+ $ROOT/dockerfiles/build.sh $TARGET
153+ $ROOT/dockerfiles/build.sh --push $TARGET
154+ $ROOT/dockerfiles/build.sh --push --small $TARGET
155+fi
134
156
157+echo -n "Completed at "
135date
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−24
@@ -1,24 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -eux
4−
5−cd "$(dirname "${BASH_SOURCE[0]}")"
6−
7−CRONDIR=$(pwd)/crondir
8−mkdir -p $CRONDIR
9−source aws.sh
10−
11−IMAGE=fpco/stackage-server-prod:latest
12−docker pull $IMAGE
13−
14−stack update
15−
16−echo "Running stackage-server-cron..."
17−echo "('tail -f $CRONDIR/stackage-server-cron.log' to watch)"
18−docker run --rm \
19− -v $CRONDIR:/home/ubuntu \
20− -v $HOME/.stack/indices:/home/ubuntu/.stack/indices:ro \
21− --workdir /home/ubuntu \
22− -p 17834:17834 \
23− $IMAGE \
24− 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,6 +5,7 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
5while true; do
5while true; do
6 ./build.sh nightly-$(date -u +%F)
6 ./build.sh nightly-$(date -u +%F)
7 date
7 date
8+
8 sleep 30m
9 sleep 30m
9 echo
10 echo
10done
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+5920−1174
@@ -1,30 +1,655 @@
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+
4 "Tobias Dammers <tdammers@gmail.com> @tdammers":
616 "Tobias Dammers <tdammers@gmail.com> @tdammers":
5 - ginger
617 - ginger
618+ - yeshql
6
619
7 "Yair Chuchem <yairchu@gmail.com> @yairchu":
620 "Yair Chuchem <yairchu@gmail.com> @yairchu":
621+ - generic-constraints
8 - List
622 - List
9−
623+ - ListTree
10− "Luke Murphy <lukewm@riseup.net> @lwm":
11− - tasty-discover
12
624
13 "Marco Zocca @ocramz":
625 "Marco Zocca @ocramz":
626+ - ad-delcont
14 - sparse-linear-algebra
627 - sparse-linear-algebra
15− - 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
16
638
17 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
639 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
18 - sqlite-simple-errors
640 - sqlite-simple-errors
19 - median-stream
641 - median-stream
20 - stm-supply
642 - stm-supply
643+ - filter-logger
644+ - tile
645+ - mbtiles
21
646
22 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
647 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
23 - quickcheck-arbitrary-adt
648 - quickcheck-arbitrary-adt
24 - hspec-golden-aeson
649 - hspec-golden-aeson
25− - servant-aeson-specs
650+ - quickcheck-arbitrary-template
26
651
27− "Winter Land <winterland1989@gmail.com> @winterland1989":
652+ "Winter Han <winterland1989@gmail.com> @winterland1989":
28 - if
653 - if
29 - tcp-streams
654 - tcp-streams
30 - tcp-streams-openssl
655 - tcp-streams-openssl
@@ -34,14 +659,29 @@ packages:
34 - word24
659 - word24
35 - mysql-haskell
660 - mysql-haskell
36 - mysql-haskell-openssl
661 - mysql-haskell-openssl
662+ - data-has
663+ - unboxed-ref
37
664
38 "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
39 - 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
40
679
41 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
680 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
42− # - postgresql-query # BLOCKED derive
681+ - postgresql-query
43 - hreader
682 - hreader
44 - hset
683 - hset
684+ - base58-bytestring
45
685
46 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
686 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
47 - kawhi
687 - kawhi
@@ -53,63 +693,61 @@ packages:
53 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
693 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
54 - makefile
694 - makefile
55
695
56− "Michael Litchard <michael@schmong.org> @mlitchard":
57− - point-octree
58−
59 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
696 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
60 - symengine
697 - symengine
61
698
62 "alpheccar <misc@alpheccar.org> @alpheccar":
699 "alpheccar <misc@alpheccar.org> @alpheccar":
63 - HPDF
700 - HPDF
64− - hbayes
65
701
66− "Dmitry Bogatov <KAction@gnu.org>":
702+ "Dmitry Bogatov <KAction@gnu.org> @iu-guest":
67 - once
703 - once
704+ - mbug
68
705
69 "David Johnson <djohnson.m@gmail.com> @dmjio":
706 "David Johnson <djohnson.m@gmail.com> @dmjio":
707+ - miso
70− # GHC 8 - envy
708+ - envy
71 - s3-signer
709 - s3-signer
72− # bounds - google-translate
710+ - google-translate
73 - hackernews
711 - hackernews
74− # bounds - ses-html
712+ - ses-html
75− # via stripe-http-streams - stripe-haskell
713+ - stripe-haskell
76− # via http-streams - stripe-http-streams
714+ - stripe-http-client
77− # - stripe-core # BLOCKED aeson < 1.0
715+ - stripe-core
716+ - stripe-tests
78
717
79 "Piotr Mlodawski @pmlodawski":
718 "Piotr Mlodawski @pmlodawski":
719+ - error-util < 0 # 0.0.1.2 MonadFail
80 - signal
720 - signal
81− # GHC 8 - ghc-session
82
721
83 "Michael Snoyman michael@snoyman.com @snoyberg":
722 "Michael Snoyman michael@snoyman.com @snoyberg":
84 - bzlib-conduit
723 - bzlib-conduit
85− - cabal-install
86− - cabal-src
87 - case-insensitive
724 - case-insensitive
88 - classy-prelude-yesod
725 - classy-prelude-yesod
89 - conduit-combinators
726 - conduit-combinators
90 - conduit-extra
727 - conduit-extra
91 - hebrew-time
728 - hebrew-time
92− - keter
93 - markdown
729 - markdown
94 - mime-mail
730 - mime-mail
95 - mime-mail-ses
731 - mime-mail-ses
732+ - mime-types
96 - network-conduit-tls
733 - network-conduit-tls
97 - persistent
734 - persistent
98 - persistent-mysql
735 - persistent-mysql
99 - persistent-postgresql
736 - persistent-postgresql
100 - persistent-sqlite
737 - persistent-sqlite
101 - persistent-template
738 - persistent-template
102− - stackage-curator
739+ - persistent-test
103− - stm-conduit
740+ - store
741+ - wai-extra
104 - wai-websockets
742 - wai-websockets
105 - warp-tls
743 - warp-tls
106− - yackage
107 - yesod
744 - yesod
745+ - authenticate
746+ - html-conduit
108 - yesod-auth
747 - yesod-auth
109 - authenticate-oauth
748 - authenticate-oauth
110 - yesod-bin
749 - yesod-bin
111 - yesod-eventsource
750 - yesod-eventsource
112− - yesod-fay
113 - yesod-gitrepo
751 - yesod-gitrepo
114 - yesod-newsfeed
752 - yesod-newsfeed
115 - yesod-sitemap
753 - yesod-sitemap
@@ -118,7 +756,7 @@ packages:
118 - yesod-websockets
756 - yesod-websockets
119 - cereal-conduit
757 - cereal-conduit
120 - binary-conduit
758 - binary-conduit
121− # GHC 8 - lzma-conduit
759+ - lzma-conduit
122 - mutable-containers
760 - mutable-containers
123 - hpc-coveralls
761 - hpc-coveralls
124 - monad-unlift
762 - monad-unlift
@@ -126,60 +764,70 @@ packages:
126 - yaml
764 - yaml
127 - servius
765 - servius
128 - cryptonite-conduit
766 - cryptonite-conduit
767+ - streaming-commons
129
768
130− - alex
769+ - alex < 3.2.7 || > 3.2.7
131 - async
770 - async
132 - base16-bytestring
771 - base16-bytestring
133− - c2hs
134− - cassava
135− # GHC 8 - csv-conduit
772+ - csv-conduit
136 - executable-hash
773 - executable-hash
137 - executable-path
774 - executable-path
138 - foreign-store
775 - foreign-store
139 - formatting
776 - formatting
140 - gtk2hs-buildtools
777 - gtk2hs-buildtools
141− - happy
778+ - happy < 1.21.0 || > 1.21.0 # https://github.com/commercialhaskell/stackage/issues/6294
142 - hybrid-vectors
779 - hybrid-vectors
143 - indents
780 - indents
144 - language-c
781 - language-c
145− - lhs2tex
146− # GHC 8 2.5 compilation failure - persistent-mongoDB
782+ - persistent-mongoDB
147 - pretty-class
783 - pretty-class
148 - th-expand-syns
784 - th-expand-syns
149 - th-lift
785 - th-lift
150 - quickcheck-assertions
786 - quickcheck-assertions
151
787
152− # - hackage-mirror BLOCKED aws
153− - wai-middleware-consul
154 - wai-middleware-crowd
788 - wai-middleware-crowd
155 - monad-logger-json
789 - monad-logger-json
156 - safe-exceptions
790 - safe-exceptions
157− - monad-logger-syslog
158 - fsnotify-conduit
791 - fsnotify-conduit
159 - pid1
792 - pid1
160 - typed-process
793 - typed-process
161 - say
794 - say
795+ - unliftio-core
796+ - unliftio
162
797
163− - fsnotify
164 - hinotify
798 - hinotify
165 - hfsevents
799 - hfsevents
166 - 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
167
820
168 "Omari Norman <omari@smileystation.com> @massysett":
821 "Omari Norman <omari@smileystation.com> @massysett":
169 - rainbow
822 - rainbow
170 - rainbox
823 - rainbox
171− - anonymous-sums
172 - multiarg
824 - multiarg
173− - prednote
174− - cartel
175− - Earley
176 - ofx
825 - ofx
177− - pinchot
178 - accuerr
826 - accuerr
179 - timelens
827 - timelens
180− - non-empty-sequence
828+ - squeather
181
829
182− "Neil Mitchell @ndmitchell":
830+ "Neil Mitchell <ndmitchell@gmail.com> @ndmitchell":
183 - hlint
831 - hlint
184 - hoogle
832 - hoogle
185 - shake
833 - shake
@@ -190,39 +838,74 @@ packages:
190 - nsis
838 - nsis
191 - js-jquery
839 - js-jquery
192 - js-flot
840 - js-flot
841+ - js-dgtable
193 - extra
842 - extra
194− - bake
195 - ghcid
843 - ghcid
196− - pugixml
197 - hexml
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
198
862
199 "Alan Zimmerman @alanz":
863 "Alan Zimmerman @alanz":
864+ - ghc-exactprint
865+ - haskell-lsp
200 - hjsmin
866 - hjsmin
201 - language-javascript
867 - language-javascript
202 - Strafunski-StrategyLib
868 - Strafunski-StrategyLib
203− # - HaRe # BLOCKED ghc-mod via pipes
869+
870+ "Luke Lau <luke_lau@icloud.com> @bubba":
871+ - lsp-test
204
872
205 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
873 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
206 - mandrill
874 - mandrill
207
875
208 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
876 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
209 - pinboard
877 - pinboard
878+ - swagger-petstore
210
879
211 "Jasper Van der Jeugt @jaspervdj":
880 "Jasper Van der Jeugt @jaspervdj":
212 - blaze-html
881 - blaze-html
213 - blaze-markup
882 - blaze-markup
214− - cabal-dependency-licenses
215− - hakyll
216 - stylish-haskell
883 - stylish-haskell
217− - patat
218 - profiteur
884 - profiteur
219 - psqueues
885 - psqueues
220 - websockets
886 - websockets
221 - websockets-snap
887 - websockets-snap
222
888
889+ "Jasper Van der Jeugt @jaspervdj & Alexander Batischev <eual.jp@gmail.com> @Minoru":
890+ - hakyll
891+
223 "Sibi Prabakaran <sibi@psibi.in> @psibi":
892 "Sibi Prabakaran <sibi@psibi.in> @psibi":
224 - download
893 - download
225 - 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
226
909
227 "haskell-openal":
910 "haskell-openal":
228 - OpenAL
911 - OpenAL
@@ -243,7 +926,7 @@ packages:
243 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
926 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
244 - clock
927 - clock
245
928
246− "Stefan Wehr <wehr@factisresearch.com> @skogsbaer":
929+ "Stefan Wehr <mail@stefanwehr.de> @skogsbaer":
247 - HTF
930 - HTF
248 - xmlgen
931 - xmlgen
249 - stm-stats
932 - stm-stats
@@ -253,6 +936,7 @@ packages:
253 - parseargs
936 - parseargs
254
937
255 "Vincent Hanquez @vincenthz":
938 "Vincent Hanquez @vincenthz":
939+ - basement
256 - bytedump
940 - bytedump
257 - cipher-aes
941 - cipher-aes
258 - cipher-rc4
942 - cipher-rc4
@@ -262,8 +946,12 @@ packages:
262 - cryptocipher
946 - cryptocipher
263 - cryptohash
947 - cryptohash
264 - cryptonite
948 - cryptonite
949+ - cryptonite-openssl
265 - crypto-pubkey-types
950 - crypto-pubkey-types
266 - crypto-random-api
951 - crypto-random-api
952+ - foundation
953+ - gauge
954+ - git < 0 # 0.3.0 compile fail MonadFail
267 - hit
955 - hit
268 - memory
956 - memory
269 - language-java
957 - language-java
@@ -271,14 +959,15 @@ packages:
271 - pem
959 - pem
272 - siphash
960 - siphash
273 - socks
961 - socks
962+ - tasty-kat
274 - tls
963 - tls
275 - tls-debug
964 - tls-debug
276− - vhd
965+ - vhd < 0 # 0.2.2 compile fail: Missing Semigroup Checksum
277− - xenstore
966+ - xenstore < 0 # 0.1.1 compile fail: sClose not in scope
278
967
279 "Chris Done @chrisdone":
968 "Chris Done @chrisdone":
969+ - labels
280 - ace
970 - ace
281− - ical
282 - check-email
971 - check-email
283 - freenect
972 - freenect
284 - frisby
973 - frisby
@@ -286,21 +975,18 @@ packages:
286 - hostname-validate
975 - hostname-validate
287 - ini
976 - ini
288 - lucid
977 - lucid
289− - osdkeys
290 - pdfinfo
978 - pdfinfo
291− # GHC 8 https://github.com/fpco/stackage/issues/1062 - present
292 - pure-io
979 - pure-io
293− # GHC 8 - scrobble
294− - shell-conduit
295 - sourcemap
980 - sourcemap
296 - hindent
981 - hindent
297 - descriptive
982 - descriptive
298 - wrap
983 - wrap
299 - path
984 - path
300− - intero
301 - weigh
985 - weigh
302− # GHC 8 - haskell-docs
986+ - odbc
303− # bounds - structured-haskell-mode
987+ - structured-haskell-mode
988+ - casa-client
989+ - casa-types
304
990
305 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
991 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
306 - RefSerialize
992 - RefSerialize
@@ -309,57 +995,66 @@ packages:
309 - MFlow
995 - MFlow
310 - transient
996 - transient
311 - transient-universe
997 - transient-universe
312− - ghcjs-hplay
998+ - axiom
313
999
314 "Edward Kmett <ekmett@gmail.com> @ekmett":
1000 "Edward Kmett <ekmett@gmail.com> @ekmett":
315 - ad
1001 - ad
316 - adjunctions
1002 - adjunctions
1003+ - algebra
1004+ - ansi-wl-pprint
317− # GHC 8 & bounds - approximate
1005+ - approximate
318 - bifunctors
1006 - bifunctors
319 - bits
1007 - bits
320− # GHC 8 - bound
1008+ - bound
321 - bytes
1009 - bytes
322 - charset
1010 - charset
323 - comonad
1011 - comonad
324− - comonads-fd
325− - comonad-transformers
326− # GHC 8 & bounds - compensated
1012+ - compensated
327− # bounds - compressed
1013+ - compressed
328 - concurrent-supply
1014 - concurrent-supply
329 - constraints
1015 - constraints
330 - contravariant
1016 - contravariant
331 - distributive
1017 - distributive
1018+ - discrimination
332 - either
1019 - either
333 - eq
1020 - eq
334 - ersatz
1021 - ersatz
335− - exceptions
1022+ - fixed
1023+ - folds
336 - free
1024 - free
1025+ - gl
337 - graphs
1026 - graphs
338− - groupoids
1027+ - half
339 - heaps
1028 - heaps
1029+ - hybrid-vectors
1030+ - hyperloglog
340 - hyphenation
1031 - hyphenation
1032+ - indexed-traversable
341 - integration
1033 - integration
1034+ - intern
342 - intervals
1035 - intervals
343 - kan-extensions
1036 - kan-extensions
1037+ - keys
344 - lca
1038 - lca
345 - lens
1039 - lens
1040+ - lens-action
1041+ - lens-aeson
1042+ - lens-properties
346 - linear
1043 - linear
347 - linear-accelerate
1044 - linear-accelerate
348 - log-domain
1045 - log-domain
349 - machines
1046 - machines
350 - monadic-arrays
1047 - monadic-arrays
351 - monad-products
1048 - monad-products
352− - monad-products
1049+ - monad-st
353− # GHC 8 - monad-st
1050+ # - mtl take the one that ships with GHC
354− - mtl
355 - nats
1051 - nats
356 - numeric-extras
1052 - numeric-extras
357 - parsers
1053 - parsers
358 - pointed
1054 - pointed
359− - prelude-extras
360− - profunctor-extras
361 - profunctors
1055 - profunctors
362− - reducers
1056+ - promises
1057+ - rcu
363 - reducers
1058 - reducers
364 - reflection
1059 - reflection
365 - semigroupoid-extras
1060 - semigroupoid-extras
@@ -367,19 +1062,19 @@ packages:
367 - semigroups
1062 - semigroups
368 - speculation
1063 - speculation
369 - streams
1064 - streams
1065+ - structs
370 - tagged
1066 - tagged
1067+ - tagged-transformer
1068+ - transformers-compat <0.7 # https://github.com/commercialhaskell/stackage/issues/6137
371 - trifecta
1069 - trifecta
1070+ - unique
372 - vector-instances
1071 - vector-instances
373 - void
1072 - void
374 - wl-pprint-extras
1073 - wl-pprint-extras
1074+ - wreq
375 - wl-pprint-terminfo
1075 - wl-pprint-terminfo
376 - zippers
1076 - zippers
377− - fixed
378− - half
379− - gl
380− - lens-aeson
381 - zlib-lens
1077 - zlib-lens
382− # GHC 8 - hyperloglog
383
1078
384 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
1079 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
385 - scotty
1080 - scotty
@@ -387,6 +1082,8 @@ packages:
387
1082
388 "Simon Hengel <sol@typeful.net> @sol":
1083 "Simon Hengel <sol@typeful.net> @sol":
389 - hspec
1084 - hspec
1085+ - hspec-core
1086+ - hspec-discover
390 - hspec-wai
1087 - hspec-wai
391 - hspec-wai-json
1088 - hspec-wai-json
392 - aeson-qq
1089 - aeson-qq
@@ -394,30 +1091,32 @@ packages:
394 - doctest
1091 - doctest
395 - base-compat
1092 - base-compat
396
1093
397− "Mario Blazevic <blamario@yahoo.com> @blamario":
1094+ "Mario Blazevic <blamario@protonmail.com> @blamario":
398 - monad-parallel
1095 - monad-parallel
399 - monad-coroutine
1096 - monad-coroutine
400− - incremental-parser
401 - monoid-subclasses
1097 - monoid-subclasses
402− - picoparsec
1098+ - rank2classes
1099+ - input-parsers
1100+ - incremental-parser
1101+ - construct
403
1102
404 "Brent Yorgey <byorgey@gmail.com> @byorgey":
1103 "Brent Yorgey <byorgey@gmail.com> @byorgey":
405 - active
1104 - active
406− - BlogLiterately
407− - BlogLiterately-diagrams
408 - diagrams
1105 - diagrams
409 - diagrams-builder
1106 - diagrams-builder
410− - diagrams-haddock
411 - diagrams-cairo
1107 - diagrams-cairo
1108+ - diagrams-canvas
412 - diagrams-contrib
1109 - diagrams-contrib
413 - diagrams-core
1110 - diagrams-core
414 - diagrams-gtk
1111 - diagrams-gtk
1112+ - diagrams-html5
415 - diagrams-lib
1113 - diagrams-lib
416 - diagrams-postscript
1114 - diagrams-postscript
417 - diagrams-rasterific
1115 - diagrams-rasterific
1116+ - diagrams-solve
418 - diagrams-svg
1117 - diagrams-svg
419− - dual-tree
420 - force-layout
1118 - force-layout
1119+ - SVGFonts
421 - haxr
1120 - haxr
422 - MonadRandom
1121 - MonadRandom
423 - monoid-extras
1122 - monoid-extras
@@ -431,31 +1130,40 @@ packages:
431 - asciidiagram
1130 - asciidiagram
432
1131
433 "Patrick Brisbin @pbrisbin":
1132 "Patrick Brisbin @pbrisbin":
1133+ - bugsnag-haskell
434 - gravatar
1134 - gravatar
435−
1135+ - load-env
436− "Paul Harper <benekastah@gmail.com> @benekastah":
1136+ - yesod-auth-oauth2 < 0.7 # https://github.com/commercialhaskell/stackage/issues/6424
437− []
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
438− # - 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
439
1155
440 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
1156 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
441− # bounds - country-codes
1157+ - fb
442− # bounds - esqueleto
443− # - fb # BLOCKED http-conduit 2.2
444− # bounds - fb-persistent
445− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - mangopay
446 - nonce
1158 - nonce
447 - serversession
1159 - serversession
448− - serversession-backend-acid-state
1160+ - serversession-backend-persistent
449− # bounds - serversession-backend-persistent
450− # bounds - serversession-backend-redis
1161+ - serversession-backend-redis
451− # - serversession-frontend-snap
452 - serversession-frontend-wai
1162 - serversession-frontend-wai
453 - serversession-frontend-yesod
1163 - serversession-frontend-yesod
454 - thumbnail-plus
1164 - thumbnail-plus
455− # bounds - yesod-auth-account-fork
1165+ - yesod-auth-fb
456− # GHC 8 - yesod-auth-fb
1166+ - yesod-fb
457− # - yesod-fb # BLOCKED http-conduit 2.2 via fb
458− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - yesod-mangopay
459
1167
460 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
1168 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
461 # Maintaining on behalf of @roelvandijk:
1169 # Maintaining on behalf of @roelvandijk:
@@ -464,40 +1172,65 @@ packages:
464 # My own packages:
1172 # My own packages:
465 - ChannelT
1173 - ChannelT
466
1174
467− "Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> @tmcdonell":
1175+ "Trevor L. McDonell <trevor.mcdonell@gmail.com> @tmcdonell":
468 - accelerate
1176 - accelerate
469−
1177+ - accelerate-bignum
470− # "Liam O'Connor <liamoc@cse.unsw.edu.au> @liamoc":
1178+ - accelerate-blas
471− # GHC 8 - patches-vector
1179+ - accelerate-fft
472− # GHC 8 - composition-tree
1180+ - accelerate-io
473− # GHC 8 & bounds - dixi
1181+ - accelerate-llvm
474− # GHC 8 - latex-formulae-image
1182+ - accelerate-llvm-native
475− # via latex-formulae-image - latex-formulae-pandoc
1183+ - accelerate-llvm-ptx
476− # GHC 8 - latex-formulae-hakyll
1184+ - accelerate-examples
477− # GHC 8 & bounds - agda-snippets
1185+ - repa
478− # 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
479
1205
480 "Dan Burton <danburton.email@gmail.com> @DanBurton":
1206 "Dan Burton <danburton.email@gmail.com> @DanBurton":
481− - hspec-jenkins
1207+ - ANum
482− - yesod-gitrev
483 - basic-prelude
1208 - basic-prelude
484 - composition
1209 - composition
1210+ - haskell-src-meta
485 - io-memoize
1211 - io-memoize
1212+ - lens-family-th
486 - numbers
1213 - numbers
487 - rev-state
1214 - rev-state
488 - runmemo
1215 - runmemo
489 - tardis
1216 - tardis
490− - lens-family-th
1217+ - yesod-gitrev
491−
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+
492− "Daniel Díaz dhelta.diaz@gmail.com @Daniel-Diaz":
1225+ "Daniel Casanueva <dhelta.diaz@gmail.com> @Daniel-Diaz":
493 - bimap-server
1226 - bimap-server
494 - binary-list
1227 - binary-list
495 - byteset
1228 - byteset
496 - Clipboard
1229 - Clipboard
1230+ - gmail-simple < 0 # 0.1.0.2 https://github.com/Daniel-Diaz/gmail-simple/issues/1
497 - grouped-list
1231 - grouped-list
498 - haskintex
1232 - haskintex
499 - HaTeX
1233 - HaTeX
500− - hatex-guide
501 - include-file
1234 - include-file
502 - matrix
1235 - matrix
503 - pcre-light
1236 - pcre-light
@@ -505,38 +1238,48 @@ packages:
505 - post-mess-age
1238 - post-mess-age
506 - sorted-list
1239 - sorted-list
507
1240
508− "Gabriel Gonzalez <Gabriel439@gmail.com> @Gabriel439":
1241+ "Gabriella Gonzalez <Gabriel439@gmail.com> @Gabriel439":
509 - optparse-generic
1242 - optparse-generic
510 - pipes
1243 - pipes
511 - pipes-extras
1244 - pipes-extras
1245+ - pipes-http
512 - pipes-parse
1246 - pipes-parse
513 - pipes-concurrency
1247 - pipes-concurrency
514 - pipes-safe
1248 - pipes-safe
515 - turtle
1249 - turtle
516 - foldl
1250 - foldl
517− - 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
518
1261
519 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
1262 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
520− - yesod-table
1263+ - colonnade
1264+ - blaze-colonnade
1265+ - dot
521
1266
522− "Chris Allen <cma@bitemyapp.com> bitemyapp":
1267+ "Chris Allen <cma@bitemyapp.com> @bitemyapp":
523 - machines-directory
1268 - machines-directory
524 - machines-io
1269 - machines-io
525 - bloodhound
1270 - bloodhound
526
1271
527 "Adam Bergmark <adam@bergmark.nl> @bergmark":
1272 "Adam Bergmark <adam@bergmark.nl> @bergmark":
528− - HUnit
529 - aeson
1273 - aeson
530− - fay
1274+ - HUnit
531− - fay-base
1275+ - attoparsec-iso8601
532− - fay-dom
533− - fay-jquery
534− - fay-text
535− - fay-uri
536 - feed
1276 - feed
537− - snaplet-fay
538 - time-compat
1277 - time-compat
539 - through-text
1278 - through-text
1279+ # Not my packages
1280+ - HStringTemplate
1281+ - spoon
1282+ - tagshare
540
1283
541 "Benedict Aas <x@shou.io> @Shou":
1284 "Benedict Aas <x@shou.io> @Shou":
542 - boolean-like
1285 - boolean-like
@@ -548,43 +1291,40 @@ packages:
548
1291
549 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
1292 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
550 - purescript-bridge
1293 - purescript-bridge
551− - servant-purescript
1294+ - servant-purescript < 0 # 0.10.0.0 compile fail #6091/closed
552 - servant-subscriber
1295 - servant-subscriber
553
1296
554 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
1297 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
555 - messagepack
1298 - messagepack
556 - messagepack-rpc
1299 - messagepack-rpc
557
1300
558− # "Boris Lykah <lykahb@gmail.com> @lykahb":
1301+ "Boris Lykah <lykahb@gmail.com> @lykahb":
559− # GHC 8 - groundhog
1302+ - groundhog
560− # GHC 8 - groundhog-th
1303+ - groundhog-inspector
561− # GHC 8 - groundhog-sqlite
562− # GHC 8 - groundhog-postgresql
563− # GHC 8 - groundhog-mysql
1304+ - groundhog-mysql
1305+ - groundhog-postgresql
1306+ - groundhog-sqlite
1307+ - groundhog-th
564
1308
565 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
1309 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
566 - sqlite-simple
1310 - sqlite-simple
567
1311
568 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
1312 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
569 - iterable
1313 - iterable
570− - Octree
571 - FenwickTree
1314 - FenwickTree
572− - hPDB
573− - hPDB-examples
574− - homplexity
575− - wordpass
576− # - json-autotype # BLOCKED aeson 1.0
1315+ - json-autotype
577− - posix-realtime
578
1316
579 "Dom De Re <domdere@domdere.com> @domdere":
1317 "Dom De Re <domdere@domdere.com> @domdere":
580 - cassava-conduit
1318 - cassava-conduit
581
1319
582 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
1320 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
583− # - yarr # https://github.com/leventov/yarr/issues/10
1321+ - monad-bayes
584 - random-fu
1322 - random-fu
585
1323
586 "Ben Gamari <ben@smart-cactus.org> @bgamari":
1324 "Ben Gamari <ben@smart-cactus.org> @bgamari":
587 - vector-fftw
1325 - vector-fftw
1326+ - cborg-json
1327+ - language-dot
588
1328
589 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
1329 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
590 - action-permutations
1330 - action-permutations
@@ -593,8 +1333,6 @@ packages:
593 - immortal
1333 - immortal
594 - regex-applicative
1334 - regex-applicative
595 - lexer-applicative
1335 - lexer-applicative
596− - smallcheck
597− - socket
598 - tasty
1336 - tasty
599 - tasty-golden
1337 - tasty-golden
600 - tasty-hunit
1338 - tasty-hunit
@@ -608,7 +1346,6 @@ packages:
608 - tuples-homogenous-h98
1346 - tuples-homogenous-h98
609
1347
610 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
1348 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
611− - HCodecs
612 - YampaSynth
1349 - YampaSynth
613 - set-monad
1350 - set-monad
614
1351
@@ -621,15 +1358,8 @@ packages:
621
1358
622 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
1359 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
623 - circle-packing
1360 - circle-packing
624− - arbtt
625− - ghc-heap-view
626− - tttool
627− - gipeda
628− - list-fusion-probe
629 - haskell-spacegoo
1361 - haskell-spacegoo
630 - tasty-expected-failure
1362 - tasty-expected-failure
631− - RepLib
632− - unbound
633
1363
634 "Aditya Bhargava <adit@adit.io> @egonSchiele":
1364 "Aditya Bhargava <adit@adit.io> @egonSchiele":
635 - HandsomeSoup
1365 - HandsomeSoup
@@ -641,102 +1371,102 @@ packages:
641 - DAV
1371 - DAV
642 - hopenpgp-tools
1372 - hopenpgp-tools
643 - 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
644
1382
645 "Joey Hess <id@joeyh.name> @joeyh":
1383 "Joey Hess <id@joeyh.name> @joeyh":
646− # via esqueleto - git-annex
1384+ - git-annex
647− # via github - github-backup
648− - Win32-extras
649 - concurrent-output
1385 - concurrent-output
650 - mountpoints
1386 - mountpoints
651 - disk-free-space
1387 - disk-free-space
652
1388
653− "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
654 - microlens-aeson
1395 - microlens-aeson
1396+ - pipes-random
1397+ - servant-xml
1398+ - streaming-attoparsec
655 - versions
1399 - versions
656 - vectortiles
1400 - vectortiles
657− - pipes-random
658− - repa
659− - repa-io
660− - repa-algorithms
661− # GHC 8 - kanji
662
1401
663 "Ketil Malde @ketil-malde":
1402 "Ketil Malde @ketil-malde":
664 - biocore
1403 - biocore
665 - biofasta
1404 - biofasta
666 - biofastq
1405 - biofastq
667− # 0.3.7.1 Compilation failure due to -Werror - biosff
668 - blastxml
1406 - blastxml
669 - bioace
1407 - bioace
670 - biopsl
1408 - biopsl
671− # VERSION MISSING Compilation failure against c2hs https://github.com/ingolia/SamTools/issues/3 - samtools
672 - seqloc
1409 - seqloc
673 - bioalign
1410 - bioalign
674 - BlastHTTP
1411 - BlastHTTP
675− # The following have out-of-date dependencies currently
676− # biostockholm memexml RNAwolf
677− # , "Biobase BiobaseDotP BiobaseFR3D BiobaseInfernal BiobaseMAF"
678− # , "BiobaseTrainingData BiobaseTurner BiobaseXNA BiobaseVienna"
679− # , "BiobaseTypes BiobaseFasta"
680− # MC-Fold-DP
681
1412
682 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
1413 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
683 - ClustalParser
1414 - ClustalParser
684− # GHC 8 - EntrezHTTP
1415+ - EntrezHTTP
685 - Genbank
1416 - Genbank
686− # 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
687− # via EntrezHTTP - Taxonomy
1432+ - Taxonomy
688− # via ENtrezHTTP - TaxonomyTools
689 - ViennaRNAParser
1433 - ViennaRNAParser
1434+ - either-unwrap
690
1435
691 "Silk <code@silk.co>":
1436 "Silk <code@silk.co>":
692− - aeson-utils
693− - arrow-list
694 - attoparsec-expr
1437 - attoparsec-expr
695− - bumper
696− - code-builder
697− - fay-builder
698− - generic-aeson
699 - generic-xmlpickler
1438 - generic-xmlpickler
700− - hxt-pickle-utils
701 - imagesize-conduit
1439 - imagesize-conduit
702− - json-schema
703 - multipart
1440 - multipart
704− - rest-client
705− - rest-core
706− - rest-gen
707− - rest-happstack
708− - rest-snap
709− - rest-stringmap
710− - rest-types
711− - rest-wai
712 - tostring
1441 - tostring
713 - uri-encode
1442 - uri-encode
714
1443
715 "Simon Michael <simon@joyful.com> @simonmichael":
1444 "Simon Michael <simon@joyful.com> @simonmichael":
716− - darcs
717− - hledger
718− - hledger-lib
719− - hledger-ui
720− - hledger-web
721− - hledger-api
722− # via Diff - shelltestrunner
723 - quickbench
1445 - quickbench
724 - 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
725
1459
726 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
1460 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
727 - io-manager
1461 - io-manager
728
1462
729 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
1463 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
730− # - al FIXME temporary, figure out why it's not working with stackage-build
1464+ - al
731 - event
1465 - event
732 - hid
1466 - hid
733− # GHC 8 - luminance
734− # GHC 8 - luminance-samples
735 - monad-journal
1467 - monad-journal
736− # GHC 8 - msi-kb-backlit
737 - smoothie
1468 - smoothie
738− # bounds - tellbot
739− # GHC 8 - wavefront
1469+ - wavefront
740 - zero
1470 - zero
741
1471
742 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
1472 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
@@ -744,12 +1474,6 @@ packages:
744
1474
745 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
1475 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
746 - io-choice
1476 - io-choice
747− # UNKNOWN VERSION Compilation failure https://github.com/d12frosted/CanonicalPath/issues/5 - system-canonicalpath
748−
749− "Daniel Gröber <dxld@darkboxed.org> @DanielG":
750− []
751− # - ghc-mod # BLOCKED pipes 4.2 & optparse-applicative 0.13.0.0 when #1784 gets lifted
752− # - cabal-helper # BLOCKED extra 1.5
753
1477
754 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
1478 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
755 - human-readable-duration
1479 - human-readable-duration
@@ -757,32 +1481,47 @@ packages:
757 - wai-middleware-caching
1481 - wai-middleware-caching
758 - wai-middleware-caching-lru
1482 - wai-middleware-caching-lru
759 - wai-middleware-caching-redis
1483 - wai-middleware-caching-redis
760− # not package maintainer
761− - ekg
762− - ekg-json
763
1484
764 "Paul Rouse <pgr@doynton.org> @paul-rouse":
1485 "Paul Rouse <pgr@doynton.org> @paul-rouse":
765 - mysql
1486 - mysql
766 - mysql-simple
1487 - mysql-simple
767− - sphinx
1488+ - sphinx < 0 # 0.6.0.2 compile fail: Could not find module Network
768 - xmlhtml
1489 - xmlhtml
769 - yesod-auth-hashdb
1490 - yesod-auth-hashdb
770
1491
771 "Toralf Wittner <tw@dtex.org> @twittner":
1492 "Toralf Wittner <tw@dtex.org> @twittner":
772 - bytestring-conversion
1493 - bytestring-conversion
773− # GHC8/3.1.0 compilation failure - cql
1494+ - cql
774− # via cql - cql-io
1495+ - cql-io
775 - redis-resp
1496 - redis-resp
776 - redis-io
1497 - redis-io
777− # - swagger # BLOCKED aeson 1.0
1498+ - swagger
778 - tinylog
1499 - tinylog
779 - wai-predicates
1500 - wai-predicates
780− # GHC 8 - wai-routing
1501+ - wai-routing
781 - zeromq4-haskell
1502 - zeromq4-haskell
782
1503
783− "trupill@gmail.com":
1504+ "Alejandro Serrano <trupill@gmail.com> @serras":
784 - djinn-lib
1505 - djinn-lib
785 - 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
1522+
1523+ "Flavio Corpa <flaviocorpa@gmail.com> @kutyel":
1524+ - language-avro
786
1525
787 "Matvey Aksenov <matvey.aksenov@gmail.com> @supki":
1526 "Matvey Aksenov <matvey.aksenov@gmail.com> @supki":
788 - terminal-size
1527 - terminal-size
@@ -795,21 +1534,19 @@ packages:
795 - netwire
1534 - netwire
796 - netwire-input
1535 - netwire-input
797 - netwire-input-glfw
1536 - netwire-input-glfw
1537+ - yoga
1538+ - freetype2
1539+ - HCodecs
1540+ - netcode-io
1541+ - reliable-io
798
1542
799 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
1543 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
800 - BoundedChan
1544 - BoundedChan
801 - broadcast-chan
1545 - broadcast-chan
802− - bytestring-lexing
803− - bytestring-trie
804− - data-accessor
805− - data-accessor-mtl
806− # GHC 8 - file-location
807 - fuzzcheck
1546 - fuzzcheck
808− - haddock-api
1547+ - here
809− # haskell-src-exts 1.18 - here
810 - hlibgit2
1548 - hlibgit2
811 - gitlib-libgit2
1549 - gitlib-libgit2
812− - hostname-validate
813 - interpolatedstring-perl6
1550 - interpolatedstring-perl6
814 - iproute
1551 - iproute
815 - missing-foreign
1552 - missing-foreign
@@ -820,61 +1557,95 @@ packages:
820 - Chart-cairo
1557 - Chart-cairo
821 - ghc-events
1558 - ghc-events
822 - monad-extras
1559 - monad-extras
823− # - stack < 9.9.9 # BLOCKED http-conduit 2.2
824 - optparse-simple
1560 - optparse-simple
825 - hpack
1561 - hpack
1562+ - bindings-uname
1563+ - stack < 9.9.9 # see #3563/closed
826
1564
827 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1565 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1566+ - store
1567+ - store-core
1568+ - store-streaming
828 - th-orphans
1569 - th-orphans
829 - th-reify-many
1570 - th-reify-many
1571+ - th-utilities
830
1572
831 "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
832 - base-prelude
1577 - base-prelude
1578+ - bytestring-strict-builder
1579+ - bytestring-tree-builder
833 - cases
1580 - cases
1581+ - deferred-folds
1582+ - deque
1583+ - domain
1584+ - domain-core
1585+ - domain-optics
834 - focus
1586 - focus
835 - hasql
1587 - hasql
1588+ - hasql-optparse-applicative
1589+ - hasql-pool
1590+ - hasql-th
1591+ - hasql-transaction
1592+ - headed-megaparsec
1593+ - jsonifier
836 - list-t
1594 - list-t
837 - mtl-prelude
1595 - mtl-prelude
838 - neat-interpolation
1596 - neat-interpolation
1597+ - optima
839 - partial-handler
1598 - partial-handler
840 - postgresql-binary
1599 - postgresql-binary
1600+ - postgresql-syntax
1601+ - primitive-extras
1602+ - ptr-poker
1603+ - rebase
1604+ - rerebase
841 - slave-thread
1605 - slave-thread
842 - 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
843
1614
844 "Iustin Pop <iustin@k1024.org> @iustin":
1615 "Iustin Pop <iustin@k1024.org> @iustin":
845 - prefix-units
1616 - prefix-units
846
1617
847 "Alexander Thiemann <mail@athiemann.net> @agrafix":
1618 "Alexander Thiemann <mail@athiemann.net> @agrafix":
848− - Spock
1619+ - Spock
849− - Spock-core
1620+ - Spock-core
850− - Spock-api
1621+ - Spock-api
851− - Spock-api-server
1622+ - Spock-api-server
852− # via digestive-functors - Spock-digestive
853− - Spock-worker
1623+ - Spock-worker
854− - graph-core
1624+ - graph-core
855− - hvect
1625+ - hvect
856− - reroute
1626+ - reroute
857− - users
1627+ - users
858− # via esqueleto - users-persistent
1628+ - users-persistent
859− - users-postgresql-simple
1629+ - users-postgresql-simple
860− - users-test
1630+ - users-test
861− - validate-input
1631+ - validate-input
862− - ignore
1632+ - ignore < 0 # 0.1.1.0 compile fail https://github.com/agrafix/ignore/issues/5
863− - elm-bridge
864− # via digestive-functors - digestive-bootstrap
865− - blaze-bootstrap
1633+ - blaze-bootstrap
866− - dataurl
1634+ - dataurl
867− - psql-helpers
1635+ - psql-helpers
868− - superbuffer
1636+ - superbuffer
869− - timespan
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
870
1645
871 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
1646 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
872− - aeson-pretty
873 - digest
1647 - digest
874− # via elm-compiler - elm-build-lib
875− # bounds - elm-compiler
876 - elm-core-sources
1648 - elm-core-sources
877− # bounds - elm-package
878 - language-glsl
1649 - language-glsl
879 - prettyclass
1650 - prettyclass
880 - QuasiText
1651 - QuasiText
@@ -885,15 +1656,10 @@ packages:
885 - yesod-form-richtext
1656 - yesod-form-richtext
886 - ghcjs-perch
1657 - ghcjs-perch
887
1658
888− "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
889− - hdevtools
890−
891− "Andrey Chudnov <oss@chudnov.com> @achudnov":
892− - language-ecmascript
893−
894 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
1659 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
895 - opaleye
1660 - opaleye
896 - product-profunctors
1661 - product-profunctors
1662+ - strict-wrapper
897
1663
898 "Samplecount stefan@samplecount.com @kaoskorobase":
1664 "Samplecount stefan@samplecount.com @kaoskorobase":
899 - shake-language-c
1665 - shake-language-c
@@ -902,38 +1668,53 @@ packages:
902 - alarmclock
1668 - alarmclock
903 - bank-holidays-england
1669 - bank-holidays-england
904
1670
905− "Haskell Servant <jkarni@gmail.com>":
1671+ "Haskell Servant <haskell-servant-maintainers@googlegroups.com>":
906 - servant
1672 - servant
1673+ - servant-blaze
1674+ - servant-cassava
907 - servant-client
1675 - servant-client
1676+ - servant-client-core
1677+ - servant-conduit
908 - servant-docs
1678 - servant-docs
1679+ - servant-foreign
1680+ - servant-http-streams
909 - servant-js
1681 - servant-js
910− - servant-server
911 - servant-lucid
1682 - servant-lucid
912− - servant-blaze
1683+ - servant-machines
913− - servant-foreign
914 - servant-mock
1684 - servant-mock
915− - 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
916
1700
917 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
1701 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
918− - hdocs
919 - hformat
1702 - hformat
920− - hsdev
921 - simple-log
1703 - simple-log
922 - text-region
1704 - text-region
1705+ - haskell-names
1706+ - hsdev
923
1707
924 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
1708 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
925 - unbound-generics
1709 - unbound-generics
926 - indentation-core
1710 - indentation-core
927 - indentation-parsec
1711 - indentation-parsec
1712+ - clang-compilation-database
928
1713
929 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
1714 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
930− []
931− # GHC 8 & bounds - codex
932− # GHC 8 - machines-binary
1715+ - machines-binary
933− # GHC 8 - machines-process
934− # GHC 8 - sarsi
935 # on behalf of Bryan O'Sullivan @bos:
1716 # on behalf of Bryan O'Sullivan @bos:
936− # - wreq # BLOCKED http-client 0.5
1717+ - wreq
937
1718
938 "Andraz Bajt <andraz@bajt.me> @edofic":
1719 "Andraz Bajt <andraz@bajt.me> @edofic":
939 - effect-handlers
1720 - effect-handlers
@@ -944,42 +1725,83 @@ packages:
944 - HaskellNet
1725 - HaskellNet
945 - HaskellNet-SSL
1726 - HaskellNet-SSL
946
1727
1728+ "Tristan de Cacqueray <tdecacqu@redhat.com> @tristanC":
1729+ - linux-capabilities
1730+
947 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1731 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1732+ - bodhi
1733+ - bugzilla-redhat
1734+ - cabal-file
948 - 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
949− - cabal-sort
1753+ - simple-cabal
950− - hslua
1754+ - simple-cmd
1755+ - simple-cmd-args
1756+ - stack-all
1757+ - stack-clean-old
1758+
1759+ - async-pool
1760+ - darcs
951− # - idris # BLOCKED safe
1761+ - idris
952−
1762+ - libffi
953 - cairo
1763 - cairo
954− - gio
955 - glib
1764 - glib
956− - gtk
1765+ - gio
957− - gtk3
958− - gtksourceview3
959 - pango
1766 - pango
960− - webkitgtk3
1767+ - gtk3
961− - webkitgtk3-javascriptcore
962−
963 - ghcjs-codemirror
1768 - ghcjs-codemirror
964− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - ghcjs-dom
1769+ - ghcjs-dom
965− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - jsaddle
1770+ - jsaddle
966− # GHC 8 & bounds - leksah-server
967− # GHC 8 - ltk
968 - vado
1771 - vado
969− # GHC 8 - vcsgui
970 - vcswrapper
1772 - vcswrapper
1773+ - ShellCheck
1774+ - binary-shared
1775+ - xdg-userdirs
1776+ # please take these
1777+ - cryptohash-md5
1778+ - cryptohash-sha1
971
1779
972 "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
973 - network-simple
1789 - network-simple
1790+ - network-simple-tls
974− # - pipes-aeson # BLOCKED pipes 4.2
1791+ - pipes-aeson
975 - pipes-attoparsec
1792 - pipes-attoparsec
976− # GHC 8 - pipes-binary
1793+ - pipes-binary
977 - pipes-network
1794 - pipes-network
1795+ - pipes-network-tls
1796+ - safe-money
1797+ - vector-bytes-instances
1798+ - xmlbf-xeno
1799+ - xmlbf-xmlhtml
1800+ - xmlbf
978
1801
979 "Tomas Carnecky @wereHamster":
1802 "Tomas Carnecky @wereHamster":
980 - avers
1803 - avers
981 - avers-api
1804 - avers-api
982− - avers-api-docs
983 - avers-server
1805 - avers-server
984 - css-syntax
1806 - css-syntax
985 - etcd
1807 - etcd
@@ -989,9 +1811,10 @@ packages:
989 - google-cloud
1811 - google-cloud
990 - kraken
1812 - kraken
991 - libinfluxdb
1813 - libinfluxdb
992− # - mole # BLOCKED optparse-applicative < 0.13
1814+ - mole
993 - publicsuffix
1815 - publicsuffix
994 - rethinkdb-client-driver
1816 - rethinkdb-client-driver
1817+ - snap-blaze
995
1818
996 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
1819 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
997 - bcrypt
1820 - bcrypt
@@ -999,10 +1822,6 @@ packages:
999 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
1822 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
1000 - palette
1823 - palette
1001 - diagrams-canvas
1824 - diagrams-canvas
1002− - diagrams-rasterific
1003− - lucid-svg
1004− - diagrams-html5
1005− - static-canvas
1006 - svg-builder
1825 - svg-builder
1007
1826
1008 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
1827 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
@@ -1011,27 +1830,27 @@ packages:
1011 "Leon Mergen <leon@solatis.com> @solatis":
1830 "Leon Mergen <leon@solatis.com> @solatis":
1012 - base32string
1831 - base32string
1013 - base58string
1832 - base58string
1014− # BLOCKED wreq:
1015− # - bitcoin-api
1833+ - bitcoin-api
1016− # - bitcoin-api-extra
1834+ - bitcoin-api-extra
1017 - bitcoin-block
1835 - bitcoin-block
1018 - bitcoin-script
1836 - bitcoin-script
1019 - bitcoin-tx
1837 - bitcoin-tx
1020 - bitcoin-types
1838 - bitcoin-types
1021 - hexstring
1839 - hexstring
1022− - network-attoparsec
1840+ - network-attoparsec < 0 # 0.12.2 compile fail MonadFail
1023− - network-anonymous-i2p
1841+ - network-anonymous-i2p < 0 # 0.10.0 compile fail
1024 - network-anonymous-tor
1842 - network-anonymous-tor
1025
1843
1026− "Timothy Jones <git@zmthy.io> @zmthy":
1844+ "Timothy Jones <tim@zmthy.net> @zmthy":
1027 - http-media
1845 - http-media
1028
1846
1029 "Greg V <greg@unrelenting.technology> @myfreeweb":
1847 "Greg V <greg@unrelenting.technology> @myfreeweb":
1030− - gitson
1031 - pcre-heavy
1848 - pcre-heavy
1032 - http-link-header
1849 - http-link-header
1033− # - microformats2-parser # BLOCKED aeson-qq
1850+ - microformats2-parser
1034 - hspec-expectations-pretty-diff
1851 - hspec-expectations-pretty-diff
1852+ - wai-cli
1853+ - magicbane
1035
1854
1036 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1855 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1037 - language-c-quote
1856 - language-c-quote
@@ -1041,81 +1860,18 @@ packages:
1041 - getopt-generics
1860 - getopt-generics
1042 - graph-wrapper
1861 - graph-wrapper
1043 - string-conversions
1862 - string-conversions
1863+ - hspec-checkers
1864+ - FindBin
1044
1865
1045 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1866 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1046 - tasty-program
1867 - tasty-program
1047
1868
1048− "Oleg Grenrus <oleg.grenrus@iki.fi> @phadej":
1049− - aeson-compat
1050− - aeson-extra
1051− - binary-orphans
1052− - binary-tagged
1053− - edit-distance
1054− - generics-sop-lens
1055− - github
1056− - insert-ordered-containers
1057− - JuicyPixels-scale-dct
1058− - lattices
1059− - monad-http
1060− - postgresql-simple-url
1061− - range-set-list
1062− - regex-applicative-text
1063− - servant-swagger-ui
1064− - servant-yaml
1065− - singleton-bool
1066− - spdx
1067− - these
1068− - time-parsers
1069− - waitra
1070−
1071− # scrive/log
1072− - log
1073− - log-base
1074− - log-elasticsearch
1075− - log-postgres
1076−
1077− # Not a maintainer
1078− - arithmoi
1079− - friendly-time
1080− - hashable
1081− # - haxl
1082− - monad-time
1083− - packdeps
1084− - recursion-schemes
1085− - unordered-containers
1086−
1087− # fft
1088− - carray
1089− - ix-shapable
1090− - fft
1091−
1092− # Regex packages by Chris Kuklewicz
1093− - regex-base
1094− - regex-compat
1095− # 0.91 Compilation failure due to -Werror - regex-dfa
1096− # 0.90 Compilation failure due to -Werror - regex-parsec
1097− - regex-pcre
1098− - regex-posix
1099− - regex-tdfa
1100− # GHC 8 - regex-tdfa-utf8
1101− # 0.91 Compilation failure due to -Werror - regex-tre
1102−
1103− # Universe
1104− - universe
1105− - universe-base
1106− - universe-instances-base
1107− - universe-instances-extended
1108− - universe-instances-trans
1109− - universe-reverse-instances
1110−
1111 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1869 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1112 - farmhash
1870 - farmhash
1113 - pinch
1871 - pinch
1114− - sandman
1872+ - sandman < 0 # 0.2.0.1 compile fail (Cabal 3)
1115− - language-thrift
1116
1873
1117 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1874 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1118− - cryptol
1119 - gitrev
1875 - gitrev
1120 - persistent-refs
1876 - persistent-refs
1121
1877
@@ -1129,6 +1885,7 @@ packages:
1129 - amazonka-apigateway
1885 - amazonka-apigateway
1130 - amazonka-application-autoscaling
1886 - amazonka-application-autoscaling
1131 - amazonka-appstream
1887 - amazonka-appstream
1888+ - amazonka-athena
1132 - amazonka-autoscaling
1889 - amazonka-autoscaling
1133 - amazonka-budgets
1890 - amazonka-budgets
1134 - amazonka-certificatemanager
1891 - amazonka-certificatemanager
@@ -1157,7 +1914,7 @@ packages:
1157 - amazonka-ds
1914 - amazonka-ds
1158 - amazonka-dynamodb
1915 - amazonka-dynamodb
1159 - amazonka-dynamodb-streams
1916 - amazonka-dynamodb-streams
1160− - amazonka-ec2
1917+ - amazonka-ec2 < 0 # takes too much memory to build https://github.com/brendanhay/amazonka/issues/549
1161 - amazonka-ecr
1918 - amazonka-ecr
1162 - amazonka-ecs
1919 - amazonka-ecs
1163 - amazonka-efs
1920 - amazonka-efs
@@ -1170,6 +1927,7 @@ packages:
1170 - amazonka-emr
1927 - amazonka-emr
1171 - amazonka-gamelift
1928 - amazonka-gamelift
1172 - amazonka-glacier
1929 - amazonka-glacier
1930+ - amazonka-glue
1173 - amazonka-health
1931 - amazonka-health
1174 - amazonka-iam
1932 - amazonka-iam
1175 - amazonka-importexport
1933 - amazonka-importexport
@@ -1212,8 +1970,9 @@ packages:
1212 - amazonka-waf
1970 - amazonka-waf
1213 - amazonka-workspaces
1971 - amazonka-workspaces
1214 - amazonka-xray
1972 - amazonka-xray
1973+ # gogol-* disabled due to `gogol-core` due to `servant`: #6089/closed
1215 - gogol
1974 - gogol
1216− - gogol-core
1975+ - gogol-core < 0 # 0.5.0 compile fail
1217 - gogol-adexchange-buyer
1976 - gogol-adexchange-buyer
1218 - gogol-adexchange-seller
1977 - gogol-adexchange-seller
1219 - gogol-admin-datatransfer
1978 - gogol-admin-datatransfer
@@ -1310,7 +2069,7 @@ packages:
1310 - gogol-youtube-analytics
2069 - gogol-youtube-analytics
1311 - gogol-youtube-reporting
2070 - gogol-youtube-reporting
1312 - ede
2071 - ede
1313− - pagerduty
2072+ - pagerduty < 0 # 0.0.8 compile fail with GHC 8.4 https://github.com/brendanhay/pagerduty/issues/10
1314 - semver
2073 - semver
1315 - text-manipulate
2074 - text-manipulate
1316
2075
@@ -1320,82 +2079,77 @@ packages:
1320 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
2079 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
1321 - jmacro
2080 - jmacro
1322 - jmacro-rpc
2081 - jmacro-rpc
1323− - jmacro-rpc-happstack
1324 - jmacro-rpc-snap
2082 - jmacro-rpc-snap
2083+ - jmacro-rpc-happstack
2084+
1325 - mbox
2085 - mbox
1326 - kmeans
2086 - kmeans
1327 - boolsimplifier
2087 - boolsimplifier
1328 - cubicspline
2088 - cubicspline
1329 - maximal-cliques
2089 - maximal-cliques
1330
2090
1331− "Alexander Bondarenko <aenor.realm@gmail.com> @wiz":
2091+ "Alexander Bondarenko <aenor.realm@gmail.com> @dpwiz":
2092+ - hedn
1332 - soap
2093 - soap
1333 - soap-tls
2094 - soap-tls
1334 - soap-openssl
2095 - soap-openssl
1335
2096
1336 "Andres Löh <andres@well-typed.com> @kosmikus":
2097 "Andres Löh <andres@well-typed.com> @kosmikus":
1337 - generics-sop
2098 - generics-sop
2099+ - records-sop
2100+ - sop-core
1338
2101
1339 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
2102 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
1340 - hmatrix-gsl-stats
2103 - hmatrix-gsl-stats
1341 - hsignal
2104 - hsignal
1342 - hstatistics
2105 - hstatistics
1343 - plot
2106 - plot
1344− - plot-gtk
1345− - plot-gtk3
1346−
1347 - vector-buffer
2107 - vector-buffer
1348− # 0.1.2.1 Compilation failure against hmatrix https://github.com/amcphail/hmatrix-repa/issues/2 - hmatrix-repa
2108+ - hmatrix-repa
1349
2109
1350 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
2110 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
1351− # via hxt-tagsoup - xml-to-json
2111+ - xml-to-json
1352 - 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
1353 - digits
2119 - digits
1354− - unification-fd
1355 - logict
2120 - logict
1356− - resolve-trivial-conflicts
1357− - wl-pprint
1358 - leveldb-haskell
2121 - leveldb-haskell
1359 - system-argv0
2122 - system-argv0
1360 - markdown-unlit
2123 - markdown-unlit
1361
2124
1362− "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk> @Fuuzetsu":
2125+ "Brian McKenna <brian@brianmckenna.org> @puffnfresh":
1363− # 0.4.1.1 compilation failure against GHC 8 - aeson-schema
1364− - H
1365− - inline-r
1366−
1367− # "David Fox <dsf@seereason.com> @ddssff":
1368− # GHC bug https://github.com/ddssff/debian-haskell/issues/6 - debian
1369− # via memoize - cabal-debian
1370−
1371− "Stefan Saasen <stefan@saasen.me> @juretta":
1372 - jwt
2126 - jwt
1373
2127
1374 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
2128 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
1375 - setlocale
2129 - setlocale
1376
2130
1377− "John Chee <cheecheeo+stackage@gmail.com> @chee1bot":
1378− - cgi
1379−
1380 "Taylor Fausak <taylor@fausak.me> @tfausak":
2131 "Taylor Fausak <taylor@fausak.me> @tfausak":
1381 - autoexporter
2132 - autoexporter
1382− - bento
2133+ - burrito
1383− - bmp # Maintained by @benl23x5.
2134+ - derulo
1384− # GHC 8 - ekg-statsd # Maintained by @tibbe.
1385 - flow
2135 - flow
1386 - github-release
2136 - github-release
1387− - gloss # Maintained by @benl23x5.
2137+ - json-feed
1388− - gloss-rendering # Maintained by @benl23x5.
1389− - gpolyline # Maintained by @fegu.
1390 - lackey
2138 - lackey
1391− - octane
2139+ - list-singleton
1392− - overloaded-records # Maintained by @trskop.
2140+ - rampart
1393 - ratel
2141 - ratel
1394 - ratel-wai
2142 - ratel-wai
1395 - rattletrap
2143 - rattletrap
2144+ - salve
2145+ - splint
1396 - strive
2146 - strive
2147+ - witch
1397 - wuss
2148 - wuss
1398
2149
2150+ - bmp # @benl23x5
2151+ - gpolyline # @fegu
2152+
1399 "Marios Titas <redneb@gmx.com> @redneb":
2153 "Marios Titas <redneb@gmx.com> @redneb":
1400 - HsOpenSSL-x509-system
2154 - HsOpenSSL-x509-system
1401 - adler32
2155 - adler32
@@ -1410,106 +2164,140 @@ packages:
1410 - prometheus-client
2164 - prometheus-client
1411 - prometheus-metrics-ghc
2165 - prometheus-metrics-ghc
1412 - scalpel
2166 - scalpel
2167+ - scalpel-core
1413 - wai-middleware-prometheus
2168 - wai-middleware-prometheus
1414
2169
1415 "William Casarin <bill@casarin.me> @jb55":
2170 "William Casarin <bill@casarin.me> @jb55":
1416 - bson-lens
2171 - bson-lens
1417 - cased
2172 - cased
2173+ - elm-export
2174+ - elm-export-persistent
1418 - pipes-csv
2175 - pipes-csv
1419 - pipes-mongodb
2176 - pipes-mongodb
2177+ - servant-elm
2178+ - servant-streaming
2179+ - servant-streaming-client
2180+ - servant-streaming-server
1420 - skeletons
2181 - skeletons
1421
2182
1422− # "Smirnov Alexey <chemistmail@gmail.com> @chemist":
1423− # GHC 8 - snmp
1424− # GHC 8 - agentx
1425−
1426 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
2183 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
1427 - annotated-wl-pprint
2184 - annotated-wl-pprint
1428
2185
1429 "Yitz Gale <gale@sefer.org> @ygale":
2186 "Yitz Gale <gale@sefer.org> @ygale":
2187+ - boolean-normal-forms
2188+ - strict-concurrency
1430 - timezone-series
2189 - timezone-series
1431 - timezone-olson
2190 - timezone-olson
1432
2191
1433− "Josh Holland <josh@inv.alid.pw> @jshholland":
1434− - sandi
1435− - data-ordlist
1436− - xmonad
1437−
1438 "Harry Garrood <harry@garrood.me> @hdgarrood":
2192 "Harry Garrood <harry@garrood.me> @hdgarrood":
1439 - aeson-better-errors
2193 - aeson-better-errors
1440
2194
1441 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2195 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2196+ - ki
1442 - tasty-hspec
2197 - tasty-hspec
2198+ - termbox
2199+ - text-ansi
2200+ - timer-wheel
1443
2201
1444− "Christiaan Baaij <christiaan.baaij@gmail.com> @christiaanb":
2202+ "QBayLogic B.V. <devops@qbaylogic.com> @martijnbastiaan":
1445 - ghc-tcplugins-extra
2203 - ghc-tcplugins-extra
1446 - ghc-typelits-extra
2204 - ghc-typelits-extra
1447 - ghc-typelits-knownnat
2205 - ghc-typelits-knownnat
1448 - ghc-typelits-natnormalise
2206 - ghc-typelits-natnormalise
1449 - clash-prelude
2207 - clash-prelude
1450 - clash-lib
2208 - clash-lib
1451− - clash-vhdl
2209+ - clash-ghc
1452− - clash-verilog
2210+
1453− - clash-systemverilog
2211+ "Martijn Bastiaan <martijn@hmbastiaan.nl> @martijnbastiaan":
1454− # GHC 8 - clash-ghc
2212+ - aeson-pretty
2213+ - doctest-parallel
1455
2214
1456 "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
1457 - commutative
2224 - commutative
1458− # via digestive functors - digestive-functors-lucid
2225+ - composition-extra
1459− #- ltext # https://github.com/ltext/ltext/issues/22
2226+ - every
2227+ - extractable-singleton
2228+ - follow-file
2229+ - HSet < 0 # 0.0.1 compile fail: duplicate Hashable instance
1460 - markup
2230 - markup
1461− # via poly-arity - nested-routes
2231+ - monad-control-aligned
2232+ - monadoid
2233+ - n-tuple
1462 - path-extra
2234 - path-extra
1463− # via HList - poly-arity (sent e-mail to HList maintainer)
2235+ - pred-set
1464− - urlpath
2236+ - pred-trie
1465− - wai-transformers
2237+ - path-extra
1466− # - wai-middleware-content-type # BLOCKED aeson 1.0 via pandoc
2238+ - poly-arity
1467− # - wai-middleware-verbs # BLOCKED aeson 1.0 via pandoc
2239+ - quickcheck-combinators
1468− - webpage
1469− - composition-extra
1470 - rose-trees
2240 - rose-trees
1471 - sets
2241 - sets
2242+ - since
1472 - timemap
2243 - timemap
2244+ - tmapchan
2245+ - tmapmvar
1473 - tries
2246 - tries
1474− - path-extra
2247+ - unit-constraint
1475− # via poly-arity - pred-trie
2248+ - unfoldable-restricted
1476− - pred-set
2249+ - urlpath
1477− - HSet
2250+ - wai-transformers
2251+ - websockets-rpc
2252+ - websockets-simple
2253+ - webpage
2254+ - ws
1478
2255
1479 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
2256 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
1480 - boundingboxes
2257 - boundingboxes
1481 - control-bool
2258 - control-bool
1482− - extensible
2259+ - drinkery
1483 - monad-skeleton
2260 - monad-skeleton
1484− - objective
1485− - witherable
1486 - xml-lens
2261 - xml-lens
2262+ - witherable
2263+ - deriving-aeson
1487
2264
1488 "Peter Harpending <peter@harpending.org> @pharpend":
2265 "Peter Harpending <peter@harpending.org> @pharpend":
1489 - editor-open
2266 - editor-open
1490− - exceptional
2267+ - exceptional < 0 # 0.3.0.0 MonadFail
1491− - optparse-helper
1492 - pager
2268 - pager
1493 - semiring-simple
2269 - semiring-simple
1494
2270
1495 "Philipp Hausmann <ph_git@314.ch> @phile314":
2271 "Philipp Hausmann <ph_git@314.ch> @phile314":
1496− - tasty-silver
2272+ - language-thrift
1497
2273
1498 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
2274 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
1499 - pipes-text
2275 - pipes-text
1500 - lens-simple
2276 - lens-simple
1501 - lens-family-core
2277 - lens-family-core
1502 - lens-family
2278 - lens-family
1503− - streaming
1504− - streaming-bytestring
1505−
1506
2279
1507 "Justin Le <justin@jle.im> @mstksg":
2280 "Justin Le <justin@jle.im> @mstksg":
2281+ - advent-of-code-api
1508 - auto
2282 - auto
2283+ - backprop
2284+ - bins
2285+ - conduino
1509 - 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
1510 - hamilton
2290 - hamilton
2291+ - hmatrix-backprop
2292+ - hmatrix-vector-sized
2293+ - lens-typelevel
2294+ - list-witnesses
2295+ - nonempty-containers
2296+ - one-liner-instances
1511 - prompt
2297 - prompt
2298+ - servant-cli
1512 - tagged-binary
2299 - tagged-binary
2300+ - type-combinators-singletons
1513 - typelits-witnesses
2301 - typelits-witnesses
1514 - uncertain
2302 - uncertain
1515 - vector-sized
2303 - vector-sized
@@ -1520,51 +2308,42 @@ packages:
1520 - pipes-wai
2308 - pipes-wai
1521 - serf
2309 - serf
1522 - uri-templater
2310 - uri-templater
1523− - librato
2311+ - data-sketches
1524− # bounds - datadog
2312+ - data-sketches-core
1525− # bounds - engine-io-growler
1526− # bounds - flowdock
1527− # GHC 8 - growler
1528
2313
1529 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
2314 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
1530− # - angel # https://github.com/MichaelXavier/Angel/issues/52
1531 - uri-bytestring
2315 - uri-bytestring
1532− # Can't build on stackage server https://github.com/MichaelXavier/phash/issues/5 - phash
1533 - cron
2316 - cron
1534− # GHC 8 - tasty-tap
2317+ - tasty-tap
1535− # via tasty-tap - tasty-fail-fast
2318+ - tasty-fail-fast
1536 - drifter
2319 - drifter
1537 - drifter-postgresql
2320 - drifter-postgresql
2321+ - drifter-sqlite
1538
2322
1539 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
2323 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
1540 - wai-cors
2324 - wai-cors
1541 - configuration-tools
2325 - configuration-tools
2326+ - random-bytestring
1542
2327
1543 "Sam Rijs <srijs@airpost.net> @srijs":
2328 "Sam Rijs <srijs@airpost.net> @srijs":
1544 - ndjson-conduit
2329 - ndjson-conduit
1545− # GHC 8 - attoparsec-trans
1546 - operational-class
2330 - operational-class
1547 - result
2331 - result
1548
2332
1549− # "Anupam Jain <ajnsit@gmail.com> @ajnsit":
1550− # GHC 8 - wai-routes
1551−
1552 "Daniel Patterson <dbp@dbpmail.net> @dbp":
2333 "Daniel Patterson <dbp@dbpmail.net> @dbp":
1553− # via digestive-functors - hspec-snap
1554 - hworker
2334 - hworker
1555− # - hworker-ses BLOCKED amazonka-core
1556 - fn
2335 - fn
1557− # via heist - fn-extra
1558−
1559− "Chris Wong <lambda.fairy@gmail.com> @lfairy":
1560− - nationstates
1561
2336
1562 "Mathieu Boespflug <mboes@tweag.net> @mboes":
2337 "Mathieu Boespflug <mboes@tweag.net> @mboes":
1563− # via ihaskell & via ihaskell-blaze - ihaskell-inline-r
2338+ - choice
1564− - cassette
1565 - distributed-closure
2339 - distributed-closure
1566− - H
2340+ - inline-java
1567 - inline-r
2341 - inline-r
2342+ - jni < 0 # compile fail
2343+ - jvm
2344+ - jvm-streaming
2345+ - H
2346+ - sparkle
1568 - th-lift
2347 - th-lift
1569
2348
1570 "Christopher Reichert <creichert07@gmail.com> @creichert":
2349 "Christopher Reichert <creichert07@gmail.com> @creichert":
@@ -1574,31 +2353,12 @@ packages:
1574 - wai-middleware-throttle
2353 - wai-middleware-throttle
1575 - yesod-auth-basic
2354 - yesod-auth-basic
1576
2355
1577− # "Alcides Viamontes <a.viamontes.esquivel@gmail.com> @alcidesv":
1578− # GHC 8 - second-transfer
1579−
1580− # "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
2356+ "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
1581− # GHC 8 & bounds - apiary
1582− # GHC 8 & bounds - apiary-logger
1583− # GHC 8 & bounds - apiary-persistent
1584− # GHC 8 & bounds - apiary-websockets
1585− # GHC 8 & bounds - apiary-cookie
1586− # GHC 8 & bounds - apiary-session
1587− # GHC 8 & bounds - apiary-clientsession
1588− # GHC 8 & bounds - apiary-authenticate
1589− # GHC 8 & bounds - apiary-eventsource
1590− # GHC 8 & bounds - apiary-mongoDB
1591− # GHC 8 & bounds - apiary-memcached
1592− # GHC 8 - types-compat
1593− # GHC 8 - web-routing
1594− # GHC 8 - bytestring-read
1595− # GHC 8 & bounds - memcached-binary
1596− # GHC 8 - barrier
2357+ - barrier
1597− # GHC 8 - haddocset
1598
2358
1599 "Kai Zhang <kai@kzhang.org> @kaizhang":
2359 "Kai Zhang <kai@kzhang.org> @kaizhang":
1600− - clustering
1601 - matrices
2360 - matrices
2361+ - haskell-igraph < 0 # 0.8.0 compile fail ghc 8.10.1 #5440/closed
1602
2362
1603 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
2363 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
1604 - IPv6Addr
2364 - IPv6Addr
@@ -1607,55 +2367,68 @@ packages:
1607 - Spintax
2367 - Spintax
1608 - glabrous
2368 - glabrous
1609 - google-oauth2-jwt
2369 - google-oauth2-jwt
2370+ - IPv6DB
2371+ - gothic
2372+ - NanoID
1610
2373
1611 "koral koral@mailoo.org @k0ral":
2374 "koral koral@mailoo.org @k0ral":
1612 - atom-conduit
2375 - atom-conduit
1613 - conduit-parse
2376 - conduit-parse
2377+ - dublincore-xml-conduit
2378+ - euler-tour-tree
1614 - opml-conduit
2379 - opml-conduit
1615 - rss-conduit
2380 - rss-conduit
1616− # - imm # BLOCKED derive
1617 - timerep
2381 - timerep
1618 - xml-conduit-parse
2382 - xml-conduit-parse
1619
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+
1620 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
2395 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
1621− - protocol-buffers
2396+ - SHA
1622− # - hprotoc # https://github.com/k-bx/protocol-buffers/issues/45
2397+ - currency
1623− - protocol-buffers-descriptor
2398+ - data-ordlist
1624− - ekg-core
1625 - digits
2399 - digits
2400+ - dns
2401+ - friday
2402+ - friday-juicypixels
1626 - hbeanstalk
2403 - hbeanstalk
2404+ - hedis
2405+ - hprotoc
2406+ - hsyslog-udp
1627 - iso3166-country-codes
2407 - iso3166-country-codes
1628 - iso639
2408 - iso639
1629− - murmur-hash
1630 - monoidal-containers
2409 - monoidal-containers
2410+ - murmur-hash
2411+ - protocol-buffers
2412+ - protocol-buffers-descriptor
1631 - regex-pcre
2413 - regex-pcre
1632− - string-combinators
1633 - string-class
2414 - string-class
1634− - SHA
2415+ - string-combinators
1635− - data-ordlist
1636− - hedis
1637
2416
1638 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
2417 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
1639 - pipes-fastx
2418 - pipes-fastx
1640− # - pipes-illumina # BLOCKED pipes 4.2 via pipes-bgzf
1641 - seqalign
2419 - seqalign
1642− - thermonuc
1643− - xlsior
1644
2420
1645 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
2421 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
1646− - yesod-auth-account
1647 - yesod-static-angular
2422 - yesod-static-angular
1648− # - hspec-webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2423+ - hspec-webdriver
1649− # - webdriver-angular # https://github.com/kallisti-dev/hs-webdriver/issues/98
2424+ - webdriver-angular
1650
2425
1651 "Sven Heyll <svh@posteo.de> @sheyll":
2426 "Sven Heyll <svh@posteo.de> @sheyll":
1652 - b9
2427 - b9
1653 - type-spec
2428 - type-spec
1654 - pretty-types
2429 - pretty-types
1655−
2430+ - function-builder
1656− "Will Thompson <will@willthompson.co.uk> @wjt":
2431+ - bytestring-to-vector
1657− []
1658− # - bustle https://github.com/vasylp/hgettext/issues/10
1659
2432
1660 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
2433 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
1661 - hlibsass
2434 - hlibsass
@@ -1664,43 +2437,36 @@ packages:
1664 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
2437 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
1665 - range
2438 - range
1666
2439
1667− "Index Int <vlad.z.4096@gmail.com> @int-index":
2440+ "Vladislav Zavialov <vlad.z.4096@gmail.com> @int-index":
1668 - transformers-lift
2441 - transformers-lift
1669− - ether
1670 - union
2442 - union
2443+ - named
2444+ - inj
2445+ - shower
1671
2446
1672 "Stack Builders stackage@stackbuilders.com @stackbuilders":
2447 "Stack Builders stackage@stackbuilders.com @stackbuilders":
1673 - atomic-write
2448 - atomic-write
2449+ - dbcleaner
2450+ - dotenv
1674 - hapistrano
2451 - hapistrano
2452+ - hspec-golden
1675 - inflections
2453 - inflections
1676− - twitter-feed
1677− - cassava-megaparsec
1678− - dotenv
1679 - stache
2454 - stache
2455+ - scalendar
1680
2456
1681 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
2457 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
1682 - monad-peel
2458 - monad-peel
1683 - NineP
2459 - NineP
1684− # GHC 8 - Network-NineP
2460+ - Network-NineP
1685−
1686− "Oliver Charles <ollie@ocharles.org.uk> @ocharles":
1687− # GHC 8 - engine-io
1688− - diff3
1689− # GHC 8 & bounds - digestive-functors-aeson
1690− # GHC 8 - exhaustive
1691− # GHC 8 - libsystemd-journal
1692− # GHC 8 - network-carbon
1693− # GHC 8 - socket-io
1694− - tasty-rerun
1695− - logging-effect
1696−
1697− # "Scott Murphy <scott.murphy@plowtech.net> @smurphy8":
1698
2461
1699 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
2462 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
1700 # Test suite needs a running neo4j server with auth disabled
2463 # Test suite needs a running neo4j server with auth disabled
1701 # 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
1702 # 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
1703− - 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
1704
2470
1705 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
2471 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
1706 - histogram-fill
2472 - histogram-fill
@@ -1709,173 +2475,186 @@ packages:
1709 - type-level-numbers
2475 - type-level-numbers
1710
2476
1711 "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
1712 - base-orphans
2483 - base-orphans
2484+ - chaselev-deque
1713 - code-page
2485 - code-page
2486+ - constraint-tuples
2487+ - criterion
2488+ - criterion-measurement
2489+ - data-reify
1714 - deriving-compat
2490 - deriving-compat
2491+ - dotgen
2492+ - echo
2493+ - eliminators
1715 - generic-deriving
2494 - generic-deriving
2495+ - ghc-bignum-orphans
1716 - hashmap
2496 - hashmap
2497+ - indexed-traversable-instances
1717 - invariant
2498 - invariant
1718 - keycode
2499 - keycode
1719 - lift-generics
2500 - lift-generics
2501+ - mintty
2502+ - monad-par
2503+ - monad-par-extras
1720 - mtl-compat
2504 - mtl-compat
2505+ - ordered-containers
1721 - proxied
2506 - proxied
2507+ - rdtsc
2508+ - singleton-nats
2509+ - singletons-base
2510+ - singletons-th
1722 - text-show
2511 - text-show
1723 - text-show-instances
2512 - text-show-instances
2513+ - th-abstraction
2514+ - th-compat
2515+ - thread-local-storage
2516+ - type-equality
1724
2517
1725 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
2518 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
1726 - xlsx
2519 - xlsx
1727
2520
1728 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
2521 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
1729 - 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
1730
2542
1731 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
2543 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
1732 - refact
2544 - refact
1733− # bounds - servant-pandoc
2545+
1734− - ghc-exactprint
1735− # - apply-refact # BLOCKED optparse-applicative < 0.13
1736−
1737− # "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
2546+ "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
1738− # GHC 8 - ihaskell
1739− # via ihaskell - ihaskell-aeson
1740− # via ihaskell - ihaskell-basic
1741− # via ihaskell - ihaskell-blaze
1742− # via ihaskell - ihaskell-charts
1743− # via ihaskell - ihaskell-diagrams
1744− # via ihaskell - ihaskell-hatex
1745− # via ihaskell - ihaskell-juicypixels
1746− # via ihaskell - ihaskell-magic
1747− # via ihaskell - ihaskell-rlangqq
1748− # via ihaskell - ihaskell-static-canvas
1749− # GHC 8 - ghc-parser
1750− # GHC 8 - ipython-kernel
2547+ - ipython-kernel
1751−
1752− "Andrés Sicard-Ramírez <asr@eafit.edu.co> @asr":
1753− []
1754− # - Agda # BLOCKED haskell-src-exts < 1.18 and QuickCheck < 2.9
1755
2548
1756 "James Cook <mokus@deepbondi.net> @mokus0":
2549 "James Cook <mokus@deepbondi.net> @mokus0":
1757− - dependent-sum
1758− # - dependent-sum-template BLOCKED dependent-sum-0.4
1759 - dependent-map
2550 - dependent-map
2551+ - dependent-sum
2552+ - dependent-sum-template
1760 - dice
2553 - dice
1761 - hstatsd
2554 - hstatsd
1762 - misfortune
2555 - misfortune
1763
2556
1764 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2557 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2558+ - ekg-wai
1765− # via haxl - haxl-amazonka
2559+ - haxl-amazonka
2560+ - hasql-migration
1766 - servant-JuicyPixels
2561 - servant-JuicyPixels
1767
2562
1768− "Artyom <yom@artyom.me> @neongreen":
2563+ "Artyom Kazak <artyom@artyom.me> @neongreen":
1769 - microlens
2564 - microlens
1770 - microlens-platform
2565 - microlens-platform
1771 - microlens-mtl
2566 - microlens-mtl
1772 - microlens-th
2567 - microlens-th
1773 - microlens-ghc
2568 - microlens-ghc
1774 - microlens-contra
2569 - microlens-contra
1775− - shortcut-links
1776− - cheapskate-lucid
1777 - cheapskate-highlight
2570 - cheapskate-highlight
2571+ - cheapskate-lucid
1778 - cmark-lucid
2572 - cmark-lucid
1779 - cmark-highlight
2573 - cmark-highlight
1780 - Spock-lucid
2574 - Spock-lucid
1781 - charsetdetect-ae
2575 - charsetdetect-ae
1782− - ilist
1783 - text-all
2576 - text-all
1784
2577
1785 "Takano Akio tak@anoak.io @takano-akio":
2578 "Takano Akio tak@anoak.io @takano-akio":
1786 - fast-builder
2579 - fast-builder
1787 - filelock
2580 - filelock
1788− - euphoria
1789−
1790− "Ashley Moni ashley.moni1@gmail.com @AshleyMoni":
1791− - quadtree
1792
2581
1793 "Brian Lewis brian@lorf.org @bsl":
2582 "Brian Lewis brian@lorf.org @bsl":
1794 - bindings-GLFW
2583 - bindings-GLFW
1795 - GLFW-b
2584 - GLFW-b
1796
2585
1797 "Niklas Hambüchen mail@nh2.me @nh2":
2586 "Niklas Hambüchen mail@nh2.me @nh2":
2587+ - conduit-concurrent-map
1798 - hidapi
2588 - hidapi
1799 - iso8601-time
2589 - iso8601-time
1800 - loop
2590 - loop
2591+ - lz4-frame-conduit
1801 - netpbm
2592 - netpbm
1802− - network-house
2593+ - network-house < 0 # 0.1.0.2 compile failure MonadFail
1803 - reinterpret-cast
2594 - reinterpret-cast
2595+ - shared-memory
2596+ - posix-paths
1804 # As dependencies of packages above
2597 # As dependencies of packages above
1805 - attoparsec-binary
2598 - attoparsec-binary
1806− - storable-record
1807−
1808− "Brandon Martin <brandon@codedmart.com> @codedmart":
1809− # GHC 8 & via engine-io - engine-io-wai
1810− - rethinkdb
1811
2599
1812 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
2600 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
1813 - both
2601 - both
1814 - concurrency
2602 - concurrency
1815− - dpor
1816 - dejafu
2603 - dejafu
1817− - async-dejafu
1818 - hunit-dejafu
2604 - hunit-dejafu
1819 - tasty-dejafu
2605 - tasty-dejafu
1820 - irc-ctcp
2606 - irc-ctcp
1821 - irc-conduit
2607 - irc-conduit
1822 - irc-client
2608 - irc-client
1823
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+
1824 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
2623 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
1825 - irc
2624 - irc
1826
2625
1827 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
2626 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
1828− - emailaddress
1829 - envelope
2627 - envelope
1830 - from-sum
2628 - from-sum
1831− - hailgun
1832− - hailgun-simple
1833− # GHC 8 - ig
1834 - natural-transformation
2629 - natural-transformation
1835− - opaleye-trans
2630+ - password
2631+ - password-instances
2632+ - password-types
2633+ - pretty-simple
2634+ - print-console-colors
1836 - read-env-var
2635 - read-env-var
1837− - 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
1838
2644
1839 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
2645 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
1840 - Ebnf2ps
2646 - Ebnf2ps
1841
2647
1842− "Dmitry Ivanov <ethercrow@gmail.com> @ethercrow":
1843− - charsetdetect-ae
1844− - compiler-errors
1845− - docopt
1846− - dynamic-state
1847− - dyre
1848− - io-storage
1849− - oo-prototypes
1850− - pointedlist
1851− - word-trie
1852− - xdg-basedir
1853− # - yi -- disabled because of https://github.com/commercialhaskell/stack/issues/2795
1854− - yi-core
1855− # - yi-frontend-pango -- disabled because of https://github.com/commercialhaskell/stack/issues/2795
1856− - yi-frontend-vty
1857− - yi-fuzzy-open
1858− - yi-ireader
1859− - yi-keymap-cua
1860− - yi-keymap-emacs
1861− #- yi-keymap-vim # https://github.com/yi-editor/yi/issues/954
1862− - yi-language
1863− - yi-misc-modes
1864− - yi-mode-haskell
1865− - yi-mode-javascript
1866− - yi-rope
1867− - yi-snippet
1868−
1869 "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
2648 "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
1870 - GPipe
2649 - GPipe
1871
2650
1872− "Patrick Redmond <plredmond@gmail.com> @plredmond":
2651+ "Jonas Carpay <jonascarpay@gmail.com> @jonascarpay":
1873− - GPipe-GLFW
2652+ - apecs
1874−
2653+ - apecs-gloss
1875− # "Csaba Hruska <csaba.hruska@gmail.com> @csabahruska":
2654+ - apecs-physics
1876− # GHC 8 - lambdacube-ir
2655+ - aeson-commit
1877− # GHC 8 & via wavefront - lambdacube-gl
2656+ - js-chart
1878− # GHC 8 & bounds - lambdacube-compiler
2657+ - tasty-focus
1879
2658
1880 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
2659 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
1881 - Xauth
2660 - Xauth
@@ -1883,38 +2662,41 @@ packages:
1883 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
2662 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
1884 - wai-middleware-metrics
2663 - wai-middleware-metrics
1885
2664
1886− "Stefan Berthold":
1887− - smallcaps
1888−
1889 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
2665 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
1890 - hashtables
2666 - hashtables
1891 - io-streams
2667 - io-streams
1892 - openssl-streams
2668 - openssl-streams
1893
2669
1894− "Andrew Cowie <andrew@operationaldynamics.com> @afcowie":
2670+ "Andrew Cowie <istathar@gmail.com> @istathar":
2671+ - chronologique
1895 - http-common
2672 - http-common
1896 - http-streams
2673 - http-streams
1897−
2674+ - locators
1898− "Devan Stormont <stormont@gmail.com> @stormont":
2675+ - core-data
1899− []
2676+ - core-program
1900− # - forecast-io # BLOCKED aeson 1.0
2677+ - core-telemetry
2678+ - core-text
1901
2679
1902 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
2680 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
1903 - cheapskate
2681 - cheapskate
1904
2682
1905 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
2683 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
1906 - fgl
2684 - fgl
1907− - fgl-arbitrary
1908 - graphviz
2685 - graphviz
1909 - wl-pprint-text
2686 - wl-pprint-text
2687+ - servant-pandoc
1910
2688
1911 "Sharif Olorin <sio@tesser.org> @olorin":
2689 "Sharif Olorin <sio@tesser.org> @olorin":
1912 - quickcheck-text
2690 - quickcheck-text
1913 - nagios-check
2691 - nagios-check
1914
2692
1915 "Peter Simons <simons@cryp.to> @peti":
2693 "Peter Simons <simons@cryp.to> @peti":
1916− - distribution-nixpkgs
1917 - cabal2nix
2694 - cabal2nix
2695+ - cabal2spec
2696+ - cgi
2697+ - distribution-nixpkgs
2698+ - distribution-opensuse
2699+ - flexible-defaults
1918 - funcmp
2700 - funcmp
1919 - hackage-db
2701 - hackage-db
1920 - hledger-interest
2702 - hledger-interest
@@ -1923,27 +2705,39 @@ packages:
1923 - hsemail
2705 - hsemail
1924 - hsyslog
2706 - hsyslog
1925 - jailbreak-cabal
2707 - jailbreak-cabal
2708+ - lambdabot-core
2709+ - lambdabot-irc-plugins
1926 - language-nix
2710 - language-nix
2711+ - logging-facade-syslog
2712+ - MonadPrompt
1927 - 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
1928 - streamproc
2720 - streamproc
2721+ - stringsearch # for cgi
1929 - titlecase
2722 - titlecase
1930
2723
1931 "Mark Fine <mark.fine@gmail.com> @markfine":
2724 "Mark Fine <mark.fine@gmail.com> @markfine":
1932 - postgresql-schema
2725 - postgresql-schema
1933− # test failures https://github.com/fpco/stackage/issues/873 - sbp
2726+ - sbp
1934
2727
1935 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
2728 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
1936 - moesocks
2729 - moesocks
1937
2730
1938 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
2731 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
1939− - fasta
1940 - diversity
2732 - diversity
2733+ - fasta
1941 - modify-fasta
2734 - modify-fasta
1942 - tree-fun
2735 - tree-fun
1943 - random-tree
2736 - random-tree
1944 - clumpiness
2737 - clumpiness
1945− # - find-clumpiness # BLOCKED optparse-applicative https://github.com/GregorySchwartz/find-clumpiness/issues/1
2738+ - find-clumpiness
1946 - blosum
2739 - blosum
2740+ - rank-product
1947
2741
1948 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
2742 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
1949 - compactmap
2743 - compactmap
@@ -1955,42 +2749,48 @@ packages:
1955 - hruby
2749 - hruby
1956 - language-puppet
2750 - language-puppet
1957 - tar-conduit
2751 - tar-conduit
1958− # Doesn't allow http-types >= 0.9.1 - stm-firehose
1959− # GHC 8 & doesn't allow aeson >= 0.11.2.0 & doesn't allow lens >= 4.14 - hslogstash
1960
2752
1961− "Mark Karpov <markkarpov@opmbx.org> @mrkkrp":
2753+ "Mark Karpov <markkarpov92@gmail.com> @mrkkrp":
1962− - megaparsec
1963− - htaglib
1964− - slug
1965− - path-io
1966− - hspec-megaparsec
1967− - plan-b
1968− - zip
1969 - 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
1970 - identicon
2763 - identicon
2764+ - lame
2765+ - megaparsec
2766+ - megaparsec-tests
2767+ - mmark
2768+ - mmark-cli
2769+ - mmark-ext
2770+ - modern-uri
2771+ - ormolu
1971 - pagination
2772 - pagination
1972− - data-check
2773+ - parser-combinators
1973− - text-metrics
2774+ - parser-combinators-tests
1974− - tagged-identity
2775+ - path
2776+ - path-io
1975 - req
2777 - req
1976 - req-conduit
2778 - req-conduit
1977−
2779+ - stache
1978− # "Thomas Bereknyei <tomberek@gmail.com>":
2780+ - tagged-identity
1979− # GHC 8 - multiplate
2781+ - text-metrics
1980−
2782+ - wave
1981− # "Sumit Sahrawat <sumit.sahrawat.apm13@iitbhu.ac.in> @sumitsahrawat":
2783+ - zip
1982− # GHC 8 & via plot - plot-gtk-ui
1983− # GHC 8 - calculator
1984
2784
1985 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
2785 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
1986 - app-settings
2786 - app-settings
1987 - hsexif
2787 - hsexif
2788+ - slack-web
1988
2789
1989 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
2790 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
1990 - http-api-data
2791 - http-api-data
1991− # - smsaero # https://github.com/GetShopTV/smsaero/issues/12
1992 - swagger2
2792 - swagger2
1993− - servant-swagger
2793+ - telegram-bot-simple
1994
2794
1995 "Jared Tobin <jared@jtobin.ca> @jtobin":
2795 "Jared Tobin <jared@jtobin.ca> @jtobin":
1996 - mwc-probability
2796 - mwc-probability
@@ -2001,93 +2801,66 @@ packages:
2001 - declarative
2801 - declarative
2002 - sampling
2802 - sampling
2003 - flat-mcmc
2803 - flat-mcmc
2804+ - urbit-hob
2805+ - hnock
2004
2806
2005 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
2807 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
2006 - distributed-process
2808 - distributed-process
2007− # GHC 8 - distributed-process-async
2008− # GHC 8 - distributed-process-client-server
2009− # GHC 8 - distributed-process-execution
2010− # GHC 8 - distributed-process-extras
2011− # GHC 8 - distributed-process-registry
2012− # GHC 8 - distributed-process-supervisor
2013− # GHC 8 - distributed-process-task
2014 - distributed-process-simplelocalnet
2809 - distributed-process-simplelocalnet
2810+ - distributed-process-tests
2015 - distributed-static
2811 - distributed-static
2812+ - inline-c
2813+ - jvm-batching
2016 - network-transport
2814 - network-transport
2815+ - network-transport-tests
2017 - network-transport-tcp
2816 - network-transport-tcp
2018 - network-transport-inmemory
2817 - network-transport-inmemory
2019 - network-transport-composed
2818 - network-transport-composed
2819+ - pthread
2020 - rank1dynamic
2820 - rank1dynamic
2021
2821
2022− # "Alexander Vershilov <alexander.vershilov@tweag.io> @qnikst":
2822+ "Dave Tapley <dukedave@gmail.com> @dukedave":
2023− # https://github.com/qnikst/imagemagick/issues/41 - imagemagick
2823+ - inline-c-cpp
2024− # GHC 8 - network-transport-zeromq
2025
2824
2026− "Takahiro Himura <himuratk421@gmail.com> @thimura":
2825+ "Takahiro Himura <himuratk421@gmail.com> @himura":
2027 - lens-regex
2826 - lens-regex
2028− # - twitter-conduit # BLOCKED http-conduit 2.2
2827+ - twitter-conduit
2029− # - twitter-types # BLOCKED derive
2828+ - twitter-types
2030− # - twitter-types-lens # BLOCKED derive
2829+ - twitter-types-lens
2031
2830
2032− # "Robbin C. <robbinch33@gmail.com> robbinch":
2831+ "Robbin C. <robbinch33@gmail.com> @robbinch":
2033− # via lzma-conduit - zim-parser
2832+ - zim-parser
2034
2833
2035 "David Wiltshire <david.wiltshire@metark.com> @dave77":
2834 "David Wiltshire <david.wiltshire@metark.com> @dave77":
2036 # on behalf of Alexey Karakulov @w3rs
2835 # on behalf of Alexey Karakulov @w3rs
2037 - hashable-time
2836 - hashable-time
2038
2837
2039− # "Tim Baumann <tim@timbaumann.info> @timjb":
2040− # GHC 8 & via engine-io - engine-io-yesod
2041−
2042− "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
2043− # bounds - riak
2044− - airship
2045−
2046 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
2838 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
2047− - pdf-toolbox-core
2048 - pdf-toolbox-content
2839 - pdf-toolbox-content
2840+ - pdf-toolbox-core
2049 - pdf-toolbox-document
2841 - pdf-toolbox-document
2050 - io-region
2842 - io-region
2051 - scanner
2843 - scanner
2052
2844
2053 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
2845 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
2054− # GHC 8 - partial-isomorphisms
2846+ - partial-isomorphisms
2055− - vinyl
2056
2847
2057 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
2848 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
2058 - IntervalMap
2849 - IntervalMap
2059
2850
2060 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
2851 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
2061− - docopt
2062 - pathwalk
2852 - pathwalk
2063
2853
2064 "John Galt <jgalt@centromere.net> @centromere":
2854 "John Galt <jgalt@centromere.net> @centromere":
2065 - cacophony
2855 - cacophony
2066− - pipes-cacophony
2067 - blake2
2856 - blake2
2857+ - nfc
2068
2858
2069− "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
2070− []
2071− # - webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2072−
2073− "Luke Iannini <lukexi@me.com> @lukexi":
2074− - inline-c
2075− - inline-c-cpp
2076− - ekg
2077−
2078− # "Emin Karayel <me@eminkarayel.de> @ekarayel":
2079− # GHC 8 - sync-mht
2080
2859
2081 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2860 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2082 - ctrie
2861 - ctrie
2083 - ttrie
2862 - ttrie
2084
2863
2085− "Greg Weber <greg@gregweber.info> @gregwebs":
2086− - base-noprelude
2087−
2088− # "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2089− # Missing test files https://github.com/fpco/stackage/pull/979 - exp-pairs
2090−
2091 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2864 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2092 - hsndfile
2865 - hsndfile
2093 - hsndfile-vector
2866 - hsndfile-vector
@@ -2095,22 +2868,9 @@ packages:
2095 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2868 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2096 - tagstream-conduit
2869 - tagstream-conduit
2097
2870
2098− # "Johannes Hilden <hildenjohannes@gmail.com> @johanneshilden":
2871+ "Johannes Hilden <hildenjohannes@gmail.com> @laserpants":
2099− # Missing test files https://github.com/fpco/stackage/issues/1001 - hashids
2872+ - hashids
2100−
2873+ - fuzzyset
2101− # "Joe Hermaszewski <stackage@monoid.al> @expipiplus1":
2102− # GHC 8 & via memoize - exact-real
2103−
2104− # "Jonatan Sundqvist jonatanhsundqvist@gmail.com @SwiftsNamesake":
2105− # bounds - Cartesian
2106− # bounds - Michelangelo
2107−
2108− "Henry J. Wylde <public@hjwylde.com> @hjwylde":
2109− []
2110− # - git-fmt # BLOCKED optparse-applicative 0.13
2111− # - omnifmt # BLOCKED optparse-applicative 0.13
2112− # aeson & extra - werewolf
2113− # aeson & extra & http-client & http-client-tls - werewolf-slack
2114
2874
2115 "Will Sewell <me@willsewell.com> @willsewell":
2875 "Will Sewell <me@willsewell.com> @willsewell":
2116 - benchpress
2876 - benchpress
@@ -2119,14 +2879,21 @@ packages:
2119 "Yorick Laupa yo.eight@gmail.com @YoEight":
2879 "Yorick Laupa yo.eight@gmail.com @YoEight":
2120 - eventstore
2880 - eventstore
2121 - dotnet-timespan
2881 - dotnet-timespan
2882+ - eventsource-api
2883+ - eventsource-geteventstore-store
2884+ - eventsource-store-specs
2885+ - eventsource-stub-store
2122
2886
2123 "Sebastian Dröge slomo@coaxion.net @sdroege":
2887 "Sebastian Dröge slomo@coaxion.net @sdroege":
2124− - conduit-iconv
2888+ - conduit-iconv < 0 # 0.1.1.3 compile fail MonadFail
2125 - conduit-connection
2889 - conduit-connection
2126
2890
2127 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2891 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2128 - aeson-casing
2892 - aeson-casing
2129− - graylog
2893+ - graylog < 0 # 0.1.0.1 compile fail Couldn't find module Network.BSD
2894+ - parsec-numeric
2895+ - mallard
2896+ - gdax
2130
2897
2131 "Callum Rogers @CRogers":
2898 "Callum Rogers @CRogers":
2132 - should-not-typecheck
2899 - should-not-typecheck
@@ -2140,20 +2907,11 @@ packages:
2140 - pkcs10
2907 - pkcs10
2141
2908
2142 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2909 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2143− - binary-typed
2144 - pgp-wordlist
2910 - pgp-wordlist
2145 - show-prettyprint
2911 - show-prettyprint
2146
2912
2147 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2913 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2148 - boomerang
2914 - boomerang
2149− - clckwrks
2150− - clckwrks-cli
2151− - clckwrks-plugin-page
2152− - clckwrks-plugin-media
2153− - clckwrks-theme-bootstrap
2154− - hackage-whatsnew
2155− - happstack-authenticate
2156− - happstack-clientsession
2157 - happstack-hsp
2915 - happstack-hsp
2158 - happstack-jmacro
2916 - happstack-jmacro
2159 - happstack-server
2917 - happstack-server
@@ -2178,20 +2936,14 @@ packages:
2178 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2936 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2179 - ascii-progress
2937 - ascii-progress
2180 - drawille
2938 - drawille
2181− # - extract-dependencies # BLOCKED wreq
2182 - file-modules
2939 - file-modules
2183 - frontmatter
2940 - frontmatter
2184 - read-editor
2941 - read-editor
2185− - hspec-setup
2942+ - list-prompt < 0 # 0.1.1.0 compile fail https://github.com/yamadapc/list-prompt/issues/3
2186− # bounds - hzulip
2187− - list-prompt
2188− # GHC 8 - memoization-utils
2189− # - package-description-remote # BLOCKED wreq
2943+ - package-description-remote < 0 # 0.2.0.0 compile fail
2190 - projectroot
2944 - projectroot
2191 - questioner
2945 - questioner
2192− # - 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
2193− # aeson 1.0 - hpack-convert
2194− - language-dockerfile
2195
2947
2196 "Pascal Hartig <phartig@rdrei.net> @passy":
2948 "Pascal Hartig <phartig@rdrei.net> @passy":
2197 - giphy-api
2949 - giphy-api
@@ -2201,18 +2953,29 @@ packages:
2201 - open-browser
2953 - open-browser
2202
2954
2203 "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2955 "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2204− - tracy
2205− # GHC 8 - hreader-lens
2956+ - hreader-lens
2957+ - schematic
2206
2958
2207 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2959 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2208 - 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
2209
2971
2210 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2972 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2211 - avwx
2973 - avwx
2974+ - saltine < 0.2.0.0 # https://github.com/tel/saltine/issues/58
2212 - wai-session-postgresql
2975 - wai-session-postgresql
2213
2976
2214 "Haisheng Wu <freizl@gmail.com> @freizl":
2977 "Haisheng Wu <freizl@gmail.com> @freizl":
2215− - hoauth2
2978+ - hoauth2 < 2.0 # https://github.com/commercialhaskell/stackage/issues/6424
2216
2979
2217 "Falko Peters <falko.peters@gmail.com> @informatikr":
2980 "Falko Peters <falko.peters@gmail.com> @informatikr":
2218 - scrypt
2981 - scrypt
@@ -2221,11 +2984,10 @@ packages:
2221 - dawg-ord
2984 - dawg-ord
2222
2985
2223 "Amit Levy <amit@amitlevy.com> @alevy":
2986 "Amit Levy <amit@amitlevy.com> @alevy":
2224− # 0.4.1 compilation failure - postgresql-orm
2225 - simple
2987 - simple
2226 - simple-templates
2988 - simple-templates
2227 - simple-session
2989 - simple-session
2228− # via postgresql-orm - simple-postgresql-orm
2990+ - postgresql-orm
2229
2991
2230 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2992 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2231 # 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.
@@ -2234,23 +2996,29 @@ packages:
2234 - LibZip >= 1.0
2996 - LibZip >= 1.0
2235
2997
2236 "Anthony Cowley <acowley@gmail.com> @acowley":
2998 "Anthony Cowley <acowley@gmail.com> @acowley":
2999+ - vinyl
2237 - Frames
3000 - Frames
2238 - hpp
3001 - hpp
2239
3002
2240 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
3003 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
2241 - binary-search
3004 - binary-search
2242− - unicode-show
2243
3005
2244 "Jason Shipman <jasonpshipman@gmail.com> @jship":
3006 "Jason Shipman <jasonpshipman@gmail.com> @jship":
2245− # on behalf of Boris Sukholitko @bosu
3007+ - logging-effect-extra
2246− - pure-cdb
3008+ - logging-effect-extra-file
3009+ - logging-effect-extra-handler
3010+ - overhang
3011+ - tao
3012+ - tao-example
2247
3013
2248 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
3014 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
2249 - extensible-effects
3015 - extensible-effects
2250
3016
2251 "Justus Adam <dev@justus.science> @JustusAdam":
3017 "Justus Adam <dev@justus.science> @JustusAdam":
2252− []
3018+ - marvin
2253− #- mustache # BLOCKED wreq
3019+ - marvin-interpolate
3020+ - mustache < 2.4.0 # https://github.com/commercialhaskell/stackage/issues/6421
3021+ - exit-codes >= 1.0.0
2254
3022
2255 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
3023 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
2256 - NoTrace
3024 - NoTrace
@@ -2265,39 +3033,40 @@ packages:
2265 - cmark
3033 - cmark
2266 - texmath
3034 - texmath
2267 - highlighting-kate
3035 - highlighting-kate
3036+ - skylighting
3037+ - skylighting-core
2268 - pandoc-types
3038 - pandoc-types
2269 - zip-archive
3039 - zip-archive
3040+ - doclayout
2270 - doctemplates
3041 - doctemplates
3042+ - emojis
2271 - pandoc
3043 - pandoc
3044+ - citeproc
3045+ - commonmark
3046+ - commonmark-extensions
2272− - pandoc-citeproc
3047+ - commonmark-pandoc
3048+ - unicode-collation
3049+ - HsYAML-aeson
3050+ - ipynb
2273
3051
2274 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
3052 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
2275 - doctest-discover
3053 - doctest-discover
2276
3054
2277− "Elie Genard <elaye.github.io@gmail.com> @eliegenard":
3055+ "Elie Genard <elaye.github.io@gmail.com> @elaye":
2278 - turtle-options
3056 - turtle-options
2279
3057
2280− # "Ruey-Lin Hsu <petercommand@gmail.com> @petercommand":
2281− # GHC 8 - MASMGen
2282−
2283 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
3058 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
2284 - string-conv
3059 - string-conv
2285 - rng-utils
3060 - rng-utils
2286− - rotating-log
2287 - ua-parser
3061 - ua-parser
2288 - hs-GeoIP
3062 - hs-GeoIP
2289 - retry
3063 - retry
2290− - katip
3064+ - katip
2291− - katip-elasticsearch
3065+ - katip-elasticsearch < 0 # 0.7.0.0 compile fail https://github.com/commercialhaskell/stackage/issues/6341
2292
3066
2293 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
3067 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
2294 - tuple
3068 - tuple
2295 - OneTuple
3069 - OneTuple
2296− - SVGFonts
2297− - Chart-diagrams
2298−
2299− # "Aaron Levin <aaron.levin@soundcloud.com> @aaronmblevin":
2300− # GHC 8 & lots of other packages - haskell-kubernetes
2301
3070
2302 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
3071 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
2303 - free-vl
3072 - free-vl
@@ -2306,33 +3075,33 @@ packages:
2306 - xlsx-tabular
3075 - xlsx-tabular
2307
3076
2308 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
3077 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
2309− - Cabal
3078+ # - Cabal # take the one that ships with GHC
2310 - cabal-install
3079 - cabal-install
2311 - pointful
3080 - pointful
2312
3081
2313 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
3082 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
2314 - binary-bits
3083 - binary-bits
2315
3084
2316− "Nicolas Trangez <ikke@nicolast.be> @NicolasT":
2317− - reedsolomon
2318−
2319− "Alp Mestanogullari <alpmestan@gmail.com> @alpmestan":
2320− - taggy
2321− - taggy-lens
2322− # 0.1 Compilation failure https://github.com/fpco/stackage/issues/1660 - inline-java
2323− # via inline-java - sparkle
2324−
2325− "Alex McLean <lxyxpx@gmail.com> @yaxu":
3085+ "Alex McLean <alex@slab.org> @yaxu":
2326 - tidal
3086 - tidal
3087+ - hosc
2327
3088
2328 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3089 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3090+ - th-data-compat
3091+ - th-reify-compat
2329 - relational-query
3092 - relational-query
2330 - relational-query-HDBC
3093 - relational-query-HDBC
2331 - persistable-types-HDBC-pg
3094 - persistable-types-HDBC-pg
2332 - relational-record
3095 - relational-record
2333 - text-ldap
3096 - text-ldap
2334 - debian-build
3097 - debian-build
3098+ - aeson-generic-compat
2335 - 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
2336
3105
2337 "wren romano <wren@community.haskell.org> @wrengr":
3106 "wren romano <wren@community.haskell.org> @wrengr":
2338 - bytestring-lexing
3107 - bytestring-lexing
@@ -2346,57 +3115,120 @@ packages:
2346 - unification-fd
3115 - unification-fd
2347 - unix-bytestring
3116 - unix-bytestring
2348
3117
2349− # "Carlo Hamalainen <carlo@carlo-hamalainen.net> @carlohamalainen":
2350− # GHC 8 - ghc-imported-from
2351−
2352 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3118 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3119+ - concise
3120+ - dyre
2353 - jose
3121 - jose
2354
3122
2355− "Yutaka Nishimura <ytk.nishimura@gmail.com> @ynishi":
2356− []
2357− # - atndapi # https://github.com/ynishi/atndapi/issues/1
2358−
2359 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
3123 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
2360 - zot
3124 - zot
2361 - yjtools
3125 - yjtools
2362 - 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
2363
3144
2364 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
3145 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
2365 - irc-dcc
3146 - irc-dcc
2366− - xdcc
3147+
3148+ "Alexey Raga <alexey.raga@gmail.com> @AlexeyRaga":
3149+ - hw-kafka-client
2367
3150
2368 "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
2369 - hw-bits
3165 - hw-bits
2370 - hw-conduit
3166 - hw-conduit
3167+ - hw-conduit-merges
2371 - hw-diagnostics
3168 - hw-diagnostics
2372− # 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
2373− # - hw-json
3180+ - hw-json-standard-cursor
3181+ - hw-mquery
3182+ - hw-packed-vector
2374 - hw-parser
3183 - hw-parser
2375 - hw-prim
3184 - hw-prim
2376 - hw-rankselect
3185 - hw-rankselect
3186+ - hw-rankselect-base
3187+ - hw-simd
3188+ - hw-streams
2377 - 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
2378
3199
2379 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
3200 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
2380− []
2381− # - handwriting # BLOCKED wreq
3201+ - handwriting
2382
3202
2383− "Stephen Diehl <stephen.m.diehl@gamil.com> @sdiehl":
3203+ "Stephen Diehl <stephen.m.diehl@gmail.com> @sdiehl":
3204+ - llvm-hs-pretty
2384 - protolude
3205 - protolude
2385−
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+
2386− "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji_dayo":
3217+ "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji-dayo":
2387− []
3218+ - api-field-json-th
2388− # - yesod-job-queue # https://github.com/nakaji-dayo/yesod-job-queue/issues/10
2389−
2390− # "Braden Walters <vc@braden-walters.info> @meoblast001":
2391− # - hakyll-sass
2392
3219
2393 "Patrick Thomson <patrick@helium.com> @helium":
3220 "Patrick Thomson <patrick@helium.com> @helium":
2394 - postgresql-transactional
3221 - postgresql-transactional
2395
3222
2396− "Tom Murphy <amindfv@gmail.com> @amindfv":
3223+ "Tom Murphy <amindfv@gmail.com>":
2397− # 0.2.0.5 compilation failure - vivid
3224+ - gingersnap
3225+ - microspec
2398− # GHC 8 - midair
3226+ - midair
2399 - nano-erl
3227 - nano-erl
3228+ - rando
3229+ - vivid
3230+ - vivid-osc
3231+ - vivid-supercollider
2400
3232
2401 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
3233 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
2402 - fold-debounce
3234 - fold-debounce
@@ -2405,8 +3237,10 @@ packages:
2405 - wikicfp-scraper
3237 - wikicfp-scraper
2406 - wild-bind
3238 - wild-bind
2407 - wild-bind-x11
3239 - wild-bind-x11
2408− - wild-bind-indicator
3240+ - greskell
2409− - wild-bind-task-x11
3241+ - greskell-core
3242+ - greskell-websocket
3243+ - hspec-need-env
2410
3244
2411 "Cies Breijs <cies@kde.nl> @cies":
3245 "Cies Breijs <cies@kde.nl> @cies":
2412 - htoml
3246 - htoml
@@ -2415,38 +3249,47 @@ packages:
2415 - protobuf-simple
3249 - protobuf-simple
2416
3250
2417 "David Reaver <johndreaver@gmail.com> @jdreaver":
3251 "David Reaver <johndreaver@gmail.com> @jdreaver":
2418− - oanda-rest-api
3252+ - eventful-core
3253+ - eventful-dynamodb
3254+ - eventful-memory
3255+ - eventful-postgresql
3256+ - eventful-sql-common
3257+ - eventful-sqlite
3258+ - eventful-test-helpers
2419 - stratosphere
3259 - stratosphere
2420−
3260+ - sum-type-boilerplate
2421− "Alexey Rodiontsev <alex.rodiontsev@gmail.com> @klappvisor":
2422− []
2423− # - telegram-api https://github.com/fpco/stackage/issues/1689
2424
3261
2425 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
3262 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
2426− # Pinned to versions not using custom-setup, since stack does
2427− # not understand that syntax yet:
2428− # https://github.com/commercialhaskell/stack/issues/2094
2429− - gi-atk == 2.0.8
2430− - gi-cairo == 1.0.8
2431− - gi-gdk == 3.0.8
2432− - gi-gdkpixbuf == 2.0.8
2433− - gi-gio == 2.0.8
2434− - gi-glib == 2.0.8
2435− - gi-gobject == 2.0.8
2436− - gi-gtk == 3.0.8
2437− - gi-pango == 1.0.8
2438− - gi-soup == 2.4.8
2439− - gi-javascriptcore == 3.0.8
2440− - gi-webkit == 3.0.8
2441 - haskell-gi
3263 - haskell-gi
2442 - haskell-gi-base
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
2443
3287
2444 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
3288 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
2445 - directory-tree
3289 - directory-tree
2446
3290
2447 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
3291 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
2448 - hjsonpointer
3292 - hjsonpointer
2449− - hjsonschema
2450
3293
2451 "Drew Hess <src@drewhess.com> @dhess":
3294 "Drew Hess <src@drewhess.com> @dhess":
2452 - hpio
3295 - hpio
@@ -2454,8 +3297,6 @@ packages:
2454 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
3297 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
2455 - th-desugar
3298 - th-desugar
2456 - singletons
3299 - singletons
2457− - units
2458− - units-defs
2459 - HUnit-approx
3300 - HUnit-approx
2460 - units-parser
3301 - units-parser
2461
3302
@@ -2469,51 +3310,83 @@ packages:
2469
3310
2470 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
3311 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
2471 - hquantlib
3312 - hquantlib
2472− - persistent-redis
3313+ - hquantlib-time
3314+ - HSvm
2473
3315
2474 "Henri Verroken <henriverroken@gmail.com> @hverr":
3316 "Henri Verroken <henriverroken@gmail.com> @hverr":
3317+ - bordacount
2475 - 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
2476
3327
2477 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
3328 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
2478 - ansigraph
3329 - ansigraph
2479− - quantum-random
3330+ - microsoft-translator
2480
3331
2481 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
3332 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
2482− - bitx-bitcoin
3333+ - bitx-bitcoin < 0 # 0.12.0.0 compile fail
2483
3334
2484 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
3335 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2485 - exp-pairs
3336 - exp-pairs
2486− - fast-digits
3337+ - fast-digits < 0 # 0.3.1.0 Cabal 3 vs stack incompat https://github.com/commercialhaskell/stackage/issues/6167
2487−
3338+ - chimera
2488− "Greg Hurrell <greg@hurrell.net> @wincent":
3339+ - quadratic-irrational
2489− []
3340+ - primitive-addr
2490− # https://github.com/wincent/docvim/issues/30
3341+ - quickcheck-classes
2491− # - docvim
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
2492
3358
2493 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
3359 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
2494 - countable
3360 - countable
3361+ - witness
3362+ - open-witness
2495
3363
2496 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
3364 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
2497 - mongoDB
3365 - mongoDB
2498 - bson
3366 - bson
2499
3367
2500 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3368 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3369+ - freer-simple
3370+ - monad-mock
2501 - test-fixture
3371 - test-fixture
2502 - text-conversions
3372 - text-conversions
2503 - th-to-exp
3373 - th-to-exp
2504 - type-assertions
3374 - type-assertions
2505
3375
2506 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
3376 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
2507− - solga
2508− - solga-swagger
2509− - clang-pure
2510 - webrtc-vad
3377 - webrtc-vad
3378+ - clang-pure < 0 # 0.2.0.6 missing system libraries #3810/closed
3379+ - codec
2511
3380
2512 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
3381 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
2513 - hmpfr
3382 - hmpfr
3383+ - collect-errors
3384+ - mixed-types-num
3385+ - cdar-mBound
3386+ - aern2-mp
3387+ - aern2-real
2514
3388
2515 "Bartosz Nitka <niteria@gmail.com> @niteria":
3389 "Bartosz Nitka <niteria@gmail.com> @niteria":
2516− - haskell-packages
2517 - oeis
3390 - oeis
2518
3391
2519 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
3392 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
@@ -2522,55 +3395,55 @@ packages:
2522 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
3395 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
2523 - pixelated-avatar-generator
3396 - pixelated-avatar-generator
2524
3397
2525− "Allele Dev <allele.dev@gmail.com> @queertypes":
2526− - freer
2527− - wai-request-spec
2528−
2529 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
3398 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
2530 - array-memoize
3399 - array-memoize
2531− - camfort
2532− - codo-notation
3400+ - codo-notation < 0 # 0.5.2 compile fail MonadFail
2533 - fortran-src
3401 - fortran-src
2534− # 0.57 Compilation failure https://github.com/fpco/stackage/pull/1710#issuecomment-235067168 - ixmonad
2535− - language-fortran
2536−
2537− "Philipp Schuster <phischu3000@gmail.com> @phischu":
2538− - haskell-names
2539
3402
2540− "Shao Cheng <astrohavoc@gmail.com> @TerrorJack":
3403+ "Cheng Shao <astrohavoc@gmail.com> @TerrorJack":
2541− - simple-download
3404+ - binaryen
2542− - encoding-io
3405+ - cabal-toolkit
3406+ - direct-rocksdb
2543
3407
2544 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
3408 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
2545 - aeson-injector
3409 - aeson-injector
2546−
3410+ - JuicyPixels-blp
2547− "Rune K. Svendsen <runesvend@gmail.com> @runeks":
2548− []
2549− # - bitcoin-payment-channel # BLOCKED aeson 1.0
2550
3411
2551 "Al Zohali <zohl@fmap.me> @zohl":
3412 "Al Zohali <zohl@fmap.me> @zohl":
2552− - servant-auth-cookie < 0.4.1 || > 0.4.1
3413+ - servant-auth-cookie
3414+ - dictionaries
3415+ - cereal-time
2553
3416
2554 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
3417 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
2555 - libmpd
3418 - libmpd
2556
3419
2557 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
3420 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
2558 - lrucaching
3421 - lrucaching
3422+ - llvm-hs
3423+ - llvm-hs-pure
2559
3424
2560 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3425 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3426+ - heatshrink
2561 - hocilib
3427 - hocilib
2562
3428
2563− "Matthias Herrmann <matthias.mh.herrmann@gmail.com> @2chilled":
2564− []
2565− # - scrape-changes # BLOCKED wreq
2566−
2567 "Daniel Mendler <mail@daniel-mendler.de> @minad":
3429 "Daniel Mendler <mail@daniel-mendler.de> @minad":
2568 - quickcheck-special
3430 - quickcheck-special
2569 - writer-cps-mtl
3431 - writer-cps-mtl
2570 - 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
2571 - wl-pprint-annotated
3437 - wl-pprint-annotated
2572 - wl-pprint-console
3438 - wl-pprint-console
2573 - console-style
3439 - console-style
3440+ - unlit
3441+ - intro
3442+ - tasty-stats
3443+ - colorful-monoids
3444+ - ihs
3445+ - paripari
3446+ - persist
2574
3447
2575 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
3448 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
2576 - do-list
3449 - do-list
@@ -2579,6 +3452,12 @@ packages:
2579 - cpuinfo
3452 - cpuinfo
2580 - lmdb
3453 - lmdb
2581 - 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
2582
3461
2583 "Iago Abal <iagoabal+stack@gmail.com>":
3462 "Iago Abal <iagoabal+stack@gmail.com>":
2584 - bv
3463 - bv
@@ -2588,9 +3467,7 @@ packages:
2588
3467
2589 "Florian Hofmann fho@f12n.de @fhaust":
3468 "Florian Hofmann fho@f12n.de @fhaust":
2590 - vector-split
3469 - vector-split
2591−
3470+ - vector-mmap
2592− "Alex Mason <alex.mason@data61.csiro.au> @Axman6":
2593− - foldl-statistics
2594
3471
2595 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
3472 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
2596 - json-stream
3473 - json-stream
@@ -2598,15 +3475,26 @@ packages:
2598 "Philipp Balzarek <p.balzarek@googlemail.com>":
3475 "Philipp Balzarek <p.balzarek@googlemail.com>":
2599 - xml-picklers
3476 - xml-picklers
2600
3477
2601− "Lennart Spitzner lsp@informatik.uni-kiel.de @lspitzner":
3478+ "Lennart Spitzner <hexagoxel@hexagoxel.de> @lspitzner":
2602 - multistate
3479 - multistate
2603 - pqueue
3480 - pqueue
3481+ - butcher
3482+ - czipwith
3483+ - data-tree-print
3484+ - brittany
2604
3485
2605 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
3486 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
2606− - hdbc-mysql
3487+ - HDBC-mysql
3488+
3489+ "Tony Morris <haskell@tmorris.net> @tonymorris":
3490+ - validation
2607
3491
2608 "Tony Day <tonyday567@gmail.com> @tonyday567":
3492 "Tony Day <tonyday567@gmail.com> @tonyday567":
2609− - chart-unit
3493+ - numhask
3494+ - numhask-array
3495+ - numhask-prelude
3496+ - numhask-space
3497+ - perf
2610
3498
2611 "Iphigenia Df <iphydf@gmail.com> @iphydf":
3499 "Iphigenia Df <iphydf@gmail.com> @iphydf":
2612 - data-msgpack
3500 - data-msgpack
@@ -2617,25 +3505,30 @@ packages:
2617 - hsinstall
3505 - hsinstall
2618 - tce-conf
3506 - tce-conf
2619
3507
2620− "Jonathan Fischoff <jonathangfischoff@gmail.com>":
3508+ "Jonathan Fischoff <jonathangfischoff@gmail.com> @jfischoff":
2621− - threads-extra
2622 - clock-extras
3509 - clock-extras
2623− - next-ref
3510+ - postgres-options
2624−
3511+ - tmp-postgres
2625− "Bernie Pope <bjpope@unimelb.edu.au> @bjpop":
3512+ - pg-transact
2626− - language-python
3513+ - port-utils
2627−
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+
2628− "Mahdi Dibaiee <mdibaiee@aol.com>":
3524+ "Mahdi Dibaiee <mdibaiee@aol.com> @mdibaiee":
2629 - picedit
3525 - picedit
2630 - mathexpr
3526 - mathexpr
2631− - sibe
3527+ - termcolor
2632−
2633− "Alexis Williams <sasinestro@gmail.com> @sasinestro":
2634− - stb-image-redux
2635− - wavefront-obj
2636
3528
2637 "XT <e@xtendo.org> @xtendo-org":
3529 "XT <e@xtendo.org> @xtendo-org":
2638 - rawfilepath
3530 - rawfilepath
3531+
2639 "Konstantin Zudov <co@zudov.me> @zudov":
3532 "Konstantin Zudov <co@zudov.me> @zudov":
2640 - html-email-validate
3533 - html-email-validate
2641
3534
@@ -2648,83 +3541,3260 @@ packages:
2648 "Kadzuya Okamoto <arow.okamoto@gmail.com> @arowM":
3541 "Kadzuya Okamoto <arow.okamoto@gmail.com> @arowM":
2649 - type-level-kv-list
3542 - type-level-kv-list
2650 - heterocephalus
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
2651
3554
2652 "Marcin Tolysz <tolysz@gmail.com> @tolysz":
3555 "Marcin Tolysz <tolysz@gmail.com> @tolysz":
2653 - rawstring-qm
3556 - rawstring-qm
2654
3557
3558+ "Daniel YU <leptonyu@gmail.com>":
3559+ - salak
3560+ - salak-yaml
3561+ - salak-toml
3562+ - tensors
3563+ - menshen
3564+ - crc32c
3565+ - boots
3566+
2655 "Tom Nielsen <tanielsen@gmail.com> @glutamate":
3567 "Tom Nielsen <tanielsen@gmail.com> @glutamate":
2656− - datasets
3568+ - plotlyhs
3569+ - inliterate
2657
3570
2658 "Hyunje Jun <me@noraesae.net> @noraesae":
3571 "Hyunje Jun <me@noraesae.net> @noraesae":
2659 - line
3572 - line
2660
3573
2661 "Hannes Saffrich <m0rphism@zankapfel.org> @m0rphism":
3574 "Hannes Saffrich <m0rphism@zankapfel.org> @m0rphism":
2662− - dmenu
2663− - dmenu-pmount
2664− - dmenu-pkill
2665− - dmenu-search
2666 - printcess
3575 - printcess
2667
3576
2668 "Alexey Kuleshevich <lehins@yandex.ru> @lehins":
3577 "Alexey Kuleshevich <lehins@yandex.ru> @lehins":
3578+ - wai-middleware-auth
2669 - hip
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
2670
3590
2671 "Hans-Peter Deifel <hpd@hpdeifel.de> @hpdeifel":
3591 "Hans-Peter Deifel <hpd@hpdeifel.de> @hpdeifel":
2672 - hledger-iadd
3592 - hledger-iadd
2673
3593
2674− # If you stop maintaining a package you can move it here.
3594+ "Roy Levien <royl@aldaron.com> @orome":
2675− # It will then be disabled if it starts causing problems.
3595+ - crypto-enigma
2676− # See https://github.com/fpco/stackage/issues/1056
3596+
2677− "Abandoned packages":
3597+ "Boldizsár Németh <nboldi@elte.hu> @nboldi":
2678− - curl
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
2679
3883
2680− # Purescript
3884+ "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
3885+ - webdriver
3886+ - cond
3887+
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
3963+
3964+ "Tung Dao <me@tungdao.com> @tungd":
3965+ - time-locale-vietnamese
3966+
3967+ "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
3968+ - riak
3969+ - riak-protobuf
3970+ - airship
3971+ - hedgehog-corpus
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
4046+
4047+ "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
4048+ - hdevtools < 0 # 0.1.8.0 compile fail
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
4410+
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
4517+
4518+ "Jorah Gao <jorah@version.cloud> @gqk007":
4519+ - aeson-default
4520+ - vformat
4521+ - vformat-time
4522+ - vformat-aeson
4523+ - hkd-default
4524+
4525+ "Shintaro Sakata <shintaro.sakata.tokyo@gmail.com> @chemirea":
4526+ - utf8-conversions
4527+
4528+ "Alessandro Marrella <amarrella@earnestresearch.com> @amarrella":
4529+ - kubernetes-webhook-haskell
4530+
4531+ "8c6794b6 <8c6794b6@gmail.com> @8c6794b6":
4532+ - hpc-codecov
4533+
4534+ "Hiromi Ishii <konn.jinro@gmail.com> @konn":
4535+ - equational-reasoning
4536+ - ghc-typelits-presburger
4537+ - singletons-presburger
4538+ - type-natural
4539+ - subcategories
4540+ - sized
4541+
4542+ "Frank Doepper <stackage@woffs.de> @woffs":
4543+ - amqp-utils
4544+ - magic
4545+
4546+ "Ziyang Liu <free@cofree.io> @zliu41":
4547+ - apply-refact
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
4656+
4657+ "Kyriakos Papachrysanthou <k.papachrisanthou@gmail.com> @3kyro":
4658+ - keep-alive
4659+
4660+ "Brooklyn Zelenka <hello@brooklynzelenka.com> @expede":
4661+ - rescue
4662+
4663+ "Artem Pelenitsyn <artem.pelenitsyn@gmail.com> @ulysses4ever":
4664+ - alex-meta
4665+ - happy-meta
4666+ - BNFC-meta
4667+
4668+ "Tomasz Maciosowski <t4ccer@gmail.com> @t4ccer":
4669+ - wai-session-redis
4670+
4671+ "Rory Tyler Hayford <rory.hayford@protonmail.com> @ngua":
4672+ - ipa
4673+
4674+ "Andreas Herrmann <andreas.herrmann@tweag.io> @aherrmann":
4675+ - capability
4676+
4677+ "Dustin Sallings <dustin@spy.net> @dustin":
4678+ - net-mqtt
4679+ - net-mqtt-lens
4680+
4681+ "David A Roberts <d@vidr.cc> @davidar":
4682+ - streamt
4683+
4684+ "Martin Sosic <sosic.martin@gmail.com> @Martinsos":
4685+ - strong-path
4686+
4687+ "Arnaud Spiwack <arnaud.spiwack@tweag.io> @aspiwack":
4688+ - linear-base
4689+
4690+ "Ollie Charles <ollie@ocharles.org.up> @ocharles":
4691+ - rel8
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
2681 - bower-json
5238 - bower-json
2682 - boxes
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
2683 - pattern-arrows
5262 - pattern-arrows
2684− # - purescript # BLOCKED aeson-1.0
5263+ - planb-token-introspection # #6326/closed
2685−
5264+ - pointedlist # #6326/closed
2686− - type-list
5265+ - relude # #5965/closed
2687− - vinyl-utils
5266+ - shellmet # #5965/closed
2688− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
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": []
2689
5280
2690 # If you want to make sure a package is removed from stackage,
5281 # If you want to make sure a package is removed from stackage,
2691 # place it here with a `< 0` constraint and send a pull
5282 # place it here with a `< 0` constraint and send a pull
2692 # request. This will tell us if other packages would be
5283 # request. This will tell us if other packages would be
2693 # affected. Packages will be kept in this list indefinitely so
5284 # affected. Packages will be kept in this list indefinitely so
2694 # that new packages depending on it will be flagged as well.
5285 # that new packages depending on it will be flagged as well.
2695− "Removed packages": []
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
2696
5313
2697 "GHC upper bounds":
5314 "GHC upper bounds":
2698 # Need to always match the version shipped with GHC
5315 # Need to always match the version shipped with GHC
2699− - Win32 == 2.3.1.1
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
2700
6663
2701 "Stackage upper bounds":
6664 "Stackage upper bounds":
2702− # https://github.com/fpco/stackage/issues/2037
2703− - haskell-src-exts < 1.19
2704−
2705− # https://github.com/fpco/stackage/issues/2042
2706− - network-multicast < 0.2
2707−
2708− # https://github.com/haskell/vector/issues/142
2709− - primitive < 0.6.2.0
2710−
2711− # https://github.com/fpco/stackage/issues/2108
2712− - pipes < 4.3.0
2713− - pipes-safe < 2.2.5
2714
6665
2715− # https://github.com/fpco/stackage/issues/2127
6666+ # https://github.com/commercialhaskell/stackage/issues/6122
2716− - leapseconds-announced < 2017.0.0.1
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
2717
6781
2718− # https://github.com/fpco/stackage/issues/2032
2719− - datasets < 0.2.2
2720# end of packages
6782# end of packages
2721
6783
2722# 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
2723# global-flags
6785# global-flags
2724package-flags:
6786package-flags:
6787+ QuickCheck:
6788+ old-random: false
6789+ pathtype:
6790+ old-time: false
6791+
2725 brick:
6792 brick:
2726 demos: true
6793 demos: true
2727
6794
6795+ bz2:
6796+ with-bzlib: false # Exclude bzlib from benchmarks to avoid unnecessary dependencies.
6797+
2728 mersenne-random-pure64:
6798 mersenne-random-pure64:
2729 small_base: false
6799 small_base: false
2730
6800
@@ -2733,12 +6803,15 @@ package-flags:
2733 simplelocalnet: true
6803 simplelocalnet: true
2734 p2p: true
6804 p2p: true
2735
6805
2736− logfloat:
2737− splitbase: true
2738−
2739 curl:
6806 curl:
2740 new-base: true
6807 new-base: true
2741
6808
6809+ hpio:
6810+ test-hlint: false
6811+
6812+ idris:
6813+ ffi: true
6814+
2742 hxt:
6815 hxt:
2743 network-uri: true
6816 network-uri: true
2744 hxt-http:
6817 hxt-http:
@@ -2746,28 +6819,15 @@ package-flags:
2746 hxt-relaxng:
6819 hxt-relaxng:
2747 network-uri: true
6820 network-uri: true
2748
6821
2749− pandoc:
2750− https: true
2751− old-locale: false
2752−
2753 text:
6822 text:
2754 integer-simple: false
6823 integer-simple: false
2755
6824
2756 tar:
6825 tar:
2757 old-time: false
6826 old-time: false
2758
6827
2759− # https://github.com/fpco/stackage/pull/482#issuecomment-83635207
2760− jose-jwt:
2761− doctest: false
2762−
2763 time-locale-compat:
6828 time-locale-compat:
2764 old-locale: false
6829 old-locale: false
2765
6830
2766− th-data-compat:
2767− template-haskell-210: false
2768− th-reify-compat:
2769− template-haskell-210: false
2770−
2771 HsOpenSSL:
6831 HsOpenSSL:
2772 fast-bignum: false
6832 fast-bignum: false
2773
6833
@@ -2794,34 +6854,63 @@ package-flags:
2794 ghc_7_7: false
6854 ghc_7_7: false
2795 ghc_8_0: true
6855 ghc_8_0: true
2796
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+
2797# end of package-flags
6897# end of package-flags
2798
6898
2799# Special configure options for individual packages
6899# Special configure options for individual packages
2800
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
2801−configure-args:
6903+configure-args: {}
2802− jni:
2803− - --extra-lib-dirs
2804− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2805− - --extra-include-dirs
2806− - /usr/lib/jvm/java-8-openjdk-amd64/include
2807− sparkle:
2808− - --extra-lib-dirs
2809− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2810− - --extra-include-dirs
2811− - /usr/lib/jvm/java-8-openjdk-amd64/include
2812− hocilib:
2813− - --extra-lib-dirs
2814− - /usr/local/lib
2815−
2816# end of configure-args
6904# end of configure-args
2817
6905
2818
6906
2819# Used for packages that cannot be built on Linux
6907# Used for packages that cannot be built on Linux
2820skipped-builds:
6908skipped-builds:
2821 - hfsevents
6909 - hfsevents
6910+ - lzma-clib
2822 - Win32
6911 - Win32
2823 - Win32-notify
6912 - Win32-notify
2824− - Win32-extras
6913+ - windns
2825
6914
2826# end of skipped-builds
6915# end of skipped-builds
2827
6916
@@ -2831,343 +6920,912 @@ skipped-builds:
2831# or if Setup fails because of missing foreign libraries.
6920# or if Setup fails because of missing foreign libraries.
2832# Otherwise place them in expected-test-failures.
6921# Otherwise place them in expected-test-failures.
2833skipped-tests:
6922skipped-tests:
2834− # Outdated dependencies
6923+ # aeson-2
2835− # These can periodically be checked for updates;
6924+ # https://github.com/commercialhaskell/stackage/issues/6217
2836− # just remove these lines and run `stackage-curator check' to verify.
6925+ - jsonifier
2837− # # HUnit 1.5
6926+ - req
2838− - GLFW-b
6927+
2839− - Glob
6928+ # Missing foreign libraries
2840− - HTTP
6929+ - symengine
2841− - bindings-GLFW
6930+
2842− - case-insensitive
6931+ # Timeouts
2843− - darcs
6932+ # These tests sometimes take too long and hit the stackage build
2844− - exception-transformers
6933+ # servers time limit so these shouldn't be removed from
2845− - extensible-effects
6934+ # skipped-tests unless we know a fix has been released.
2846− - fclabels
6935+ - accelerate-fourier
2847− - language-ecmascript
6936+ - cabal-helper
2848− - lifted-base
6937+ - graphviz
2849− - parsec
6938+ - network-attoparsec
2850− - rank1dynamic
6939+ - punycode
2851− - threads
6940+ - unagi-chan
2852− - tz
6941+ - zeromq4-patterns
2853− - tzdata
6942+ - port-utils
2854− - uuid
2855− - uuid-types
2856− # # Other outdated dependencies
2857− - Cabal # QuickCheck 2.9
2858− - ReadArgs # https://github.com/rampion/ReadArgs/issues/8
2859− - bytestring-handle # QuickCheck 2.9
2860− - cases # https://github.com/nikita-volkov/cases/pull/3
2861− - chell # options & via chell-quickcheck
2862− - clay # hspec 2.3
2863− - ed25519 # QuickCheck 2.9
2864− - fgl # hspec 2.3
2865− - fgl-arbitrary # hspec 2.3
2866− - hasql # QuickCheck 2.9
2867− - hastache # https://github.com/lymar/hastache/pull/53
2868− - heaps # https://github.com/ekmett/heaps/pull/8
2869− - hyphenation # https://github.com/ekmett/hyphenation/pull/10
2870− - next-ref # hspec 2.3
2871− - point-octree # hspec 2.2.4 https://github.com/mlitchard/point-octree/issues/1
2872− - servant-mock # hspec-wai 0.8
2873− - snap # QuickCheck 2.9
2874− - state-plus # QuickCheck 2.9
2875− - system-filepath # QuickCheck 2.9 via chell-quickcheck
2876− - terminal-progress-bar # fixed on master, depends on older version of itself
2877− - vector # https://github.com/haskell/vector/commit/31edb3fc51e76facc1e291f1e9e721663d91dbd8
2878−
2879− # Transitive outdated dependencies
2880− # These packages
2881− # These can also be checked for updates periodically.
2882− - MissingH # via testpack https://github.com/jgoerzen/testpack/issues/11
2883− - clustering # via RLang-QQ via HList https://github.com/kaizhang/clustering/issues/2 (also sent e-mail to HList maintainer)
2884− - options # QuickCheck via chell-quickcheck
2885−
2886− # Blocked by stackage upper bounds. These can be re-enabled once
2887− # the relevant stackage upper bound is lifted.
2888−
2889−
2890− # Runtime issues
2891 - 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
2892 - 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
2893 - 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
2894
7039
2895− # Missing foreign library
7040+ # TODO
2896− - symengine # symengine
7041+ - rpmbuild-order
2897−
7042+
2898−
7043+ # Revision to package caused it to require bounds and break
2899− # Wontfix. The maintainer chose to keep these broken/outdated, only
7044+ - htoml # https://github.com/commercialhaskell/stackage/issues/6239
2900− # re-enable if requested.
7045+
2901− - postgresql-binary # https://github.com/nikita-volkov/postgresql-binary/issues/6#issuecomment-243063139
7046+ # was in expected test failures, but seems we may have to skip
2902−
7047+ # entirely for unknown reasons, previously:
2903− - optparse-applicative # https://github.com/pcapriotti/optparse-applicative/issues/228
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
2904
7279
7280+ - c2hs # https://github.com/commercialhaskell/stackage/issues/6420
2905
7281
2906# end of skipped-tests
7282# end of skipped-tests
2907
7283
2908−# 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
2909−# 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.
2910expected-test-failures:
7292expected-test-failures:
2911
7293
2912 # Intermittent failures or unreliable. These tests may pass when
7294 # Intermittent failures or unreliable. These tests may pass when
2913− # re-enabled, but will eventually fail again. Only remove these
7295+ # re-enabled, but will eventually fail again.
2914− # from expected-failures if we know a fix has been released.
7296+ #
2915 - 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
2916 - 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
2917 - crypto-numbers
7303 - crypto-numbers
2918− - 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
2919 - distributed-process
7305 - distributed-process
2920 - 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
2921 - 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
2922 - fsnotify # Often runs out of inotify handles
7310 - fsnotify # Often runs out of inotify handles
7311+ - hastache
2923 - idris # https://github.com/fpco/stackage/issues/1382
7312 - idris # https://github.com/fpco/stackage/issues/1382
2924 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
7313 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
2925 - 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
2926 - network # Unfortunately network failures seem to happen haphazardly
7316 - network # Unfortunately network failures seem to happen haphazardly
2927 - nsis # Intermittent on non-Windows systems
7317 - nsis # Intermittent on non-Windows systems
2928− - pandoc-citeproc # https://github.com/jgm/pandoc-citeproc/issues/172
2929− - spdx # https://github.com/phadej/spdx/issues/8
2930 - statistics # https://github.com/bos/statistics/issues/42
7318 - statistics # https://github.com/bos/statistics/issues/42
2931
7319
2932− # Timeouts
2933− # These tests sometimes take too long and hit the stackage build
2934− # servers time limit so these shouldn't be removed from
2935− # expected-tests unless we know a fix has been released.
2936− - cabal-helper
2937− - graphviz
2938− - punycode
2939− - zip
2940−
2941− # Requires running servers, accounts, or a specific
7320+ # Requires running servers, accounts, or a specific environment.
2942− # environment. These shouldn't be re-enabled unless we know a fix
7321+ #
2943− # has been released.
7322+ # If a maintainer wants us to run a partial tests suite with tests
2944− - 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
2945 - GLFW-b # X
7327 - GLFW-b # X
2946 - HTF # Requires shell script and are incompatible with sandboxed package databases
7328 - HTF # Requires shell script and are incompatible with sandboxed package databases
2947− - 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
2948 - amqp
7333 - amqp
2949 - aws # AWS Credentials
7334 - aws # AWS Credentials
7335+ - beam-postgres # requires Postgress instance
2950 - bindings-GLFW # Expects running X server
7336 - bindings-GLFW # Expects running X server
2951 - bitcoin-api
7337 - bitcoin-api
2952 - bitcoin-api-extra
7338 - bitcoin-api-extra
2953− - bitcoin-api-extra
2954 - bloodhound # ElasticSearch
7339 - bloodhound # ElasticSearch
2955 - cabal-install
7340 - cabal-install
7341+ - cayley-client
2956 - 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
2957 - dbmigrations # PostgreSQL
7347 - dbmigrations # PostgreSQL
2958− - dns # https://github.com/kazu-yamamoto/dns/issues/29
7348+ - dns # https://github.com/commercialhaskell/stackage/issues/6374
2959 - drifter-postgresql # PostgreSQL
7349 - drifter-postgresql # PostgreSQL
2960− - ersatz # Requires SAT solver
7350+ - egison # executable not found https://github.com/egison/egison/issues/250
7351+ - esqueleto # mysql and postgresql
2961 - 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
2962 - eventstore # Event Store
7356 - eventstore # Event Store
7357+ - faktory # connection refused, https://github.com/commercialhaskell/stackage/issues/5905
2963 - fb # Facebook app
7358 - fb # Facebook app
7359+ - gdax # Needs environment variables set
2964 - 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
2965 - 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
2966 - 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
2967 - gitson # https://github.com/myfreeweb/gitson/issues/1
7364 - gitson # https://github.com/myfreeweb/gitson/issues/1
2968 - happy # Needs mtl in the user package DB
7365 - happy # Needs mtl in the user package DB
2969 - 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
2970 - hasql # PostgreSQL
7369 - hasql # PostgreSQL
7370+ - hasql-notifications # PostgreSQL
7371+ - hasql-queue
7372+ - hasql-transaction # PostgreSQL
2971 - 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
2972 - 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
2973 - hworker
7381 - hworker
7382+ - influxdb
7383+ - json-autotype # Requires filesystem access
7384+ - jvm
2974 - katip-elasticsearch # elasticsearch
7385 - katip-elasticsearch # elasticsearch
2975 - log # 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
2976 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
7390 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
2977 - memcached-binary # memcached
7391 - memcached-binary # memcached
2978− - mongoDB # mongoDB - https://github.com/mongodb-haskell/mongodb/issues/61
7392+ - milena
7393+ - mongoDB # Requires local MongoDB server
2979 - mysql # MySQL
7394 - mysql # MySQL
7395+ - mysql-haskell # Requires local mysql server with a test account, and binlog enabled.
2980 - mysql-simple # MySQL
7396 - mysql-simple # MySQL
2981 - 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"
2982 - 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
2983 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
7407 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
2984 - pipes-mongodb
7408 - pipes-mongodb
7409+ - postgresql-libpq-notify
2985 - postgresql-query # PostgreSQL
7410 - postgresql-query # PostgreSQL
2986 - 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
2987 - 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
2988 - redis-io
7419 - redis-io
7420+ - rel8
2989 - rethinkdb
7421 - rethinkdb
2990 - rethinkdb-client-driver
7422 - rethinkdb-client-driver
2991− - 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
2992 - 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
2993 - serversession-backend-redis # redis
7427 - serversession-backend-redis # redis
2994 - shake # Needs ghc on $PATH with some installed haskell packages
7428 - shake # Needs ghc on $PATH with some installed haskell packages
2995− - 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
2996 - users-postgresql-simple # PostgreSQL
7433 - users-postgresql-simple # PostgreSQL
2997 - wai-cors # PhantomJS
7434 - wai-cors # PhantomJS
7435+ - wai-rate-limit-redis # Redis
2998 - 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
2999 - webdriver-angular # webdriver server
7439 - webdriver-angular # webdriver server
3000− - yahoo-finance-api # Requires being able to access Yahoo Finance API
7440+ - websockets
3001−
3002− # Test executable requires arguments
3003− - hpqtypes
3004−
3005− # Deprecated
3006− # Eventually we'll have to disable these packages completely.
3007− - doctest-prop # https://github.com/bitemyapp/bloodhound/issues/146
3008− - system-filepath # https://github.com/jmillikin/haskell-filesystem/issues/3
3009
7441
3010 # Missing test files in sdist
7442 # Missing test files in sdist
3011− # Hopefully gets fixed in the next release...
7443+ #
3012− - angel # https://github.com/MichaelXavier/Angel/issues/43
7444+ # The cause is that a test suite requires a file that is not
3013− - 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
3014 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7451 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
3015− - ghc-events # https://github.com/haskell/ghc-events/issues/9
7452+ - doctest-discover # https://github.com/karun012/doctest-discover/issues/33
3016− - graylog # 0.1.0.1 https://github.com/fpco/stackage/pull/1254
7453+ - ghc-events # https://github.com/haskell/ghc-events/issues/70
3017− - haskell-names # 0.7.0 https://github.com/haskell-suite/haskell-names/issues/78
7454+ - gitlab-haskell # https://github.com/commercialhaskell/stackage/issues/6088
3018− - rematch # No issue tracker, sent e-mail to maintainer https://github.com/fpco/stackage/issues/376
7455+ - hspec-core # https://github.com/commercialhaskell/stackage/issues/6291
3019− - xlsior # https://github.com/rcallahan/xlsior/issues/1
7456+ - hspec-junit-formatter # https://github.com/freckle/hspec-junit-formatter/issues/14
3020− - hakyll # https://github.com/jaspervdj/hakyll/issues/491
7457+ - persistent # https://github.com/commercialhaskell/stackage/issues/6037
3021−
7458+ - reanimate-svg # https://github.com/commercialhaskell/stackage/issues/5688
3022− # Assertion failures, these can be real bugs or just limitations
7459+
3023− # in the test cases.
7460+ # Testcase assertion failures, or other runtime failures.
3024− - DRBG # https://github.com/TomMD/DRBG/issues/7
7461+ # These can be real testsuite bugs, or maybe limitations in test cases or the test setup.
3025− - cayley-client # https://github.com/MichelBoucey/cayley-client/issues/2
7462+ #
3026− - clash-prelude # 0.10.14 Runtime errors https://github.com/clash-lang/clash-prelude/issues/57
7463+ - dbus # https://github.com/commercialhaskell/stackage/issues/6373
3027− - direct-sqlite # 2.3.17 https://github.com/IreneKnapp/direct-sqlite/issues/63
7464+ - generic-optics # optimization output https://github.com/kcsongor/generic-lens/issues/133
3028− - ed25519 # 0.0.5.0 https://github.com/thoughtpolice/hs-ed25519/issues/15
7465+ - binary-parsers # runtime failure https://github.com/winterland1989/binary-parsers/issues/3
3029− - nettle # https://github.com/stbuehler/haskell-nettle/issues/8
7466+ - JuicyPixels-blurhash
3030− - th-printf # 0.3.1 https://github.com/pikajude/th-printf/issues/3
7467+ - aeson-casing
3031− - wreq # https://github.com/bos/wreq/issues/53
7468+ - algebraic-graphs # Module not visible https://github.com/commercialhaskell/stackage/issues/4670
3032− - xmonad # 0.12 https://github.com/xmonad/xmonad/issues/36
7469+ - base32
7470+ - blaze-colonnade
7471+ - bsb-http-chunked
7472+ - c2hs
7473+ - cfenv # https://github.com/tomphp/haskell-cfenv/issues/1
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
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
7554+ - xml-picklers # https://github.com/Philonous/xml-picklers/issues/5
7555+ - xmlbf
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
3033
7562
3034 # Compilation failures
7563 # Compilation failures
3035− - ListLike # No issue tracker, e-mail sent to maintainer
7564+ - blake2 # 0.3.0
3036− - dbus # 0.10.12 No issue tracker, e-mail sent to maintainer
7565+ - blas-hs # 0.1.1.0
3037− - hspec-expectations-pretty-diff # GHC 8 issue not reported upstream since issue tracker disabled
7566+ - butter # 0.1.0.6
3038− - safecopy # time 1.6 https://github.com/acid-state/safecopy/issues/45
7567+ - cabal-file-th # 0.2.7
3039− - servant-server # 0.9.1.1 due to hspec-wai-0.8.0 https://github.com/haskell-servant/servant/issues/643
7568+ - cacophony # 0.10.1 https://github.com/centromere/cacophony/issues/15
3040− - sourcemap # https://github.com/chrisdone/sourcemap/issues/3
7569+ - conduit-connection # 0.1.0.5
3041− - text-ldap # # https://github.com/khibino/haskell-text-ldap/issues/1
7570+ - config-ini # 0.2.4.0 https://github.com/aisamanra/config-ini/issues/22
3042− - thyme # https://github.com/liyang/thyme/issues/50
7571+ - construct # 0.3.0.2
3043− - tries # https://github.com/athanclark/tries/issues/2
7572+ - cryptohash # 0.11.9 Stack builds test and benchmarks in one pass so benchmark could prevent tests from getting built
3044− - wai-middleware-content-type # 0.4.1 - https://github.com/athanclark/wai-middleware-content-type/issues/2
7573+ - data-diverse # 4.7.0.0
3045− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
7574+ - do-notation # 0.1.0.2
3046− - Spock-core # https://github.com/agrafix/Spock/issues/102
7575+ - domain-optics # 0.1.0.2 https://github.com/commercialhaskell/stackage/pull/6102
3047−
7576+ - easy-logger # https://github.com/commercialhaskell/stackage/issues/6384
3048− # Misc.
7577+ - flat # 0.4.4
3049− - distributed-process-supervisor # # https://github.com/haskell-d
7578+ - flay # 0.4
3050− - ghcid # Weird conflicts with sandboxingistributed/distributed-process-supervisor/issues/1
7579+ - functor-combinators # https://github.com/commercialhaskell/stackage/issues/6376
3051−
7580+ - generic-lens # https://github.com/commercialhaskell/stackage/issues/6377
3052− # Doctest ran across ambiguous modules
7581+ - geojson # 4.0.2
3053− # https://github.com/bergmark/blog/blob/master/2016/package-faq.md#ambiguous-modules-when-using-doctest
7582+ - heap # 1.0.4 https://github.com/pruvisto/heap/issues/11
3054− - doctest # 0.11.0 https://github.com/sol/doctest/issues/137
7583+ - hsini # 0.5.1.2
3055− - jwt # https://bitbucket.org/ssaasen/haskell-jwt/issues/18/test-suite-build-failure-in-stackage
7584+ - hweblib # 0.6.3 https://github.com/aycanirican/hweblib/issues/3
3056− - warp # https://github.com/yesodweb/wai/issues/579
7585+ - leveldb-haskell
3057−
7586+ - mfsolve # https://github.com/commercialhaskell/stackage/issues/6379
3058− # Stackage upper bounds, re-enable these when their upper bound is removed
7587+ - multiarg # 0.30.0.10
3059− - hindent # 4.6.4
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
3060
7601
3061 # Recursive deps https://github.com/fpco/stackage/issues/1818
7602 # Recursive deps https://github.com/fpco/stackage/issues/1818
3062− - clock # 0.7.2 clock:test => tasty:lib => clock:lib
3063 - options
7603 - options
3064 - text # 1.2.2.1
7604 - text # 1.2.2.1
3065− - wai-logger # Missing build dep because of this https://github.com/kazu-yamamoto/logger/issues/42
3066
7605
3067 # 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
3068 # these if we want them fixed
7607 # these if we want them fixed
3069− - 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
3070 - 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
3071
7614
3072− - snap-core # https://github.com/snapframework/snap-core/issues/26
7615+ # doctests can be flaky on the build server, add packages here if
3073−
7616+ # they start causing issues.
3074− - hackernews # https://github.com/dmjio/hackernews/issues/19
7617+ - bookkeeping
3075−
7618+ - detour-via-sci # https://github.com/commercialhaskell/stackage/issues/6360
3076− - heist # https://github.com/snapframework/heist/issues/95
7619+ - dhall
3077−
7620+ - doctest-driver-gen
3078− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
7621+ - envelope # https://github.com/commercialhaskell/stackage/issues/6383
3079−
7622+ - email-validate
3080− - commutative # https://github.com/athanclark/commutative/issues/4
7623+ - fmt # https://github.com/commercialhaskell/stackage/issues/6375
7624+ - greskell
7625+ - greskell-core
7626+ - headroom
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
3081
7641
3082− - cubicbezier # https://github.com/kuribas/cubicbezier/issues/3
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.
3083
7670
3084− - yesod-auth-basic # https://github.com/creichert/yesod-auth-basic/issues/1
3085# end of expected-test-failures
7671# end of expected-test-failures
3086
7672
3087−# Benchmarks which are known not to build. Note that, currently we do not run
3088−# benchmarks, and therefore failures are only for building, not running.
3089−expected-benchmark-failures:
3090− # Recursive deps https://github.com/fpco/stackage/issues/1818
3091− - attoparsec
3092− - hashable
3093− - unordered-containers # 0.2.7.1 unordered-containers:bench -> criterion:lib -> aeson:lib -> unordered-containers:lib
3094−
3095− # stack bug https://github.com/commercialhaskell/stack/issues/2153
3096− - scientific
3097− - vector-binary-instances
3098−
3099− # Missing files in sdist
3100− - cassava # https://github.com/hvr/cassava/pull/117
3101− - picoparsec # https://bitbucket.org/blamario/picoparsec/issues/3/benchmark-compilation-failure
3102−
3103− # Compilation failures
3104− - Frames # https://github.com/acowley/Frames/issues/47
3105− - cryptohash # https://github.com/vincenthz/hs-cryptohash/pull/43
3106− - dbus # No issue tracker, sent e-mail to maintainer
3107− - thyme # https://github.com/liyang/thyme/issues/50
3108− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
3109− - varying # https://github.com/schell/varying/issues/15
3110−# end of expected-benchmark-failures
3111−
3112
7673
3113# 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.
3114expected-haddock-failures:
7675expected-haddock-failures:
3115
7676
3116 # Requires build before haddock, which doesn't always happen in incremental
7677 # Requires build before haddock, which doesn't always happen in incremental
3117 # builds. Could consider special-casing this requirement.
7678 # builds. Could consider special-casing this requirement.
3118− - gtk
3119 - gtk3
7679 - gtk3
3120
7680
3121− # Intermittent failures or unreliable. These tay pass when
7681+ # Intermittent failures or unreliable. These may pass when
3122 # re-enabled, but will eventually fail again. Only remove these
7682 # re-enabled, but will eventually fail again. Only remove these
3123 # 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.
3124 - gi-gtk # Uses all memory
7684 - gi-gtk # Uses all memory
3125
7685
3126 # 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
3127 # these if we want them fixed
7687 # these if we want them fixed
3128− - yesod-job-queue # https://github.com/fpco/stackage/issues/1383
3129−
3130− # "Compilation" errors
3131− - MemoTrie # https://github.com/conal/MemoTrie/issues/10
3132− - metrics # https://github.com/iand675/metrics/issues/5
3133
7688
3134− # Haddock bugs
7689+ # internal error when calculating transitive package dependencies
3135− - swagger2 # https://github.com/GetShopTV/swagger2/issues/66
7690+ - hw-balancedparens
7691+ - hw-ip # https://github.com/commercialhaskell/stackage/issues/5014
7692+ - hw-json # https://github.com/commercialhaskell/stackage/issues/5014
7693+ - hw-rankselect
7694+ - doctest-parallel # https://github.com/commercialhaskell/stackage/issues/5014
3136
7695
3137# end of expected-haddock-failures
7696# end of expected-haddock-failures
3138
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+
3139# 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.
3140# 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
3141# 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'
3142# or if Setup fails because of missing foreign libraries.
7727# or if Setup fails because of missing foreign libraries.
3143# Otherwise place them in expected-benchmark-failures.
7728# Otherwise place them in expected-benchmark-failures.
3144skipped-benchmarks:
7729skipped-benchmarks:
7730+ # aeson-2
7731+ # https://github.com/commercialhaskell/stackage/issues/6217
7732+ - jsonifier
3145
7733
3146− # Outdated dependencies
7734+ # Cyclic dependencies
3147− # These can periodically be checked for updates;
7735+ - attoparsec
3148− # just remove these lines and run `stackage-curator check'
7736+ - case-insensitive
3149− # to verify.
7737+ - cassava
3150− - criterion-plus
7738+ - clock
3151−
7739+ - criterion
3152− # Transitive outdated dependencies
7740+ - foundation
3153− # These packages
7741+ - hashable # https://github.com/fpco/stackage/issues/1818
3154− # These can also be checked for updates periodically.
7742+ - hspec
3155− - cases # via criterion-plus
7743+ - nanospec
3156− - hasql-postgres # via criterion-plus
7744+ - scientific
3157− - ttrie # via criterion-plus
7745+ - vector-binary-instances
3158− - machines # via pipes
3159−
3160− # Compilation failures
3161− - cipher-aes # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3162− - cipher-blowfish # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3163− - cipher-camellia # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3164− - cipher-des # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3165− - cipher-rc4 # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3166−
3167− # GHC Bugs
3168− - hledger-lib # https://github.com/fpco/stackage/issues/1587
3169
7746
3170− - pipes # optparse-applicative 0.13
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.
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
3171
7829
3172# end of skipped-benchmarks
7830# end of skipped-benchmarks
3173
7831
@@ -3207,13 +7865,9 @@ github-users:
3207 - ekmett
7865 - ekmett
3208 haskell-openal:
7866 haskell-openal:
3209 - svenpanne
7867 - svenpanne
3210− # - the-real-blackh
3211 haskell-opengl:
7868 haskell-opengl:
3212 - ekmett
7869 - ekmett
3213 - svenpanne
7870 - svenpanne
3214− # - dagit
3215− # - elliottt
3216− # - jmcarthur
3217 lambdabot:
7871 lambdabot:
3218 - DanBurton
7872 - DanBurton
3219 - mokus0
7873 - mokus0
@@ -3224,10 +7878,10 @@ github-users:
3224 clckwrks:
7878 clckwrks:
3225 - stepcut
7879 - stepcut
3226 stackbuilders:
7880 stackbuilders:
3227− - sestrella
3228 - jsl
7881 - jsl
3229− - jsantos17
7882+ - sestrella
3230− - mrkkrp
7883+ - juanpaucar
7884+ - CristhianMotoche
3231 scotty-web:
7885 scotty-web:
3232 - RyanGlScott
7886 - RyanGlScott
3233 - xich
7887 - xich
@@ -3235,9 +7889,6 @@ github-users:
3235 - RyanGlScott
7889 - RyanGlScott
3236 haskell-compat:
7890 haskell-compat:
3237 - RyanGlScott
7891 - RyanGlScott
3238− haskell-servant:
3239− - jkarni
3240− - SoenkeHahn
3241 vivid:
7892 vivid:
3242 - vivid-synth
7893 - vivid-synth
3243 midair:
7894 midair:
@@ -3251,7 +7902,26 @@ github-users:
3251 arithmoi:
7902 arithmoi:
3252 - Bodigrim
7903 - Bodigrim
3253 - cartazio
7904 - cartazio
3254− - 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
3255
7925
3256# end of github-users
7926# end of github-users
3257
7927
@@ -3279,16 +7949,8 @@ build-tool-overrides:
3279#
7949#
3280# Example:
7950# Example:
3281# 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
3282−# - 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
3283−tell-me-when-its-released:
7953+tell-me-when-its-released: []
3284−- vector-0.11.0.0 # skipped test-suite, constrained primitive https://github.com/haskell/vector/issues/142
3285−- point-octree-0.5.5.3 # re-enable test and then we can resolve https://github.com/fpco/lts-haskell/issues/27
3286−- wreq-0.4.1.0 # Try to re-enable lots of packages, (esp https://github.com/fpco/stackage/issues/2032) and the test-suite if https://github.com/bos/wreq/issues/53 is closed.
3287−- yarr-1.4.0.2 # Re-enable package https://github.com/fpco/stackage/issues/1876
3288−- terminal-progress-bar-0.1.1 # Unskip test suite
3289−- optparse-applicative-0.13.0.0 # Unskip test suite https://github.com/pcapriotti/optparse-applicative/issues/228
3290−- hakyll-4.9.2.0 # re-enable tests
3291−- Spock-core-0.11.0.0 # testsuite fail
3292
7954
3293# Packages which should be hidden after registering, to avoid module name
7955# Packages which should be hidden after registering, to avoid module name
3294# conflicts. This is intended for at least two use cases:
7956# conflicts. This is intended for at least two use cases:
@@ -3298,5 +7960,89 @@ tell-me-when-its-released:
3298# * Allowing tools like Stack to get a mapping from module name to package name
7960# * Allowing tools like Stack to get a mapping from module name to package name
3299# for automatically installing dependencies
7961# for automatically installing dependencies
3300hide:
7962hide:
7963+- HTF # conflicts with Test.Framework in test-framework
3301- async-dejafu # https://github.com/yesodweb/wai/issues/579
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
3302- monads-tf # mtl is preferred
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−exec stack exec --resolver ghc-8.0.1 stackage-curator check
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 &&
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+210−41
@@ -4,45 +4,54 @@
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 \
48 libalut-dev \
57 libalut-dev \
@@ -50,48 +59,77 @@ apt-get install -y \
50 libblas-dev \
59 libblas-dev \
51 libbz2-dev \
60 libbz2-dev \
52 libcairo2-dev \
61 libcairo2-dev \
53− libclang-3.7-dev \
62+ libclang-3.9-dev \
54 libcurl4-openssl-dev \
63 libcurl4-openssl-dev \
64+ libcwiid-dev \
65+ libdbusmenu-glib-dev \
66+ libdbusmenu-gtk3-dev \
55 libdevil-dev \
67 libdevil-dev \
56 libedit-dev \
68 libedit-dev \
57 libedit2 \
69 libedit2 \
58 libfftw3-dev \
70 libfftw3-dev \
71+ libflac-dev \
59 libfreenect-dev \
72 libfreenect-dev \
60− libgd2-xpm-dev \
73+ libgd-dev \
61 libgeoip-dev \
74 libgeoip-dev \
62 libgirepository1.0-dev \
75 libgirepository1.0-dev \
76+ libglew-dev \
63 libglfw3-dev \
77 libglfw3-dev \
64 libglib2.0-dev \
78 libglib2.0-dev \
65 libglu1-mesa-dev \
79 libglu1-mesa-dev \
66 libgmp3-dev \
80 libgmp3-dev \
67− libgnutls-dev \
81+ libgnutls28-dev \
82+ libgraphene-1.0-dev \
68 libgsasl7-dev \
83 libgsasl7-dev \
69− libgsl0-dev \
84+ libgsl-dev \
70 libgtk-3-dev \
85 libgtk-3-dev \
71 libgtk2.0-dev \
86 libgtk2.0-dev \
72 libgtksourceview-3.0-dev \
87 libgtksourceview-3.0-dev \
73 libhidapi-dev \
88 libhidapi-dev \
89+ libi2c-dev \
74 libicu-dev \
90 libicu-dev \
91+ libimlib2-dev \
92+ libjack-jackd2-dev \
93+ libjavascriptcoregtk-4.0-dev \
94+ libjansson-dev \
75 libjudy-dev \
95 libjudy-dev \
76 liblapack-dev \
96 liblapack-dev \
77 libleveldb-dev \
97 libleveldb-dev \
78 liblmdb-dev \
98 liblmdb-dev \
99+ liblz4-tool \
79 liblzma-dev \
100 liblzma-dev \
80 libmagic-dev \
101 libmagic-dev \
81 libmagickcore-dev \
102 libmagickcore-dev \
82 libmagickwand-dev \
103 libmagickwand-dev \
83 libmarkdown2-dev \
104 libmarkdown2-dev \
105+ libmono-2.0-dev \
106+ libmp3lame-dev \
84 libmpfr-dev \
107 libmpfr-dev \
108+ libmpich-dev \
85 libmysqlclient-dev \
109 libmysqlclient-dev \
86− libncurses-dev \
110+ libncurses5-dev \
111+ libnfc-dev \
112+ liboath-dev \
87 libnotify-dev \
113 libnotify-dev \
88 libopenal-dev \
114 libopenal-dev \
89 libpango1.0-dev \
115 libpango1.0-dev \
90 libpcap0.8-dev \
116 libpcap0.8-dev \
117+ libpcre2-dev \
91 libpq-dev \
118 libpq-dev \
119+ libprotobuf-dev \
120+ libre2-dev \
121+ librocksdb-dev \
122+ libsdl1.2-dev \
92 libsdl2-dev \
123 libsdl2-dev \
124+ libsdl2-gfx-dev \
125+ libsdl2-image-dev \
126+ libsdl2-mixer-dev \
127+ libsdl2-ttf-dev \
128+ libsecp256k1-dev \
93 libsnappy-dev \
129 libsnappy-dev \
94 libsndfile1-dev \
130 libsndfile1-dev \
131+ libsodium-dev \
132+ libsox-dev \
95 libsqlite3-dev \
133 libsqlite3-dev \
96 libssl-dev \
134 libssl-dev \
97 libsystemd-dev \
135 libsystemd-dev \
@@ -99,6 +137,7 @@ apt-get install -y \
99 libtre-dev \
137 libtre-dev \
100 libudev-dev \
138 libudev-dev \
101 libusb-1.0-0-dev \
139 libusb-1.0-0-dev \
140+ libvte-2.91-dev \
102 libwebkitgtk-3.0-dev \
141 libwebkitgtk-3.0-dev \
103 libxau-dev \
142 libxau-dev \
104 libxml2-dev \
143 libxml2-dev \
@@ -106,25 +145,53 @@ apt-get install -y \
106 libxss-dev \
145 libxss-dev \
107 libyaml-dev \
146 libyaml-dev \
108 libzip-dev \
147 libzip-dev \
148+ libzstd-dev \
109 libzmq3-dev \
149 libzmq3-dev \
110− llvm-3.7 \
150+ llvm-7 \
151+ llvm-8 \
152+ llvm-9 \
153+ locales \
111 m4 \
154 m4 \
155+ minisat \
156+ mono-mcs \
112 nettle-dev \
157 nettle-dev \
113− nodejs \
158+ ninja-build \
114− npm \
115 openjdk-8-jdk \
159 openjdk-8-jdk \
160+ python-mpltoolkits.basemap \
161+ python3-matplotlib \
162+ python3-numpy \
163+ python3-pip \
164+ python3-scipy \
116 r-base \
165 r-base \
117 r-base-dev \
166 r-base-dev \
167+ rpm \
118 ruby-dev \
168 ruby-dev \
119− stack \
169+ software-properties-common \
170+ sudo \
171+ texlive \
172+ unixodbc-dev \
120 wget \
173 wget \
121 xclip \
174 xclip \
122− z3 \
123 zip \
175 zip \
124− zlib1g-dev
176+ zlib1g-dev \
177+ zsh
125
178
126−# Put documentation where we expect it
179+# odbc
127−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
128
195
129# Buggy versions of ld.bfd fail to link some Haskell packages:
196# Buggy versions of ld.bfd fail to link some Haskell packages:
130# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
197# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
@@ -136,9 +203,13 @@ update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10
136# This version is tracked here:
203# This version is tracked here:
137# 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
138#
205#
139−# 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).
140−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
141−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
142
213
143# install ocilib dependencies then build and install ocilib
214# install ocilib dependencies then build and install ocilib
144cd /tmp \
215cd /tmp \
@@ -148,9 +219,9 @@ cd /tmp \
148 && 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 \
149 && 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 \
150 && 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 \
151− && 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 \
152− && tar xvf v4.2.1.tar.gz \
223+ && tar xvf v4.3.2.tar.gz \
153− && cd /tmp/ocilib-4.2.1 \
224+ && cd /tmp/ocilib-4.3.2 \
154 && ./configure --with-oracle-import=linkage \
225 && ./configure --with-oracle-import=linkage \
155 --with-oracle-charset=ansi \
226 --with-oracle-charset=ansi \
156 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
227 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
@@ -158,7 +229,105 @@ cd /tmp \
158 && make \
229 && make \
159 && make install \
230 && make install \
160 && cd \
231 && cd \
161− && rm -rf /tmp/ocilib-4.2.1 \
232+ && rm -rf /tmp/ocilib-4.3.2 \
162 && 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 \
163 && 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 \
164 && 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