on master help sign in
.dockerignore+2
since splitsnapshots
unifiedsplit
@@ -6,3 +6,5 @@ cabal.sandbox.config
6tarballs
6tarballs
7*.yaml
7*.yaml
8.git
8.git
9+automated
10+.github
.github/PULL_REQUEST_TEMPLATE.mdnew file+22
@@ -0,0 +1,22 @@
1+Checklist:
2+- [ ] Meaningful commit message, eg `add my-cool-package` (please don't mention `build-constraints.yml`)
3+- [ ] At least 30 minutes have passed since uploading to Hackage
4+- [ ] On your own machine, you have successfully run the following command (find verify-package in the root of this repo):
5+
6+ ./verify-package $package # or $package-$version
7+
8+The script runs virtually the following commands in a clean directory:
9+
10+ stack unpack $package-$version # `-$version` is optional
11+ cd $package-$version
12+ rm -f stack.yaml && stack init --resolver nightly --ignore-subdirs
13+ stack build --resolver nightly --haddock --test --bench --no-run-benchmarks
14+
15+
16+### CI
17+
18+Our CI tries to line up build-constraints.yaml with the current state
19+of Hackage. This means that failures that are unrelated to your PR may
20+cause the check to fail. If you think a failure is unrelated you can
21+simply ignore it and the Curators will let you know if there is
22+anything you need to do.
.github/workflows/check.ymlnew file+21
@@ -0,0 +1,21 @@
1+name: check
2+on:
3+ push:
4+ branches: [ master ]
5+ pull_request:
6+ branches: [ master ]
7+jobs:
8+ build:
9+ runs-on: ubuntu-latest
10+ name: Stackage check
11+ steps:
12+ - uses: actions/checkout@v2
13+ - uses: actions/cache@v2
14+ with:
15+ path: |
16+ ~/.stack
17+ ~/.stackage/curator/cache
18+ key: ${{ runner.os }}-stackage-nightly-${{ hashFiles('**/build-constraints.yaml') }}
19+ restore-keys: |
20+ ${{ runner.os }}-
21+ - run: etc/check.sh
.github/workflows/image.ymlnew file+26
@@ -0,0 +1,26 @@
1+name: image
2+
3+on:
4+ push:
5+ branches:
6+ - nightly
7+ - lts18
8+
9+jobs:
10+ push:
11+ runs-on: ubuntu-latest
12+ if: github.event_name == 'push'
13+
14+ steps:
15+ - uses: actions/checkout@v2
16+
17+ - name: Log into Github registry
18+ run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login docker.pkg.github.com -u ${{ github.actor }} --password-stdin
19+
20+ - name: Build image
21+ run: |
22+ IMAGE_ID=docker.pkg.github.com/${{ github.repository }}/build:${GITHUB_REF#refs/heads/}
23+ #IMAGE_ID=${{ github.repository }}:${GITHUB_REF#refs/heads/}
24+ docker build . -f Dockerfile --tag $IMAGE_ID
25+ docker push $IMAGE_ID
26+ echo Pushed new build image $IMAGE_ID
.gitignore+4
@@ -4,3 +4,7 @@ nightly-*.yaml
4lts-*.yaml
4lts-*.yaml
5*.swp
5*.swp
6check-plan.yaml
6check-plan.yaml
7+*~
8+/constraints.yaml
9+/snapshot.yaml
10+/snapshot-incomplete.yaml
.travis.ymldeleted−40
@@ -1,40 +0,0 @@
1−# Use new container infrastructure to enable caching
2−sudo: false
3−
4−# Choose a lightweight base image; we provide our own build tools.
5−language: c
6−
7−# GHC depends on GMP. You can add other dependencies here as well.
8−addons:
9− apt:
10− packages:
11− - libgmp-dev
12−
13−env:
14−- GHCVER=8.0.1
15−
16−install:
17− # Download and unpack the stack executable
18− - mkdir -p ~/.local/bin
19− - export PATH=$HOME/.local/bin:$PATH
20− - travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
21−
22− # Get stackage-curator
23− - wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
24− - bunzip2 stackage-curator.bz2
25− - chmod +x stackage-curator
26− - mv stackage-curator ~/.local/bin
27−
28− # Install GHC and cabal-install
29− - stack setup $GHCVER
30−
31− # Update the index
32− - travis_retry stack update
33−
34−script:
35− - stack --resolver ghc-$GHCVER exec stackage-curator check
36−
37−cache:
38− directories:
39− - $HOME/.stack
40− - $HOME/.stackage/curator/cache
CODE_OF_CONDUCT.mdnew file+3
@@ -0,0 +1,3 @@
1+We use the [Haskell Foundation's Guidelines For Respectful
2+Communication](https://haskell.foundation/guidelines-for-respectful-communication/)
3+as our Code of Conduct.
CURATORS.md+491−51
@@ -1,32 +1,62 @@
1This is a collection of instructions covering the processes that the Stackage curators - the
1This is a collection of instructions covering the processes that the Stackage curators - the
2−guys who maintain the Stackage project itself - should be doing on a regular basis.
2+team who maintain the Stackage project itself - should be doing on a regular basis.
3−Originally this was handled largely by Michael Snoyman,
4−but now we are a team of 4 people handling requests weekly in rotation.
5Curation activities are mostly automated, and do not take up a significant amount of time.
3Curation activities are mostly automated, and do not take up a significant amount of time.
4+The following is the current list of curators, in alphabetical order:
6
5
6+* Adam Bergmark (@bergmark)
7+* Alexey Zabelin (@alexeyzab)
8+* Chris Dornan (@cdornan)
9+* Dan Burton (@danburton)
10+* Jens Petersen (@juhp)
11+* Joe Kachmar (@jkachmar)
12+* Michael Snoyman (@snoyberg)
13+* Mihai Maruseac (@mihaimaruseac)
14+
7−## Workflow
15+## Workflow overview
8
16
9This section sketches out at a high level how the entire Stackage build/curation
17This section sketches out at a high level how the entire Stackage build/curation
10process works:
18process works:
11
19
12−* [build-constraints.yaml](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) specifies packages to be included in Stackage
20+* [build-constraints.yaml](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml) specifies packages to be included in Stackage
13−* [stackage-curator](http://www.stackage.org/package/stackage-curator) combines build-constraints.yaml with the current state of Hackage to create a build plan for a Stackage Nightly
21+* [curator](https://github.com/commercialhaskell/curator) combines build-constraints.yaml with the current state of Hackage to create a build plan for a Stackage Nightly
14−* stackage-curator can check that build plan to ensure all version bounds are consistent
22+* `curator` can check that build plan to ensure all version bounds are consistent
15− * The [Travis job](https://github.com/fpco/stackage/blob/master/.travis.yml) performs these two steps to provide immediate feedback on pull requests
23+ * The [Travis job](https://github.com/commercialhaskell/stackage/blob/master/.travis.yml) performs these two steps to provide immediate feedback on pull requests
16−* Docker Hub [builds](https://github.com/fpco/stackage/blob/master/Dockerfile) a [Docker image](https://registry.hub.docker.com/u/snoyberg/stackage/) for running builds
24+* Docker Hub [builds](https://github.com/commercialhaskell/stackage/blob/master/Dockerfile) a [Docker image](https://hub.docker.com/r/commercialhaskell/stackage/) for running builds
17−* The stackage-build server (described below) is able to run automated builds using the [build.sh script](https://github.com/fpco/stackage/blob/master/automated/build.sh)
25+* The stackage-build server (described below) is able to run automated builds using the [build.sh script](https://github.com/commercialhaskell/stackage/blob/master/automated/build.sh)
18−* When a new Nightly build is completed, it is uploaded to [the nightly repo](https://github.com/fpco/stackage-nightly)
26+* When a new Nightly build is completed, it is uploaded to [the nightly repo](https://github.com/commercialhaskell/stackage-nightly)
19−* Once a week, we run an LTS minor bump. Instead of using build-constraints.yaml, that job takes the previous LTS release, turns it into constraints, and then bumps the version numbers to the latest on Hackage, in accordance with the version bounds in the build plan. This plans are uploaded to [the LTS repo](https://github.com/fpco/lts-haskell)
27+* Once a week, we run an LTS minor bump. Instead of using build-constraints.yaml, that job takes the previous LTS release, turns it into constraints, and then bumps the version numbers to the latest on Hackage, in accordance with the version bounds in the build plan. This plans are uploaded to [the LTS repo](https://github.com/commercialhaskell/lts-haskell)
20* Cutting a new LTS major release is essentially just a Stackage Nightly that gets rebuilt and uploaded as an LTS
28* Cutting a new LTS major release is essentially just a Stackage Nightly that gets rebuilt and uploaded as an LTS
21
29
22## Pull requests
30## Pull requests
23
31
24The typical story on pull requests is: If Travis accepts it and the
32The typical story on pull requests is: If Travis accepts it and the
25author only added packages under his/her own name, merge it. If the
33author only added packages under his/her own name, merge it. If the
26−build later fails (see below), then block the package until it's
34+build later fails (see [Adding Debian packages]), then block the
27−fixed.
35+package until it's fixed.
36+
37+[Adding Debian packages]: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md#adding-debian-packages-for-required-system-tools-or-libraries
38+
39+If benchmarks, haddocks, or test suites fails at this point we
40+typically also block the package until these issues are fixed. This in
41+order to add packages with a clean slate.
28
42
29Optionally we can check if packdeps says the package is up to date.
43Optionally we can check if packdeps says the package is up to date.
44+Visit http://packdeps.haskellers.com/feed?needle=<package-name>
45+
46+Builds may fail because of unrelated bounds changes. If this happens,
47+first add any version bounds to get master into a passing state (see
48+"Fixing bounds issues"), then re-run the travis build.
49+
50+A common issue is that authors submit newly uploaded packages, it can
51+take up to an hour before this has synced across the stack
52+infrastructure. You can usually compare the versions of the package in
53+https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/
54+to what's on hackage to see if this is the case. Wait an hour and
55+re-run the pull request.
56+
57+Tests also commonly fail due to missing test files, and sometimes due
58+to doctest limitations. You can point the maintainer to
59+https://github.com/bergmark/blog/blob/master/2016/package-faq.md
30
60
31## Fixing bounds issues
61## Fixing bounds issues
32
62
@@ -36,29 +66,171 @@ issue on the Stackage repo about the problem, and modifying the
36build-constraints.yaml file to work around it in one of the ways below. Be sure
66build-constraints.yaml file to work around it in one of the ways below. Be sure
37to refer to the issue for workarounds added to that file.
67to refer to the issue for workarounds added to that file.
38
68
69+### Temporary upper bounds
70+
39−* __Temporary upper bounds__ Most common technique, just prevent a new version of a library from being included immediately
71+Most common technique, just prevent a new version of a library from
40−* __Skipping tests and benchmarks__ If the upper bound is only in a test suite or benchmark, you can add the relevant package to skipped-tests or skipped-benchmarks. For example, if conduit had an upper bound on criterion for a benchmark, you could added conduit as a skipped benchmark.
72+being included immediately. This also applies to when only benchmarks
73+and tests are affected.
74+
75+* Copy the `curator` output and create a new issue, see e.g
76+https://github.com/commercialhaskell/stackage/issues/2108
77+
78+* Add a new entry under the "stackage upper bounds" section of `build-constraints.yaml`. For the above example it would be
79+
80+```yaml
81+ "Stackage upper bounds":
82+ # https://github.com/commercialhaskell/stackage/issues/2108
83+ - pipes < 4.3.0
84+```
85+
86+* Commit (message e.g. "Upper bound for #2108")
87+* Optionally: Verify with `./check` locally
88+* Push
89+* Verify that everything works on the build server (you can restart the build or wait for it to to run again)
90+
91+Sometimes releases for different packages are tightly coupled. Then it
92+can make sense to combine them into one issue, as in
93+https://github.com/commercialhaskell/stackage/issues/2143.
94+
95+If a dependency that is not explicitly in stackage is causing test or
96+benchmark failures you can skip or expect them to fail (see "Skipping
97+tests and benchmarks" and "Expecting test/benchmark/haddock
98+failures"). Bonus points for reporting this upstream to that packages'
99+maintainer.
100+
101+### Lifting upper bounds
102+
103+You can try this when you notice that a package has been updated. You
104+can also periodically try to lift bounds (I think it's good to do this
105+at the start of your week /@bergmark)
106+
107+If not all packages have been updated check if any of them are missing
108+from the original issue and if so add a new comment mentioning them. A
109+new package may appear if its dependencies were part of this issue but
110+have been updated since the last time we checked. We want to give
111+these new packages ample time to be upgraded.
112+
113+If `curator` is happy commit the change ("Remove upper bounds
114+and close #X"). After doing this the next nightly build may fail
115+because some packages didn't have an upper bound in place, but
116+compilation failed. In this case revert the previous commit so any
117+disabled packages are enabled again, re-open the issue, and add a new
118+comment with the failing packages. This is to give all maintainers
119+enough time to upgrade for this case as well.
120+
121+### Amending upper bounds
122+
123+With the `pipes` example above there was later a new release of
124+`pipes-safe` that required the **newer** version of `pipes`. You can
125+add that package to the same upper bounds section,
126+(e.g. https://github.com/commercialhaskell/stackage/commit/6429b1eb14db3f2a0779813ef2927085fa4ad673)
127+as we want to lift them simultaneously.
128+
129+### Skipping tests and benchmarks
130+
131+Sometimes tests and benchmark dependencies are forgotten or not cared
132+for. To disable compilation for them add them to `skipped-tests` or
133+`skipped-benchmarks`. If a package is added to these sections they
134+won't be compiled, and their dependencies won't be taken into account.
135+
136+There are sub sections under these headers that is used to group types
137+of failures together, and also to document what type of failures
138+exist.
139+
140+### Expecting test/benchmark/haddock failures
141+
142+The difference from the `skipped` sections is that items listed here
143+are compiled and their dependencies are taken into account
144+(but they are allowed to fail to build).
145+These sections also have subsections with groups and descriptions.
146+
147+One big category of test suites in this section are those requiring
148+running services. We don't want to run those, but we do want to check
149+dependencies and compile them.
150+
151+If there are no version bounds that would fix the issue or if you
152+can't figure it out, file it
153+(e.g. https://github.com/commercialhaskell/stackage/issues/2133) to ask the
154+maintainer for help.
155+
156+### Waiting for new releases
157+
158+Sometimes there is a failure reported on a (now possibly closed) issue
159+on an external tracker. If an issue gets resolved but there is no
160+hackage release yet we'd like to get notified when it's uploaded.
161+
162+Add the package with its current version to the
163+`tell-me-when-its-released` section. This will cause the build to stop
164+when the new version is out.
165+
166+### Excluding packages
167+
41−* __Excluding packages__ In an extreme case of a non-responsive maintainer, you can remove the package entirely from Stackage. We try to avoid that whenever possible
168+In an extreme case of a non-responsive maintainer, you can remove the
169+package entirely from Stackage. We try to avoid that whenever
170+possible.
171+
172+This typically happens when we move to a new major GHC release or when
173+there are only a few packages waiting for updates on an upper bounds
174+issue.
175+
176+If a package needs to be disabled due to build failures: Add a `< 0`
177+bound to the package to exclude it, and add a comment stating why it
178+was disabled: `- swagger < 0 # compile failure againts aeson 1.0`
179+
180+If a package needs to be disabled due to bounds issues, see the "Large
181+scale enabling/disabling of packages" section below.
182+
183+If this causes reverse dependencies to be disabled we should notify
184+the maintainers of those packages.
185+
42
186
43## Updating the content of the Docker image used for building
187## Updating the content of the Docker image used for building
44
188
45### Adding Debian packages for required system tools or libraries
189### Adding Debian packages for required system tools or libraries
46Additional (non-Haskell) system libraries or tools should be added to `stackage/debian-bootstrap.sh`.
190Additional (non-Haskell) system libraries or tools should be added to `stackage/debian-bootstrap.sh`.
47−Committing the changes to a branch should trigger a DockerHub. Normally only the nightly branch needs to be updated
191+After you've committed those changes, merging them into the `nightly` branch should
48−since new packages are not added to the current lts release.
192+trigger a DockerHub build. Simply run:
193+
194+```bash
195+ $ git checkout nightly
196+ $ git merge master
197+ $ git push
198+```
49
199
50Use [Ubuntu Package content search](http://packages.ubuntu.com/) to determine which package provides particular dev files (it defaults to xenial which is the version used to build Nightly).
200Use [Ubuntu Package content search](http://packages.ubuntu.com/) to determine which package provides particular dev files (it defaults to xenial which is the version used to build Nightly).
51
201
52−Note we generally don't install/run services needed for testsuites in the docker images - packages with tests requiring some system service can be add to expected-test-failures.
202+Note that we generally don't install/run services needed for testsuites in the docker images - packages with tests requiring some system service can be added to `expected-test-failures`.
203+It's good to inform the maintainer of any disabled tests (commenting in the PR is sufficient).
204+
205+If a new package fails to build because of missing system libraries we often ask the maintainer to help figure out what to install.
53
206
54### Upgrading GHC version
207### Upgrading GHC version
55The Dockerfile contains information on which GHC versions should be used. You
208The Dockerfile contains information on which GHC versions should be used. You
56−can modify it and push it to Github to trigger a DockerHub build. The nightly
209+can modify it and push it to Github to trigger a build. The nightly
57branch is used for nightlies. For LTSes, we use the ltsX branch, where X is the
210branch is used for nightlies. For LTSes, we use the ltsX branch, where X is the
58major version number (e.g., lts3 for lts-3.\*).
211major version number (e.g., lts3 for lts-3.\*).
59
212
213+Update the `Win32` version in `build-constraints.yaml` under "GHC upper bounds".
214+
60−Note that when starting a new LTS major release, you'll need to modify Docker
215+Note that when starting a new LTS major release, you'll need to modify `.github/workflows/image.yml` to add a new lts branch.
61−Hub to create a new Docker tag for the relevant branch name.
216+
217+Update `GHCVER` in `Dockerfile`. (This env var automatically gets passed to `debian-bootstrap.sh`.)
218+
219+Ensure that the [global-hints.yaml
220+file](https://github.com/fpco/stackage-content/blob/master/stack/global-hints.yaml)
221+is updated with information on the latest GHC release by cloning that
222+repo and running `./update-global-hints.hs ghc-X.Y.Z`.
223+
224+If enountering an error like the following, this means that the Stack metadata
225+has not yet been updated, so wait some time until this happens:
226+
227+```
228+This probably means a GHC bindist has not yet been added for OS key 'linux64', 'linux64-ncurses6', 'linux64-tinfo6'.
229+Supported versions: ...
230+update-global-hints.hs: Received ExitFailure 1 when running
231+```
232+
233+Also required to build an LTS minor bump with a ghc version change: On the build server, modify `/var/stackage/stackage/automated/work/lts-$THIS_LTS_MAJOR_VER/constraints.yaml` and update the ghc-version. (You may need to update sibling files as well.) Then run `NOPLAN=1 /var/stackage/stackage/automated/build.sh lts-$THIS_LTS_MINOR_BUMP` to build the LTS.
62
234
63### Getting the new image to the build server
235### Getting the new image to the build server
64Once a new Docker image is available, you'll need to pull it onto the stackage-build server (see
236Once a new Docker image is available, you'll need to pull it onto the stackage-build server (see
@@ -70,15 +242,41 @@ docker rm $(docker ps -a -q)
70docker rmi $(docker images -q)
242docker rmi $(docker images -q)
71```
243```
72
244
73−but `docker pull snoyberg/stackage:nightly` can also be run instead just to update the nightly image say.
245+but `docker pull ghcr.io/commercialhaskell/stackage/build:nightly` can also be run instead just to update the nightly image say.
246+
247+For a new GHC version you should also delete the ~~cache~~ .stack-work snapshot install directories on the stackage-build server to
248+~~force all packages to be rebuilt~~ clear up some space. See: [issue#746](https://github.com/commercialhaskell/stackage/issues/746). Eg:
74
249
75−For a new GHC version you should also delete the cache directories on the stackage-build server to
76−force all packages to be rebuilt. See: [issue#746](https://github.com/fpco/stackage/issues/746). Eg:
77```
250```
78−rm -r nightly/work/builds/nightly/
251+# for example
252+SNAP_SERIES=nightly # or lts16
253+OLD_GHCVER=8.10.1
254+rm -r work/$SNAP_SERIES/unpack-dir/.stack-work/install/x86_64-linux/*/$OLD_GHCVER/
79```
255```
80This should also be done when moving the Nightly docker image to a new version of Ubuntu.
256This should also be done when moving the Nightly docker image to a new version of Ubuntu.
81
257
258+If you're impatient and would like to build the Docker image on the
259+build server instead of waiting for Docker Hub, you can run the
260+following command (replacing `BRANCH=nightly` if the image for a different branch is desired):
261+
262+```
263+BRANCH=nightly
264+DIR=$(mktemp -d)
265+(cd $DIR \
266+ && git clone https://github.com/commercialhaskell/stackage \
267+ && cd stackage \
268+ && git checkout $BRANCH \
269+ && docker build --tag commercialhaskell/stackage:$BRANCH .)
270+rm -rf $DIR
271+```
272+
273+Note that we do a clean clone of the `stackage` repo instead of using
274+the existing checkout because of how `docker build` works: it will
275+send the entire local directory contents as context to the Docker
276+daemon, which in the case of the build tree is a _lot_ of content. (We
277+can discuss the wisdom&mdash;or lack thereof&mdash;of Docker's
278+approach separately.)
279+
82## stackage-build server
280## stackage-build server
83
281
84You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
282You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
@@ -86,7 +284,7 @@ You'll need to get your SSH public key added to the machine. ~/.ssh/config info:
86```
284```
87Host stackage-build
285Host stackage-build
88 User curators
286 User curators
89− Hostname ec2-52-5-20-252.compute-1.amazonaws.com
287+ Hostname build.stackage.org
90```
288```
91
289
92### Running the build script
290### Running the build script
@@ -97,42 +295,51 @@ we're just not there yet.
97
295
98```
296```
99# Run a nightly build
297# Run a nightly build
100−/opt/stackage-build/stackage/automated/run-nightly.sh
298+/var/stackage/stackage/automated/run-nightly.sh
101
299
102# Run an LTS minor bump
300# Run an LTS minor bump
103−/opt/stackage-build/stackage/automated/build.sh lts-2.17
301+/var/stackage/stackage/automated/build.sh lts-15.1
104
302
105# Run an LTS major bump
303# Run an LTS major bump
106−/opt/stackage-build/stackage/automated/build.sh lts-3.0
304+/var/stackage/stackage/automated/build.sh lts-16.0
107```
305```
108
306
109−Recommended: run these from inside a `screen` session. If you get version bound
307+Recommended: run these from inside a `tmux` session. If you get version bound
110problems on nightly or LTS major, you need to fix build-constraints.yaml (see
308problems on nightly or LTS major, you need to fix build-constraints.yaml (see
111−info above). For an LTS minor bump, you'll typically want to use the
309+info above).
112−`CONSTRAINTS` environment variable, e.g.:
113
310
114−```
311+### Building LTS minor releases
115−CONSTRAINTS='--constraint "conduit < 1.4.5" --constraint "criterion < 1.2.3"' /opt/stackage-build/stackage/automated/build.sh lts-2.17
312+Before running the build, please make sure that the Dockerfile in `automated/dockerfiles/lts-X.Y` is up to date, where X is the major version that you're building and Y is the latest minor version of X for which a Dockerfile exists.
116−```
313+ * If any changes need to be made, (eg, new GHC version), copy `automated/lts-X.Y/Dockerfile` to `automated/lts-X.Z/Dockerfile`, where Z is the minor version you're building, and include the new changes.
314+ * If you are building the first release of a new LTS major version, create a new `lts-X.Z/Dockerfile` based on the previous LTS's, and adjust the variables at the top to match the requirements of the snapshot. Ensure that `STACK_VERSION` is the latest release of Stack, and `BOOTSTRAP_COMMIT` is the commit ID of this repo containing the version of the `bootstrap-commit.sh` used to build the snapshot. Also ensure the FROM image's Ubuntu version matches that used in the [root Dockerfile](Dockerfile) used to build this snapshot.
315+
316+First run `build.sh` to regenerate updated `ltsXX/work/constraints.yaml` and `ltsXX/work/snapshot-incomplete.yaml` files.
117
317
118−Valid arguments to include in this environment variable:
318+For an LTS minor bump, you'll typically want to:
119
319
120−* `--constraint` to modify an upper or lower bound
320+* Add constraints to package `range:` fields _under_ the `source:` field in that `constraints.yaml` (should not be necessary normally to edit `snapshot-incomplete.yaml` to change the version used for that package).
121−* `--add-package` to add a brand new package
321+* Add new packages to the `constraints.yaml` file
122−* `--expect-test-failure` to expect tests to fail
322+* Test, benchmark, haddock failures can also be added to package fields in the `constraints.yaml` if necessary, though it should be avoided if possible for LTS.
123−* `--expect-haddock-failure` to expect haddocks to fail
323+
324+Then run `NOPLAN=1 build.sh` to build the generate an updated snapshot.
124
325
125If a build fails for bounds reasons, see all of the advice above. If the code
326If a build fails for bounds reasons, see all of the advice above. If the code
126itself doesn't build, or tests fail, open up an issue and then either put in a
327itself doesn't build, or tests fail, open up an issue and then either put in a
127version bound to avoid that version or something else. It's difficult to give
328version bound to avoid that version or something else. It's difficult to give
128universal advice on how to solve things, since each situation is unique. Let's
329universal advice on how to solve things, since each situation is unique. Let's
129−develop this advice over time. For now: if you're not sure, ask Michael for
330+develop this advice over time. For now: if you're not sure, ask for guidance.
130−guidance.
131
331
132__`NOPLAN=1`__ If you wish to rerun a build without recalculating a
332__`NOPLAN=1`__ If you wish to rerun a build without recalculating a
133build plan, you can set the environment variable `NOPLAN=1`. This is
333build plan, you can set the environment variable `NOPLAN=1`. This is
134useful for such cases as an intermittent test failure, out of memory
334useful for such cases as an intermittent test failure, out of memory
135−condition, or manually tweaking the plan file.
335+condition, or manually tweaking the plan file. (When using `NOPLAN=1`,
336+if one needs to revert one package, say due to a build or test regression,
337+one can edit `current-plan.yaml` and updated the SHA256 hash of the .cabal file,
338+to avoid having to rebuild everything again.)
339+
340+Note LTS builds without NOPLAN will use the latest Hackage data.
341+
342+If you need to make further modifications beyond what `constraints.yaml` allows, you can directly edit the `snapshot-incomplete.yaml` file. Then, instead of `NOPLAN=1 build.sh`, you need to use `NOPLAN=2 build.sh`. Note that from this point on, further changes to `constraints.yaml` will not impact the build plan.
136
343
137### Timing
344### Timing
138
345
@@ -141,14 +348,247 @@ with `sleep 30m` interleaved. It only publishes the nightly once per
141day. This way new package versions or build failures can be caught
348day. This way new package versions or build failures can be caught
142early and hopefully the nightlies will be timely.
349early and hopefully the nightlies will be timely.
143
350
144−LTS minor bumps typically are run on Sundays.
351+LTS minor bumps are typically run on weekends. It can be a good idea
352+to start the build on friday or saturday to have enough time to
353+resolve any issues before the next curator shift the coming monday.
145
354
146−### Website sync debugging (and other out of disk space errors)
355+### Diskspace errors (and website sync debugging)
147
356
148−* You can detect the problem by running `df`. If you see that `/` is out of space, we have a problem
357+* You can detect the problem by running `df`. If you see that `/` is out of space, we have a problem.
149−* There are many temp files inside `/home/ubuntu/stackage-server-cron` that can be cleared out occasionally
358+* If you see that `/var/stackage/` is out of space, you can:
150−* You can then manually run `/home/ubuntu/stackage-server-cron.sh`, or wait for the cron job to do it
359+ * run `./etc/diskspace/clean-old-stack-libs.sh [nightly|lts-XX]`
360+ * If that is insufficient then remove all the old builds under the previous ghc/Cabal version:
361+ * `rm -r /var/stackage/stackage/automated/work/[nightly|lts-XX]/unpack-dir/unpacked/*/.stack-work/dist/x86_64-linux/Cabal-X.Y.0.0/`
362+
363+ optionally (not recommended?):
364+ * `rm -r /var/stackage/stackage/automated/work/lts*/unpack-dir/unpacked/`
365+ * `rm -r /var/stackage/stackage/automated/work/nightly/unpack-dir/unpacked/`
151
366
152### Wiping the cache
367### Wiping the cache
153
368
154−Sometimes the cache can get corrupted which might manifest as `can't load .so/.DLL`. You can wipe the nightly cache and rebuild everything by doing `rm -rf /opt/stackage-build/stackage/automated/nightly`.
369+Sometimes the cache can get corrupted which might manifest as `can't load .so/.DLL`.
370+You can wipe the nightly cache and rebuild everything by doing
371+`rm -rf /var/stackage/stackage/automated/nightly`.
372+Replace nightly with `lts7` to wipe the LTS 7 cache.
373+
374+### Force a single package rebuild
375+
376+You can force a single package to rebuild by deleting its "previous result"
377+file, e.g.:
378+
379+```
380+$ rm /var/stackage/stackage/automated/nightly/work/builds/nightly/prevres/Build/cryptohash-0.11.9
381+```
382+
383+### Restarting docker
384+
385+If docker hangs with e.g. `docker: Error response from daemon:
386+connection error: desc = "transport: dial unix
387+/var/run/docker/containerd/docker-containerd .sock: connect:
388+connection refused".` you can restart it with `sudo systemctl restart
389+docker.service`.
390+
391+## Local curator setup
392+
393+We do not run the full stackage build locally as that might take too
394+much time. However, some steps on the other hand are much faster to do
395+yourself, e.g. verifying constraints without building anything.
396+
397+To get started, install `curator` via Git:
398+
399+```
400+$ git clone git@github.com:commercialhaskell/curator.git
401+$ cd curator && stack install curator
402+```
403+
404+It is a good idea to upgrade `curator` at the start of your week.
405+Then, clone the stackage repo, get the latest packages and run dependency
406+resolution:
407+
408+```
409+$ git clone git@github.com:commercialhaskell/stackage.git
410+$ cd stackage
411+$ ./check
412+```
413+
414+This can be used to make sure all version bounds are in place, including for
415+test suites and benchmarks, to check whether bounds can be lifted, and to get
416+[tell-me-when-its-released] notifications.
417+
418+`curator` does not build anything, so you wont see any compilation
419+errors for builds, tests and benchmarks.
420+
421+[tell-me-when-its-released]: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md#waiting-for-new-releases
422+
423+### Large scale enabling/disabling of packages
424+
425+`etc/commenter` is a binary that automates `build-constraints.yaml` workflows.
426+
427+#### Setup
428+This is currently a rust program, You can install the rust toolchain
429+by using [rustup](https://rustup.rs/).
430+
431+For some commands you also need etc/commenter/latest-version installed.
432+```
433+stack install --stack-yaml etc/commenter/latest-version/stack.yaml
434+```
435+
436+#### Example usage
437+
438+After disabling a few packages you get this curator output:
439+
440+```
441+ConfigFile (GHC 9 bounds issues, @maintainer) (not present) depended on by:
442+- [ ] xdg-desktop-entry-0.1.1.1 (-any). @maintainer. Used by: library
443+
444+
445+pipes-misc (GHC 9 bounds issues, @maintainer) (not present) depended on by:
446+- [ ] pipes-fluid-0.6.0.1 (>=0.5). @handles. Used by: test-suite
447+
448+
449+testing-feat (GHC 9 bounds issues, Grandfathered dependencies) (not present) depended on by:
450+- [ ] dual-tree-0.2.3.0 (-any). Grandfathered dependencies. @handles. Used by: test-suite
451+```
452+
453+Now run:
454+```
455+./check 2>&1 >/dev/null | ./commenter add
456+```
457+
458+You will get this output:
459+```
460+[INFO] ...
461+LIBS + EXES
462+
463+ - xdg-desktop-entry < 0 # tried xdg-desktop-entry-0.1.1.1, but its *library* requires the disabled package: ConfigFile
464+
465+TESTS
466+
467+ - dual-tree # tried dual-tree-0.2.3.0, but its *test-suite* requires the disabled package: testing-feat
468+ - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
469+
470+Adding 1 libs, 2 tests, 0 benches to build-constraints.yaml
471+```
472+
473+These bounds are added to build-constraints.yaml automatically.
474+
475+Re-run this command until no more packages are disabled.
476+
477+#### Re-enabling
478+
479+We can periodically remove all packages under the bounds sections and then re-run the disabling flow above until we get a clean plan. This will automatically pick up packages that have been fixed.
480+
481+```
482+./commenter clear
483+./check 2>&1 >/dev/null | ./commenter add
484+```
485+
486+Repeat the second command until no updates are made to build-constraints.yaml.
487+
488+#### Checking for new releases
489+
490+Run `stack update` before doing this.
491+
492+`./commenter outdated` looks through all bounds issues and library
493+compilation failures and compares the marked version with the latest hackage release. Example output is
494+
495+```
496+Fin mismatch, manual: 0.2.8.0, hackage: 0.2.9.0
497+aeson mismatch, auto: 1.5.6.0, hackage: 2.0.2.0
498+```
499+
500+where "manual" means the bound was added manually by a curator,
501+perhaps due to a compilation failure so we could try re-enabling the
502+package. "auto" means it's part of the sections generated by
503+`./commenter`, to update that run the `Re-enabling` step as documented
504+above.
505+
506+`outdated` only finds packages that are in the auto generated
507+sections, or that are of the form `- package < 0 # $version`.
508+
509+#### Notes
510+
511+* Please make sure to separate bounds issues from compilation failures/test run failures, as we cannot verify that a package builds or that tests pass without running the build!
512+
513+#### Diffing snapshots / Inspecting changes
514+
515+To diff existing snapshots, or to evaluate changes before they end up
516+in a snapshot you can run:
517+
518+```
519+./commenter diff-snapshot <old-snapshot.yaml> <new-snapshot.yaml>
520+```
521+
522+Existing snapshots can be retrieved from https://github.com/commercialhaskell/stackage-snapshots. Preliminary snapshots can be generated by running relevant parts of `automated/build.sh`, at the time of writing:
523+
524+```
525+TARGET=nightly-2021-01-14 \ # the date doesn't matter
526+ curator update && \
527+ curator constraints --target $TARGET && \
528+ curator snapshot-incomplete --target $TARGET && \
529+ curator snapshot
530+```
531+
532+#### Finding disabled packages with lots of dependents
533+
534+`./commenter disabled` prints the number of transitive dependents a disabled package has. Low hanging fruit to get a lot of packages included again.
535+
536+Example output:
537+```
538+[...]
539+stringable is disabled with 10 dependents
540+llvm-hs is disabled with 12 dependents
541+th-data-compat is disabled with 12 dependents
542+amazonka-core is disabled with 96 dependents
543+gogol-core is disabled with 96 dependents
544+```
545+
546+## Adding new curators
547+
548+1. Add public ssh key to `~/.ssh/authorized_keys` on build server
549+2. Add to commercialhaskell/stackage project.
550+
551+## Dealing with a new GHC release
552+
553+As mentioned in the [GHC upgrade note], the major impact of a new GHC release
554+is on the packages that are causing upper bounds to be put in place. In order
555+to minimise out-of-date breakage and allow maintainers to have a solid chance
556+of getting their packages into the newest LTS, we try to do the following:
557+
558+Make an early announcement (in the form of a blog post, typically) of the new
559+GHC release on the nightly build and the planned deadline for the new LTS release.
560+Make it clear, that in the time coming up to this, we hope package maintainers
561+will upgrade their packages to allow for the new GHC release.
562+
563+We prefer to prune packages causing upper bounds constraints **after** the LTS
564+release to allow the maximum amount of packages to get into the newest LTS.
565+
566+You will almost always need to update the Win32 package version listed in the
567+build-constraints.yaml file.
568+
569+After the first LTS release, the package pruning process may begin in the
570+nightly build in order to move forward with getting the latest versions of
571+packages compatible with the new GHC release.
572+
573+[GHC upgrade note]: https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md#upgrading-to-a-new-ghc-version
574+
575+## New LTS major bump
576+
577+Every 3-6 months, we make a new major release of LTS. The procedure we follow for this is:
578+
579+1. Write a blog post on stackage.org announcing the intent to cut a major
580+ release. Give an estimated date two weeks in the future from the publication
581+ date of the post.
582+2. Spread the blog post on social media and mailing lists as much as possible.
583+3. Expect maintainers to send significant requests for added packages and
584+ relaxed upper bounds. There will likely be some hard decisions to be made
585+ regarding relaxing a bound versus keeping more packages. All of these changes
586+ occur on master and affect nightly.
587+4. Once the estimated date hits, push a new `ltsXX` and wait for the docker image build.
588+5. Run the build procedure for the new LTS release.
589+6. After the LTS build completes, more aggressively prune upper bounds from
590+ `build-constraints.yaml`.
591+7. Once both (5) and (6) are done, publish a new blog post on stackage.org
592+ announcing the new LTS and Nightly, with links to the change pages on
593+ stackage.org. Include a reminder that requests for packages to be added to LTS
594+ may be made on commercialhaskell/lts-haskell.
DATA-FLOW.md+4−4
@@ -15,7 +15,7 @@ There are three inputs into the data flow:
15 Hackage provides both cabal file metadata (via the 00-index.tar file) and
15 Hackage provides both cabal file metadata (via the 00-index.tar file) and
16 tarballs of the individual packages.
16 tarballs of the individual packages.
17
17
18−* [build-constraints.yaml](https://github.com/fpco/stackage/blob/master/build-constraints.yaml)
18+* [build-constraints.yaml](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml)
19 is the primary Stackage input file. This is where package maintainers can add
19 is the primary Stackage input file. This is where package maintainers can add
20 packages to the Stackage package set. This also defines upper bounds, skipped
20 packages to the Stackage package set. This also defines upper bounds, skipped
21 tests, and a few other pieces of metadata.
21 tests, and a few other pieces of metadata.
@@ -26,7 +26,7 @@ There are three inputs into the data flow:
26## Travis
26## Travis
27
27
28For [various
28For [various
29−reasons](https://www.fpcomplete.com/blog/2015/05/distributing-packages-without-sysadmin),
29+reasons](https://tech.fpcomplete.com/blog/2015/05/distributing-packages-without-sysadmin),
30we leverage Travis CI for running some processes. In particular:
30we leverage Travis CI for running some processes. In particular:
31
31
32* [all-cabal-files](https://github.com/commercialhaskell/all-cabal-files/blob/hackage/.travis.yml)
32* [all-cabal-files](https://github.com/commercialhaskell/all-cabal-files/blob/hackage/.travis.yml)
@@ -60,7 +60,7 @@ The heart of running Stackage builds is the
60[stackage-curator](https://github.com/fpco/stackage-curator) tool. We run this
60[stackage-curator](https://github.com/fpco/stackage-curator) tool. We run this
61on a daily basis on the Stackage build server for Stackage Nightly, and on a
61on a daily basis on the Stackage build server for Stackage Nightly, and on a
62weekly basis for LTS Haskell. The build process is [highly
62weekly basis for LTS Haskell. The build process is [highly
63−automated](https://github.com/fpco/stackage/blob/master/automated/build.sh) and
63+automated](https://github.com/commercialhaskell/stackage/blob/master/automated/build.sh) and
64leverages Docker quite a bit.
64leverages Docker quite a bit.
65
65
66stackage-curator needs to know about the most recent versions of all packages,
66stackage-curator needs to know about the most recent versions of all packages,
@@ -80,7 +80,7 @@ By combining these constraints with the current package data, stackage-curator
80can generate a build plan and check it. (As an aside, this build plan
80can generate a build plan and check it. (As an aside, this build plan
81generation and checking also occurs every time you make a pull request to the
81generation and checking also occurs every time you make a pull request to the
82stackage repo.) If there are version bounds problems, one of the [Stackage
82stackage repo.) If there are version bounds problems, one of the [Stackage
83−curators](https://github.com/fpco/stackage/blob/master/CURATORS.md) will open
83+curators](https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md) will open
84up a Github issue and will add upper bounds, temporarily block a package, or
84up a Github issue and will add upper bounds, temporarily block a package, or
85some other corrective action.
85some other corrective action.
86
86
Dockerfile+9−2
@@ -1,8 +1,15 @@
1−FROM ubuntu:16.04
1+FROM fpco/pid1:18.04
2
2
3ENV HOME /home/stackage
3ENV HOME /home/stackage
4ENV LANG en_US.UTF-8
4ENV LANG en_US.UTF-8
5+ENV GHCVER 9.0.2
6+
7+# NOTE: also update debian-bootstrap.sh when cuda version changes
5−ENV PATH /opt/ghc/8.0.1/bin:/usr/sbin:/usr/bin:/sbin:/bin
8+ENV PATH /home/stackage/.stack/programs/x86_64-linux/ghc-$GHCVER/bin:/usr/local/cuda-10.0/bin:/usr/sbin:/usr/bin:/sbin:/bin
9+ENV CUDA_PATH /usr/local/cuda-10.0
6
10
7ADD debian-bootstrap.sh /tmp/debian-bootstrap.sh
11ADD debian-bootstrap.sh /tmp/debian-bootstrap.sh
8RUN /tmp/debian-bootstrap.sh && rm /tmp/debian-bootstrap.sh
12RUN /tmp/debian-bootstrap.sh && rm /tmp/debian-bootstrap.sh
13+
14+# Include file path
15+ENV CPATH /usr/lib/jvm/java-8-openjdk-amd64/include:/usr/lib/jvm/java-8-openjdk-amd64/include/linux:/usr/lib/llvm-3.7/include
MAINTAINERS.md+209−48
@@ -2,81 +2,198 @@ This project is built around the concept of maintainers taking responsibility fo
2
2
3The idea behind Stackage is that, if all packages work with the newest versions of dependencies, we avoid dependency hell. Specifically, we aim for:
3The idea behind Stackage is that, if all packages work with the newest versions of dependencies, we avoid dependency hell. Specifically, we aim for:
4
4
5−* All packages are buildable and testable from Hackage. We recommend [the Stack Travis script](http://docs.haskellstack.org/en/stable/GUIDE.html#travis-with-caching), which ensures a package is not accidentally incomplete.
5+* All packages are buildable and testable from Hackage. We recommend [the Stack Travis script](https://docs.haskellstack.org/en/stable/travis_ci/), which ensures a package is not accidentally incomplete.
6* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
6* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
7−* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
7+* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
8+
9+Packages in Stackage are not patched: all package changes occur upstream in Hackage.
8
10
9## Adding a package
11## Adding a package
10
12
11Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
13Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
12
14
13−To add your package, first fork this repository.
14−In the [`build-constraints.yaml`](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) file, there's a section called `packages`.
15+To add your package you can edit [`build-constraints.yaml`](https://github.com/fpco/stackage/blob/master/build-constraints.yaml) directly on github or fork the project. There's a section called `packages` where you would add yourself and your packages:
15−To add a set of packages, you would add:
16
16
17− "My Name myemail@example.com @mygithubuser":
17+ "My Name <myemail@example.com> @mygithubuser":
18 - package1
18 - package1
19 - package2
19 - package2
20 - package3
20 - package3
21
21
22−After doing that, send a pull request (with a commit message like "add foo-bar"). We do not require new submissions to be tested against the rest of Stackage before the pull request (though it is a good idea to do so if you can with `stack --resolver nightly exec stackage-curator check` and `stack --resolver nightly build`), provided you meet the dependency version requirements above. If your library depends on a C library, add a note to your pull request with the Ubuntu library name, or even better edit the `debian-bootstrap.sh` script directly
22+Any dependencies of your packages that are not already part of
23+stackage also need to be added explicitly (When this happens you will
24+see `not present` errors in the CI log). As mentioned above: If you
25+don't maintain this package yourself it is preferable that the actual
26+maintainer is also the stackage maintainer, but you are allowed to add
27+it under your own name.
23
28
24−If you want to make sure that the package builds against the newest versions of all dependecies you can do this:
29+If your package depends on a C library, please add it to the `debian-bootstrap.sh` script.
25−```
26−$ cabal update
27−$ ghc --version # Should give v8.0.1
28−$ cabal get PACKAGE-VERSION # e.g. aeson-0.11.2.1
29−$ cd PACKAGE-VERSION
30−$ cabal sandbox init # Should give "Creating a new sandbox" and not "Using an existing sandbox".
31−$ cabal install --enable-tests --enable-benchmarks --dry-run | grep latest # Should give no results
32−$ cabal install --enable-tests --enable-benchmarks --allow-newer
33−$ cabal test
34−```
35
30
36−**NB** Please use commit messages like "add foo-bar" or "add johndev's packages"
31+After doing that, commit with a message like "add foo-bar" and send a pull request.
37−(`build-constraints.yaml` is the most frequently changed file in this git repo
38−so commit messages like "update build-constraints.yaml" are not helpful).
39
32
40−**NB2** There can be a delay of up to an hour before package versions
33+The continuous integration job will do some checks to see if your package's dependencies are up-to-date.
41−newly uploaded to Hackage appear to our build server. If you just
42−uploaded a package to Hackage that you're trying to get included, we
43−recommend waiting an hour before opening the PR. You can verify this
44−by making sure the latest version is listed at
45−https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/.
46
34
47−## Uploading a new package
35+The CI job notably doesn't compile packages, run tests, build documentation, or find missing C libraries.
36+If you want to be proactive or if CI fails, you can make sure that your package builds against the latest nightly.
37+See the [verify-package](https://github.com/commercialhaskell/stackage/blob/master/verify-package) script in this repository.
48
38
49−When a new version of a package is uploaded to Hackage, we automatically try to include it in Stackage (unless the new version is considered experimental). That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and raise GitHub issue tickets to resolve the issue.
39+This approach works well, but has two limitations you should be aware
40+of:
50
41
51−If the new version doesn't compile then the package author should quickly (within 1 week) upload a fixed version.
42+* It won't notify you of restrictive upper bounds in your package if
43+ Stackage has the same upper bounds. For that reason, we recommend
44+ using [Packdeps](http://packdeps.haskellers.com/) (see "Following
45+ dependency upgrades" below). You can also run `cabal outdated`.
46+* If the latest Stackage Nightly is missing some of the latest
47+ packages, your build above may succeed whereas the Travis job may
48+ fail. Again: Packdeps will help you detect this situation.
52
49
53−If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
50+## Github and Notifications
51+
52+Stackage uses Github notifications to reduce overhead of contacting individual
53+package maintainers through various channels. As a package maintainer, you will
54+receive notifications for a number of reasons, package build failures of
55+different sorts, blockages and bounds issues, etc.
56+
57+Please note, Github does some throttling on the number people that can be
58+notified within one issue. This means that on issues created with a large
59+number of packages affected, maintainers may not receive a notification. This
60+is not ideal, but Stackage is largely a manual process and done on a best
61+effort basis.
62+
63+## Uploading a new package version
64+
65+When a new version of a package in Stackage is uploaded to Hackage, we automatically try to include it in Stackage. That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and open a GitHub issue ticket to resolve the issue.
66+
67+If the new version doesn't compile then the package author should upload a fixed version.
54
68
69+If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
55
70
56## Following dependency upgrades
71## Following dependency upgrades
57
72
58−If a new version of a dependency is released, and that stops your package compiling/passing the tests, then it is your responsibility to modify your package. It is highly recommended that all package maintainers follow the dependencies of their packages on [Packdeps](http://packdeps.haskellers.com/), typically using the RSS feeds.
73+If a new version of a dependency is released your package may fail to
74+build or tests may fail. In most cases we will add an upper bound on
75+the dependency so that your package remains in nightly. We'll also
76+create a github issue pinging you with the bounds issues or give build
77+logs showing failures. It's then up to you to modify your package.
78+
79+We recommend that you also follow the dependencies of your packages on
80+[Packdeps](http://packdeps.haskellers.com/) (typically using the RSS
81+feeds) as well as that often gives you notice ahead of stackage
82+issues. There are cases where we will not notice a new release of a
83+package because of other upper bounds that are in place.
84+
85+If a package is not updated in time, it may be temporarily removed
86+from Stackage by the curator team. We strive to notify you when this
87+happens. If it does you are always welcome to file another pull
88+request to add it back.
89+
90+We typically use fairly long windows before disabling packages, but it
91+is decided on a case-by-case basis.
92+
93+* If restrictive version bounds are the only problem, we will give
94+ maintainers at least a week to respond.
95+* If there are real breaking changes, the curator team will retain
96+ more discretion on how long a window to give before dropping
97+ packages.
98+* We typically drop upper bounds and disable conflicting packages in Nightly after we create
99+ a new Long Term Support (LTS) major version.
100+* There are rare cases where an upper bound or build failure are hard
101+ to deal with so then we may disable
102+
103+**NOTE** Previously we had stricter time limits, but we decided to
104+remove that: Anyone is free to add a package to Stackage regardless of
105+responsiveness guarantees. However, as stated above, we may elect to
106+temporarily remove a package if it is not updated in a timely manner.
107+
108+## Understanding stackage issues
109+
110+### Bounds issues
111+
112+These are the most common.
59
113
60−**If restrictive version bounds are the only problem** then you must quickly (within 1 week) upload a new version with relaxed version bounds. Note that unlike the PVP, Stackage does not require upper bounds.
114+Using https://github.com/commercialhaskell/stackage/issues/6217 as an example.
61
115
62−**If the new dependency causes breaking changes** then all package authors should quickly assess the likely impact on their package (within 1 week) and then produce a new compatible version. The expected timeline for new versions varies between 1 week and 1 month, depending on the significance of the change, and thus the work required to produce those new versions.
116+Our convention is to title a PR after the package that is being held
117+back from the nightly snapshot (here: aeson).
63
118
119+The issue body is templated and looks like this:
64
120
65−## Failing to meet the time limits
121+```
122+aeson-2.0.0.0 ([changelog](http://hackage.haskell.org/package/aeson-2.0.0.0/changelog)) (MAINTAINER) is out of bounds for:
123+- [ ] Agda-2.6.2 (>=1.1.2.0 && < 1.6). MAINTAINER. Used by: library
124+- [ ] HsYAML-aeson-0.2.0.0 (>=1.4.0.0 && < 1.6). MAINTAINER. Used by: library
125+- [ ] IPv6Addr-2.0.2 (>=0.8.0.2 && < 1.6). MAINTAINER. Used by: library
126+[...]
127+```
128+
129+This (usually - see "Other issues") means that there was a new release of the package in the
130+header (aeson). This is expected and the aeson maintainer is
131+not expected to act. They are pinged to notify them that the
132+latest version of their package will not be part of the nightly
133+snapshots until the issue closed.
134+
135+The list of packages with checkboxes denote the packages that prevent
136+us from using the latest version of aeson, the first version number is
137+the current version of that package in nightly (e.g. Agda 2.6.2). The
138+constraint in parenthesis `(>=1.1.2.0 && < 1.6)` is Agda's current
139+bound on `aeson`. To check this box we expect there to be an update
140+of Agda to support aeson 2.0.0.0.
141+
142+Once all boxes are checked we should be able to close the issue and
143+upgrade aeson.
144+
145+### Other issues
146+
147+Other common types of issues are
148+* Packages with failing tests, haddocks, or benchmarks (note that we only *compile* benchmarks)
149+ + Maintainers may choose to update these parts of their package, or
150+ to exclude them from the stackage build (e.g. adding a package to
151+ `skipped-tests`)
152+* New releases of packages that depend on packages that are not a part
153+ of stackage. This is denoted as `not present`
154+ + Maintainers are encouraged to ask the maintainer of these packages
155+ to join stackage, or to be the stackage contact person themselves.
156+* A new release of a package with stricter upper bounds than its previous version
157+ + This will look like a normal bounds issue, and should be treated
158+ the same way by maintainers. Curators usually resolve this by
159+ adding an upper bound to that package instead of its dependency.
160+
161+## Delays
162+
163+Maintainers are humans, humans get sick/have babies/go on
164+holiday. Sometimes a dependency upgrade is extra time consuming.
66
165
67−Maintainers are humans, humans get sick/have babies/go on holiday. If you have regular problems meeting the limits, find a co-maintainer. If you have a one-off problem, respond to the GitHub tickets saying so, and some kind soul might pick up the slack.
166+Consider finding a co-maintainer with access to SCM and Hackage to
167+help you out.
68
168
69−The time limits are intended to stop people being inconvenienced because of problems in other packages. Where such inconvenience happens, we will drop the offending packages from Stackage. While upper bounds are sometimes a temporary solution, they are against the ethos of Stackage, so will not be kept for long.
169+We appreciate if you notify us of any expected delays in the Github
170+issues, some kind soul might decide to help out.
70
171
71## Upgrading to a new GHC version
172## Upgrading to a new GHC version
72
173
174+The Stackage curation team tries to move Stackage Nightly to new
73−The Stackage curation team tries to move Stackage Nightly to new versions of GHC quickly as they become available, while keeping LTS Haskell on a regular release schedule. For package maintainers, the most important impacts of a new GHC release are:
175+versions of GHC quickly as they become available, while keeping LTS
176+Haskell on a regular release schedule. For package maintainers, the
177+most important impacts of a new GHC release are:
74
178
75−* We will typically do a sweep through the Stackage upper bounds and aggressively remove packages that block them. This is because, in most cases, we will need to move to the newest versions of a package to get support for the latest GHC, and asking package maintainers to backport their fixes is an undue burden
179+* We will typically do a sweep through the Stackage upper bounds and
180+ remove blocking packages. We prefer to do it this way rather than
181+ ask other maintainers to backport fixes.
76− * We will definitely do this at a GHC major version release, and may do so at a minor version release
182+ * We will definitely do this at a GHC major version release, and
183+ may do so at a minor version release
77−* Packages that are incompatible with the newest GHC version will be temporarily blocked
184+* Packages that are incompatible with the newest GHC version will be
185+ temporarily disabled
78
186
187+If your package ends up being temporarily disabled from Stackage
79−If your package ends up being temporarily removed from Stackage Nightly, please simply send a pull request to add it back once it and its dependencies are compatible with the newest GHC version.
188+Nightly, please simply send a pull request to add it back once it and
189+its dependencies are compatible with the newest GHC version.
190+
191+Note that it is _not_ a goal of LTS Haskell to track the latest
192+version of GHC. If you want the latest and greatest, Stackage Nightly
193+is your best bet. In particular, LTS Haskell will often&mdash;but not
194+always&mdash;avoid upgrading to the first point release of GHC
195+releases (e.g., 8.x.1) to allow further testing and to get the
196+benefits of the first bugfix release (e.g., 8.x.2).
80
197
81## Adding a package to an LTS snapshot
198## Adding a package to an LTS snapshot
82
199
@@ -86,11 +203,55 @@ ending in `.0`), the package set is taken from Stackage Nightly. Therefore, by
86following the above steps, you can get your package into the next major LTS
203following the above steps, you can get your package into the next major LTS
87Haskell release.
204Haskell release.
88
205
89−If you would like to get your package added to an existing LTS Haskell major
206+If you would like to get your package added to the current LTS Haskell
90−release (e.g., if `lts-3.21` is out, you would want your package to appear in
91−`lts-3.22`), please do the following in addition to the steps above:
207+major release, please do the following in addition to the steps for Nightly described earlier:
92
208
209+* Check that your package can be built with the current LTS version (e.g. `stack build --test --bench --haddock --resolver lts`)
93* Open up a new issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new)
210* Open up a new issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new)
94−* Specify the LTS major version you would like your package to go into (e.g., lts-3)
95−* Provide a list of packages you would like added, and if relevant, any upper bounds on those packages
211+ * Provide a list of packages you would like added
96−* Be patient! The LTS releases are by their nature more conservative than nightly, and therefore adding new packages is a more manual process. The Stackage curators will try to get to your issue quickly, but there may be some delay.
212+ * If relevant, mention any upper bounds that are needed on those packages
213+* Be patient! The LTS releases are less frequent than Nightly. The
214+ Stackage curators will try to get to your issue as soon as possible,
215+ but it may take some time.
216+
217+## LTS package guarantees and exceptions
218+
219+In general, we try to stick to some rules when it comes to the
220+packages included in LTS minor bumps. In particular:
221+
222+* If a package exists in LTS-X.Y, it should also exist in LTS-X.(Y+1)
223+* We should not include a major version bump of a package between
224+ LTS-X.Y and LTS-X.(Y+1)
225+
226+However, there are some cases where exceptions may be made, based
227+purely on Stackage Curator discretion. The most common examples are:
228+
229+* If a package does not follow the PVP in its version number policy,
230+ applying the standard version bump rules would not necessarily
231+ makes sense. As an example, suppose package `foo` decides to
232+ follow SemVer instead of the PVP. By our standard rules of version
233+ bumps, a change from `foo-1.2.0` to `foo-1.3.0` would be
234+ considered a major version bump, and disallowed in an LTS minor
235+ version bump. However, if a package is following SemVer, this
236+ would not be a breaking change, and curators may elect to include
237+ it. Note though that curators and their tooling will not know your
238+ package is following SemVer, so in this case you would have to open
239+ an issue on the [lts-haskell repo](https://github.com/fpco/lts-haskell/issues/new).
240+
241+* If a package has overly restrictive version bounds on a
242+ dependency, in particular constraining a minor version
243+ unnecessarily, we may drop that package instead of artificially
244+ holding back the dependency. As an example: suppose `LTS-20.1`
245+ includes `foo-1.2.0` and `bar-1`. `bar-1` has a dependency `foo >=
246+ 1.2.0 && < 1.2.1`, which is overly constrained on the minor
247+ version number according to the PVP. Then `foo-1.2.1` is
248+ released. The Stackage Curator team would have two choices:
249+
250+ * Reject `foo-1.2.1` from `LTS-20.2`, since that is what `bar-1`
251+ requires.
252+ * Drop `bar-1` from `LTS-20.2`, and allow `foo-1.2.1`.
253+
254+ Decisions will need to be taken on a case-by-case basis, and may
255+ depend on such issues as whether an important bugfix or security
256+ update in included. The curator team may also try to notify the
257+ author of `bar` to try and get a patched version released.
README.md+85−29
@@ -1,30 +1,30 @@
1stackage
1stackage
2========
2========
3+[![check](https://github.com/commercialhaskell/stackage/actions/workflows/check.yml/badge.svg)](https://github.com/commercialhaskell/stackage/actions/workflows/check.yml)
3
4
4−[![Build Status](https://travis-ci.org/fpco/stackage.svg?branch=master)](https://travis-ci.org/fpco/stackage)
5+Stable sets of Haskell Packages from Hackage
5
6
6−"Stable Hackage": creating a vetted set of packages from Hackage.
7−This repository is for package authors and maintainers to get their packages into Stackage.
7+_This repository is for package authors and maintainers to get their packages into Stackage._
8−If you simply want to use Stackage as an end user, please follow the instructions on [https://www.stackage.org/](https://www.stackage.org).
9
8
10−We strongly recommend using the Haskell tool stack for doing builds, which
9+If you simply want to use Stackage as an end user, please follow the instructions on [https://www.stackage.org/](https://www.stackage.org).
11−includes built-in Stackage support: [stack](https://github.com/commercialhaskell/stack) [![Build Status](https://travis-ci.org/commercialhaskell/stack.svg?branch=master)](https://travis-ci.org/commercialhaskell/stack).
12
10
11+We strongly recommend using the Haskell [stack](https://github.com/commercialhaskell/stack) tool for doing builds, which
12+includes built-in Stackage support.
13
13
14Add your package
14Add your package
15----------------
15----------------
16
16
17We welcome all packages, provided:
17We welcome all packages, provided:
18
18
19−* The package author/maintainer agrees to the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md).
19+* The package author/maintainer agrees to the [maintainers agreement](https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md).
20−* The package is buildable and testable from Hackage. We recommend [the Stack Travis script](http://docs.haskellstack.org/en/stable/GUIDE.html#travis-with-caching), which ensures a package is not accidentally incomplete.
20+* The package is buildable and testable from Hackage. We recommend [the Stack Travis script](https://docs.haskellstack.org/en/stable/travis_ci/), which ensures a package is not accidentally incomplete.
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
22−* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
22+* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
23
23
24−Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package).
24+Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md#adding-a-package).
25
25
26__NOTE__: There is an approximate 30 minute delay between a package uploading
26__NOTE__: There is an approximate 30 minute delay between a package uploading
27−to Hackage and being available to the Travis build script to check upper
27+to Hackage and being available to the Github workflow action to check upper
28bounds. If a pull request is marked as failed due to using an older version,
28bounds. If a pull request is marked as failed due to using an older version,
29please close and reopen the PR to retrigger a Travis build.
29please close and reopen the PR to retrigger a Travis build.
30
30
@@ -35,33 +35,22 @@ The Stackage project consists of multiple repositories. This repository
35contains the metadata on packages to be included in future builds and some
35contains the metadata on packages to be included in future builds and some
36project information. In addition, we have the following repositories:
36project information. In addition, we have the following repositories:
37
37
38−* [stackage-server](https://github.com/fpco/stackage-server) [![Build Status](https://travis-ci.org/fpco/stackage-server.svg?branch=master)](https://travis-ci.org/fpco/stackage-server)
38+* [stackage-server](https://github.com/fpco/stackage-server) [![Base image](https://github.com/fpco/stackage-server/actions/workflows/base.yml/badge.svg)](https://github.com/fpco/stackage-server/actions/workflows/base.yml)
39−* [stackage-curator](https://github.com/fpco/stackage-curator) [![Build Status](https://travis-ci.org/fpco/stackage-curator.svg?branch=master)](https://travis-ci.org/fpco/stackage-curator)
39+* [curator](https://github.com/commercialhaskell/curator) ![Build Status](https://github.com/commercialhaskell/curator/workflows/Runtime%20image/badge.svg)
40−* [stackage-types](https://github.com/fpco/stackage-types) [![Build Status](https://travis-ci.org/fpco/stackage-types.svg?branch=master)](https://travis-ci.org/fpco/stackage-types)
41−* [lts-haskell](https://github.com/fpco/lts-haskell)
40+* [lts-haskell](https://github.com/commercialhaskell/lts-haskell)
42−* [stackage-nightly](https://github.com/fpco/stackage-nightly)
41+* [stackage-snapshots](https://github.com/commercialhaskell/stackage-snapshots/)
43−
44−We also support some add-on tools to cabal-install to make its usage with
45−Stackage both easier and more secure:
46−
47−* [stackage-cli](https://github.com/fpco/stackage-cli) [![Build Status](https://travis-ci.org/fpco/stackage-cli.svg?branch=master)](https://travis-ci.org/fpco/stackage-cli)
48−* [stackage-update](https://github.com/fpco/stackage-update) [![Build Status](https://travis-ci.org/fpco/stackage-update.svg?branch=master)](https://travis-ci.org/fpco/stackage-update)
49−* [stackage-upload](https://github.com/fpco/stackage-upload) [![Build Status](https://travis-ci.org/fpco/stackage-upload.svg?branch=master)](https://travis-ci.org/fpco/stackage-upload)
50−* [stackage-install](https://github.com/fpco/stackage-install) [![Build Status](https://travis-ci.org/fpco/stackage-install.svg?branch=master)](https://travis-ci.org/fpco/stackage-install)
51−* [stackage-build-plan](https://github.com/fpco/stackage-build-plan) [![Build Status](https://travis-ci.org/fpco/stackage-build-plan.svg?branch=master)](https://travis-ci.org/fpco/stackage-build-plan)
52
42
53Curious how it all fits together? See the [Stackage data
43Curious how it all fits together? See the [Stackage data
54−flow](https://github.com/fpco/stackage/blob/master/DATA-FLOW.md).
44+flow](https://github.com/commercialhaskell/stackage/blob/master/DATA-FLOW.md).
55−
56
45
57Build the package set
46Build the package set
58---------------------
47---------------------
59
48
60Generally only the stackage build server run by the stackage curator
49Generally only the stackage build server run by the stackage curator
61−team and people intrested in incorporating stackage snapshots into an
50+team and people interested in incorporating stackage snapshots into an
62OS distribution need to build the entire package set. If you're
51OS distribution need to build the entire package set. If you're
63interested in trying this yourself, please check out
52interested in trying this yourself, please check out
64−[the curator guide](https://github.com/fpco/stackage/blob/master/CURATORS.md),
53+[the curator guide](https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md),
65though be aware that this is not a recommended practice and there
54though be aware that this is not a recommended practice and there
66likely will be problems you will need to debug yourself.
55likely will be problems you will need to debug yourself.
67
56
@@ -84,3 +73,70 @@ The following describes at a high level the series of steps for processing
841. Load up most recent build plan
731. Load up most recent build plan
852. Convert build plan into constraints for next build
742. Convert build plan into constraints for next build
863. Continue from step (3) above
753. Continue from step (3) above
76+
77+Frequently Asked Questions
78+--------------------------
79+
80+__Why is Stackage LTS still on an older version of GHC?__
81+
82+Typically it takes some months from a new major ghc release before
83+the Haskell ecosystem supports it fully enough that we can push it
84+to a new stable Stackage major version release. There can also be
85+ghc regressions that hold up a LTS major release.
86+
87+The lag for minor ghc releases should be less
88+but it still requires extra work and there is usually some delay - this also
89+allows for some community testing before updating LTS.
90+
91+__Why does Stackage have an older version of a package than Hackage?__
92+
93+There are a number of answers to this question:
94+
95+* Simplest reason: how old of a Stackage snapshot are you using? Once a
96+ snapshot is created, it's frozen for all time. So if you use
97+ nightly-2016-01-01, by the time you get to 2018, it will be pretty dated.
98+* If you're using an LTS snapshot: we lock down major versions when
99+ first creating an LTS run, so subsequent minor versions will not get
100+ new versions necessary. For example, if LTS 6.0 has `foo` version
101+ 1.2.3, and the author immediately thereafter releases a version
102+ 1.3.0 and never releases another 1.2.\* version, you'll never get
103+ another update in the LTS 6 line
104+* Sometimes we have upper bounds in place because other packages have
105+ problems with newer versions of dependencies. Open up the
106+ [build-constraints file](https://github.com/commercialhaskell/stackage/blob/master/build-constraints.yaml)
107+ and search for "Stackage upper bounds"
108+* Wired-in packages - those that ship with GHC and cannot be upgraded,
109+ and packages depending on them - are fixed to GHC versions. Common
110+ examples of this are containers and transformers. There's a lot more
111+ information on this in
112+ [an FP Complete blog post](https://tech.fpcomplete.com/blog/2014/05/lenient-lower-bounds)
113+
114+__How long do you maintain an LTS build?__
115+
116+We only guarantee that we will maintain a single LTS major version at
117+a time, and that it will be maintained for at least three months. This
118+is the
119+[originally proposed support window](https://tech.fpcomplete.com/blog/2014/12/backporting-bug-fixes),
120+and hasn't changed since then.
121+
122+That said, we do maintain the capability to keep multiple LTS runs
123+operational in parallel, and with LTS 6 and 7 in fact did so. We
124+aren't changing our guarantees yet on longevity of a release, but are
125+trying to push out the bounds a bit farther.
126+
127+__What time are Stackage snapshots published?__
128+
129+Stackage Nightly and LTS are not released at a fixed time of day, they get
130+pushed to stackage.org (and the metadata to the stackage-nightly and
131+stackage-lts github repos) when their builds finish on the Stackage build
132+server and the latest built haddocks have been synced over. This time varies
133+greatly depending on build times for package updates, bounds breakage,
134+problems with new packages being added and other build issues, etc. There are
135+days when a release does not happen. LTS releases tend to happen over the
136+weekend or early in the week.
137+
138+__Where to get help regarding uploading packages?__
139+
140+Please ask on the #stackage channel on the
141+[Haskell Foundation Slack](https://join.slack.com/t/haskell-foundation/shared_invite/zt-mjh76fw0-CEjg2NbyVE8rVQDvR~0F4A)
142+or open an issue or comment on the PR which uploads the package.
Stackage/Config.hsdeleted−8
@@ -1,8 +0,0 @@
1−{-
2−
3−NOTE: This module is no longer used for tracking packages included in Stackage.
4−To simplify the codebase, that information is now stored in the
5−build-constraints.yaml configuration file. The file should be self-explanatory.
6−Sorry for the inconvenience.
7−
8−-}
automated/.gitignore+2−12
@@ -1,12 +1,2 @@
1−/auth-token
1+/work/
2−/bin/
2+/*-build.log
3−/gitconfig
4−/hackage-creds
5−/ssh-nightly/
6−/ssh-lts/
7−/nighlty/
8−/lts-*/
9−/stackage-curator/
10−/stackage-update/
11−/aws.sh
12−/crondir/
automated/build.sh+75−55
@@ -1,11 +1,11 @@
1#!/usr/bin/env bash
1#!/usr/bin/env bash
2
2
3−set -eux
3+set -eu +x -o pipefail
4
4
5ROOT=$(cd $(dirname $0) ; pwd)
5ROOT=$(cd $(dirname $0) ; pwd)
6TARGET=$1
6TARGET=$1
7
7
8−source aws.sh
8+source work/aws.sh
9
9
10# For nightly-YYYY-MM-DD, tag should be nightly
10# For nightly-YYYY-MM-DD, tag should be nightly
11# For lts-X.Y, tag should be ltsX
11# For lts-X.Y, tag should be ltsX
@@ -13,47 +13,37 @@ SHORTNAME=$(echo $TARGET | cut -d- -f 1)
13if [ $SHORTNAME = "lts" ]
13if [ $SHORTNAME = "lts" ]
14then
14then
15 TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
15 TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
16+ WORKDIR=$ROOT/work/$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts-\1@')
16else
17else
17 TAG=$SHORTNAME
18 TAG=$SHORTNAME
19+ WORKDIR=$ROOT/work/$TAG
18fi
20fi
19
21
22+#IMAGE=commercialhaskell/stackage:$TAG
20−IMAGE=snoyberg/stackage:$TAG
23+IMAGE=ghcr.io/commercialhaskell/stackage/build:$TAG
21
24
22−PLAN_FILE=current-plan.yaml
25+PANTRY_DIR=$ROOT/work/stack/pantry
23−DOCMAP_FILE=current-docmap.yaml
24−BUNDLE_FILE=current.bundle
25−
26−CABAL_DIR=$ROOT/cabal
27−STACK_DIR=$ROOT/stack
26+STACK_DIR=$ROOT/work/stack
28−GHC_DIR=$ROOT/ghc
29−DOT_STACKAGE_DIR=$ROOT/dot-stackage
27+DOT_STACKAGE_DIR=$ROOT/work/dot-stackage
30−WORKDIR=$ROOT/$TAG/work
28+# ssh key is used for committing snapshots (and their constraints) to Github
31−EXTRA_BIN_DIR=$ROOT/extra-bin
32−SSH_DIR=$ROOT/ssh-$SHORTNAME
29+SSH_DIR=$ROOT/work/ssh
30+USERID=$(id -u)
33
31
34mkdir -p \
32mkdir -p \
35− "$CABAL_DIR" \
33+ "$PANTRY_DIR" \
36 "$STACK_DIR" \
34 "$STACK_DIR" \
37− "$GHC_DIR" \
38 "$DOT_STACKAGE_DIR" \
35 "$DOT_STACKAGE_DIR" \
39 "$WORKDIR" \
36 "$WORKDIR" \
40− "$EXTRA_BIN_DIR" \
41 "$SSH_DIR"
37 "$SSH_DIR"
42
38
43−GITCONFIG=$ROOT/gitconfig
39+GITCONFIG=$ROOT/work/gitconfig
44cat >$GITCONFIG <<EOF
40cat >$GITCONFIG <<EOF
45[user]
41[user]
46 email = michael+stackage-build@fpcomplete.com
42 email = michael+stackage-build@fpcomplete.com
47 name = Stackage Build host
43 name = Stackage Build host
48EOF
44EOF
49
45
50−cat >$SSH_DIR/known_hosts <<EOF
51−|1|Qn0iij8BnxGZXbyFSozS9zWkH+Q=|YrKKNp2KHO3/oc4UBFIe1zOvhDc= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
52−|1|RxBEt2ljiEppr019szMIhbY12m0=|0FZ2Oji1LphRbPLLEQhFzTmL69I= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
53−EOF
54−
55−AUTH_TOKEN=$ROOT/auth-token
56−HACKAGE_CREDS=$ROOT/hackage-creds
46+HACKAGE_CREDS=$ROOT/work/hackage-creds
57
47
58function require_400_file {
48function require_400_file {
59 if [ ! -f "$1" ]
49 if [ ! -f "$1" ]
@@ -66,23 +56,34 @@ function require_400_file {
66}
56}
67
57
68require_400_file "$SSH_DIR/id_rsa"
58require_400_file "$SSH_DIR/id_rsa"
69−require_400_file "$AUTH_TOKEN"
70require_400_file "$HACKAGE_CREDS"
59require_400_file "$HACKAGE_CREDS"
71
60
72−mkdir -p $ROOT/bin
61+mkdir -p $ROOT/work/bin
73−BINDIR=$(cd $ROOT/bin ; pwd)
62+BINDIR=$(cd $ROOT/work/bin ; pwd)
74(
63(
75cd $BINDIR
64cd $BINDIR
76−rm -f stackage-curator stackage-curator.bz2
65+rm -f curator stack *.bz2
77−wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
66+
78−bunzip2 stackage-curator.bz2
67+curl -L "https://github.com/commercialhaskell/curator/releases/download/commit-1ef870178f6a0544fe5a3fd23a83fc075aabd695/curator.bz2" | bunzip2 > curator
79−chmod +x stackage-curator
68+chmod +x curator
69+echo -n "curator version: "
70+docker run --rm -v $(pwd)/curator:/exe $IMAGE /exe --version
71+
72+curl -L https://github.com/commercialhaskell/stack/releases/download/v2.7.3/stack-2.7.3-linux-x86_64-bin > stack
73+chmod +x stack
74+echo -n "stack version: "
75+docker run --rm -v $(pwd)/stack:/exe $IMAGE /exe --version
80)
76)
81
77
78+# We share pantry directory between snapshots while the other content in .stack
79+# is stored separately (because e.g. Ubuntu releases between LTS and nightly
80+# could differ). Also the order of binds is important.
82−ARGS_COMMON="--rm -v $WORKDIR:$HOME/work -w $HOME/work -v $BINDIR/stackage-curator:/usr/bin/stackage-curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $EXTRA_BIN_DIR/stack:/usr/bin/stack:ro"
81+ARGS_COMMON="--rm -v $WORKDIR:$HOME/work -w $HOME/work -v $BINDIR/curator:/usr/bin/curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $BINDIR/stack:/usr/bin/stack:ro -v $STACK_DIR:$HOME/.stack -v $PANTRY_DIR:$HOME/.stack/pantry"
83−ARGS_PREBUILD="$ARGS_COMMON -u $USER -e HOME=$HOME -v $CABAL_DIR:$HOME/.cabal -v $STACK_DIR:$HOME/.stack -v $GHC_DIR:$HOME/.ghc -v $DOT_STACKAGE_DIR:$HOME/.stackage"
82+ARGS_PREBUILD="$ARGS_COMMON -u $USERID -e HOME=$HOME -v $DOT_STACKAGE_DIR:$HOME/.stackage"
84−ARGS_BUILD="$ARGS_COMMON -v $CABAL_DIR:$HOME/.cabal:ro -v $STACK_DIR:$HOME/.stack:ro -v $GHC_DIR:$HOME/.ghc:ro"
83+ARGS_BUILD="$ARGS_COMMON"
84+# instance-data is an undocumented feature of S3 used by amazonka,
85+# see https://github.com/brendanhay/amazonka/issues/271
85−ARGS_UPLOAD="$ARGS_COMMON -u $USER -e HOME=$HOME -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -v $AUTH_TOKEN:/auth-token:ro -v $HACKAGE_CREDS:/hackage-creds:ro -v $DOT_STACKAGE_DIR:$HOME/.stackage -v $SSH_DIR:$HOME/.ssh:ro -v $GITCONFIG:$HOME/.gitconfig:ro -v $CABAL_DIR:$HOME/.cabal:ro -v $STACK_DIR:$HOME/.stack:ro"
86+ARGS_UPLOAD="$ARGS_COMMON -u $USERID -e HOME=$HOME -v $HACKAGE_CREDS:/hackage-creds:ro -v $DOT_STACKAGE_DIR:$HOME/.stackage -v $SSH_DIR:$HOME/.ssh:ro -v $GITCONFIG:$HOME/.gitconfig:ro -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -v $DOT_STACKAGE_DIR:/dot-stackage"
86
87
87# Make sure we actually need this snapshot. We only check this for LTS releases
88# Make sure we actually need this snapshot. We only check this for LTS releases
88# since, for nightlies, we'd like to run builds even if they are unnecessary to
89# since, for nightlies, we'd like to run builds even if they are unnecessary to
@@ -90,49 +91,68 @@ ARGS_UPLOAD="$ARGS_COMMON -u $USER -e HOME=$HOME -e AWS_ACCESS_KEY_ID=$AWS_ACCES
90# below for why this is safe.)
91# below for why this is safe.)
91if [ $SHORTNAME = "lts" ]
92if [ $SHORTNAME = "lts" ]
92then
93then
93− docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec stackage-curator check-target-available --target $TARGET"
94+ docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator check-target-available --target $TARGET"
94fi
95fi
95
96
96−# Get latest stack
97−curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C $EXTRA_BIN_DIR '*/stack'
98
97
99−# Do all of the pre-build actions:
98+# Determine the new build plan unless NOPLAN is set
100#
99#
101−# * Update the package index
100+# * Update the package index (unless LTS)
102# * Create a new plan
101# * Create a new plan
103−# * Check that the plan is valid
104−# * Fetch all needed tarballs (the build step does not have write access to the tarball directory)
105−# * Do a single unpack to create the package index cache (again due to directory perms)
106−if [ "${NOPLAN:-}x" = "x" ]
102+if [ "${NOPLAN:-}x" = "1x" ]
103+then
104+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator snapshot-incomplete --target $TARGET && curator snapshot"
105+elif [ "${NOPLAN:-}x" = "2x" ]
106+then
107+ docker run $ARGS_PREBUILD $IMAGE curator snapshot
108+elif [ $SHORTNAME = "lts" ]
107then
109then
108− docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "stack update && stackage-curator create-plan --plan-file $PLAN_FILE --target $TARGET ${CONSTRAINTS:-} && stackage-curator check --plan-file $PLAN_FILE && stackage-curator fetch --plan-file $PLAN_FILE && cd /tmp && exec stack unpack random"
110+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator constraints --target $TARGET && curator snapshot-incomplete --target $TARGET && curator snapshot"
111+else
112+ docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "curator update && curator constraints --target $TARGET && curator snapshot-incomplete --target $TARGET && curator snapshot"
109fi
113fi
110
114
115+
116+# Do the rest of the pre-build actions:
117+#
118+# * Check that the snapshot is valid
119+# * Fetch and unpack all needed tarballs (the build step does not have write access to the tarball directory)
120+docker run $ARGS_PREBUILD $IMAGE /bin/bash -c 'GHCVER=$(sed -n "s/^ghc-version: \(.*\)/\1/p" constraints.yaml) && stack setup ghc-$GHCVER --verbosity=error && stack exec --resolver=ghc-$GHCVER curator check-snapshot && curator unpack'
121+
122+case $SHORTNAME in
123+ lts) JOBS=1 ;;
124+ nightly) JOBS=2 ;;
125+esac
126+
111# Now do the actual build. We need to first set the owner of the home directory
127# Now do the actual build. We need to first set the owner of the home directory
112# correctly, so we run the command as root, change owner, and then use sudo to
128# correctly, so we run the command as root, change owner, and then use sudo to
113# switch back to the current user
129# switch back to the current user
114−docker run $ARGS_BUILD $IMAGE /bin/bash -c "chown $USER $HOME && exec sudo -E -u $USER env \"HOME=$HOME\" \"PATH=\$PATH\" stackage-curator make-bundle --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --bundle-file $BUNDLE_FILE --target $TARGET"
130+docker run $ARGS_BUILD $IMAGE nice -n 15 /bin/bash -c "chown $USER $HOME && exec sudo -E -u $USER env \"HOME=$HOME\" \"PATH=\$PATH\" curator build --jobs $JOBS" 2>&1 | tee "$SHORTNAME-build.log"
115
131
116# Make sure we actually need this snapshot. We used to perform this check
132# Make sure we actually need this snapshot. We used to perform this check
117# exclusively before building. Now we perform it after as well for the case of
133# exclusively before building. Now we perform it after as well for the case of
118# nightly, where we don't perform this check beforehand. This is also slightly
134# nightly, where we don't perform this check beforehand. This is also slightly
119# safer, in case someone else already uploaded a specific snapshot while we
135# safer, in case someone else already uploaded a specific snapshot while we
120# were building.
136# were building.
121−docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec stackage-curator check-target-available --target $TARGET"
137+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator check-target-available --target $TARGET"
122
138
123# Successful build, so we need to:
139# Successful build, so we need to:
124#
140#
125# * Upload the docs to S3
141# * Upload the docs to S3
126−# * Upload the 00-index.tar file to S3 (TODO: this is probably no longer necessary, since snapshots never modify .cabal files)
127−# * Upload the new plan .yaml file to the appropriate Github repo
142+# * Upload the new snapshot .yaml file to the appropriate Github repo, also upload its constraints
128−# * Register as a new Hackage distro
129−docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "stackage-curator upload-docs --target $TARGET --bundle-file $BUNDLE_FILE && stackage-curator upload-index --plan-file $PLAN_FILE --target $TARGET && stackage-curator upload-github --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --target $TARGET && exec stackage-curator hackage-distro --plan-file $PLAN_FILE --target $TARGET"
143+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "curator upload-docs --target $TARGET && curator upload-github --target $TARGET"
144+
145+# fixed in https://github.com/commercialhaskell/curator/pull/24
146+docker run $ARGS_UPLOAD $IMAGE /bin/bash -c "exec curator hackage-distro --target $TARGET"
147+
148+# Build and push docker image fpco/stack-build & fpco/stack-build-small for current release
130
149
131if [ $SHORTNAME = "lts" ]
150if [ $SHORTNAME = "lts" ]
132then
151then
133− echo "Running cron.sh (hiding verbose output)"
152+ $ROOT/dockerfiles/build.sh $TARGET
134− ./cron.sh | grep -v '^Skipping'
153+ $ROOT/dockerfiles/build.sh --push $TARGET
135− echo "done."
154+ $ROOT/dockerfiles/build.sh --push --small $TARGET
136fi
155fi
137
156
157+echo -n "Completed at "
138date
158date
automated/check-cabal.shdeleted−72
@@ -1,72 +0,0 @@
1−#!/usr/bin/env bash
2−
3−# This script is intended for testing Cabal HEAD against a Stackage snapshot.
4−
5−set -eux
6−
7−ROOT=$(cd $(dirname $0) ; pwd)
8−TARGET=$1
9−
10−# For nightly-YYYY-MM-DD, tag should be nightly
11−# For lts-X.Y, tag should be ltsX
12−SHORTNAME=$(echo $TARGET | cut -d- -f 1)
13−if [ $SHORTNAME = "lts" ]
14−then
15− TAG=$(echo $TARGET | sed 's@^lts-\([0-9]*\)\.[0-9]*@lts\1@')
16− PLAN_URL=https://raw.githubusercontent.com/fpco/lts-haskell/master/$TARGET.yaml
17−else
18− TAG=$SHORTNAME
19− PLAN_URL=https://raw.githubusercontent.com/fpco/stackage-nightly/master/$TARGET.yaml
20−fi
21−
22−IMAGE=snoyberg/stackage:$TAG
23−
24−PLAN_FILE=$TARGET-plan.yaml
25−DOCMAP_FILE=$TARGET-docmap.yaml
26−BUNDLE_FILE=$TARGET.bundle=
27−
28−CABAL_DIR=$ROOT/cabal
29−STACK_DIR=$ROOT/stack
30−GHC_DIR=$ROOT/ghc
31−DOT_STACKAGE_DIR=$ROOT/dot-stackage
32−WORKDIR=$ROOT/$TAG/work
33−EXTRA_BIN_DIR=$ROOT/extra-bin
34−
35−mkdir -p \
36− "$CABAL_DIR" \
37− "$STACK_DIR" \
38− "$GHC_DIR" \
39− "$DOT_STACKAGE_DIR" \
40− "$WORKDIR" \
41− "$EXTRA_BIN_DIR"
42−
43−curl "$PLAN_URL" > $WORKDIR/$PLAN_FILE
44−
45−mkdir -p $ROOT/bin
46−BINDIR=$(cd $ROOT/bin ; pwd)
47−(
48−cd $BINDIR
49−rm -f stackage-curator stackage-curator.bz2
50−wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2
51−bunzip2 stackage-curator.bz2
52−chmod +x stackage-curator
53−)
54−
55−ARGS_COMMON="--rm -v $WORKDIR:/home/stackage/work -w /home/stackage/work -v $BINDIR/stackage-curator:/usr/bin/stackage-curator:ro -v /etc/passwd:/etc/passwd:ro -v /etc/group:/etc/group:ro -v $EXTRA_BIN_DIR:/home/stackage/bin:ro"
56−ARGS_PREBUILD="$ARGS_COMMON -u $USER -v $CABAL_DIR:/home/stackage/.cabal -v $STACK_DIR:/home/stackage/.stack -v $GHC_DIR:/home/stackage/.ghc -v $DOT_STACKAGE_DIR:/home/stackage/.stackage"
57−ARGS_BUILD="$ARGS_COMMON -v $CABAL_DIR:/home/stackage/.cabal:ro -v $STACK_DIR:/home/stackage/.stack:ro -v $GHC_DIR:/home/stackage/.ghc:ro"
58−
59−# Get latest stack
60−curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C $EXTRA_BIN_DIR '*/stack'
61−
62−# Do all of the pre-build actions:
63−#
64−# * Update the package index
65−# * Fetch all needed tarballs (the build step does not have write access to the tarball directory)
66−# * Do a single unpack to create the package index cache (again due to directory perms)
67−docker run $ARGS_PREBUILD $IMAGE /bin/bash -c "/home/stackage/bin/stack update && stackage-curator fetch --plan-file $PLAN_FILE && cd /tmp && /home/stackage/bin/stack unpack random"
68−
69−# Now do the actual build. We need to first set the owner of the home directory
70−# correctly, so we run the command as root, change owner, and then use sudo to
71−# switch back to the current user
72−docker run $ARGS_BUILD $IMAGE /bin/bash -c "chown $USER /home/stackage && sudo -E -u $USER env \"PATH=\$PATH:/home/stackage/bin\" stackage-curator make-bundle --plan-file $PLAN_FILE --docmap-file $DOCMAP_FILE --bundle-file $BUNDLE_FILE --target $TARGET --cabal-from-head"
automated/cron.shdeleted−15
@@ -1,15 +0,0 @@
1−#!/usr/bin/env bash
2−
3−set -eux
4−
5−CRONDIR=$(pwd)/crondir
6−mkdir -p $CRONDIR
7−source aws.sh
8−
9−echo "Running stackage-server-cron..."
10−echo "('tail -f $CRONDIR/stackage-server-cron.log' to watch)"
11−docker run --rm \
12− -v $CRONDIR:/home/ubuntu \
13− -w /home/ubuntu \
14− fpco/stackage-server-prod:latest \
15− bash -c "useradd $(whoami) -u $(id -u); sudo -u $(whoami) env HOME=/home/ubuntu AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY bash -c '/usr/local/bin/stackage-server-cron 2>&1 | tee -a /home/ubuntu/stackage-server-cron.log'"
automated/dockerfiles/README.mdnew file+33
@@ -0,0 +1,33 @@
1+dockerfiles/stack-build
2+=======================
3+
4+Build [fpco/stack-build](https://hub.docker.com/r/fpco/stack-build/) Docker
5+images. This script and its Dockerfiles are used for building images for LTS >=
6+8.0.
7+
8+Usage
9+-----
10+
11+ ./build.sh [--push] [--dry-run] [--small] lts-X.Y"
12+
13+Options
14+-------
15+
16+`--help`: show this help
17+
18+`--push`: push the image after building/tagging it
19+
20+`--dry-run`: print the important commands that will be run, but don't actually
21+ run them
22+
23+`--small`: build the small variant of the image
24+
25+Argument
26+---------
27+
28+The image for the selected LTS version will be built.
29+
30+This searches for a Dockerfile for the selected snapshot in
31+`lts-X.Y/Dockerfile`, and if one isn't found reuses the same image as built the
32+most recent `lts-X.Y/Dockerfile` found for earlier minor versions of the same
33+major version.
automated/dockerfiles/build.shnew file+177
@@ -0,0 +1,177 @@
1+#!/usr/bin/env bash
2+
3+set -eu
4+cd "$(dirname "$0")"
5+
6+#
7+# Constants and defaults
8+#
9+
10+DOCKER_REPO=fpco/stack-build
11+PUSH=false
12+DRY=false
13+VARIANT=build
14+
15+#
16+# Functions
17+#
18+
19+# Print usage information and exit with failure status. First argument is an
20+# error message.
21+usage() {
22+ echo "$0: $1" >&2
23+ echo
24+ echo "Usage: $0 [--push] [--dry-run] [--small] lts-X.Y]"
25+ echo "See README.md for more information."
26+ echo
27+ exit 1
28+}
29+
30+# Print a command, and if --dry-run disabled also run it
31+dry() {
32+ echo ">>> $*"
33+ [[ $DRY = true ]] || "$@"
34+}
35+
36+# Push an image if --push is enabled (otherwise do nothing)
37+push() {
38+ [[ $PUSH = false ]] || dry docker push "$1"
39+}
40+
41+# Tag an image, and then push it if --push is enabled
42+tagpush() {
43+ dry docker tag "$1" "$2"
44+ push "$2"
45+}
46+
47+#
48+# Parse command-line
49+#
50+
51+LTS_SLUG_ARG=
52+while [[ $# -gt 0 ]]; do
53+ case "$1" in
54+ --push)
55+ PUSH=true
56+ shift
57+ ;;
58+ --dry-run)
59+ DRY=true
60+ shift
61+ ;;
62+ --small)
63+ VARIANT=small
64+ DOCKER_REPO=fpco/stack-build-small
65+ shift
66+ ;;
67+ -*)
68+ usage "Unknown option: $1"
69+ ;;
70+ *)
71+ if [[ -n "$LTS_SLUG_ARG" ]]; then
72+ usage "Cannot specify multiple snaphots: $1"
73+ fi
74+ LTS_SLUG_ARG="$1"
75+ shift
76+ ;;
77+ esac
78+done
79+
80+case "$LTS_SLUG_ARG" in
81+ "")
82+ usage "Missing argument: snapshot"
83+ ;;
84+ lts-*.*)
85+ LTS_SLUG="$LTS_SLUG_ARG"
86+ ;;
87+ *)
88+ echo "$0: Wrong snapshot format: $LTS_SLUG_ARG" >&2
89+ exit 1
90+ ;;
91+esac
92+
93+#
94+# Determine if lts slug is latest
95+#
96+
97+SNAPSHOTS="$(mktemp "lts-snapshots.json.XXXXXX")"
98+trap "rm -f \"$SNAPSHOTS\"" EXIT
99+wget -qO- https://www.stackage.org/download/lts-snapshots.json >"$SNAPSHOTS"
100+
101+LTS_VERSION="${LTS_SLUG#lts-}"
102+LTS_MAJOR="${LTS_VERSION%.*}"
103+LTS_MINOR="${LTS_VERSION#*.}"
104+
105+#
106+# Determine latest LTS version
107+#
108+
109+if [[ ! -x "$HOME/.local/bin/jq" ]]; then
110+ mkdir -p $HOME/.local/bin
111+ if [[ "$(uname)" = "Darwin" ]]; then
112+ curl -o $HOME/.local/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.6/jq-osx-amd64
113+ else
114+ curl -o $HOME/.local/bin/jq -L https://github.com/stedolan/jq/releases/download/jq-1.6/jq-linux64
115+ fi
116+ chmod +x $HOME/.local/bin/jq
117+fi
118+
119+LATEST_LTS_SLUG=$($HOME/.local/bin/jq -r ".[\"lts\"]" $SNAPSHOTS)
120+LATEST_LTS_VERSION="${LATEST_LTS_SLUG#lts-}"
121+LATEST_LTS_MAJOR="${LATEST_LTS_VERSION%.*}"
122+LATEST_LTS_MINOR="${LATEST_LTS_VERSION#*.}"
123+
124+#
125+# Determine latest minor version of the selected major version
126+#
127+
128+MAJOR_LATEST_LTS_SLUG=$(jq -r ".[\"lts-$LTS_MAJOR\"]" $SNAPSHOTS)
129+MAJOR_LATEST_LTS_VERSION="${MAJOR_LATEST_LTS_SLUG#lts-}"
130+MAJOR_LATEST_LTS_MAJOR="${MAJOR_LATEST_LTS_VERSION%.*}"
131+MAJOR_LATEST_LTS_MINOR="${MAJOR_LATEST_LTS_VERSION#*.}"
132+
133+#
134+# Find the Dockerfile for the selected snapshot
135+#
136+
137+if [[ -s "$LTS_SLUG/Dockerfile" ]]; then
138+
139+ # If there is an exact match, build and push that image
140+
141+ sed "s/\\\$DOCKER_REPO/$(echo $DOCKER_REPO|sed 's/\//\\\//')/g" "$LTS_SLUG/Dockerfile" >"$LTS_SLUG/Dockerfile.sub"
142+ dry docker build -t "$DOCKER_REPO:$LTS_SLUG" --build-arg "DOCKER_REPO=$DOCKER_REPO" --build-arg "LTS_SLUG=$LTS_SLUG" --build-arg "VARIANT=$VARIANT" -f "$LTS_SLUG/Dockerfile.sub" "$LTS_SLUG"
143+ rm -f "$LTS_SLUG/Dockerfile.sub"
144+ push "$DOCKER_REPO:$LTS_SLUG"
145+else
146+
147+ # If no exact match, find a dockerfile for any earlier minor version of the
148+ # selected major version, and just create a new tag from version's image with the selected
149+ # minor version (assuming that nothing needs to change), and push it.
150+
151+ minor=$(( LTS_MINOR - 1 ))
152+ while [[ ! -s "lts-$LTS_MAJOR.$minor/Dockerfile" && $minor -ge 0 ]]; do
153+ minor=$(( minor - 1 ))
154+ done
155+ if [[ $minor -lt 0 ]]; then
156+ echo "$0: Cannot find any Dockerfile for LTS major version" >&2
157+ exit 1
158+ fi
159+ dry docker pull "$DOCKER_REPO:lts-$LTS_MAJOR.$minor" || true
160+ tagpush "$DOCKER_REPO:lts-$LTS_MAJOR.$minor" "$DOCKER_REPO:$LTS_SLUG"
161+fi
162+
163+#
164+# Create and push additional tags
165+#
166+
167+# If we select the latest minor version for the selected major version, then
168+# also create and push an 'lts-X' tag.
169+if [[ $LTS_MINOR -ge $MAJOR_LATEST_LTS_MINOR ]]; then
170+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts-$LTS_MAJOR"
171+fi
172+
173+# If we selected the latest LTS snapshot, also create and push the 'lts' and 'latest' tags.
174+if [[ "$LTS_MAJOR" = "$LATEST_LTS_MAJOR" ]] && [[ $LTS_MINOR -ge $LATEST_LTS_MINOR ]]; then
175+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:lts"
176+ tagpush "$DOCKER_REPO:$LTS_SLUG" "$DOCKER_REPO:latest"
177+fi
automated/dockerfiles/lts-10.0/Dockerfilenew file+67
@@ -0,0 +1,67 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.2.2
6+ARG LTS_SLUG=lts-10.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG STACK_VERSION=1.6.3
9+ARG BOOTSTRAP_COMMIT=a8234cb586c3022099a3b0155275ed067df00f72
10+ARG DEBIAN_FRONTEND=noninteractive
11+
12+#
13+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
14+#
15+
16+ENV LANG=C.UTF-8 \
17+ LC_ALL=C.UTF-8 \
18+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
19+
20+#
21+# Use Stackage's debian-bootstrap.sh script to install system libraries and
22+# tools required to build any Stackage package.
23+#
24+
25+RUN apt-get update && \
26+ apt-get install -y wget && \
27+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Create symlink to help tools find GHC documentation
32+#
33+
34+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
35+
36+#
37+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
38+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
39+# files that some of these tools require.
40+#
41+
42+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
43+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
44+ cd $HOME/.stack && \
45+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
46+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
47+
48+#
49+# Install 'pid1' init daemon
50+#
51+
52+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
53+ chown root:root /usr/local/sbin && \
54+ chown root:root /usr/local/sbin/pid1
55+
56+#
57+# Install Stack
58+#
59+
60+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
61+
62+#
63+# Set up pid1 entrypoint and default command
64+#
65+
66+ENTRYPOINT ["/usr/local/sbin/pid1"]
67+CMD ["bash"]
automated/dockerfiles/lts-10.1/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-10.0
2+ARG STACK_VERSION=1.6.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-10.5/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-10.0
2+ARG STACK_VERSION=1.6.5
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-11.0/Dockerfilenew file+67
@@ -0,0 +1,67 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.2.2
6+ARG LTS_SLUG=lts-11.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG STACK_VERSION=1.6.5
9+ARG BOOTSTRAP_COMMIT=13ab2b86779c98598e96af7f4c4b9653ba280be5
10+ARG DEBIAN_FRONTEND=noninteractive
11+
12+#
13+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
14+#
15+
16+ENV LANG=C.UTF-8 \
17+ LC_ALL=C.UTF-8 \
18+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
19+
20+#
21+# Use Stackage's debian-bootstrap.sh script to install system libraries and
22+# tools required to build any Stackage package.
23+#
24+
25+RUN apt-get update && \
26+ apt-get install -y wget && \
27+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Create symlink to help tools find GHC documentation
32+#
33+
34+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
35+
36+#
37+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
38+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
39+# files that some of these tools require.
40+#
41+
42+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
43+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
44+ cd $HOME/.stack && \
45+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
46+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
47+
48+#
49+# Install 'pid1' init daemon
50+#
51+
52+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
53+ chown root:root /usr/local/sbin && \
54+ chown root:root /usr/local/sbin/pid1
55+
56+#
57+# Install Stack
58+#
59+
60+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
61+
62+#
63+# Set up pid1 entrypoint and default command
64+#
65+
66+ENTRYPOINT ["/usr/local/sbin/pid1"]
67+CMD ["bash"]
automated/dockerfiles/lts-11.22/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-11.6
2+ARG STACK_VERSION=1.9.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-11.6/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-11.5
2+ARG STACK_VERSION=1.7.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.0/Dockerfilenew file+69
@@ -0,0 +1,69 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.4.3
6+ARG LTS_SLUG=lts-12.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.7.1
9+ARG CUDA_VERSION=8.0
10+ARG BOOTSTRAP_COMMIT=56c62ccbf31229ee2b09d3a0b4cd2ad94e7406a8
11+ARG DEBIAN_FRONTEND=noninteractive
12+
13+#
14+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
15+#
16+
17+ENV LANG=C.UTF-8 \
18+ LC_ALL=C.UTF-8 \
19+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
20+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
21+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
22+#
23+# Use Stackage's debian-bootstrap.sh script to install system libraries and
24+# tools required to build any Stackage package.
25+#
26+
27+RUN apt-get update && \
28+ apt-get install -y wget && \
29+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
30+ rm -rf /var/lib/apt/lists/*
31+
32+#
33+# Create symlink to help tools find GHC documentation
34+#
35+
36+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
37+
38+#
39+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
40+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
41+# files that some of these tools require.
42+#
43+
44+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
45+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
46+ cd $HOME/.stack && \
47+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
48+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
49+
50+#
51+# Install 'pid1' init daemon
52+#
53+
54+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
55+ chown root:root /usr/local/sbin && \
56+ chown root:root /usr/local/sbin/pid1
57+
58+#
59+# Install Stack
60+#
61+
62+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
63+
64+#
65+# Set up pid1 entrypoint and default command
66+#
67+
68+ENTRYPOINT ["/usr/local/sbin/pid1"]
69+CMD ["bash"]
automated/dockerfiles/lts-12.13/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-12.0
2+ARG STACK_VERSION=1.9.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.15/Dockerfilenew file+14
@@ -0,0 +1,14 @@
1+FROM fpco/stack-build:lts-12.0
2+ARG STACK_VERSION=1.9.1
3+ARG GHC_VERSION=8.4.4
4+RUN apt-get update && \
5+ apt-get install -y \
6+ ghc-$GHC_VERSION \
7+ ghc-$GHC_VERSION-dyn \
8+ ghc-$GHC_VERSION-htmldocs \
9+ ghc-$GHC_VERSION-prof && \
10+ rm -rf /var/lib/apt/lists/*
11+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
12+RUN ln -s ghc-$GHC_VERSION /opt/ghc/$GHC_VERSION/share/doc/ghc
13+ARG CUDA_VERSION=8.0
14+ENV PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
automated/dockerfiles/lts-12.21/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-12.15
2+ARG STACK_VERSION=1.9.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-12.26/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.4.4
6+ARG LTS_SLUG=lts-12.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=8.0
10+ARG BOOTSTRAP_COMMIT=7f982f63a3734ddb2a7cbbc52b8cec983c496efa
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+#
24+# Use Stackage's debian-bootstrap.sh script to install system libraries and
25+# tools required to build any Stackage package.
26+#
27+
28+RUN apt-get update && \
29+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
30+ if [ "$VARIANT" = "small" ]; then \
31+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
32+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
34+ apt-get update && \
35+ apt-get install -y --no-install-recommends \
36+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
37+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
38+ libtinfo-dev; \
39+ else \
40+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash; \
41+ fi && \
42+ rm -rf /var/lib/apt/lists/*
43+
44+#
45+# Create symlink to help tools find GHC documentation
46+#
47+
48+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
49+
50+#
51+# Install Stack
52+#
53+
54+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
55+
56+#
57+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
58+#
59+
60+RUN mkdir /etc/stack/ && \
61+ echo "system-ghc: true" >/etc/stack/config.yaml
62+
63+#
64+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
65+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
66+# files that some of these tools require.
67+#
68+
69+RUN export STACK_ROOT=/usr/local/lib/stack && \
70+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
71+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-13.0/Dockerfilenew file+69
@@ -0,0 +1,69 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.3
6+ARG LTS_SLUG=lts-13.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=26b29f2862462afd47fb916ed0a2c2a6844ebca9
11+ARG DEBIAN_FRONTEND=noninteractive
12+
13+#
14+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
15+#
16+
17+ENV LANG=C.UTF-8 \
18+ LC_ALL=C.UTF-8 \
19+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
20+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
21+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
22+#
23+# Use Stackage's debian-bootstrap.sh script to install system libraries and
24+# tools required to build any Stackage package.
25+#
26+
27+RUN apt-get update && \
28+ apt-get install -y wget && \
29+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
30+ rm -rf /var/lib/apt/lists/*
31+
32+#
33+# Create symlink to help tools find GHC documentation
34+#
35+
36+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
37+
38+#
39+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
40+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
41+# files that some of these tools require.
42+#
43+
44+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
45+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
46+ cd $HOME/.stack && \
47+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
48+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
49+
50+#
51+# Install 'pid1' init daemon
52+#
53+
54+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
55+ chown root:root /usr/local/sbin && \
56+ chown root:root /usr/local/sbin/pid1
57+
58+#
59+# Install Stack
60+#
61+
62+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
63+
64+#
65+# Set up pid1 entrypoint and default command
66+#
67+
68+ENTRYPOINT ["/usr/local/sbin/pid1"]
69+CMD ["bash"]
automated/dockerfiles/lts-13.12/Dockerfilenew file+93
@@ -0,0 +1,93 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.4
6+ARG LTS_SLUG=lts-13.11
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=9f2b7ab95c711794257b059604e80ab9ad3c0c45
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+
24+#
25+# Use Stackage's debian-bootstrap.sh script to install system libraries and
26+# tools required to build any Stackage package.
27+#
28+
29+RUN apt-get update && \
30+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
31+ if [ "$VARIANT" = "small" ]; then \
32+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
34+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
35+ apt-get update && \
36+ apt-get install -y --no-install-recommends \
37+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
38+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
39+ libtinfo-dev; \
40+ else \
41+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.3$/GHCVER=$GHC_VERSION/" | bash && \
42+ # Add g++ version required for building 'double-conversion' \
43+ # (see https://github.com/commercialhaskell/stack/issues/4470) \
44+ apt-get install -y g++-7; \
45+ fi && \
46+ rm -rf /var/lib/apt/lists/*
47+
48+#
49+# Create symlink to help tools find GHC documentation
50+#
51+
52+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
53+
54+#
55+# Install Stack
56+#
57+
58+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
59+
60+#
61+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
62+#
63+
64+RUN mkdir /etc/stack/ && \
65+ echo "system-ghc: true" >/etc/stack/config.yaml
66+
67+#
68+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
69+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
70+# files that some of these tools require.
71+#
72+
73+RUN export STACK_ROOT=/usr/local/lib/stack && \
74+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
75+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
76+ cd $STACK_ROOT && \
77+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
78+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
79+
80+#
81+# Install 'pid1' init daemon
82+#
83+
84+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
85+ chown root:root /usr/local/sbin && \
86+ chown root:root /usr/local/sbin/pid1
87+
88+#
89+# Set up pid1 entrypoint and default command
90+#
91+
92+ENTRYPOINT ["/usr/local/sbin/pid1"]
93+CMD ["bash"]
automated/dockerfiles/lts-13.20/Dockerfilenew file+93
@@ -0,0 +1,93 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-13.20
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=1.9.3
9+ARG CUDA_VERSION=10.0
10+ARG BOOTSTRAP_COMMIT=9f2b7ab95c711794257b059604e80ab9ad3c0c45
11+ARG DEBIAN_FRONTEND=noninteractive
12+ARG VARIANT=build
13+
14+#
15+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
16+#
17+
18+ENV LANG=C.UTF-8 \
19+ LC_ALL=C.UTF-8 \
20+ PATH=/root/.cabal/bin:/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:/opt/ghc/$GHC_VERSION/bin:$PATH \
21+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
22+ LD_LIBRARY_PATH=/usr/local/cuda-$CUDA_VERSION/lib64:/usr/local/cuda-$CUDA_VERSION/nvvm/lib64
23+
24+#
25+# Use Stackage's debian-bootstrap.sh script to install system libraries and
26+# tools required to build any Stackage package.
27+#
28+
29+RUN apt-get update && \
30+ apt-get install -y --no-install-recommends wget netbase ca-certificates && \
31+ if [ "$VARIANT" = "small" ]; then \
32+ echo "deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
33+ echo "deb-src http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main" >>/etc/apt/sources.list && \
34+ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 063DAB2BDC0B3F9FCEBC378BFF3AEACEF6F88286 && \
35+ apt-get update && \
36+ apt-get install -y --no-install-recommends \
37+ ghc-$GHC_VERSION ghc-$GHC_VERSION-htmldocs \
38+ g++ gcc libc6-dev libffi-dev libgmp-dev make xz-utils zlib1g-dev git gnupg \
39+ libtinfo-dev; \
40+ else \
41+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.3$/GHCVER=$GHC_VERSION/" | bash && \
42+ # Add g++ version required for building 'double-conversion' \
43+ # (see https://github.com/commercialhaskell/stack/issues/4470) \
44+ apt-get install -y g++-7; \
45+ fi && \
46+ rm -rf /var/lib/apt/lists/*
47+
48+#
49+# Create symlink to help tools find GHC documentation
50+#
51+
52+RUN ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION
53+
54+#
55+# Install Stack
56+#
57+
58+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
59+
60+#
61+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
62+#
63+
64+RUN mkdir /etc/stack/ && \
65+ echo "system-ghc: true" >/etc/stack/config.yaml
66+
67+#
68+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
69+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
70+# files that some of these tools require.
71+#
72+
73+RUN export STACK_ROOT=/usr/local/lib/stack && \
74+ stack --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
75+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
76+ cd $STACK_ROOT && \
77+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
78+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
79+
80+#
81+# Install 'pid1' init daemon
82+#
83+
84+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
85+ chown root:root /usr/local/sbin && \
86+ chown root:root /usr/local/sbin/pid1
87+
88+#
89+# Set up pid1 entrypoint and default command
90+#
91+
92+ENTRYPOINT ["/usr/local/sbin/pid1"]
93+CMD ["bash"]
automated/dockerfiles/lts-13.25/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-13.24
2+ARG STACK_VERSION=2.1.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-13.27/Dockerfilenew file+9
@@ -0,0 +1,9 @@
1+FROM $DOCKER_REPO:lts-13.26
2+ARG VARIANT
3+RUN if [ "$VARIANT" = "small" ]; then \
4+ apt-get update && \
5+ apt-get install -y --no-install-recommends sudo && \
6+ rm -rf /var/lib/apt/lists/*; \
7+ fi
8+ARG STACK_VERSION=2.1.3
9+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64-static.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-13.3/Dockerfilenew file+10
@@ -0,0 +1,10 @@
1+FROM fpco/stack-build:lts-13.0
2+
3+#
4+# Add g++ version required for building 'double-conversion'
5+# (see https://github.com/commercialhaskell/stack/issues/4470)
6+#
7+
8+RUN apt-get update && \
9+ apt-get install -y g++-7 && \
10+ rm -rf /var/lib/apt/lists/*
automated/dockerfiles/lts-14.0/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-14.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_VERSION=3.9
12+ARG BOOTSTRAP_COMMIT=d4143f1845f26e8e99d0a1a8134d6ff535ab98b2
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:/usr/lib/llvm-$LLVM_VERSION/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-14.0/Dockerfile.subnew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.6.5
6+ARG LTS_SLUG=lts-14.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_VERSION=3.9
12+ARG BOOTSTRAP_COMMIT=d4143f1845f26e8e99d0a1a8134d6ff535ab98b2
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:/usr/lib/llvm-$LLVM_VERSION/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-15.0/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.2
6+ARG LTS_SLUG=lts-15.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=77790c7bcb21fd8875871245df5c5c39a55ec0c1
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-15.10/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-15.5
2+ARG STACK_VERSION=2.3.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-15.5/Dockerfilenew file+89
@@ -0,0 +1,89 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-15.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.1.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=77790c7bcb21fd8875871245df5c5c39a55ec0c1
13+ARG DEBIAN_FRONTEND=noninteractive
14+ARG VARIANT=build
15+ARG STACK_ROOT=/home/stackage/.stack
16+
17+#
18+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
19+#
20+
21+ENV LANG=C.UTF-8 \
22+ LC_ALL=C.UTF-8 \
23+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
24+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
25+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
26+
27+#
28+# Install pre-requisites
29+#
30+
31+RUN apt-get update && \
32+ apt-get install -y --no-install-recommends \
33+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
34+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
35+ rm -rf /var/lib/apt/lists/*
36+
37+#
38+# Use Stackage's debian-bootstrap.sh script to install system libraries and
39+# tools required to build any Stackage package.
40+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
41+# installed a different version.
42+# In the case of 'small' image, just install Stack and GHC.
43+#
44+
45+RUN if [ "$VARIANT" != "small" ]; then \
46+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
47+ fi && \
48+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
49+ if [ "$VARIANT" = "small" ]; then \
50+ stack setup --resolver ghc-$GHC_VERSION; \
51+ fi && \
52+ rm -rf /var/lib/apt/lists/* && \
53+ cd $STACK_ROOT && \
54+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
55+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
56+
57+#
58+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
59+#
60+
61+RUN mkdir /etc/stack/ && \
62+ echo "system-ghc: true" >/etc/stack/config.yaml
63+
64+#
65+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
66+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
67+# files that some of these tools require.
68+#
69+
70+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
71+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
72+ cd $STACK_ROOT && \
73+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
74+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
75+
76+#
77+# Install 'pid1' init daemon
78+#
79+
80+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
81+ chown root:root /usr/local/sbin && \
82+ chown root:root /usr/local/sbin/pid1
83+
84+#
85+# Set up pid1 entrypoint and default command
86+#
87+
88+ENTRYPOINT ["/usr/local/sbin/pid1"]
89+CMD ["bash"]
automated/dockerfiles/lts-16.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-16.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.3.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-16.12/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.4
6+ARG LTS_SLUG=lts-16.12
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.3.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-16.8/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-16.0
2+ARG STACK_VERSION=2.3.3
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-17.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.3
6+ARG LTS_SLUG=lts-17.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.5.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-17.10/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM $DOCKER_REPO:lts-17.9
2+ARG STACK_VERSION=2.7.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-17.3/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.8.4
6+ARG LTS_SLUG=lts-17.3
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.5.1
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-18.0/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.10.4
6+ARG LTS_SLUG=lts-18.0
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.7.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=b91382f2ff1f2775f4aa9d42c9a6b06b33e5904d
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=9.0.1$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-18.7/Dockerfilenew file+90
@@ -0,0 +1,90 @@
1+FROM ubuntu:18.04
2+
3+LABEL maintainer="manny@fpcomplete.com"
4+
5+ARG GHC_VERSION=8.10.6
6+ARG LTS_SLUG=lts-18.6
7+ARG PID1_VERSION=0.1.2.0
8+ARG STACK_VERSION=2.7.3
9+ARG CUDA_VERSION=10.0
10+ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64
11+ARG LLVM_PATH=/usr/lib/llvm-7
12+ARG BOOTSTRAP_COMMIT=b1d40e112040a7f44eff47a9fafb6937f5d02dff
13+
14+ARG DEBIAN_FRONTEND=noninteractive
15+ARG VARIANT=build
16+ARG STACK_ROOT=/home/stackage/.stack
17+
18+#
19+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
20+#
21+
22+ENV LANG=C.UTF-8 \
23+ LC_ALL=C.UTF-8 \
24+ PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \
25+ CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \
26+ CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include
27+
28+#
29+# Install pre-requisites
30+#
31+
32+RUN apt-get update && \
33+ apt-get install -y --no-install-recommends \
34+ wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \
35+ make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \
36+ rm -rf /var/lib/apt/lists/*
37+
38+#
39+# Use Stackage's debian-bootstrap.sh script to install system libraries and
40+# tools required to build any Stackage package.
41+# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have
42+# installed a different version.
43+# In the case of 'small' image, just install Stack and GHC.
44+#
45+
46+RUN if [ "$VARIANT" != "small" ]; then \
47+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=9.0.1$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \
48+ fi && \
49+ wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \
50+ if [ "$VARIANT" = "small" ]; then \
51+ stack setup --resolver ghc-$GHC_VERSION; \
52+ fi && \
53+ rm -rf /var/lib/apt/lists/* && \
54+ cd $STACK_ROOT && \
55+ find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
56+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
57+
58+#
59+# Configure Stack to use the GHC installed in the Docker image rather than installing its own
60+#
61+
62+RUN mkdir /etc/stack/ && \
63+ echo "system-ghc: true" >/etc/stack/config.yaml
64+
65+#
66+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
67+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
68+# files that some of these tools require.
69+#
70+
71+RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \
72+ happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \
73+ cd $STACK_ROOT && \
74+ find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \
75+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
76+
77+#
78+# Install 'pid1' init daemon
79+#
80+
81+RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
82+ chown root:root /usr/local/sbin && \
83+ chown root:root /usr/local/sbin/pid1
84+
85+#
86+# Set up pid1 entrypoint and default command
87+#
88+
89+ENTRYPOINT ["/usr/local/sbin/pid1"]
90+CMD ["bash"]
automated/dockerfiles/lts-9.0/Dockerfilenew file+55
@@ -0,0 +1,55 @@
1+FROM ubuntu:16.04
2+
3+MAINTAINER Emanuel Borsboom <manny@fpcomplete.com>
4+
5+ARG GHC_VERSION=8.0.2
6+ARG LTS_SLUG=lts-9.0
7+ARG PID1_VERSION=0.1.0.1
8+ARG BOOTSTRAP_COMMIT=1bc67bb54eda08c90d8421bc11d257354a379d11
9+ARG DEBIAN_FRONTEND=noninteractive
10+
11+#
12+# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries.
13+#
14+
15+ENV LANG=C.UTF-8 \
16+ LC_ALL=C.UTF-8 \
17+ PATH=/root/.cabal/bin:/root/.local/bin:/opt/ghc/$GHC_VERSION/bin:$PATH
18+
19+#
20+# Use Stackage's debian-bootstrap.sh script to install system libraries and
21+# tools required to build any Stackage package.
22+#
23+
24+RUN apt-get update && \
25+ apt-get install -y wget && \
26+ wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | bash && \
27+ ln -s ghc /opt/ghc/$GHC_VERSION/share/doc/ghc-$GHC_VERSION && \
28+ rm -rf /var/lib/apt/lists/*
29+
30+#
31+# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We
32+# remove most of the STACK_ROOT afterward to save space, but keep the 'share'
33+# files that some of these tools require.
34+#
35+
36+RUN stack --system-ghc --resolver=$LTS_SLUG --local-bin-path=/usr/local/bin install \
37+ cabal-install happy alex cpphs gtk2hs-buildtools hscolour && \
38+ cd $HOME/.stack && \
39+ find . -type f -not -path './snapshots/*/share/*' -exec rm '{}' \; && \
40+ find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true
41+
42+#
43+# Install proper 'pid1' init daemon
44+#
45+
46+RUN wget -O- "https://github.com/fpco/pid1/releases/download/pid1%2F$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \
47+ chown root:root /usr/local/sbin && \
48+ chown root:root /usr/local/sbin/pid1
49+
50+#
51+# Set up pid1 entrypoint and default command
52+#
53+
54+ENTRYPOINT ["/usr/local/sbin/pid1"]
55+CMD ["bash"]
automated/dockerfiles/lts-9.20/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-9.0
2+ARG STACK_VERSION=1.6.1
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/dockerfiles/lts-9.21/Dockerfilenew file+3
@@ -0,0 +1,3 @@
1+FROM fpco/stack-build:lts-9.0
2+ARG STACK_VERSION=1.6.5
3+RUN wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/local/bin '*/stack'
automated/run-nightly.sh+1−5
@@ -4,12 +4,8 @@ cd "$(dirname "${BASH_SOURCE[0]}")"
4
4
5while true; do
5while true; do
6 ./build.sh nightly-$(date -u +%F)
6 ./build.sh nightly-$(date -u +%F)
7−
8− echo "Running cron.sh (hiding verbose output)"
9− ./cron.sh > cron.log 2>&1 # | grep -v '^Skipping'
10− echo "done."
11− echo
12 date
7 date
13
8
14 sleep 30m
9 sleep 30m
10+ echo
15done
11done
become-a-curator.mdnew file+44
@@ -0,0 +1,44 @@
1+## We are no longer accepting applications, please wait until next time
2+
3+We are looking to expand the stackage curator team!
4+
5+As a stackage curator you will help the community by curating and
6+publishing the widely used nightly and LTS snapshots: Collections of
7+packages that are guaranteed to play well together. All curators are
8+volunteers.
9+
10+This is a great opportunity to contribute to the haskell community and get
11+familiar with the tools of the trade! You will also be in regular
12+contact with experienced community members.
13+
14+We don't have any prerequisites, but familiarity with any of Haskell,
15+Cabal, Stack, Linux, Git, and Docker is a plus.
16+
17+We work in shifts of one week, which means you will be on duty every
18+6th week. Our suggestion is to pair you up with another curator to
19+help out in the beginning.
20+
21+The workload is usually about 30 minutes per day, whenever you have
22+time. The work consists of keeping the builds running on the build
23+server, filing issues for packages needing updates when new releases
24+occur, and closing resolved issues. The LTS snapshots are prepared
25+once a week. All communication with package maintainers happen on
26+github.
27+
28+We also have a curator slack channel where we help each other out.
29+
30+The current curator team consists of:
31+* Adam Bergmark
32+* Dan Burton
33+* Jens Petersen
34+* Luke Murphy
35+* Michael Snoyman
36+
37+We onboarded Luke as the newest member a few months ago and this
38+helped us iron out and document the process further.
39+
40+You can read the curator documentation here: https://github.com/commercialhaskell/stackage/blob/master/CURATORS.md
41+
42+To apply, please fill in this form: [REDACTED]
43+
44+If you applied last time, we encourage you to do so again!
build-constraints.yaml+6096−1232
@@ -1,30 +1,687 @@
1−ghc-major-version: "8.0"
1+ghc-major-version: "9.0"
2+# new curator is supposed to use exact GHC version
3+ghc-version: "9.0.2"
4+
5+# This affects which version of the Cabal file format we allow. We
6+# should ensure that this is always no greater than the version
7+# supported by the most recent cabal-install and Stack releases.
8+cabal-format-version: "3.0"
9+
2# Constraints for brand new builds
10# Constraints for brand new builds
3packages:
11packages:
12+
13+ "Xy Ren <xy.r@outlook.com> @re-xyr":
14+ - cleff
15+
16+ "Janus Troelsen <ysangkok@gmail.com> @ysangkok":
17+ - ListZipper
18+ - rollbar
19+ - timezone-olson-th
20+
21+ "David Burkett <david@davidburkett.xyz> @Disco-Dave":
22+ - katip-wai
23+
24+ "Lukas Epple <sternenseemann@systemli.org> @sternenseemann":
25+ - socket
26+ - spacecookie
27+ - gopher-proxy
28+ - filepath-bytestring < 1.4.2.1.10 # https://github.com/commercialhaskell/stackage/issues/6355
29+ - download-curl
30+ - cabal2nix
31+ - distribution-nixpkgs
32+ - hackage-db
33+ - language-nix
34+ - jailbreak-cabal
35+
36+ "Profpatsch <mail@profpatsch.de> @Profpatsch":
37+ - error
38+ - yarn-lock
39+
40+ "James Sully <sullyj3@gmail.com> @sullyj3":
41+ - buttplug-hs-core
42+
43+ "Manuel Schneckenreither <manuel.schnecki@gmail.com> @schnecki":
44+ - experimenter
45+ - api-maker
46+ - easy-logger
47+
48+ "Kamil Dworakowski <kamil@dworakowski.name> @luntain":
49+ - error-or
50+ - error-or-utils
51+ - inbox
52+ - mock-time
53+
54+ "Liang-Ting Chen<liang.ting.chen.tw@gmail.com> @L-TChen":
55+ - geniplate-mirror
56+
57+ "Andreas Abel <andreas.abel@gu.se> @andreasabel":
58+ - BNFC
59+ - Sit
60+ - STMonadTrans
61+ - Agda
62+ - agda2lagda
63+ - cabal-clean
64+ - ListLike
65+ - haskell-src
66+ - fix-whitespace
67+ - hs-tags
68+ - goldplate
69+ - hasktags
70+ - regex-base
71+ - regex-compat
72+ - regex-pcre
73+ - regex-posix
74+ - regex-posix-clib
75+ - regex-tdfa
76+ - java-adt
77+ - shelly
78+ - tasty-silver
79+
80+ "Diogo Biazus <diogo@biazus.ca>":
81+ - hasql-notifications
82+
83+ "David James <dj112358@outlook.com> @davjam":
84+ - MapWith
85+
86+ "Bernie Pope <florbitous@gmail.com> @bjpop":
87+ - language-python
88+
89+ "Nils Alex <nils@famalex.de> @nilsalex":
90+ - safe-tensor
91+
92+ "Artur Gajowy <artur.gajowy@gmail.com> @ArturGajowy":
93+ - ghc-clippy-plugin
94+
95+ "Daniel Rolls <daniel.rolls.27@googlemail.com> @danielrolls":
96+ - byte-count-reader
97+
98+ "Allan Lukwago <epicallan.al@gmail.com> @epicallan":
99+ - servant-errors
100+
101+ "Christian Charukiewicz <charukiewicz@protonmail.com> @charukiewicz":
102+ - isbn
103+
104+ "Koz Ross <koz.ross@retro-freedom.nz> @kozross":
105+ - medea
106+
107+ "Marcin Rzeźnicki <marcin.rzeznicki@gmail.com> @marcin-rzeznicki":
108+ - hspec-tables
109+ - stackcollapse-ghc
110+ - libjwt-typed
111+
112+ "Mauricio Fierro <mauriciofierrom@gmail.com> @mauriciofierrom":
113+ - dialogflow-fulfillment
114+
115+ "Mihai Giurgeanu <mihai.giurgeanu@gmail.com> @mihaigiurgeanu":
116+ - sqlcli
117+ - sqlcli-odbc
118+ # not a maintainer
119+ - logging
120+
121+ "Sasha Bogicevic <sasa.bogicevic@pm.me> @v0d1ch":
122+ - plaid
123+
124+ "Geoffrey Mainland <mainland@drexel.edu> @mainland":
125+ - exception-mtl
126+ - exception-transformers
127+ - mainland-pretty
128+ - ref-fd
129+ - ref-tf
130+ - srcloc
131+ - symbol
132+
133+ "Patrick Bahr <paba@itu.dk>":
134+ - equivalence
135+ - compdata
136+ - Rattus
137+
138+ "Rob Stewart <robstewart57@gmail.com> @robstewart57":
139+ - gitlab-haskell < 0 # 0.3.2.0 text 1.2.5.0 exports `elem`
140+
141+ "Callan McGill <callan.mcgill@gmail.com> @callanmcgill":
142+ - perfect-vector-shuffle
143+
144+ "Luke Clifton <lukec@themk.net> @luke-clifton":
145+ - generic-monoid
146+
147+ "Tobias Reinhart <tobi.reinhart@fau.de> @TobiReinhart":
148+ - sparse-tensor
149+
150+ "Stephan Schiffels <stephan_schiffels@mac.com> @stschiff":
151+ - sequence-formats
152+ - pipes-ordered-zip
153+ - sequenceTools
154+
155+ "YongJoon Joe <developer@quietjoon.net> @QuietJoon":
156+ - doldol
157+ - ENIG
158+
159+ "Chris Penner <christopher.penner@gmail.com> @ChrisPenner":
160+ - eve
161+ - lens-regex-pcre
162+ - lens-csv
163+ - selections
164+ - slick
165+ - unipatterns
166+
167+ "Emily Pillmore <emilypi@cohomolo.gy> @topos":
168+ - base16
169+ - base16-lens
170+ - base32
171+ - base32-lens
172+ - base64
173+ - base64-lens
174+ - lens-process
175+ - microlens-process
176+ - nonempty-vector
177+ - smash
178+ - smash-aeson
179+ - smash-microlens
180+ - smash-lens
181+ - strict-tuple
182+ - strict-tuple-lens
183+
184+ "Matthieu Monsch <mtth@apache.org> @mtth":
185+ - flags-applicative
186+ - more-containers
187+ - tracing
188+
189+ "Robert Vollmert <rob@vllmrt.net> @robx":
190+ - configurator-pg
191+ - postgrest
192+
193+ "Sandy Maguire <sandy@sandymaguire.me> @isovector":
194+ - ecstasy
195+ - interpolatedstring-qq2
196+ - prospect
197+ - do-notation
198+ - unagi-chan
199+ - type-errors
200+
201+ "Matej Niznik <matten@tuta.io> @TheMatten":
202+ - polysemy
203+ - polysemy-plugin
204+ - polysemy-zoo
205+ - loopbreaker
206+
207+ "William Yao <williamyaoh@gmail.com> @williamyaoh":
208+ - string-interpolate
209+
210+ "Roel van Dijk <roel@lambdacube.nl> @roelvandijk":
211+ - terminal-progress-bar
212+
213+ "Marek Fajkus <marek.faj@gmail.com> @turboMaCk":
214+ - wai-enforce-https
215+ - aeson-combinators
216+
217+ "Fernando Freire <dogonthehorizon@gmail.com> @dogonthehorizon":
218+ - hal
219+
220+ "Nathan Fairhurst <nathan.fairhurst@nike.com> @iamfromspace":
221+ - hal
222+
223+ "Daniel Taskoff <daniel.taskoff@gmail.com> @dtaskoff":
224+ - hlibcpuid
225+ - skip-var
226+ - system-info
227+
228+ "Dzianis Kabanau <kobargh@gmail.com> @kobargh":
229+ - template-toolkit
230+
231+ "Christopher Davenport <chris@christopherdavenport.tech> @ChristopherDavenport":
232+ - nonemptymap
233+ - hinfo
234+
235+ "Joerg Winter <jwin1968@gmail.com> @clojj":
236+ - rosezipper
237+
238+ "Edward Wastell <edward@wastell.co.uk> @edwardwas":
239+ - TotalMap
240+ - sized-grid
241+
242+ "Antonio Alonso Dominguez <alonso.domin@gmail.com> @alonsodomin":
243+ - hschema
244+ - hschema-aeson
245+ - hschema-prettyprinter
246+ - hschema-quickcheck
247+
248+ "Preetham Gujjula <preetham.gujjula@gmail.com> @pgujjula":
249+ - modular
250+ - list-predicate
251+
252+ "Guillaume Bouchard <guillaum.bouchard@gmail.com> @guibou":
253+ - krank
254+ - pretty-terminal
255+ - PyF
256+
257+ "Erik Schnetter <schnetter@gmail.com> @eschnett":
258+ - mpi-hs
259+ - mpi-hs-binary
260+ - mpi-hs-cereal
261+
262+ "Yang Bo <pop.atry@gmail.com> @Atry":
263+ - control-dsl
264+
265+ "Laurent P. René de Cotret <laurent.decotret@outlook.com> @LaurentRDC":
266+ - pandoc-plot
267+
268+ "Andrew Newman <andrewfnewman@gmail.com> @andrewfnewman":
269+ - geojson
270+
271+ "Mateusz Karbowy <mateusz.karbowy@gmail.com> @obszczymucha":
272+ - parsec-numbers
273+
274+ "Joshua Grosso <jgrosso256@gmail.com> @jgrosso":
275+ - axel
276+
277+ "Varun Gandhi <theindigamer15@gmail.com> @theindigamer":
278+ - edit
279+
280+ "Luka Hadžiegrić <reygoch@gmail.com> @reygoch":
281+ - valor
282+
283+ "Scott N. Walck <walck@lvc.edu> @walck":
284+ - cyclotomic
285+ - learn-physics
286+ - TypeCompose
287+
288+ # @ghorn
289+ - not-gloss
290+ - spatial-math
291+
292+ "Phil de Joux <phil.dejoux@blockscope.com> @philderbeast":
293+ - siggy-chardust
294+ - detour-via-sci
295+ - hpack-dhall
296+
297+ "Matthew Ahrens <matt.p.ahrens@gmail.com> @mpahrens":
298+ - forkable-monad
299+ - butter < 0 # 0.1.0.6 text 1.2.5.0 exports `elem`
300+
301+ "Iris Ward <aditu.venyhandottir@gmail.com> @AdituV":
302+ - typenums
303+
304+ "Jude Taylor <me@jude.xyz> @pikajude":
305+ - th-printf
306+
307+ "Christian Marie <christian@ponies.io> @christian-marie":
308+ - git-vogue
309+
310+ "Manuel Bärenz <programming@manuelbaerenz.de> @turion":
311+ - dunai
312+ - rhine
313+ - rhine-gloss
314+ - finite-typelits
315+ - essence-of-live-coding
316+ - essence-of-live-coding-gloss
317+ - essence-of-live-coding-pulse
318+ - essence-of-live-coding-quickcheck
319+ - essence-of-live-coding-warp
320+ - pulse-simple
321+ - simple-affine-space
322+ - has-transformers
323+
324+ "Paul Johnson <paul@cogito.org.uk> @PaulJohnson":
325+ - geodetics
326+ - Ranged-sets
327+
328+ "Travis Athougies <travis@athougies.net> @tathougies":
329+ - beam-core
330+ - beam-migrate
331+ - beam-mysql
332+ - beam-postgres
333+ - beam-sqlite
334+
335+ "Fraser Murray <fraser.m.murray@gmail.com @intolerable":
336+ - stitch
337+
338+ "Yusent Chig <yusent@protonmail.com> @yusent":
339+ - yesod-auth-bcryptdb
340+
341+ "Johannes Gerer <oss@johannesgerer.com>":
342+ - buchhaltung
343+
344+ "Tom McLaughlin <tom@codedown.io> @thomasjm":
345+ - aeson-typescript
346+ - fsnotify
347+ - sandwich
348+ - sandwich-quickcheck
349+ - sandwich-slack
350+ - sandwich-webdriver
351+ - slack-progressbar
352+
353+ "Paulo Tanaka <paulot@fb.com> @paulot":
354+ # on behalf of Bryan O'Sullivan @bos:
355+ - zstd
356+
357+ "Jacek Galowicz <jacek@galowicz.de> @tfc":
358+ - hamtsolo
359+
360+ "Ferdinand van Walree <ferdinandvwalree@gmail.com> @Ferdinand-vW":
361+ - tuple-sop
362+ - sessiontypes
363+ - sessiontypes-distributed
364+
365+ "Jacob Thomas Errington <tsani@mail.jerrington.me> @tsani":
366+ - servant-github-webhook
367+ - pushbullet-types
368+
369+ "Theodore Lief Gannon <tanuki@gmail.com> @tejon":
370+ - aeson-yak
371+ - safe-foldable
372+
373+ "Jaro Reinders <jaro.reinders@gmail.com> @Noughtmare":
374+ - haskell-lsp-client
375+
376+ "Florian Knupfer <fknupfer@gmail.com> @knupfer":
377+ - type-of-html
378+ - type-of-html-static
379+ - chronos-bench
380+
381+ "Mikolaj Konarski <mikolaj.konarski@funktory.com> @Mikolaj":
382+ - sdl2-ttf
383+ - enummapset
384+ - assert-failure
385+ - minimorph
386+ - miniutter
387+ - LambdaHack
388+ - Allure
389+
390+ "Jürgen Keck <jhyphenkeck@gmail.com> @j-keck":
391+ - wreq-stringless
392+
393+ "Olaf Chitil <oc@kent.ac.uk> @OlafChitil":
394+ - FPretty
395+
396+ "Maarten Faddegon <stackage@maartenfaddegon.nl> @MaartenFaddegon":
397+ - libgraph
398+ - Hoed
399+
400+ "Agustin Camino <agustin.camino@gmail.com> @acamino":
401+ - state-codes
402+
403+ "Sebastian Mihai Ardelean <ardeleanasm@gmail.com> @ardeleanasm":
404+ - qchas
405+
406+ "Patrick Pelletier <code@funwithsoftware.org> @ppelleti":
407+ - mercury-api
408+ - normalization-insensitive
409+
410+ "Jacob Stanley <jacob@stanley.io> @jacobstanley":
411+ - hedgehog < 1.1 # https://github.com/commercialhaskell/stackage/issues/6415
412+ - hedgehog-quickcheck
413+ - transformers-bifunctors
414+ - unix-compat
415+
416+ "Walter Schulze <awalterschulze@gmail.com> @awalterschulze":
417+ - katydid
418+
419+ "Nobutada Matsubara <t12307043@gunma-u.ac.jp> @matsubara0507":
420+ - chatwork
421+ - rakuten
422+ - servant-kotlin
423+
424+ "Pavol Klacansky <pavol@klacansky.com> @pavolzetor":
425+ - openexr-write
426+
427+ "Pasqualino Assini <tittoassini@gmail.com> @tittoassini":
428+ - zm
429+ - flat
430+ - model
431+
432+ "Jose Iborra <pepeiborra@gmail.com> @pepeiborra":
433+ - arrowp-qq
434+ - haskell-src-exts-util
435+ - hexml-lens
436+ - hp2pretty
437+ - floatshow
438+ - ghc-check
439+
440+ "Roman Gonzalez <open-source@roman-gonzalez.info> @roman":
441+ - componentm
442+ - componentm-devel
443+ - teardown
444+ - etc
445+ - capataz
446+
447+ "Richard Cook <rcook@rcook.org> @rcook":
448+ - hidden-char
449+ - oset
450+ - req-url-extra
451+ - sexpr-parser
452+
453+ "Vanessa McHale <vmchale@gmail.com> @vmchale":
454+ - bz2
455+
456+ "Henning Thielemann <stackage@henning-thielemann.de> @thielema":
457+ - accelerate-arithmetic
458+ - accelerate-fftw
459+ - accelerate-fourier
460+ - accelerate-utility
461+ - align-audio
462+ - alsa-core
463+ - alsa-pcm
464+ - alsa-seq
465+ - apportionment
466+ - audacity
467+ - battleship-combinatorics
468+ - bibtex
469+ - board-games
470+ - buffer-pipe
471+ - cabal-flatpak
472+ - calendar-recycling
473+ - checksum
474+ - combinatorial
475+ - comfort-graph
476+ - comfort-array
477+ - comfort-array-shape
478+ - comfort-fftw
479+ - concurrent-split
480+ - cutter
481+ - data-accessor
482+ - data-accessor-mtl
483+ - data-accessor-template
484+ - data-accessor-transformers
485+ - data-ref
486+ - doctest-exitcode-stdio
487+ - doctest-extract
488+ - doctest-lib
489+ - dsp
490+ - enumset
491+ - equal-files
492+ - event-list
493+ - explicit-exception
494+ - fixed-length
495+ - fftw-ffi
496+ - gnuplot
497+ - group-by-date
498+ - guarded-allocation
499+ - iff
500+ - interpolation
501+ - jack
502+ - latex
503+ - lazyio
504+ - markov-chain
505+ - midi
506+ - midi-alsa
507+ - midi-music-box
508+ - mbox-utility
509+ - med-module
510+ - monoid-transformer
511+ - non-empty
512+ - non-negative
513+ - numeric-prelude
514+ - numeric-quest
515+ - pathtype
516+ - pooled-io
517+ - probability
518+ - quickcheck-transformer
519+ - sample-frame
520+ - sample-frame-np
521+ - set-cover
522+ - shell-utility
523+ - sound-collage
524+ - sox
525+ - soxlib
526+ - split-record
527+ - spreadsheet
528+ - stm-split
529+ - storable-record
530+ - storable-tuple
531+ - storablevector
532+ - synthesizer-core
533+ - synthesizer-dimensional
534+ - synthesizer-alsa
535+ - synthesizer-midi
536+ - tagchup
537+ - tfp
538+ - unicode
539+ - unique-logic
540+ - unique-logic-tf
541+ - unsafe
542+ - utility-ht
543+ - xml-basic
544+ - youtube
545+ - prelude-compat
546+ - fft
547+ - carray
548+ - lapack-ffi-tools
549+ - netlib-ffi
550+ - blas-ffi
551+ - lapack-ffi
552+ - netlib-carray
553+ - blas-carray
554+ - lapack-carray
555+ - netlib-comfort-array
556+ - blas-comfort-array
557+ - lapack-comfort-array
558+ - lapack
559+ - lapack-hmatrix
560+ - hmm-lapack
561+ - magico
562+ - resistor-cube
563+ - linear-circuit
564+ # Not a maintainer
565+ - cabal-plan
566+ - topograph
567+ - ix-shapable
568+ - hsshellscript
569+ - hyper
570+ - storable-endian
571+
572+ "Jeremy Barisch-Rooney <barischj@tcd.ie> @barischrooneyj":
573+ - threepenny-gui-flexbox
574+
575+ "Romain Edelmann <romain.edelmann@gmail.com> @redelmann":
576+ - distribution
577+
578+ "Nikita Tchayka <nikitatchayka@gmail.com> @nickseagull":
579+ - ramus
580+ - require
581+ - tintin
582+ - aws-lambda-haskell-runtime
583+
584+ "Simon Jakobi <simon.jakobi@gmail.com> @sjakobi":
585+ - threepenny-gui
586+ - newtype-generics
587+ - bsb-http-chunked
588+ - hspec-parsec
589+ - checkers
590+ - unordered-containers
591+ - prettyprinter
592+ - prettyprinter-ansi-terminal
593+ - prettyprinter-compat-wl-pprint
594+ - prettyprinter-compat-ansi-wl-pprint
595+ - prettyprinter-compat-annotated-wl-pprint
596+ - prettyprinter-convert-ansi-wl-pprint
597+
598+ "Joe M <joe9mail@gmail.com> @joe9":
599+ - logger-thread
600+ - text-generic-pretty
601+
602+ "Li-yao Xia <lysxia@gmail.com> @Lysxia":
603+ - ap-normalize
604+ - boltzmann-samplers
605+ - first-class-families
606+ - generic-data
607+ - generic-data-surgery
608+ - generic-functor
609+ - generic-random
610+ - scanf
611+ - show-combinators
612+ - type-map
613+ - quickcheck-higherorder
614+ - test-fun
615+
616+ "Tobias Dammers <tdammers@gmail.com> @tdammers":
617+ - ginger
618+ - yeshql
619+
620+ "Yair Chuchem <yairchu@gmail.com> @yairchu":
621+ - generic-constraints
622+ - List
623+ - ListTree
624+
4 "Marco Zocca @ocramz":
625 "Marco Zocca @ocramz":
626+ - ad-delcont
5 - sparse-linear-algebra
627 - sparse-linear-algebra
6− - network-multicast
628+ - depq
629+ - matrix-market-attoparsec
630+ - splitmix-distributions
631+ - rp-tree
632+ - xeno
633+ - bytestring-mmap # required by xeno
634+ - datasets
635+ - lucid-extras
636+ - mnist-idx-conduit
637+ - rigel-viz
7
638
8 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
639 "Joseph Canero <jmc41493@gmail.com> @caneroj1":
9 - sqlite-simple-errors
640 - sqlite-simple-errors
641+ - median-stream
642+ - stm-supply
643+ - filter-logger
644+ - tile
645+ - mbtiles
10
646
11 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
647 "James M.C. Haver II <mchaver@gmail.com> @mchaver":
12 - quickcheck-arbitrary-adt
648 - quickcheck-arbitrary-adt
13 - hspec-golden-aeson
649 - hspec-golden-aeson
14− - servant-aeson-specs
650+ - quickcheck-arbitrary-template
15
651
16− "Winter Land <winterland1989@gmail.com> @winterland1989":
652+ "Winter Han <winterland1989@gmail.com> @winterland1989":
653+ - if
17 - tcp-streams
654 - tcp-streams
655+ - tcp-streams-openssl
18 - wire-streams
656 - wire-streams
19 - binary-parsers
657 - binary-parsers
658+ - binary-ieee754
659+ - word24
660+ - mysql-haskell
661+ - mysql-haskell-openssl
662+ - data-has
663+ - unboxed-ref
20
664
21 "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
22 - 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
23
679
24 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
680 "Aleksey Uimanov <s9gf4ult@gmail.com> @s9gf4ult":
25− # - postgresql-query # BLOCKED derive
681+ - postgresql-query
26 - hreader
682 - hreader
27 - hset
683 - hset
684+ - base58-bytestring
28
685
29 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
686 "Aaron Taylor <aaron@hamsterdam.co> @hamsterdam":
30 - kawhi
687 - kawhi
@@ -36,63 +693,61 @@ packages:
36 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
693 "Nicolas Mattia <nicolas@nmattia.com> @nmattia":
37 - makefile
694 - makefile
38
695
39− "Michael Litchard <michael@schmong.org> @mlitchard":
40− - point-octree
41−
42 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
696 "Siddharth Bhat <siddu.druid@gmail.com> @bollu":
43 - symengine
697 - symengine
44
698
45 "alpheccar <misc@alpheccar.org> @alpheccar":
699 "alpheccar <misc@alpheccar.org> @alpheccar":
46 - HPDF
700 - HPDF
47− - hbayes
48
701
49− "Dmitry Bogatov <KAction@gnu.org>":
702+ "Dmitry Bogatov <KAction@gnu.org> @iu-guest":
50 - once
703 - once
704+ - mbug
51
705
52 "David Johnson <djohnson.m@gmail.com> @dmjio":
706 "David Johnson <djohnson.m@gmail.com> @dmjio":
707+ - miso
53− # GHC 8 - envy
708+ - envy
54 - s3-signer
709 - s3-signer
55− # bounds - google-translate
710+ - google-translate
56 - hackernews
711 - hackernews
57− # bounds - ses-html
712+ - ses-html
58− # via stripe-http-streams - stripe-haskell
713+ - stripe-haskell
59− # via http-streams - stripe-http-streams
714+ - stripe-http-client
60− # - stripe-core # BLOCKED aeson 1.0
715+ - stripe-core
716+ - stripe-tests
61
717
62 "Piotr Mlodawski @pmlodawski":
718 "Piotr Mlodawski @pmlodawski":
719+ - error-util < 0 # 0.0.1.2 MonadFail
63 - signal
720 - signal
64− # GHC 8 - ghc-session
65
721
66 "Michael Snoyman michael@snoyman.com @snoyberg":
722 "Michael Snoyman michael@snoyman.com @snoyberg":
67 - bzlib-conduit
723 - bzlib-conduit
68− - cabal-install
69− - cabal-src
70 - case-insensitive
724 - case-insensitive
71 - classy-prelude-yesod
725 - classy-prelude-yesod
72 - conduit-combinators
726 - conduit-combinators
73 - conduit-extra
727 - conduit-extra
74 - hebrew-time
728 - hebrew-time
75− - keter
76 - markdown
729 - markdown
77 - mime-mail
730 - mime-mail
78 - mime-mail-ses
731 - mime-mail-ses
732+ - mime-types
79 - network-conduit-tls
733 - network-conduit-tls
80 - persistent
734 - persistent
81− # via mysql https://github.com/bos/mysql/issues/20 - persistent-mysql
735+ - persistent-mysql
82 - persistent-postgresql
736 - persistent-postgresql
83 - persistent-sqlite
737 - persistent-sqlite
84 - persistent-template
738 - persistent-template
85− # - stackage-curator # BLOCKED amazonka-core
739+ - persistent-test
86− - stm-conduit
740+ - store
741+ - wai-extra
87 - wai-websockets
742 - wai-websockets
88 - warp-tls
743 - warp-tls
89− - yackage
90 - yesod
744 - yesod
745+ - authenticate
746+ - html-conduit
91 - yesod-auth
747 - yesod-auth
92 - authenticate-oauth
748 - authenticate-oauth
93 - yesod-bin
749 - yesod-bin
94 - yesod-eventsource
750 - yesod-eventsource
95− - yesod-fay
96 - yesod-gitrepo
751 - yesod-gitrepo
97 - yesod-newsfeed
752 - yesod-newsfeed
98 - yesod-sitemap
753 - yesod-sitemap
@@ -101,7 +756,7 @@ packages:
101 - yesod-websockets
756 - yesod-websockets
102 - cereal-conduit
757 - cereal-conduit
103 - binary-conduit
758 - binary-conduit
104− # GHC 8 - lzma-conduit
759+ - lzma-conduit
105 - mutable-containers
760 - mutable-containers
106 - hpc-coveralls
761 - hpc-coveralls
107 - monad-unlift
762 - monad-unlift
@@ -109,60 +764,70 @@ packages:
109 - yaml
764 - yaml
110 - servius
765 - servius
111 - cryptonite-conduit
766 - cryptonite-conduit
767+ - streaming-commons
112
768
113− - alex
769+ - alex < 3.2.7 || > 3.2.7
114 - async
770 - async
115 - base16-bytestring
771 - base16-bytestring
116− - c2hs
117− - cassava
118− # GHC 8 - csv-conduit
772+ - csv-conduit
119 - executable-hash
773 - executable-hash
120 - executable-path
774 - executable-path
121 - foreign-store
775 - foreign-store
122 - formatting
776 - formatting
123 - gtk2hs-buildtools
777 - gtk2hs-buildtools
124− - happy
778+ - happy < 1.21.0 || > 1.21.0 # https://github.com/commercialhaskell/stackage/issues/6294
125 - hybrid-vectors
779 - hybrid-vectors
126 - indents
780 - indents
127 - language-c
781 - language-c
128− - lhs2tex
129− # GHC 8 2.5 compilation failure - persistent-mongoDB
782+ - persistent-mongoDB
130 - pretty-class
783 - pretty-class
131 - th-expand-syns
784 - th-expand-syns
132− - criterion
133 - th-lift
785 - th-lift
134 - quickcheck-assertions
786 - quickcheck-assertions
135
787
136− # - hackage-mirror BLOCKED aws
137− - wai-middleware-consul
138 - wai-middleware-crowd
788 - wai-middleware-crowd
139 - monad-logger-json
789 - monad-logger-json
140 - safe-exceptions
790 - safe-exceptions
141− - monad-logger-syslog
142 - fsnotify-conduit
791 - fsnotify-conduit
143 - pid1
792 - pid1
144 - typed-process
793 - typed-process
794+ - say
795+ - unliftio-core
796+ - unliftio
145
797
146− - fsnotify
147 - hinotify
798 - hinotify
148 - hfsevents
799 - hfsevents
149 - 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
150
820
151 "Omari Norman <omari@smileystation.com> @massysett":
821 "Omari Norman <omari@smileystation.com> @massysett":
152 - rainbow
822 - rainbow
153 - rainbox
823 - rainbox
154− - anonymous-sums
155 - multiarg
824 - multiarg
156− - prednote
157− - cartel
158− - Earley
159 - ofx
825 - ofx
160− - pinchot
161 - accuerr
826 - accuerr
162 - timelens
827 - timelens
163− - non-empty-sequence
828+ - squeather
164
829
165− "Neil Mitchell @ndmitchell":
830+ "Neil Mitchell <ndmitchell@gmail.com> @ndmitchell":
166 - hlint
831 - hlint
167 - hoogle
832 - hoogle
168 - shake
833 - shake
@@ -173,36 +838,78 @@ packages:
173 - nsis
838 - nsis
174 - js-jquery
839 - js-jquery
175 - js-flot
840 - js-flot
841+ - js-dgtable
176 - extra
842 - extra
177− - bake
178 - ghcid
843 - ghcid
844+ - hexml
845+ - profiterole
846+ - record-dot-preprocessor
847+ - filepattern
848+ - record-hasfield
849+ - rattle
850+ - hie-bios
851+ - fuzzy
852+
853+ "Digital Asset <shayne.fletcher@digitalasset.com>":
854+ - ghc-lib
855+ - ghc-lib-parser
856+
857+ "Shayne Fletcher <shayne.fletcher@digitalasset.com>":
858+ - ghc-lib-parser-ex >= 9.0.0.6
859+
860+ "Karl Ostmo <kostmo@gmail.com> @kostmo":
861+ - perfect-hash-generator
179
862
180 "Alan Zimmerman @alanz":
863 "Alan Zimmerman @alanz":
864+ - ghc-exactprint
865+ - haskell-lsp
181 - hjsmin
866 - hjsmin
182 - language-javascript
867 - language-javascript
183 - Strafunski-StrategyLib
868 - Strafunski-StrategyLib
184− # - HaRe # BLOCKED ghc-mod via pipes
869+
870+ "Luke Lau <luke_lau@icloud.com> @bubba":
871+ - lsp-test
185
872
186 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
873 "Alfredo Di Napoli <alfredo.dinapoli@gmail.com> @adinapoli":
187 - mandrill
874 - mandrill
188
875
189 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
876 "Jon Schoning <jonschoning@gmail.com> @jonschoning":
190 - pinboard
877 - pinboard
878+ - swagger-petstore
191
879
192 "Jasper Van der Jeugt @jaspervdj":
880 "Jasper Van der Jeugt @jaspervdj":
193 - blaze-html
881 - blaze-html
194 - blaze-markup
882 - blaze-markup
195− - cabal-dependency-licenses
196− # - hakyll # QuickCheck, snap-server, via pandoc, via pandoc-citeproc
197 - stylish-haskell
883 - stylish-haskell
198− # - profiteur # BLOCKED aeson 1.0
884+ - profiteur
199 - psqueues
885 - psqueues
200 - websockets
886 - websockets
201 - websockets-snap
887 - websockets-snap
202
888
889+ "Jasper Van der Jeugt @jaspervdj & Alexander Batischev <eual.jp@gmail.com> @Minoru":
890+ - hakyll
891+
203 "Sibi Prabakaran <sibi@psibi.in> @psibi":
892 "Sibi Prabakaran <sibi@psibi.in> @psibi":
204 - download
893 - download
205 - textlocal
894 - textlocal
895+ - shell-conduit
896+ - tldr
897+ - fb
898+ - yesod-fb
899+ - yesod-auth-fb
900+ - hourglass-orphans
901+ - wai-slack-middleware
902+ - sysinfo
903+ - xmonad-extras
904+ - persistent-redis
905+ - fakedata
906+ - fakedata-parser
907+ - fakedata-quickcheck
908+ - streamly-bytestring
909+
910+ "haskell-openal":
911+ - OpenAL
912+ - ALUT
206
913
207 "haskell-opengl":
914 "haskell-opengl":
208 - OpenGL
915 - OpenGL
@@ -219,7 +926,7 @@ packages:
219 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
926 "Philipp Middendorf <pmidden@secure.mailbox.org> @pmiddend":
220 - clock
927 - clock
221
928
222− "Stefan Wehr <wehr@factisresearch.com> @skogsbaer":
929+ "Stefan Wehr <mail@stefanwehr.de> @skogsbaer":
223 - HTF
930 - HTF
224 - xmlgen
931 - xmlgen
225 - stm-stats
932 - stm-stats
@@ -229,6 +936,7 @@ packages:
229 - parseargs
936 - parseargs
230
937
231 "Vincent Hanquez @vincenthz":
938 "Vincent Hanquez @vincenthz":
939+ - basement
232 - bytedump
940 - bytedump
233 - cipher-aes
941 - cipher-aes
234 - cipher-rc4
942 - cipher-rc4
@@ -238,8 +946,12 @@ packages:
238 - cryptocipher
946 - cryptocipher
239 - cryptohash
947 - cryptohash
240 - cryptonite
948 - cryptonite
949+ - cryptonite-openssl
241 - crypto-pubkey-types
950 - crypto-pubkey-types
242 - crypto-random-api
951 - crypto-random-api
952+ - foundation
953+ - gauge
954+ - git < 0 # 0.3.0 compile fail MonadFail
243 - hit
955 - hit
244 - memory
956 - memory
245 - language-java
957 - language-java
@@ -247,14 +959,15 @@ packages:
247 - pem
959 - pem
248 - siphash
960 - siphash
249 - socks
961 - socks
962+ - tasty-kat
250 - tls
963 - tls
251 - tls-debug
964 - tls-debug
252− - vhd
965+ - vhd < 0 # 0.2.2 compile fail: Missing Semigroup Checksum
253− - xenstore
966+ - xenstore < 0 # 0.1.1 compile fail: sClose not in scope
254
967
255 "Chris Done @chrisdone":
968 "Chris Done @chrisdone":
969+ - labels
256 - ace
970 - ace
257− - ical
258 - check-email
971 - check-email
259 - freenect
972 - freenect
260 - frisby
973 - frisby
@@ -262,21 +975,18 @@ packages:
262 - hostname-validate
975 - hostname-validate
263 - ini
976 - ini
264 - lucid
977 - lucid
265− - osdkeys
266 - pdfinfo
978 - pdfinfo
267− # GHC 8 https://github.com/fpco/stackage/issues/1062 - present
268 - pure-io
979 - pure-io
269− # GHC 8 - scrobble
270− - shell-conduit
271 - sourcemap
980 - sourcemap
272 - hindent
981 - hindent
273 - descriptive
982 - descriptive
274 - wrap
983 - wrap
275 - path
984 - path
276− - intero
277 - weigh
985 - weigh
278− # GHC 8 - haskell-docs
986+ - odbc
279− # bounds - structured-haskell-mode
987+ - structured-haskell-mode
988+ - casa-client
989+ - casa-types
280
990
281 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
991 "Alberto G. Corona <agocorona@gmail.com> @agocorona":
282 - RefSerialize
992 - RefSerialize
@@ -285,57 +995,66 @@ packages:
285 - MFlow
995 - MFlow
286 - transient
996 - transient
287 - transient-universe
997 - transient-universe
288− - ghcjs-hplay
998+ - axiom
289
999
290 "Edward Kmett <ekmett@gmail.com> @ekmett":
1000 "Edward Kmett <ekmett@gmail.com> @ekmett":
291 - ad
1001 - ad
292 - adjunctions
1002 - adjunctions
1003+ - algebra
1004+ - ansi-wl-pprint
293− # GHC 8 & bounds - approximate
1005+ - approximate
294 - bifunctors
1006 - bifunctors
295 - bits
1007 - bits
296− # GHC 8 - bound
1008+ - bound
297 - bytes
1009 - bytes
298 - charset
1010 - charset
299 - comonad
1011 - comonad
300− - comonads-fd
301− - comonad-transformers
302− # GHC 8 & bounds - compensated
1012+ - compensated
303− # bounds - compressed
1013+ - compressed
304 - concurrent-supply
1014 - concurrent-supply
305 - constraints
1015 - constraints
306 - contravariant
1016 - contravariant
307 - distributive
1017 - distributive
1018+ - discrimination
308 - either
1019 - either
309 - eq
1020 - eq
310 - ersatz
1021 - ersatz
311− - exceptions
1022+ - fixed
1023+ - folds
312 - free
1024 - free
1025+ - gl
313 - graphs
1026 - graphs
314− - groupoids
1027+ - half
315 - heaps
1028 - heaps
1029+ - hybrid-vectors
1030+ - hyperloglog
316 - hyphenation
1031 - hyphenation
1032+ - indexed-traversable
317 - integration
1033 - integration
1034+ - intern
318 - intervals
1035 - intervals
319 - kan-extensions
1036 - kan-extensions
1037+ - keys
320 - lca
1038 - lca
321 - lens
1039 - lens
1040+ - lens-action
1041+ - lens-aeson
1042+ - lens-properties
322 - linear
1043 - linear
323 - linear-accelerate
1044 - linear-accelerate
324 - log-domain
1045 - log-domain
325 - machines
1046 - machines
326 - monadic-arrays
1047 - monadic-arrays
327 - monad-products
1048 - monad-products
328− - monad-products
1049+ - monad-st
329− # GHC 8 - monad-st
1050+ # - mtl take the one that ships with GHC
330− - mtl
331 - nats
1051 - nats
332 - numeric-extras
1052 - numeric-extras
333 - parsers
1053 - parsers
334 - pointed
1054 - pointed
335− - prelude-extras
336− - profunctor-extras
337 - profunctors
1055 - profunctors
338− - reducers
1056+ - promises
1057+ - rcu
339 - reducers
1058 - reducers
340 - reflection
1059 - reflection
341 - semigroupoid-extras
1060 - semigroupoid-extras
@@ -343,18 +1062,19 @@ packages:
343 - semigroups
1062 - semigroups
344 - speculation
1063 - speculation
345 - streams
1064 - streams
1065+ - structs
346 - tagged
1066 - tagged
1067+ - tagged-transformer
1068+ - transformers-compat <0.7 # https://github.com/commercialhaskell/stackage/issues/6137
1069+ - trifecta
1070+ - unique
347 - vector-instances
1071 - vector-instances
348 - void
1072 - void
349 - wl-pprint-extras
1073 - wl-pprint-extras
1074+ - wreq
350 - wl-pprint-terminfo
1075 - wl-pprint-terminfo
351 - zippers
1076 - zippers
352− - fixed
353− - half
354− - gl
355− - lens-aeson
356 - zlib-lens
1077 - zlib-lens
357− # GHC 8 - hyperloglog
358
1078
359 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
1079 "Andrew Farmer <afarmer@ittc.ku.edu> @xich":
360 - scotty
1080 - scotty
@@ -362,6 +1082,8 @@ packages:
362
1082
363 "Simon Hengel <sol@typeful.net> @sol":
1083 "Simon Hengel <sol@typeful.net> @sol":
364 - hspec
1084 - hspec
1085+ - hspec-core
1086+ - hspec-discover
365 - hspec-wai
1087 - hspec-wai
366 - hspec-wai-json
1088 - hspec-wai-json
367 - aeson-qq
1089 - aeson-qq
@@ -369,31 +1091,33 @@ packages:
369 - doctest
1091 - doctest
370 - base-compat
1092 - base-compat
371
1093
372− "Mario Blazevic <blamario@yahoo.com> @blamario":
1094+ "Mario Blazevic <blamario@protonmail.com> @blamario":
373 - monad-parallel
1095 - monad-parallel
374 - monad-coroutine
1096 - monad-coroutine
375− - incremental-parser
376 - monoid-subclasses
1097 - monoid-subclasses
377− - picoparsec
1098+ - rank2classes
1099+ - input-parsers
1100+ - incremental-parser
1101+ - construct
378
1102
379 "Brent Yorgey <byorgey@gmail.com> @byorgey":
1103 "Brent Yorgey <byorgey@gmail.com> @byorgey":
380 - active
1104 - active
381− # via haxr - BlogLiterately
382− # GHC 8 - BlogLiterately-diagrams
383 - diagrams
1105 - diagrams
384− # GHC 8 & bounds - diagrams-builder
1106+ - diagrams-builder
385− # GHC 8 & bounds - diagrams-haddock
386 - diagrams-cairo
1107 - diagrams-cairo
1108+ - diagrams-canvas
387 - diagrams-contrib
1109 - diagrams-contrib
388 - diagrams-core
1110 - diagrams-core
389 - diagrams-gtk
1111 - diagrams-gtk
1112+ - diagrams-html5
390 - diagrams-lib
1113 - diagrams-lib
391 - diagrams-postscript
1114 - diagrams-postscript
392 - diagrams-rasterific
1115 - diagrams-rasterific
1116+ - diagrams-solve
393 - diagrams-svg
1117 - diagrams-svg
394− - dual-tree
395 - force-layout
1118 - force-layout
396− # via http-streams - haxr
1119+ - SVGFonts
1120+ - haxr
397 - MonadRandom
1121 - MonadRandom
398 - monoid-extras
1122 - monoid-extras
399
1123
@@ -406,31 +1130,40 @@ packages:
406 - asciidiagram
1130 - asciidiagram
407
1131
408 "Patrick Brisbin @pbrisbin":
1132 "Patrick Brisbin @pbrisbin":
1133+ - bugsnag-haskell
409 - gravatar
1134 - gravatar
410−
1135+ - load-env
411− "Paul Harper <benekastah@gmail.com> @benekastah":
1136+ - yesod-auth-oauth2 < 0.7 # https://github.com/commercialhaskell/stackage/issues/6424
412− []
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
413− # - 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
414
1155
415 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
1156 "Felipe Lessa <felipe.lessa@gmail.com> @meteficha":
416− # bounds - country-codes
1157+ - fb
417− # bounds - esqueleto
418− # - fb # BLOCKED http-conduit 2.2
419− # bounds - fb-persistent
420− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - mangopay
421 - nonce
1158 - nonce
422 - serversession
1159 - serversession
423− - serversession-backend-acid-state
1160+ - serversession-backend-persistent
424− # bounds - serversession-backend-persistent
425− # bounds - serversession-backend-redis
1161+ - serversession-backend-redis
426− # - serversession-frontend-snap
427 - serversession-frontend-wai
1162 - serversession-frontend-wai
428 - serversession-frontend-yesod
1163 - serversession-frontend-yesod
429 - thumbnail-plus
1164 - thumbnail-plus
430− # bounds - yesod-auth-account-fork
1165+ - yesod-auth-fb
431− # GHC 8 - yesod-auth-fb
1166+ - yesod-fb
432− # - yesod-fb # BLOCKED http-conduit 2.2 via fb
433− # VERSION MISSING Compilation failure against aeson https://github.com/prowdsponsor/mangopay/issues/32 - yesod-mangopay
434
1167
435 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
1168 "Alexander Altman <alexanderaltman@me.com> @pthariensflame":
436 # Maintaining on behalf of @roelvandijk:
1169 # Maintaining on behalf of @roelvandijk:
@@ -439,40 +1172,65 @@ packages:
439 # My own packages:
1172 # My own packages:
440 - ChannelT
1173 - ChannelT
441
1174
442− "Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> @tmcdonell":
1175+ "Trevor L. McDonell <trevor.mcdonell@gmail.com> @tmcdonell":
443 - accelerate
1176 - accelerate
444−
1177+ - accelerate-bignum
445− # "Liam O'Connor <liamoc@cse.unsw.edu.au> @liamoc":
1178+ - accelerate-blas
446− # GHC 8 - patches-vector
1179+ - accelerate-fft
447− # GHC 8 - composition-tree
1180+ - accelerate-io
448− # GHC 8 & bounds - dixi
1181+ - accelerate-llvm
449− # GHC 8 - latex-formulae-image
1182+ - accelerate-llvm-native
450− # via latex-formulae-image - latex-formulae-pandoc
1183+ - accelerate-llvm-ptx
451− # GHC 8 - latex-formulae-hakyll
1184+ - accelerate-examples
452− # GHC 8 & bounds - agda-snippets
1185+ - repa
453− # 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
454
1205
455 "Dan Burton <danburton.email@gmail.com> @DanBurton":
1206 "Dan Burton <danburton.email@gmail.com> @DanBurton":
456− - hspec-jenkins
1207+ - ANum
457− - yesod-gitrev
458 - basic-prelude
1208 - basic-prelude
459 - composition
1209 - composition
1210+ - haskell-src-meta
460 - io-memoize
1211 - io-memoize
1212+ - lens-family-th
461 - numbers
1213 - numbers
462 - rev-state
1214 - rev-state
463 - runmemo
1215 - runmemo
464 - tardis
1216 - tardis
465− - lens-family-th
1217+ - yesod-gitrev
466−
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+
467− "Daniel Díaz dhelta.diaz@gmail.com @Daniel-Diaz":
1225+ "Daniel Casanueva <dhelta.diaz@gmail.com> @Daniel-Diaz":
468 - bimap-server
1226 - bimap-server
469 - binary-list
1227 - binary-list
470 - byteset
1228 - byteset
471 - Clipboard
1229 - Clipboard
1230+ - gmail-simple < 0 # 0.1.0.2 https://github.com/Daniel-Diaz/gmail-simple/issues/1
472 - grouped-list
1231 - grouped-list
473 - haskintex
1232 - haskintex
474 - HaTeX
1233 - HaTeX
475− - hatex-guide
476 - include-file
1234 - include-file
477 - matrix
1235 - matrix
478 - pcre-light
1236 - pcre-light
@@ -480,38 +1238,48 @@ packages:
480 - post-mess-age
1238 - post-mess-age
481 - sorted-list
1239 - sorted-list
482
1240
483− "Gabriel Gonzalez <Gabriel439@gmail.com> @Gabriel439":
1241+ "Gabriella Gonzalez <Gabriel439@gmail.com> @Gabriel439":
484 - optparse-generic
1242 - optparse-generic
485 - pipes
1243 - pipes
486 - pipes-extras
1244 - pipes-extras
1245+ - pipes-http
487 - pipes-parse
1246 - pipes-parse
488 - pipes-concurrency
1247 - pipes-concurrency
489 - pipes-safe
1248 - pipes-safe
490 - turtle
1249 - turtle
491 - foldl
1250 - foldl
492− - 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
493
1261
494 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
1262 "Andrew Thaddeus Martin <andrew.thaddeus@gmail.com> @andrewthad":
495− - yesod-table
1263+ - colonnade
1264+ - blaze-colonnade
1265+ - dot
496
1266
497− "Chris Allen <cma@bitemyapp.com> bitemyapp":
1267+ "Chris Allen <cma@bitemyapp.com> @bitemyapp":
498 - machines-directory
1268 - machines-directory
499 - machines-io
1269 - machines-io
500− # - bloodhound # BLOCKED derive and aeson-1.0
1270+ - bloodhound
501
1271
502 "Adam Bergmark <adam@bergmark.nl> @bergmark":
1272 "Adam Bergmark <adam@bergmark.nl> @bergmark":
503− - HUnit
504 - aeson
1273 - aeson
505− - fay
1274+ - HUnit
506− - fay-base
1275+ - attoparsec-iso8601
507− - fay-dom
508− - fay-jquery
509− - fay-text
510− - fay-uri
511 - feed
1276 - feed
512− - snaplet-fay
513 - time-compat
1277 - time-compat
514 - through-text
1278 - through-text
1279+ # Not my packages
1280+ - HStringTemplate
1281+ - spoon
1282+ - tagshare
515
1283
516 "Benedict Aas <x@shou.io> @Shou":
1284 "Benedict Aas <x@shou.io> @Shou":
517 - boolean-like
1285 - boolean-like
@@ -523,43 +1291,40 @@ packages:
523
1291
524 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
1292 "Robert Klotzner <robert.klotzner@gmx.at> @eskimor":
525 - purescript-bridge
1293 - purescript-bridge
526− - servant-purescript
1294+ - servant-purescript < 0 # 0.10.0.0 compile fail #6091/closed
527 - servant-subscriber
1295 - servant-subscriber
528
1296
529 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
1297 "Rodrigo Setti <rodrigosetti@gmail.com> @rodrigosetti":
530 - messagepack
1298 - messagepack
531 - messagepack-rpc
1299 - messagepack-rpc
532
1300
533− # "Boris Lykah <lykahb@gmail.com> @lykahb":
1301+ "Boris Lykah <lykahb@gmail.com> @lykahb":
534− # GHC 8 - groundhog
1302+ - groundhog
535− # GHC 8 - groundhog-th
1303+ - groundhog-inspector
536− # GHC 8 - groundhog-sqlite
537− # GHC 8 - groundhog-postgresql
538− # GHC 8 - groundhog-mysql
1304+ - groundhog-mysql
1305+ - groundhog-postgresql
1306+ - groundhog-sqlite
1307+ - groundhog-th
539
1308
540 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
1309 "Janne Hellsten <jjhellst@gmail.com> @nurpax":
541 - sqlite-simple
1310 - sqlite-simple
542
1311
543 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
1312 "Michal J. Gajda <maintainer@migamake.com> @mgajda":
544 - iterable
1313 - iterable
545− - Octree
546 - FenwickTree
1314 - FenwickTree
547− - hPDB
548− - hPDB-examples
549− - homplexity
550− - wordpass
551− # - json-autotype # BLOCKED aeson 1.0
1315+ - json-autotype
552− - posix-realtime
553
1316
554 "Dom De Re <domdere@domdere.com> @domdere":
1317 "Dom De Re <domdere@domdere.com> @domdere":
555 - cassava-conduit
1318 - cassava-conduit
556
1319
557 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
1320 "Dominic Steinitz <dominic@steinitz.org> @idontgetoutmuch":
558− - yarr
1321+ - monad-bayes
559 - random-fu
1322 - random-fu
560
1323
561 "Ben Gamari <ben@smart-cactus.org> @bgamari":
1324 "Ben Gamari <ben@smart-cactus.org> @bgamari":
562 - vector-fftw
1325 - vector-fftw
1326+ - cborg-json
1327+ - language-dot
563
1328
564 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
1329 "Roman Cheplyaka <roma@ro-che.info> @feuerbach":
565 - action-permutations
1330 - action-permutations
@@ -568,8 +1333,6 @@ packages:
568 - immortal
1333 - immortal
569 - regex-applicative
1334 - regex-applicative
570 - lexer-applicative
1335 - lexer-applicative
571− - smallcheck
572− - socket
573 - tasty
1336 - tasty
574 - tasty-golden
1337 - tasty-golden
575 - tasty-hunit
1338 - tasty-hunit
@@ -583,7 +1346,6 @@ packages:
583 - tuples-homogenous-h98
1346 - tuples-homogenous-h98
584
1347
585 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
1348 "George Giorgidze <giorgidze@gmail.com> @giorgidze":
586− - HCodecs
587 - YampaSynth
1349 - YampaSynth
588 - set-monad
1350 - set-monad
589
1351
@@ -596,15 +1358,8 @@ packages:
596
1358
597 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
1359 "Joachim Breitner <mail@joachim-breitner.de> @nomeata":
598 - circle-packing
1360 - circle-packing
599− - arbtt
600− - ghc-heap-view
601− - tttool
602− - gipeda
603− - list-fusion-probe
604 - haskell-spacegoo
1361 - haskell-spacegoo
605 - tasty-expected-failure
1362 - tasty-expected-failure
606− - RepLib
607− - unbound
608
1363
609 "Aditya Bhargava <adit@adit.io> @egonSchiele":
1364 "Aditya Bhargava <adit@adit.io> @egonSchiele":
610 - HandsomeSoup
1365 - HandsomeSoup
@@ -616,102 +1371,102 @@ packages:
616 - DAV
1371 - DAV
617 - hopenpgp-tools
1372 - hopenpgp-tools
618 - 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
619
1382
620 "Joey Hess <id@joeyh.name> @joeyh":
1383 "Joey Hess <id@joeyh.name> @joeyh":
621− # via esqueleto - git-annex
1384+ - git-annex
622− # via github - github-backup
623− - Win32-extras
624 - concurrent-output
1385 - concurrent-output
625 - mountpoints
1386 - mountpoints
626 - disk-free-space
1387 - disk-free-space
627
1388
628− "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
629 - microlens-aeson
1395 - microlens-aeson
1396+ - pipes-random
1397+ - servant-xml
1398+ - streaming-attoparsec
630 - versions
1399 - versions
631 - vectortiles
1400 - vectortiles
632− - pipes-random
633− # - repa # BLOCKED QuickCheck < 2.9
634− # - repa-io # BLOCKED repa
635− # - repa-algorithms # BLOCKED repa
636− # GHC 8 - kanji
637
1401
638 "Ketil Malde @ketil-malde":
1402 "Ketil Malde @ketil-malde":
639 - biocore
1403 - biocore
640 - biofasta
1404 - biofasta
641 - biofastq
1405 - biofastq
642− # 0.3.7.1 Compilation failure due to -Werror - biosff
643 - blastxml
1406 - blastxml
644 - bioace
1407 - bioace
645− # 0.8.8 Compilation failure https://github.com/BioHaskell/biophd/issues/3 - biophd
646 - biopsl
1408 - biopsl
647− # VERSION MISSING Compilation failure against c2hs https://github.com/ingolia/SamTools/issues/3 - samtools
648 - seqloc
1409 - seqloc
649 - bioalign
1410 - bioalign
650 - BlastHTTP
1411 - BlastHTTP
651− # The following have out-of-date dependencies currently
652− # biostockholm memexml RNAwolf
653− # , "Biobase BiobaseDotP BiobaseFR3D BiobaseInfernal BiobaseMAF"
654− # , "BiobaseTrainingData BiobaseTurner BiobaseXNA BiobaseVienna"
655− # , "BiobaseTypes BiobaseFasta"
656− # MC-Fold-DP
657
1412
658 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
1413 "Florian Eggenhofer <florian.eggenhofer@univie.ac.at> @eggzilla":
659 - ClustalParser
1414 - ClustalParser
660− # GHC 8 - EntrezHTTP
1415+ - EntrezHTTP
661 - Genbank
1416 - Genbank
662− # 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
663− # via EntrezHTTP - Taxonomy
1432+ - Taxonomy
664− # via ENtrezHTTP - TaxonomyTools
665 - ViennaRNAParser
1433 - ViennaRNAParser
1434+ - either-unwrap
666
1435
667 "Silk <code@silk.co>":
1436 "Silk <code@silk.co>":
668− - aeson-utils
669− - arrow-list
670 - attoparsec-expr
1437 - attoparsec-expr
671− - bumper
672− - code-builder
673− - fay-builder
674− - generic-aeson
675 - generic-xmlpickler
1438 - generic-xmlpickler
676− - hxt-pickle-utils
677 - imagesize-conduit
1439 - imagesize-conduit
678− - json-schema
679 - multipart
1440 - multipart
680− - rest-client
681− - rest-core
682− - rest-gen
683− - rest-happstack
684− - rest-snap
685− - rest-stringmap
686− - rest-types
687− - rest-wai
688 - tostring
1441 - tostring
689 - uri-encode
1442 - uri-encode
690
1443
691 "Simon Michael <simon@joyful.com> @simonmichael":
1444 "Simon Michael <simon@joyful.com> @simonmichael":
692− - darcs
693− - hledger
694− - hledger-lib
695− # - hledger-ui
696− # - hledger-web
697− # via Diff - shelltestrunner
698 - quickbench
1445 - quickbench
699 - 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
700
1459
701 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
1460 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
702 - io-manager
1461 - io-manager
703
1462
704 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
1463 "Dimitri Sabadie <dimitri.sabadie@gmail.com> @phaazon":
705− # - al FIXME temporary, figure out why it's not working with stackage-build
1464+ - al
706 - event
1465 - event
707 - hid
1466 - hid
708− # GHC 8 - luminance
709− # GHC 8 - luminance-samples
710 - monad-journal
1467 - monad-journal
711− # GHC 8 - msi-kb-backlit
712 - smoothie
1468 - smoothie
713− # bounds - tellbot
714− # GHC 8 - wavefront
1469+ - wavefront
715 - zero
1470 - zero
716
1471
717 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
1472 "Thomas Schilling <nominolo@googlemail.com> @nominolo":
@@ -719,12 +1474,6 @@ packages:
719
1474
720 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
1475 "Boris Buliga <d12frosted@icloud.com> @d12frosted":
721 - io-choice
1476 - io-choice
722− # UNKNOWN VERSION Compilation failure https://github.com/d12frosted/CanonicalPath/issues/5 - system-canonicalpath
723−
724− "Daniel Gröber <dxld@darkboxed.org> @DanielG":
725− []
726− # - ghc-mod # BLOCKED pipes 4.2 & optparse-applicative 0.13.0.0 when #1784 gets lifted
727− # - cabal-helper # BLOCKED extra 1.5
728
1477
729 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
1478 "Yann Esposito <yann.esposito@gmail.com> yogsototh @yogsototh":
730 - human-readable-duration
1479 - human-readable-duration
@@ -732,35 +1481,51 @@ packages:
732 - wai-middleware-caching
1481 - wai-middleware-caching
733 - wai-middleware-caching-lru
1482 - wai-middleware-caching-lru
734 - wai-middleware-caching-redis
1483 - wai-middleware-caching-redis
735− # not package maintainer
736− - ekg
737− - ekg-json
738
1484
739 "Paul Rouse <pgr@doynton.org> @paul-rouse":
1485 "Paul Rouse <pgr@doynton.org> @paul-rouse":
740 - mysql
1486 - mysql
741 - mysql-simple
1487 - mysql-simple
742− - sphinx
1488+ - sphinx < 0 # 0.6.0.2 compile fail: Could not find module Network
743 - xmlhtml
1489 - xmlhtml
744 - yesod-auth-hashdb
1490 - yesod-auth-hashdb
745
1491
746 "Toralf Wittner <tw@dtex.org> @twittner":
1492 "Toralf Wittner <tw@dtex.org> @twittner":
747 - bytestring-conversion
1493 - bytestring-conversion
748− # GHC8/3.1.0 compilation failure - cql
1494+ - cql
749− # via cql - cql-io
1495+ - cql-io
750 - redis-resp
1496 - redis-resp
751 - redis-io
1497 - redis-io
752− # - swagger # BLOCKED aeson 1.0
1498+ - swagger
753 - tinylog
1499 - tinylog
754 - wai-predicates
1500 - wai-predicates
755− # GHC 8 - wai-routing
1501+ - wai-routing
756 - zeromq4-haskell
1502 - zeromq4-haskell
757
1503
758− "trupill@gmail.com":
1504+ "Alejandro Serrano <trupill@gmail.com> @serras":
759 - djinn-lib
1505 - djinn-lib
760 - 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
761
1522
1523+ "Flavio Corpa <flaviocorpa@gmail.com> @kutyel":
1524+ - language-avro
1525+
762− "Matvey Aksenov <matvey.aksenov@gmail.com>":
1526+ "Matvey Aksenov <matvey.aksenov@gmail.com> @supki":
763 - terminal-size
1527 - terminal-size
1528+ - envparse
764
1529
765 "Luis G. Torres <lgtorres42@gmail.com> @giogadi":
1530 "Luis G. Torres <lgtorres42@gmail.com> @giogadi":
766 - kdt
1531 - kdt
@@ -769,21 +1534,19 @@ packages:
769 - netwire
1534 - netwire
770 - netwire-input
1535 - netwire-input
771 - netwire-input-glfw
1536 - netwire-input-glfw
1537+ - yoga
1538+ - freetype2
1539+ - HCodecs
1540+ - netcode-io
1541+ - reliable-io
772
1542
773 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
1543 "Emanuel Borsboom <manny@fpcomplete.com> @borsboom":
774 - BoundedChan
1544 - BoundedChan
775 - broadcast-chan
1545 - broadcast-chan
776− - bytestring-lexing
777− - bytestring-trie
778− - data-accessor
779− - data-accessor-mtl
780− # GHC 8 - file-location
781 - fuzzcheck
1546 - fuzzcheck
782− - haddock-api
1547+ - here
783− # haskell-src-exts 1.18 - here
784 - hlibgit2
1548 - hlibgit2
785 - gitlib-libgit2
1549 - gitlib-libgit2
786− - hostname-validate
787 - interpolatedstring-perl6
1550 - interpolatedstring-perl6
788 - iproute
1551 - iproute
789 - missing-foreign
1552 - missing-foreign
@@ -794,60 +1557,95 @@ packages:
794 - Chart-cairo
1557 - Chart-cairo
795 - ghc-events
1558 - ghc-events
796 - monad-extras
1559 - monad-extras
797− # - stack < 9.9.9 # BLOCKED http-conduit 2.2
798 - optparse-simple
1560 - optparse-simple
799 - hpack
1561 - hpack
1562+ - bindings-uname
1563+ - stack < 9.9.9 # see #3563/closed
800
1564
801 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1565 "Michael Sloan <mgsloan@gmail.com> @mgsloan":
1566+ - store
1567+ - store-core
1568+ - store-streaming
802 - th-orphans
1569 - th-orphans
803 - th-reify-many
1570 - th-reify-many
1571+ - th-utilities
804
1572
805 "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
806 - base-prelude
1577 - base-prelude
1578+ - bytestring-strict-builder
1579+ - bytestring-tree-builder
807 - cases
1580 - cases
1581+ - deferred-folds
1582+ - deque
1583+ - domain
1584+ - domain-core
1585+ - domain-optics
808 - focus
1586 - focus
809 - hasql
1587 - hasql
1588+ - hasql-optparse-applicative
1589+ - hasql-pool
1590+ - hasql-th
1591+ - hasql-transaction
1592+ - headed-megaparsec
1593+ - jsonifier
810 - list-t
1594 - list-t
811 - mtl-prelude
1595 - mtl-prelude
812 - neat-interpolation
1596 - neat-interpolation
1597+ - optima
813 - partial-handler
1598 - partial-handler
814 - postgresql-binary
1599 - postgresql-binary
1600+ - postgresql-syntax
1601+ - primitive-extras
1602+ - ptr-poker
1603+ - rebase
1604+ - rerebase
815 - slave-thread
1605 - slave-thread
816 - 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
817
1614
818 "Iustin Pop <iustin@k1024.org> @iustin":
1615 "Iustin Pop <iustin@k1024.org> @iustin":
819 - prefix-units
1616 - prefix-units
820
1617
821 "Alexander Thiemann <mail@athiemann.net> @agrafix":
1618 "Alexander Thiemann <mail@athiemann.net> @agrafix":
822− - Spock
1619+ - Spock
823− - Spock-core
1620+ - Spock-core
824− - Spock-api
1621+ - Spock-api
825− - Spock-api-server
1622+ - Spock-api-server
826− # via digestive-functors - Spock-digestive
827− - Spock-worker
1623+ - Spock-worker
828− - graph-core
1624+ - graph-core
829− - hvect
1625+ - hvect
830− - reroute
1626+ - reroute
831− - users
1627+ - users
832− # via esqueleto - users-persistent
1628+ - users-persistent
833− - users-postgresql-simple
1629+ - users-postgresql-simple
834− - users-test
1630+ - users-test
835− - validate-input
1631+ - validate-input
836− - ignore
1632+ - ignore < 0 # 0.1.1.0 compile fail https://github.com/agrafix/ignore/issues/5
837− - elm-bridge
838− - hackmanager
839− # via digestive-functors - digestive-bootstrap
840− - blaze-bootstrap
1633+ - blaze-bootstrap
841− - dataurl
1634+ - dataurl
842− - psql-helpers
1635+ - psql-helpers
1636+ - superbuffer
1637+ - timespan
1638+ - distance < 0 # 0.1.0.0 compile fail: Semigroup Distance
1639+ - async-extra
1640+ - format-numbers
1641+ - highjson
1642+ - highjson-swagger
1643+ - highjson-th
1644+ - fileplow
843
1645
844 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
1646 "Joey Eremondi <joey@eremondi.com> @JoeyEremondi":
845− - aeson-pretty
846 - digest
1647 - digest
847− # via elm-compiler - elm-build-lib
848− # bounds - elm-compiler
849 - elm-core-sources
1648 - elm-core-sources
850− # bounds - elm-package
851 - language-glsl
1649 - language-glsl
852 - prettyclass
1650 - prettyclass
853 - QuasiText
1651 - QuasiText
@@ -858,15 +1656,10 @@ packages:
858 - yesod-form-richtext
1656 - yesod-form-richtext
859 - ghcjs-perch
1657 - ghcjs-perch
860
1658
861− "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
862− - hdevtools
863−
864− "Andrey Chudnov <oss@chudnov.com> @achudnov":
865− - language-ecmascript
866−
867 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
1659 "Tom Ellis <tom-stackage@jaguarpaw.co.uk> @tomjaguarpaw":
868 - opaleye
1660 - opaleye
869 - product-profunctors
1661 - product-profunctors
1662+ - strict-wrapper
870
1663
871 "Samplecount stefan@samplecount.com @kaoskorobase":
1664 "Samplecount stefan@samplecount.com @kaoskorobase":
872 - shake-language-c
1665 - shake-language-c
@@ -875,38 +1668,53 @@ packages:
875 - alarmclock
1668 - alarmclock
876 - bank-holidays-england
1669 - bank-holidays-england
877
1670
878− "Haskell Servant <jkarni@gmail.com>":
1671+ "Haskell Servant <haskell-servant-maintainers@googlegroups.com>":
879 - servant
1672 - servant
1673+ - servant-blaze
1674+ - servant-cassava
880 - servant-client
1675 - servant-client
1676+ - servant-client-core
1677+ - servant-conduit
881 - servant-docs
1678 - servant-docs
1679+ - servant-foreign
1680+ - servant-http-streams
882 - servant-js
1681 - servant-js
883− - servant-server
884 - servant-lucid
1682 - servant-lucid
885− - servant-blaze
1683+ - servant-machines
886− - servant-foreign
887 - servant-mock
1684 - servant-mock
888− - 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
889
1700
890 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
1701 "Alexandr Ruchkin <voidex@live.com> @mvoidex":
891− - hdocs
892 - hformat
1702 - hformat
893− - hsdev
894 - simple-log
1703 - simple-log
895 - text-region
1704 - text-region
1705+ - haskell-names
1706+ - hsdev
896
1707
897 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
1708 "Aleksey Kliger <aleksey@lambdageek.org> @lambdageek":
898 - unbound-generics
1709 - unbound-generics
899 - indentation-core
1710 - indentation-core
900 - indentation-parsec
1711 - indentation-parsec
1712+ - clang-compilation-database
901
1713
902 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
1714 "Alois Cochard <alois.cochard@gmail.com> @aloiscochard":
903− []
904− # GHC 8 & bounds - codex
905− # GHC 8 - machines-binary
1715+ - machines-binary
906− # GHC 8 - machines-process
907− # GHC 8 - sarsi
908 # on behalf of Bryan O'Sullivan @bos:
1716 # on behalf of Bryan O'Sullivan @bos:
909− # - wreq # BLOCKED http-client 0.5
1717+ - wreq
910
1718
911 "Andraz Bajt <andraz@bajt.me> @edofic":
1719 "Andraz Bajt <andraz@bajt.me> @edofic":
912 - effect-handlers
1720 - effect-handlers
@@ -917,53 +1725,96 @@ packages:
917 - HaskellNet
1725 - HaskellNet
918 - HaskellNet-SSL
1726 - HaskellNet-SSL
919
1727
1728+ "Tristan de Cacqueray <tdecacqu@redhat.com> @tristanC":
1729+ - linux-capabilities
1730+
920 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1731 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1732+ - bodhi
1733+ - bugzilla-redhat
1734+ - cabal-file
921 - 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
922− - cabal-sort
1753+ - simple-cabal
923− - hslua
1754+ - simple-cmd
924− # - idris # BLOCKED aeson 1.0 & optparse-applicative 0.13.0.0 after #1784
1755+ - simple-cmd-args
925−
1756+ - stack-all
1757+ - stack-clean-old
1758+
1759+ - async-pool
1760+ - darcs
1761+ - idris
1762+ - libffi
926 - cairo
1763 - cairo
927− - gio
928 - glib
1764 - glib
929− - gtk
1765+ - gio
930− - gtk3
931− - gtksourceview3
932 - pango
1766 - pango
933− - webkitgtk3
1767+ - gtk3
934− - webkitgtk3-javascriptcore
935−
936 - ghcjs-codemirror
1768 - ghcjs-codemirror
937− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - ghcjs-dom
1769+ - ghcjs-dom
938− # via gi-gtk https://github.com/fpco/stackage/issues/1569 - jsaddle
1770+ - jsaddle
939− # GHC 8 & bounds - leksah-server
940− # GHC 8 - ltk
941 - vado
1771 - vado
942− # GHC 8 - vcsgui
943 - vcswrapper
1772 - vcswrapper
1773+ - ShellCheck
1774+ - binary-shared
1775+ - xdg-userdirs
1776+ # please take these
1777+ - cryptohash-md5
1778+ - cryptohash-sha1
944
1779
945 "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
946 - network-simple
1789 - network-simple
1790+ - network-simple-tls
947− # - pipes-aeson # BLOCKED pipes 4.2
1791+ - pipes-aeson
948 - pipes-attoparsec
1792 - pipes-attoparsec
949− # GHC 8 - pipes-binary
1793+ - pipes-binary
950 - pipes-network
1794 - pipes-network
1795+ - pipes-network-tls
1796+ - safe-money
1797+ - vector-bytes-instances
1798+ - xmlbf-xeno
1799+ - xmlbf-xmlhtml
1800+ - xmlbf
951
1801
952 "Tomas Carnecky @wereHamster":
1802 "Tomas Carnecky @wereHamster":
953 - avers
1803 - avers
954− # via avers - avers-api
1804+ - avers-api
955− # via avers - avers-server
1805+ - avers-server
956 - css-syntax
1806 - css-syntax
957 - etcd
1807 - etcd
958 - github-types
1808 - github-types
959 - github-webhook-handler
1809 - github-webhook-handler
960− # GHC 8 - github-webhook-handler-snap
1810+ - github-webhook-handler-snap
961 - google-cloud
1811 - google-cloud
962 - kraken
1812 - kraken
963 - libinfluxdb
1813 - libinfluxdb
964− # GHC 8 - mole
1814+ - mole
965 - publicsuffix
1815 - publicsuffix
966 - rethinkdb-client-driver
1816 - rethinkdb-client-driver
1817+ - snap-blaze
967
1818
968 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
1819 "Alexandr Kurilin <alex@kurilin.net> @alex_kurilin":
969 - bcrypt
1820 - bcrypt
@@ -971,10 +1822,6 @@ packages:
971 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
1822 "Jeffrey Rosenbluth <jeffrey.rosenbluth@gmail.com> @jeffreyrosenbluth":
972 - palette
1823 - palette
973 - diagrams-canvas
1824 - diagrams-canvas
974− - diagrams-rasterific
975− - lucid-svg
976− - diagrams-html5
977− - static-canvas
978 - svg-builder
1825 - svg-builder
979
1826
980 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
1827 "Gabríel Arthúr Pétursson <gabriel@system.is> @polarina":
@@ -983,107 +1830,48 @@ packages:
983 "Leon Mergen <leon@solatis.com> @solatis":
1830 "Leon Mergen <leon@solatis.com> @solatis":
984 - base32string
1831 - base32string
985 - base58string
1832 - base58string
986− # BLOCKED wreq:
987− # - bitcoin-api
1833+ - bitcoin-api
988− # - bitcoin-api-extra
1834+ - bitcoin-api-extra
989 - bitcoin-block
1835 - bitcoin-block
990 - bitcoin-script
1836 - bitcoin-script
991 - bitcoin-tx
1837 - bitcoin-tx
992 - bitcoin-types
1838 - bitcoin-types
993 - hexstring
1839 - hexstring
994− - network-attoparsec
1840+ - network-attoparsec < 0 # 0.12.2 compile fail MonadFail
995− - network-anonymous-i2p
1841+ - network-anonymous-i2p < 0 # 0.10.0 compile fail
996 - network-anonymous-tor
1842 - network-anonymous-tor
997
1843
998− "Timothy Jones <git@zmthy.io> @zmthy":
1844+ "Timothy Jones <tim@zmthy.net> @zmthy":
999 - http-media
1845 - http-media
1000
1846
1001 "Greg V <greg@unrelenting.technology> @myfreeweb":
1847 "Greg V <greg@unrelenting.technology> @myfreeweb":
1002− - gitson
1003 - pcre-heavy
1848 - pcre-heavy
1004 - http-link-header
1849 - http-link-header
1005− # - microformats2-parser # BLOCKED aeson-qq
1850+ - microformats2-parser
1006 - hspec-expectations-pretty-diff
1851 - hspec-expectations-pretty-diff
1852+ - wai-cli
1853+ - magicbane
1007
1854
1008 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1855 "Francesco Mazzoli <f@mazzo.li> @bitonic":
1009− []
1010− # https://github.com/mainland/language-c-quote/issues/72
1011− # - language-c-quote
1856+ - language-c-quote
1012
1857
1013 "Sönke Hahn <soenkehahn@gmail.com> @soenkehahn":
1858 "Sönke Hahn <soenkehahn@gmail.com> @soenkehahn":
1014 - generics-eot
1859 - generics-eot
1015 - getopt-generics
1860 - getopt-generics
1016 - graph-wrapper
1861 - graph-wrapper
1017 - string-conversions
1862 - string-conversions
1863+ - hspec-checkers
1864+ - FindBin
1018
1865
1019 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1866 "Jan Stolarek <jan.stolarek@p.lodz.pl> @jstolarek":
1020 - tasty-program
1867 - tasty-program
1021
1868
1022− "Oleg Grenrus <oleg.grenrus@iki.fi> @phadej":
1023− - aeson-compat
1024− - aeson-extra
1025− - binary-orphans
1026− - binary-tagged
1027− - edit-distance
1028− - generics-sop-lens
1029− # GHC 8 - github
1030− - insert-ordered-containers
1031− - JuicyPixels-scale-dct
1032− - lattices
1033− - monad-http
1034− - postgresql-simple-url
1035− - range-set-list
1036− - regex-applicative-text
1037− - servant-swagger-ui
1038− - servant-yaml
1039− - singleton-bool
1040− - spdx
1041− - these
1042− - time-parsers
1043− - waitra
1044−
1045− # Not a maintainer
1046− - arithmoi
1047− - friendly-time
1048− - hashable
1049− - haxl
1050− - monad-time
1051− - packdeps
1052− - recursion-schemes
1053− - unordered-containers
1054−
1055− # fft
1056− - carray
1057− - ix-shapable
1058− - fft
1059−
1060− # Regex packages by Chris Kuklewicz
1061− - regex-base
1062− - regex-compat
1063− # 0.91 Compilation failure due to -Werror - regex-dfa
1064− # 0.90 Compilation failure due to -Werror - regex-parsec
1065− - regex-pcre
1066− - regex-posix
1067− - regex-tdfa
1068− # GHC 8 - regex-tdfa-utf8
1069− # 0.91 Compilation failure due to -Werror - regex-tre
1070−
1071− # Universe
1072− - universe
1073− - universe-base
1074− - universe-instances-base
1075− - universe-instances-extended
1076− - universe-instances-trans
1077− - universe-reverse-instances
1078−
1079 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1869 "Abhinav Gupta <mail@abhinavg.net> @abhinav":
1080 - farmhash
1870 - farmhash
1081 - pinch
1871 - pinch
1082− - sandman
1872+ - sandman < 0 # 0.2.0.1 compile fail (Cabal 3)
1083− - language-thrift
1084
1873
1085 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1874 "Adam C. Foltzer <acfoltzer@galois.com> @acfoltzer":
1086− - cryptol
1087 - gitrev
1875 - gitrev
1088 - persistent-refs
1876 - persistent-refs
1089
1877
@@ -1091,81 +1879,100 @@ packages:
1091 - jose-jwt
1879 - jose-jwt
1092
1880
1093 "Brendan Hay <brendan.g.hay@gmail.com> @brendanhay":
1881 "Brendan Hay <brendan.g.hay@gmail.com> @brendanhay":
1094− # BLOCKED http-conduit 2.2
1095− # - amazonka
1882+ - amazonka
1096− # - amazonka-core
1883+ - amazonka-core
1097− # - amazonka-test
1884+ - amazonka-test
1098− # - amazonka-apigateway
1885+ - amazonka-apigateway
1099− # - amazonka-application-autoscaling
1886+ - amazonka-application-autoscaling
1887+ - amazonka-appstream
1888+ - amazonka-athena
1100− # - amazonka-autoscaling
1889+ - amazonka-autoscaling
1890+ - amazonka-budgets
1101− # - amazonka-certificatemanager
1891+ - amazonka-certificatemanager
1102− # - amazonka-cloudformation
1892+ - amazonka-cloudformation
1103− # - amazonka-cloudfront
1893+ - amazonka-cloudfront
1104− # - amazonka-cloudhsm
1894+ - amazonka-cloudhsm
1105− # - amazonka-cloudsearch-domains
1895+ - amazonka-cloudsearch
1106− # - amazonka-cloudsearch
1896+ - amazonka-cloudsearch-domains
1107− # - amazonka-cloudtrail
1897+ - amazonka-cloudtrail
1898+ - amazonka-cloudwatch
1108− # - amazonka-cloudwatch-events
1899+ - amazonka-cloudwatch-events
1109− # - amazonka-cloudwatch-logs
1900+ - amazonka-cloudwatch-logs
1110− # - amazonka-cloudwatch
1901+ - amazonka-codebuild
1111− # - amazonka-codecommit
1902+ - amazonka-codecommit
1112− # - amazonka-codedeploy
1903+ - amazonka-codedeploy
1113− # - amazonka-codepipeline
1904+ - amazonka-codepipeline
1114− # - amazonka-cognito-identity
1905+ - amazonka-cognito-identity
1115− # - amazonka-cognito-idp
1906+ - amazonka-cognito-idp
1116− # - amazonka-cognito-sync
1907+ - amazonka-cognito-sync
1117− # - amazonka-config
1908+ - amazonka-config
1118− # - amazonka-datapipeline
1909+ - amazonka-datapipeline
1119− # - amazonka-devicefarm
1910+ - amazonka-devicefarm
1120− # - amazonka-directconnect
1911+ - amazonka-directconnect
1121− # - amazonka-discovery
1912+ - amazonka-discovery
1122− # - amazonka-dms
1913+ - amazonka-dms
1123− # - amazonka-ds
1914+ - amazonka-ds
1915+ - amazonka-dynamodb
1124− # - amazonka-dynamodb-streams
1916+ - amazonka-dynamodb-streams
1125− # - amazonka-dynamodb
1917+ - amazonka-ec2 < 0 # takes too much memory to build https://github.com/brendanhay/amazonka/issues/549
1126− # - amazonka-ec2
1127− # - amazonka-ecr
1918+ - amazonka-ecr
1128− # - amazonka-ecs
1919+ - amazonka-ecs
1129− # - amazonka-efs
1920+ - amazonka-efs
1130− # - amazonka-elasticache
1921+ - amazonka-elasticache
1131− # - amazonka-elasticbeanstalk
1922+ - amazonka-elasticbeanstalk
1132− # - amazonka-elasticsearch
1923+ - amazonka-elasticsearch
1133− # - amazonka-elastictranscoder
1924+ - amazonka-elastictranscoder
1134− # - amazonka-elb
1925+ - amazonka-elb
1926+ - amazonka-elbv2
1135− # - amazonka-emr
1927+ - amazonka-emr
1136− # - amazonka-gamelift
1928+ - amazonka-gamelift
1137− # - amazonka-glacier
1929+ - amazonka-glacier
1930+ - amazonka-glue
1931+ - amazonka-health
1138− # - amazonka-iam
1932+ - amazonka-iam
1139− # - amazonka-importexport
1933+ - amazonka-importexport
1140− # - amazonka-inspector
1934+ - amazonka-inspector
1935+ - amazonka-iot
1141− # - amazonka-iot-dataplane
1936+ - amazonka-iot-dataplane
1142− # - amazonka-iot
1937+ - amazonka-kinesis
1143− # - amazonka-kinesis
1938+ - amazonka-kinesis-analytics
1144− # - amazonka-kinesis-firehose
1939+ - amazonka-kinesis-firehose
1145− # - amazonka-kms
1940+ - amazonka-kms
1146− # - amazonka-lambda
1941+ - amazonka-lambda
1942+ - amazonka-lightsail
1147− # - amazonka-marketplace-analytics
1943+ - amazonka-marketplace-analytics
1148− # - amazonka-marketplace-metering
1944+ - amazonka-marketplace-metering
1149− # - amazonka-ml
1945+ - amazonka-ml
1946+ - amazonka-opsworks
1150− # - amazonka-opsworks
1947+ - amazonka-opsworks-cm
1948+ - amazonka-pinpoint
1949+ - amazonka-polly
1151− # - amazonka-rds
1950+ - amazonka-rds
1152− # - amazonka-redshift
1951+ - amazonka-redshift
1952+ - amazonka-rekognition
1153− # - amazonka-route53-domains
1953+ - amazonka-route53
1154− # - amazonka-route53
1954+ - amazonka-route53-domains
1155− # - amazonka-s3
1955+ - amazonka-s3
1156− # - amazonka-sdb
1956+ - amazonka-sdb
1957+ - amazonka-servicecatalog
1157− # - amazonka-ses
1958+ - amazonka-ses
1959+ - amazonka-shield
1960+ - amazonka-sms
1961+ - amazonka-snowball
1158− # - amazonka-sns
1962+ - amazonka-sns
1159− # - amazonka-sqs
1963+ - amazonka-sqs
1160− # - amazonka-ssm
1964+ - amazonka-ssm
1965+ - amazonka-stepfunctions
1161− # - amazonka-storagegateway
1966+ - amazonka-storagegateway
1162− # - amazonka-sts
1967+ - amazonka-sts
1163− # - amazonka-support
1968+ - amazonka-support
1164− # - amazonka-swf
1969+ - amazonka-swf
1165− # - amazonka-waf
1970+ - amazonka-waf
1166− # - amazonka-workspaces
1971+ - amazonka-workspaces
1167− # - gogol # https://github.com/brendanhay/gogol/issues/38
1972+ - amazonka-xray
1973+ # gogol-* disabled due to `gogol-core` due to `servant`: #6089/closed
1974+ - gogol
1168− - gogol-core
1975+ - gogol-core < 0 # 0.5.0 compile fail
1169 - gogol-adexchange-buyer
1976 - gogol-adexchange-buyer
1170 - gogol-adexchange-seller
1977 - gogol-adexchange-seller
1171 - gogol-admin-datatransfer
1978 - gogol-admin-datatransfer
@@ -1262,7 +2069,7 @@ packages:
1262 - gogol-youtube-analytics
2069 - gogol-youtube-analytics
1263 - gogol-youtube-reporting
2070 - gogol-youtube-reporting
1264 - ede
2071 - ede
1265− - pagerduty
2072+ - pagerduty < 0 # 0.0.8 compile fail with GHC 8.4 https://github.com/brendanhay/pagerduty/issues/10
1266 - semver
2073 - semver
1267 - text-manipulate
2074 - text-manipulate
1268
2075
@@ -1272,81 +2079,77 @@ packages:
1272 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
2079 "Gershom Bazerman <gershomb@gmail.com> @gbaz":
1273 - jmacro
2080 - jmacro
1274 - jmacro-rpc
2081 - jmacro-rpc
1275− - jmacro-rpc-happstack
1276 - jmacro-rpc-snap
2082 - jmacro-rpc-snap
2083+ - jmacro-rpc-happstack
2084+
1277 - mbox
2085 - mbox
1278 - kmeans
2086 - kmeans
1279 - boolsimplifier
2087 - boolsimplifier
1280 - cubicspline
2088 - cubicspline
1281 - maximal-cliques
2089 - maximal-cliques
1282
2090
1283− "Alexander Bondarenko <aenor.realm@gmail.com> @wiz":
2091+ "Alexander Bondarenko <aenor.realm@gmail.com> @dpwiz":
2092+ - hedn
1284 - soap
2093 - soap
1285 - soap-tls
2094 - soap-tls
1286 - soap-openssl
2095 - soap-openssl
1287
2096
1288 "Andres Löh <andres@well-typed.com> @kosmikus":
2097 "Andres Löh <andres@well-typed.com> @kosmikus":
1289 - generics-sop
2098 - generics-sop
2099+ - records-sop
2100+ - sop-core
1290
2101
1291 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
2102 "Vivian McPhail <haskell.vivian.mcphail@gmail.com> @amcphail":
1292 - hmatrix-gsl-stats
2103 - hmatrix-gsl-stats
1293 - hsignal
2104 - hsignal
1294 - hstatistics
2105 - hstatistics
1295 - plot
2106 - plot
1296− - plot-gtk
1297− - plot-gtk3
1298−
1299 - vector-buffer
2107 - vector-buffer
1300− # 0.1.2.1 Compilation failure against hmatrix https://github.com/amcphail/hmatrix-repa/issues/2 - hmatrix-repa
2108+ - hmatrix-repa
1301
2109
1302 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
2110 "Noam Lewis <jones.noamle@gmail.com> @sinelaw":
1303− # via hxt-tagsoup - xml-to-json
2111+ - xml-to-json
1304 - 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
1305 - digits
2119 - digits
1306− - unification-fd
1307 - logict
2120 - logict
1308− - resolve-trivial-conflicts
1309− - wl-pprint
1310 - leveldb-haskell
2121 - leveldb-haskell
1311 - system-argv0
2122 - system-argv0
1312 - markdown-unlit
2123 - markdown-unlit
1313
2124
1314− "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk> @Fuuzetsu":
2125+ "Brian McKenna <brian@brianmckenna.org> @puffnfresh":
1315− # 0.4.1.1 compilation failure against GHC 8 - aeson-schema
1316− - H
1317− - inline-r
1318−
1319− # "David Fox <dsf@seereason.com> @ddssff":
1320− # GHC bug https://github.com/ddssff/debian-haskell/issues/6 - debian
1321− # via memoize - cabal-debian
1322−
1323− "Stefan Saasen <stefan@saasen.me> @juretta":
1324 - jwt
2126 - jwt
1325
2127
1326 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
2128 "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz":
1327 - setlocale
2129 - setlocale
1328
2130
1329− "John Chee <cheecheeo+stackage@gmail.com> @chee1bot":
1330− - cgi
1331−
1332 "Taylor Fausak <taylor@fausak.me> @tfausak":
2131 "Taylor Fausak <taylor@fausak.me> @tfausak":
1333 - autoexporter
2132 - autoexporter
1334− - bento
2133+ - burrito
1335− - bmp # Maintained by @benl23x5.
2134+ - derulo
1336− # GHC 8 - ekg-statsd # Maintained by @tibbe.
1337 - flow
2135 - flow
1338− # via uri-templater - github-release
2136+ - github-release
1339− - gloss # Maintained by @benl23x5.
2137+ - json-feed
1340− - gloss-rendering # Maintained by @benl23x5.
1341− - gpolyline # Maintained by @fegu.
1342 - lackey
2138 - lackey
1343− - octane
2139+ - list-singleton
1344− - overloaded-records # Maintained by @trskop.
2140+ - rampart
1345 - ratel
2141 - ratel
1346 - ratel-wai
2142 - ratel-wai
2143+ - rattletrap
2144+ - salve
2145+ - splint
1347 - strive
2146 - strive
2147+ - witch
1348 - wuss
2148 - wuss
1349
2149
2150+ - bmp # @benl23x5
2151+ - gpolyline # @fegu
2152+
1350 "Marios Titas <redneb@gmx.com> @redneb":
2153 "Marios Titas <redneb@gmx.com> @redneb":
1351 - HsOpenSSL-x509-system
2154 - HsOpenSSL-x509-system
1352 - adler32
2155 - adler32
@@ -1361,159 +2164,186 @@ packages:
1361 - prometheus-client
2164 - prometheus-client
1362 - prometheus-metrics-ghc
2165 - prometheus-metrics-ghc
1363 - scalpel
2166 - scalpel
2167+ - scalpel-core
1364 - wai-middleware-prometheus
2168 - wai-middleware-prometheus
1365
2169
1366 "William Casarin <bill@casarin.me> @jb55":
2170 "William Casarin <bill@casarin.me> @jb55":
1367 - bson-lens
2171 - bson-lens
1368 - cased
2172 - cased
2173+ - elm-export
2174+ - elm-export-persistent
1369 - pipes-csv
2175 - pipes-csv
1370 - pipes-mongodb
2176 - pipes-mongodb
2177+ - servant-elm
2178+ - servant-streaming
2179+ - servant-streaming-client
2180+ - servant-streaming-server
1371 - skeletons
2181 - skeletons
1372
2182
1373− # "Smirnov Alexey <chemistmail@gmail.com> @chemist":
1374− # GHC 8 - snmp
1375− # GHC 8 - agentx
1376−
1377 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
2183 "David Raymond Christiansen <david@davidchristiansen.dk> @david-christiansen":
1378 - annotated-wl-pprint
2184 - annotated-wl-pprint
1379
2185
1380 "Yitz Gale <gale@sefer.org> @ygale":
2186 "Yitz Gale <gale@sefer.org> @ygale":
2187+ - boolean-normal-forms
2188+ - strict-concurrency
1381 - timezone-series
2189 - timezone-series
1382 - timezone-olson
2190 - timezone-olson
1383
2191
1384− "Josh Holland <josh@inv.alid.pw> @jshholland":
1385− - sandi
1386− - data-ordlist
1387− - xmonad
1388−
1389 "Harry Garrood <harry@garrood.me> @hdgarrood":
2192 "Harry Garrood <harry@garrood.me> @hdgarrood":
1390 - aeson-better-errors
2193 - aeson-better-errors
1391
2194
1392 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2195 "Mitchell Rosen <mitchellwrosen@gmail.com> @mitchellwrosen":
2196+ - ki
1393 - tasty-hspec
2197 - tasty-hspec
2198+ - termbox
2199+ - text-ansi
2200+ - timer-wheel
1394
2201
1395− "Christiaan Baaij <christiaan.baaij@gmail.com> @christiaanb":
2202+ "QBayLogic B.V. <devops@qbaylogic.com> @martijnbastiaan":
1396 - ghc-tcplugins-extra
2203 - ghc-tcplugins-extra
1397 - ghc-typelits-extra
2204 - ghc-typelits-extra
1398 - ghc-typelits-knownnat
2205 - ghc-typelits-knownnat
1399 - ghc-typelits-natnormalise
2206 - ghc-typelits-natnormalise
1400 - clash-prelude
2207 - clash-prelude
1401 - clash-lib
2208 - clash-lib
1402− - clash-vhdl
2209+ - clash-ghc
1403− - clash-verilog
2210+
1404− - clash-systemverilog
2211+ "Martijn Bastiaan <martijn@hmbastiaan.nl> @martijnbastiaan":
1405− # GHC 8 - clash-ghc
2212+ - aeson-pretty
2213+ - doctest-parallel
1406
2214
1407 "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
1408 - commutative
2224 - commutative
1409− # via digestive functors - digestive-functors-lucid
2225+ - composition-extra
1410− - ltext
2226+ - every
2227+ - extractable-singleton
2228+ - follow-file
2229+ - HSet < 0 # 0.0.1 compile fail: duplicate Hashable instance
1411 - markup
2230 - markup
1412− # via poly-arity - nested-routes
2231+ - monad-control-aligned
2232+ - monadoid
2233+ - n-tuple
1413 - path-extra
2234 - path-extra
1414− # via HList - poly-arity (sent e-mail to HList maintainer)
2235+ - pred-set
1415− - urlpath
2236+ - pred-trie
1416− - wai-transformers
2237+ - path-extra
1417− # - wai-middleware-content-type # BLOCKED aeson 1.0 via pandoc
2238+ - poly-arity
1418− # - wai-middleware-verbs # BLOCKED aeson 1.0 via pandoc
2239+ - quickcheck-combinators
1419− - webpage
1420− - composition-extra
1421 - rose-trees
2240 - rose-trees
1422 - sets
2241 - sets
2242+ - since
1423 - timemap
2243 - timemap
2244+ - tmapchan
2245+ - tmapmvar
1424 - tries
2246 - tries
1425− - path-extra
2247+ - unit-constraint
1426− # via poly-arity - pred-trie
2248+ - unfoldable-restricted
1427− - pred-set
2249+ - urlpath
1428− - HSet
2250+ - wai-transformers
2251+ - websockets-rpc
2252+ - websockets-simple
2253+ - webpage
2254+ - ws
1429
2255
1430 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
2256 "Fumiaki Kinoshita <fumiexcel@gmail.com> @fumieval":
1431 - boundingboxes
2257 - boundingboxes
1432 - control-bool
2258 - control-bool
1433− - extensible
2259+ - drinkery
1434 - monad-skeleton
2260 - monad-skeleton
1435− - objective
1436− - witherable
1437 - xml-lens
2261 - xml-lens
2262+ - witherable
2263+ - deriving-aeson
1438
2264
1439 "Peter Harpending <peter@harpending.org> @pharpend":
2265 "Peter Harpending <peter@harpending.org> @pharpend":
1440 - editor-open
2266 - editor-open
1441− - exceptional
2267+ - exceptional < 0 # 0.3.0.0 MonadFail
1442− - optparse-helper
1443 - pager
2268 - pager
1444 - semiring-simple
2269 - semiring-simple
1445
2270
1446 "Philipp Hausmann <ph_git@314.ch> @phile314":
2271 "Philipp Hausmann <ph_git@314.ch> @phile314":
1447− - tasty-silver
2272+ - language-thrift
1448
2273
1449 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
2274 "Michael Thompson <what_is_it_to_do_anything@yahoo.com> @michaelt":
1450 - pipes-text
2275 - pipes-text
1451 - lens-simple
2276 - lens-simple
1452 - lens-family-core
2277 - lens-family-core
1453 - lens-family
2278 - lens-family
1454− - streaming
1455− - streaming-bytestring
1456−
1457
2279
1458 "Justin Le <justin@jle.im> @mstksg":
2280 "Justin Le <justin@jle.im> @mstksg":
2281+ - advent-of-code-api
1459 - auto
2282 - auto
2283+ - backprop
2284+ - bins
2285+ - conduino
1460 - configurator-export
2286 - configurator-export
2287+ - decidable
2288+ - emd
2289+ - functor-products < 0 # 0.1.1.0 compilation failure https://github.com/mstksg/functor-products/issues/1
2290+ - hamilton
2291+ - hmatrix-backprop
2292+ - hmatrix-vector-sized
2293+ - lens-typelevel
2294+ - list-witnesses
2295+ - nonempty-containers
2296+ - one-liner-instances
1461 - prompt
2297 - prompt
2298+ - servant-cli
1462 - tagged-binary
2299 - tagged-binary
2300+ - type-combinators-singletons
1463 - typelits-witnesses
2301 - typelits-witnesses
1464 - uncertain
2302 - uncertain
2303+ - vector-sized
1465
2304
1466 "Ian Duncan <ian@iankduncan.com> @iand675":
2305 "Ian Duncan <ian@iankduncan.com> @iand675":
1467 - feature-flags
2306 - feature-flags
1468 - metrics
2307 - metrics
1469 - pipes-wai
2308 - pipes-wai
1470 - serf
2309 - serf
1471− # 0.2.0.0 compilation failure - uri-templater
2310+ - uri-templater
1472− # via uri-templater - librato
2311+ - data-sketches
1473− # bounds - datadog
2312+ - data-sketches-core
1474− # bounds - engine-io-growler
1475− # bounds - flowdock
1476− # GHC 8 - growler
1477
2313
1478 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
2314 "Michael Xavier <michael@michaelxavier.net> @MichaelXavier":
1479− - angel
1480 - uri-bytestring
2315 - uri-bytestring
1481− # Can't build on stackage server https://github.com/MichaelXavier/phash/issues/5 - phash
2316+ - cron
1482− # - cron # BLOCKED derive
1483− # GHC 8 - tasty-tap
2317+ - tasty-tap
1484− # via tasty-tap - tasty-fail-fast
2318+ - tasty-fail-fast
1485 - drifter
2319 - drifter
1486 - drifter-postgresql
2320 - drifter-postgresql
2321+ - drifter-sqlite
1487
2322
1488 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
2323 "Lars Kuhtz <lakuhtz@gmail.com> @larskuhtz":
1489 - wai-cors
2324 - wai-cors
1490 - configuration-tools
2325 - configuration-tools
2326+ - random-bytestring
1491
2327
1492 "Sam Rijs <srijs@airpost.net> @srijs":
2328 "Sam Rijs <srijs@airpost.net> @srijs":
1493 - ndjson-conduit
2329 - ndjson-conduit
1494− # GHC 8 - attoparsec-trans
1495 - operational-class
2330 - operational-class
1496 - result
2331 - result
1497
2332
1498− # "Anupam Jain <ajnsit@gmail.com> @ajnsit":
1499− # GHC 8 - wai-routes
1500−
1501 "Daniel Patterson <dbp@dbpmail.net> @dbp":
2333 "Daniel Patterson <dbp@dbpmail.net> @dbp":
1502− # via digestive-functors - hspec-snap
1503 - hworker
2334 - hworker
1504− # - hworker-ses BLOCKED amazonka-core
1505 - fn
2335 - fn
1506− # via heist - fn-extra
1507−
1508− "Chris Wong <lambda.fairy@gmail.com> @lfairy":
1509− - nationstates
1510
2336
1511 "Mathieu Boespflug <mboes@tweag.net> @mboes":
2337 "Mathieu Boespflug <mboes@tweag.net> @mboes":
1512− # via ihaskell & via ihaskell-blaze - ihaskell-inline-r
2338+ - choice
1513− - cassette
1514 - distributed-closure
2339 - distributed-closure
1515− - H
2340+ - inline-java
1516 - inline-r
2341 - inline-r
2342+ - jni < 0 # compile fail
2343+ - jvm
2344+ - jvm-streaming
2345+ - H
2346+ - sparkle
1517 - th-lift
2347 - th-lift
1518
2348
1519 "Christopher Reichert <creichert07@gmail.com> @creichert":
2349 "Christopher Reichert <creichert07@gmail.com> @creichert":
@@ -1523,31 +2353,12 @@ packages:
1523 - wai-middleware-throttle
2353 - wai-middleware-throttle
1524 - yesod-auth-basic
2354 - yesod-auth-basic
1525
2355
1526− # "Alcides Viamontes <a.viamontes.esquivel@gmail.com> @alcidesv":
1527− # GHC 8 - second-transfer
1528−
1529− # "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
2356+ "Hirotomo Moriwaki <philopon.dependence@gmail.com> @philopon":
1530− # GHC 8 & bounds - apiary
1531− # GHC 8 & bounds - apiary-logger
1532− # GHC 8 & bounds - apiary-persistent
1533− # GHC 8 & bounds - apiary-websockets
1534− # GHC 8 & bounds - apiary-cookie
1535− # GHC 8 & bounds - apiary-session
1536− # GHC 8 & bounds - apiary-clientsession
1537− # GHC 8 & bounds - apiary-authenticate
1538− # GHC 8 & bounds - apiary-eventsource
1539− # GHC 8 & bounds - apiary-mongoDB
1540− # GHC 8 & bounds - apiary-memcached
1541− # GHC 8 - types-compat
1542− # GHC 8 - web-routing
1543− # GHC 8 - bytestring-read
1544− # GHC 8 & bounds - memcached-binary
1545− # GHC 8 - barrier
2357+ - barrier
1546− # GHC 8 - haddocset
1547
2358
1548 "Kai Zhang <kai@kzhang.org> @kaizhang":
2359 "Kai Zhang <kai@kzhang.org> @kaizhang":
1549− - clustering
1550 - matrices
2360 - matrices
2361+ - haskell-igraph < 0 # 0.8.0 compile fail ghc 8.10.1 #5440/closed
1551
2362
1552 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
2363 "Michel Boucey <michel.boucey@gmail.com> @MichelBoucey":
1553 - IPv6Addr
2364 - IPv6Addr
@@ -1556,55 +2367,68 @@ packages:
1556 - Spintax
2367 - Spintax
1557 - glabrous
2368 - glabrous
1558 - google-oauth2-jwt
2369 - google-oauth2-jwt
2370+ - IPv6DB
2371+ - gothic
2372+ - NanoID
1559
2373
1560 "koral koral@mailoo.org @k0ral":
2374 "koral koral@mailoo.org @k0ral":
1561 - atom-conduit
2375 - atom-conduit
1562 - conduit-parse
2376 - conduit-parse
2377+ - dublincore-xml-conduit
2378+ - euler-tour-tree
1563 - opml-conduit
2379 - opml-conduit
1564 - rss-conduit
2380 - rss-conduit
1565− # - imm # BLOCKED derive
1566 - timerep
2381 - timerep
1567 - xml-conduit-parse
2382 - xml-conduit-parse
1568
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+
1569 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
2395 "Kostiantyn Rybnikov <k-bx@k-bx.com> @k-bx":
1570− - protocol-buffers
2396+ - SHA
1571− # - hprotoc # https://github.com/k-bx/protocol-buffers/issues/45
2397+ - currency
1572− - protocol-buffers-descriptor
2398+ - data-ordlist
1573− - ekg-core
1574 - digits
2399 - digits
2400+ - dns
2401+ - friday
2402+ - friday-juicypixels
1575 - hbeanstalk
2403 - hbeanstalk
2404+ - hedis
2405+ - hprotoc
2406+ - hsyslog-udp
1576 - iso3166-country-codes
2407 - iso3166-country-codes
1577 - iso639
2408 - iso639
1578− - murmur-hash
1579 - monoidal-containers
2409 - monoidal-containers
2410+ - murmur-hash
2411+ - protocol-buffers
2412+ - protocol-buffers-descriptor
1580 - regex-pcre
2413 - regex-pcre
1581− - string-combinators
1582 - string-class
2414 - string-class
1583− - SHA
2415+ - string-combinators
1584− - data-ordlist
1585− - hedis
1586
2416
1587 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
2417 "Rob O'Callahan ropoctl@gmail.com @rcallahan":
1588 - pipes-fastx
2418 - pipes-fastx
1589− # - pipes-illumina # BLOCKED pipes 4.2 via pipes-bgzf
1590 - seqalign
2419 - seqalign
1591− - thermonuc
1592− - xlsior
1593
2420
1594 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
2421 "John Lenz <wuzzeb@gmail.com> @wuzzeb":
1595− - yesod-auth-account
1596 - yesod-static-angular
2422 - yesod-static-angular
1597− # - hspec-webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2423+ - hspec-webdriver
1598− # - webdriver-angular # https://github.com/kallisti-dev/hs-webdriver/issues/98
2424+ - webdriver-angular
1599
2425
1600 "Sven Heyll <svh@posteo.de> @sheyll":
2426 "Sven Heyll <svh@posteo.de> @sheyll":
1601 - b9
2427 - b9
1602 - type-spec
2428 - type-spec
1603 - pretty-types
2429 - pretty-types
1604−
2430+ - function-builder
1605− "Will Thompson <will@willthompson.co.uk> @wjt":
2431+ - bytestring-to-vector
1606− []
1607− # - bustle https://github.com/vasylp/hgettext/issues/10
1608
2432
1609 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
2433 "Jakub Fijałkowski <kuba@codinginfinity.me> @jakubfijalkowski":
1610 - hlibsass
2434 - hlibsass
@@ -1613,42 +2437,36 @@ packages:
1613 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
2437 "Robert Massaioli <robertmassaioli@gmail.com> @robertmassaioli":
1614 - range
2438 - range
1615
2439
1616− "Index Int <vlad.z.4096@gmail.com> @int-index":
2440+ "Vladislav Zavialov <vlad.z.4096@gmail.com> @int-index":
1617 - transformers-lift
2441 - transformers-lift
1618− - ether
1619 - union
2442 - union
2443+ - named
2444+ - inj
2445+ - shower
1620
2446
1621 "Stack Builders stackage@stackbuilders.com @stackbuilders":
2447 "Stack Builders stackage@stackbuilders.com @stackbuilders":
1622 - atomic-write
2448 - atomic-write
2449+ - dbcleaner
2450+ - dotenv
1623 - hapistrano
2451 - hapistrano
2452+ - hspec-golden
1624 - inflections
2453 - inflections
1625− - twitter-feed
1626− - cassava-megaparsec
1627− - dotenv
1628 - stache
2454 - stache
2455+ - scalendar
1629
2456
1630 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
2457 "Sergey Alirzaev <zl29ah@gmail.com> @l29ah":
1631 - monad-peel
2458 - monad-peel
1632 - NineP
2459 - NineP
1633− # GHC 8 - Network-NineP
2460+ - Network-NineP
1634−
1635− "Oliver Charles <ollie@ocharles.org.uk> @ocharles":
1636− # GHC 8 - engine-io
1637− - diff3
1638− # GHC 8 & bounds - digestive-functors-aeson
1639− # GHC 8 - exhaustive
1640− # GHC 8 - libsystemd-journal
1641− # GHC 8 - network-carbon
1642− # GHC 8 - socket-io
1643− - tasty-rerun
1644−
1645− # "Scott Murphy <scott.murphy@plowtech.net> @smurphy8":
1646
2461
1647 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
2462 "Antoni Silvestre <antoni.silvestre@gmail.com> @asilvestre":
1648 # Test suite needs a running neo4j server with auth disabled
2463 # Test suite needs a running neo4j server with auth disabled
1649 # 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
1650 # 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
1651− - 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
1652
2470
1653 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
2471 "Alexey Khudyakov <alexey.skladnoy@gmail.com> @Shimuuar":
1654 - histogram-fill
2472 - histogram-fill
@@ -1657,163 +2475,186 @@ packages:
1657 - type-level-numbers
2475 - type-level-numbers
1658
2476
1659 "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
1660 - base-orphans
2483 - base-orphans
2484+ - chaselev-deque
1661 - code-page
2485 - code-page
2486+ - constraint-tuples
2487+ - criterion
2488+ - criterion-measurement
2489+ - data-reify
1662 - deriving-compat
2490 - deriving-compat
2491+ - dotgen
2492+ - echo
2493+ - eliminators
1663 - generic-deriving
2494 - generic-deriving
2495+ - ghc-bignum-orphans
1664 - hashmap
2496 - hashmap
2497+ - indexed-traversable-instances
1665 - invariant
2498 - invariant
1666 - keycode
2499 - keycode
1667 - lift-generics
2500 - lift-generics
2501+ - mintty
2502+ - monad-par
2503+ - monad-par-extras
1668 - mtl-compat
2504 - mtl-compat
2505+ - ordered-containers
1669 - proxied
2506 - proxied
2507+ - rdtsc
2508+ - singleton-nats
2509+ - singletons-base
2510+ - singletons-th
1670 - text-show
2511 - text-show
1671 - text-show-instances
2512 - text-show-instances
2513+ - th-abstraction
2514+ - th-compat
2515+ - thread-local-storage
2516+ - type-equality
1672
2517
1673 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
2518 "Kirill Zaborsky <qrilka@gmail.com> @qrilka":
1674 - xlsx
2519 - xlsx
1675
2520
1676 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
2521 "Matt Parsons <parsonsmatt@gmail.com> @parsonsmatt":
1677 - 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
1678
2542
1679 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
2543 "Matthew Pickering <matthewtpickering@gmail.com> @mpickering":
1680 - refact
2544 - refact
1681− # bounds - servant-pandoc
1682− - ghc-exactprint
1683− - apply-refact
1684
2545
1685− # "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
2546+ "Andrew Gibiansky <andrew.gibiansky@gmail.com> @gibiansky":
1686− # GHC 8 - ihaskell
1687− # via ihaskell - ihaskell-aeson
1688− # via ihaskell - ihaskell-basic
1689− # via ihaskell - ihaskell-blaze
1690− # via ihaskell - ihaskell-charts
1691− # via ihaskell - ihaskell-diagrams
1692− # via ihaskell - ihaskell-hatex
1693− # via ihaskell - ihaskell-juicypixels
1694− # via ihaskell - ihaskell-magic
1695− # via ihaskell - ihaskell-rlangqq
1696− # via ihaskell - ihaskell-static-canvas
1697− # GHC 8 - ghc-parser
1698− # GHC 8 - ipython-kernel
2547+ - ipython-kernel
1699−
1700− "Andrés Sicard-Ramírez <asr@eafit.edu.co> @asr":
1701− []
1702− # - Agda # BLOCKED haskell-src-exts < 1.18 and QuickCheck < 2.9
1703
2548
1704 "James Cook <mokus@deepbondi.net> @mokus0":
2549 "James Cook <mokus@deepbondi.net> @mokus0":
2550+ - dependent-map
1705 - dependent-sum
2551 - dependent-sum
1706 - dependent-sum-template
2552 - dependent-sum-template
1707− - dependent-map
1708 - dice
2553 - dice
1709 - hstatsd
2554 - hstatsd
1710 - misfortune
2555 - misfortune
1711
2556
1712 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2557 "Timo von Holtz <tvh@tvholtz.de> @tvh":
2558+ - ekg-wai
1713− # via haxl - haxl-amazonka
2559+ - haxl-amazonka
2560+ - hasql-migration
1714 - servant-JuicyPixels
2561 - servant-JuicyPixels
1715
2562
1716− "Artyom <yom@artyom.me> @neongreen":
2563+ "Artyom Kazak <artyom@artyom.me> @neongreen":
1717 - microlens
2564 - microlens
1718 - microlens-platform
2565 - microlens-platform
1719 - microlens-mtl
2566 - microlens-mtl
1720 - microlens-th
2567 - microlens-th
1721 - microlens-ghc
2568 - microlens-ghc
1722 - microlens-contra
2569 - microlens-contra
1723− - shortcut-links
1724− - cheapskate-lucid
1725 - cheapskate-highlight
2570 - cheapskate-highlight
2571+ - cheapskate-lucid
1726 - cmark-lucid
2572 - cmark-lucid
1727 - cmark-highlight
2573 - cmark-highlight
1728 - Spock-lucid
2574 - Spock-lucid
1729 - charsetdetect-ae
2575 - charsetdetect-ae
1730− - ilist
1731 - text-all
2576 - text-all
1732
2577
1733 "Takano Akio tak@anoak.io @takano-akio":
2578 "Takano Akio tak@anoak.io @takano-akio":
1734 - fast-builder
2579 - fast-builder
1735 - filelock
2580 - filelock
1736− - euphoria
1737−
1738− "Ashley Moni ashley.moni1@gmail.com @AshleyMoni":
1739− - quadtree
1740
2581
1741 "Brian Lewis brian@lorf.org @bsl":
2582 "Brian Lewis brian@lorf.org @bsl":
1742 - bindings-GLFW
2583 - bindings-GLFW
1743 - GLFW-b
2584 - GLFW-b
1744
2585
1745 "Niklas Hambüchen mail@nh2.me @nh2":
2586 "Niklas Hambüchen mail@nh2.me @nh2":
2587+ - conduit-concurrent-map
1746 - hidapi
2588 - hidapi
1747 - iso8601-time
2589 - iso8601-time
1748 - loop
2590 - loop
2591+ - lz4-frame-conduit
1749 - netpbm
2592 - netpbm
1750− - network-house
2593+ - network-house < 0 # 0.1.0.2 compile failure MonadFail
1751 - reinterpret-cast
2594 - reinterpret-cast
2595+ - shared-memory
2596+ - posix-paths
1752 # As dependencies of packages above
2597 # As dependencies of packages above
1753 - attoparsec-binary
2598 - attoparsec-binary
1754− - storable-record
1755−
1756− "Brandon Martin <brandon@codedmart.com> @codedmart":
1757− # GHC 8 & via engine-io - engine-io-wai
1758− - rethinkdb
1759
2599
1760 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
2600 "Michael Walker <mike@barrucadu.co.uk> @barrucadu":
1761 - both
2601 - both
1762 - concurrency
2602 - concurrency
1763− - dpor
1764 - dejafu
2603 - dejafu
1765− - async-dejafu
1766 - hunit-dejafu
2604 - hunit-dejafu
1767 - tasty-dejafu
2605 - tasty-dejafu
1768 - irc-ctcp
2606 - irc-ctcp
1769 - irc-conduit
2607 - irc-conduit
1770 - irc-client
2608 - irc-client
1771
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+
1772 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
2623 "Trevor Elliott <awesomelyawesome@gmail.com> @elliottt":
1773 - irc
2624 - irc
1774
2625
1775 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
2626 "Dennis Gosnell <cdep.illabout@gmail.com> @cdepillabout":
1776− - emailaddress
1777 - envelope
2627 - envelope
1778 - from-sum
2628 - from-sum
1779− - hailgun
1780− # GHC 8 - ig
1781 - natural-transformation
2629 - natural-transformation
1782− - opaleye-trans
2630+ - password
2631+ - password-instances
2632+ - password-types
2633+ - pretty-simple
2634+ - print-console-colors
1783 - read-env-var
2635 - read-env-var
1784− - 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
1785
2644
1786 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
2645 "Franklin Chen <franklinchen@franklinchen.com> @FranklinChen":
1787 - Ebnf2ps
2646 - Ebnf2ps
1788
2647
1789− "Dmitry Ivanov <ethercrow@gmail.com> @ethercrow":
1790− - charsetdetect-ae
1791− - docopt
1792− - dynamic-state
1793− - dyre
1794− - io-storage
1795− - oo-prototypes
1796− - pointedlist
1797− - word-trie
1798− - xdg-basedir
1799− # - yi BLOCKED due to yi-language
1800− #- yi-fuzzy-open
1801−
1802− # https://github.com/yi-editor/yi/issues/922
1803− # - yi-language
1804−
1805− - yi-rope
1806−
1807− # "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
2648+ "Tobias Bexelius <tobias_bexelius@hotmail.com> @tobbebex":
1808− # GHC 8 - GPipe
2649+ - GPipe
1809
2650
1810− # "Patrick Redmond <plredmond@gmail.com> @plredmond":
2651+ "Jonas Carpay <jonascarpay@gmail.com> @jonascarpay":
1811− # GHC 8 - GPipe-GLFW
2652+ - apecs
1812−
2653+ - apecs-gloss
1813− # "Csaba Hruska <csaba.hruska@gmail.com> @csabahruska":
2654+ - apecs-physics
1814− # GHC 8 - lambdacube-ir
2655+ - aeson-commit
1815− # GHC 8 & via wavefront - lambdacube-gl
2656+ - js-chart
1816− # GHC 8 & bounds - lambdacube-compiler
2657+ - tasty-focus
1817
2658
1818 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
2659 "Spencer Janssen <spencerjanssen@gmail.com> @spencerjanssen":
1819 - Xauth
2660 - Xauth
@@ -1821,38 +2662,41 @@ packages:
1821 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
2662 "Sebastian de Bellefon <arnaudpourseb@gmail.com> @Helkafen":
1822 - wai-middleware-metrics
2663 - wai-middleware-metrics
1823
2664
1824− "Stefan Berthold":
1825− - smallcaps
1826−
1827 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
2665 "Gregory Collins <greg@gregorycollins.net> @gregorycollins":
1828 - hashtables
2666 - hashtables
1829 - io-streams
2667 - io-streams
1830 - openssl-streams
2668 - openssl-streams
1831
2669
1832− "Andrew Cowie <andrew@operationaldynamics.com> @afcowie":
2670+ "Andrew Cowie <istathar@gmail.com> @istathar":
2671+ - chronologique
1833 - http-common
2672 - http-common
1834 - http-streams
2673 - http-streams
1835−
2674+ - locators
1836− "Devan Stormont <stormont@gmail.com> @stormont":
2675+ - core-data
1837− []
2676+ - core-program
1838− # - forecast-io # BLOCKED aeson 1.0
2677+ - core-telemetry
2678+ - core-text
1839
2679
1840 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
2680 "Sean Hunt <scshunt@csclub.uwaterloo.ca @scshunt":
1841 - cheapskate
2681 - cheapskate
1842
2682
1843 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
2683 "Ivan Miljenovic <Ivan.Miljenovic@gmail.com> @ivan-m":
1844 - fgl
2684 - fgl
1845− - fgl-arbitrary
1846 - graphviz
2685 - graphviz
1847 - wl-pprint-text
2686 - wl-pprint-text
2687+ - servant-pandoc
1848
2688
1849 "Sharif Olorin <sio@tesser.org> @olorin":
2689 "Sharif Olorin <sio@tesser.org> @olorin":
1850 - quickcheck-text
2690 - quickcheck-text
1851 - nagios-check
2691 - nagios-check
1852
2692
1853 "Peter Simons <simons@cryp.to> @peti":
2693 "Peter Simons <simons@cryp.to> @peti":
1854− - distribution-nixpkgs
1855 - cabal2nix
2694 - cabal2nix
2695+ - cabal2spec
2696+ - cgi
2697+ - distribution-nixpkgs
2698+ - distribution-opensuse
2699+ - flexible-defaults
1856 - funcmp
2700 - funcmp
1857 - hackage-db
2701 - hackage-db
1858 - hledger-interest
2702 - hledger-interest
@@ -1861,26 +2705,39 @@ packages:
1861 - hsemail
2705 - hsemail
1862 - hsyslog
2706 - hsyslog
1863 - jailbreak-cabal
2707 - jailbreak-cabal
2708+ - lambdabot-core
2709+ - lambdabot-irc-plugins
1864 - language-nix
2710 - language-nix
2711+ - logging-facade-syslog
2712+ - MonadPrompt
1865 - 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
1866 - streamproc
2720 - streamproc
2721+ - stringsearch # for cgi
2722+ - titlecase
1867
2723
1868 "Mark Fine <mark.fine@gmail.com> @markfine":
2724 "Mark Fine <mark.fine@gmail.com> @markfine":
1869 - postgresql-schema
2725 - postgresql-schema
1870− # test failures https://github.com/fpco/stackage/issues/873 - sbp
2726+ - sbp
1871
2727
1872 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
2728 "Jinjing Wang <nfjinjing@gmail.com> @nfjinjing":
1873 - moesocks
2729 - moesocks
1874
2730
1875 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
2731 "Gregory W. Schwartz <gregory.schwartz@drexel.edu> @GregorySchwartz":
1876− - fasta
1877 - diversity
2732 - diversity
2733+ - fasta
1878 - modify-fasta
2734 - modify-fasta
1879 - tree-fun
2735 - tree-fun
1880 - random-tree
2736 - random-tree
1881 - clumpiness
2737 - clumpiness
1882 - find-clumpiness
2738 - find-clumpiness
1883 - blosum
2739 - blosum
2740+ - rank-product
1884
2741
1885 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
2742 "Simon Marechal <bartavelle@gmail.com> @bartavelle":
1886 - compactmap
2743 - compactmap
@@ -1891,39 +2748,49 @@ packages:
1891 - withdependencies
2748 - withdependencies
1892 - hruby
2749 - hruby
1893 - language-puppet
2750 - language-puppet
1894− # Doesn't allow http-types >= 0.9.1 - stm-firehose
2751+ - tar-conduit
1895− # GHC 8 & doesn't allow aeson >= 0.11.2.0 & doesn't allow lens >= 4.14 - hslogstash
1896
2752
1897− "Mark Karpov <markkarpov@opmbx.org> @mrkkrp":
2753+ "Mark Karpov <markkarpov92@gmail.com> @mrkkrp":
1898− - megaparsec
1899− - htaglib
1900− - slug
1901− - path-io
1902− - hspec-megaparsec
1903− - plan-b
1904− - zip
1905 - 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
1906 - identicon
2763 - identicon
2764+ - lame
2765+ - megaparsec
2766+ - megaparsec-tests
2767+ - mmark
2768+ - mmark-cli
2769+ - mmark-ext
2770+ - modern-uri
2771+ - ormolu
1907 - pagination
2772 - pagination
1908− - data-check
2773+ - parser-combinators
2774+ - parser-combinators-tests
2775+ - path
2776+ - path-io
2777+ - req
2778+ - req-conduit
2779+ - stache
2780+ - tagged-identity
1909 - text-metrics
2781 - text-metrics
1910−
2782+ - wave
1911− # "Thomas Bereknyei <tomberek@gmail.com>":
2783+ - zip
1912− # GHC 8 - multiplate
1913−
1914− # "Sumit Sahrawat <sumit.sahrawat.apm13@iitbhu.ac.in> @sumitsahrawat":
1915− # GHC 8 & via plot - plot-gtk-ui
1916− # GHC 8 - calculator
1917
2784
1918 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
2785 "Emmanuel Touzery <etouzery@gmail.com> @emmanueltouzery":
1919 - app-settings
2786 - app-settings
1920 - hsexif
2787 - hsexif
2788+ - slack-web
1921
2789
1922 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
2790 "Nickolay Kudasov <nickolay.kudasov@gmail.com> @fizruk":
1923 - http-api-data
2791 - http-api-data
1924− # - smsaero # https://github.com/GetShopTV/smsaero/issues/12
1925 - swagger2
2792 - swagger2
1926− - servant-swagger
2793+ - telegram-bot-simple
1927
2794
1928 "Jared Tobin <jared@jtobin.ca> @jtobin":
2795 "Jared Tobin <jared@jtobin.ca> @jtobin":
1929 - mwc-probability
2796 - mwc-probability
@@ -1934,93 +2801,66 @@ packages:
1934 - declarative
2801 - declarative
1935 - sampling
2802 - sampling
1936 - flat-mcmc
2803 - flat-mcmc
2804+ - urbit-hob
2805+ - hnock
1937
2806
1938 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
2807 "Facundo Domínguez <facundo.dominguez@tweag.io> @facundominguez":
1939 - distributed-process
2808 - distributed-process
1940− # GHC 8 - distributed-process-async
1941− # GHC 8 - distributed-process-client-server
1942− # GHC 8 - distributed-process-execution
1943− # GHC 8 - distributed-process-extras
1944− # GHC 8 - distributed-process-registry
1945− # GHC 8 - distributed-process-supervisor
1946− # GHC 8 - distributed-process-task
1947 - distributed-process-simplelocalnet
2809 - distributed-process-simplelocalnet
2810+ - distributed-process-tests
1948 - distributed-static
2811 - distributed-static
2812+ - inline-c
2813+ - jvm-batching
1949 - network-transport
2814 - network-transport
2815+ - network-transport-tests
1950 - network-transport-tcp
2816 - network-transport-tcp
1951 - network-transport-inmemory
2817 - network-transport-inmemory
1952 - network-transport-composed
2818 - network-transport-composed
2819+ - pthread
1953 - rank1dynamic
2820 - rank1dynamic
1954
2821
1955− # "Alexander Vershilov <alexander.vershilov@tweag.io> @qnikst":
2822+ "Dave Tapley <dukedave@gmail.com> @dukedave":
1956− # https://github.com/qnikst/imagemagick/issues/41 - imagemagick
2823+ - inline-c-cpp
1957− # GHC 8 - network-transport-zeromq
1958
2824
1959− "Takahiro Himura <himuratk421@gmail.com> @thimura":
2825+ "Takahiro Himura <himuratk421@gmail.com> @himura":
1960 - lens-regex
2826 - lens-regex
1961− # - twitter-conduit # BLOCKED http-conduit 2.2
2827+ - twitter-conduit
1962− # - twitter-types # BLOCKED derive
2828+ - twitter-types
1963− # - twitter-types-lens # BLOCKED derive
2829+ - twitter-types-lens
1964
2830
1965− # "Robbin C. <robbinch33@gmail.com> robbinch":
2831+ "Robbin C. <robbinch33@gmail.com> @robbinch":
1966− # via lzma-conduit - zim-parser
2832+ - zim-parser
1967
2833
1968 "David Wiltshire <david.wiltshire@metark.com> @dave77":
2834 "David Wiltshire <david.wiltshire@metark.com> @dave77":
1969 # on behalf of Alexey Karakulov @w3rs
2835 # on behalf of Alexey Karakulov @w3rs
1970 - hashable-time
2836 - hashable-time
1971
2837
1972− # "Tim Baumann <tim@timbaumann.info> @timjb":
1973− # GHC 8 & via engine-io - engine-io-yesod
1974−
1975− "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
1976− # bounds - riak
1977− - airship
1978−
1979 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
2838 "Yuras Shumovich <shumovichy@gmail.com> @Yuras":
1980− - pdf-toolbox-core
1981 - pdf-toolbox-content
2839 - pdf-toolbox-content
2840+ - pdf-toolbox-core
1982 - pdf-toolbox-document
2841 - pdf-toolbox-document
1983 - io-region
2842 - io-region
1984 - scanner
2843 - scanner
1985
2844
1986 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
2845 "Stanislav Chernichkin <schernichkin@gmail.com> @schernichkin":
1987− # GHC 8 - partial-isomorphisms
2846+ - partial-isomorphisms
1988− - vinyl
1989
2847
1990 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
2848 "Christoph Breitkopf <chbreitkopf@gmail.com> @bokesan":
1991 - IntervalMap
2849 - IntervalMap
1992
2850
1993 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
2851 "Michele Lacchia <michelelacchia@gmail.com> @rubik":
1994− - docopt
1995 - pathwalk
2852 - pathwalk
1996
2853
1997 "John Galt <jgalt@centromere.net> @centromere":
2854 "John Galt <jgalt@centromere.net> @centromere":
1998 - cacophony
2855 - cacophony
1999− - pipes-cacophony
2000 - blake2
2856 - blake2
2857+ - nfc
2001
2858
2002− "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
2003− []
2004− # - webdriver # https://github.com/kallisti-dev/hs-webdriver/issues/98
2005−
2006− "Luke Iannini <lukexi@me.com> @lukexi":
2007− - inline-c
2008− - inline-c-cpp
2009− - ekg
2010−
2011− # "Emin Karayel <me@eminkarayel.de> @ekarayel":
2012− # GHC 8 - sync-mht
2013
2859
2014 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2860 "Michael Schröder <mc.schroeder@gmail.com> @mcschroeder":
2015 - ctrie
2861 - ctrie
2016 - ttrie
2862 - ttrie
2017
2863
2018− "Greg Weber <greg@gregweber.info> @gregwebs":
2019− - base-noprelude
2020−
2021− # "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2022− # Missing test files https://github.com/fpco/stackage/pull/979 - exp-pairs
2023−
2024 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2864 "Stefan Kersten <kaoskorobase@gmail.com> @kaoskorobase":
2025 - hsndfile
2865 - hsndfile
2026 - hsndfile-vector
2866 - hsndfile-vector
@@ -2028,21 +2868,9 @@ packages:
2028 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2868 "yihuang <yi.codeplayer@gmail.com> @yihuang":
2029 - tagstream-conduit
2869 - tagstream-conduit
2030
2870
2031− # "Johannes Hilden <hildenjohannes@gmail.com> @johanneshilden":
2871+ "Johannes Hilden <hildenjohannes@gmail.com> @laserpants":
2032− # Missing test files https://github.com/fpco/stackage/issues/1001 - hashids
2872+ - hashids
2033−
2873+ - fuzzyset
2034− # "Joe Hermaszewski <stackage@monoid.al> @expipiplus1":
2035− # GHC 8 & via memoize - exact-real
2036−
2037− # "Jonatan Sundqvist jonatanhsundqvist@gmail.com @SwiftsNamesake":
2038− # bounds - Cartesian
2039− # bounds - Michelangelo
2040−
2041− "Henry J. Wylde <public@hjwylde.com> @hjwylde":
2042− - git-fmt
2043− - omnifmt
2044− # aeson & extra - werewolf
2045− # aeson & extra & http-client & http-client-tls - werewolf-slack
2046
2874
2047 "Will Sewell <me@willsewell.com> @willsewell":
2875 "Will Sewell <me@willsewell.com> @willsewell":
2048 - benchpress
2876 - benchpress
@@ -2051,14 +2879,21 @@ packages:
2051 "Yorick Laupa yo.eight@gmail.com @YoEight":
2879 "Yorick Laupa yo.eight@gmail.com @YoEight":
2052 - eventstore
2880 - eventstore
2053 - dotnet-timespan
2881 - dotnet-timespan
2882+ - eventsource-api
2883+ - eventsource-geteventstore-store
2884+ - eventsource-store-specs
2885+ - eventsource-stub-store
2054
2886
2055 "Sebastian Dröge slomo@coaxion.net @sdroege":
2887 "Sebastian Dröge slomo@coaxion.net @sdroege":
2056− - conduit-iconv
2888+ - conduit-iconv < 0 # 0.1.1.3 compile fail MonadFail
2057 - conduit-connection
2889 - conduit-connection
2058
2890
2059 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2891 "Andrew Rademacher <andrewrademacher@gmail.com> @AndrewRademacher":
2060 - aeson-casing
2892 - aeson-casing
2061− - graylog
2893+ - graylog < 0 # 0.1.0.1 compile fail Couldn't find module Network.BSD
2894+ - parsec-numeric
2895+ - mallard
2896+ - gdax
2062
2897
2063 "Callum Rogers @CRogers":
2898 "Callum Rogers @CRogers":
2064 - should-not-typecheck
2899 - should-not-typecheck
@@ -2072,19 +2907,11 @@ packages:
2072 - pkcs10
2907 - pkcs10
2073
2908
2074 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2909 "David Luposchainsky <dluposchainsky (λ) googles email service> @quchen":
2075− - binary-typed
2076 - pgp-wordlist
2910 - pgp-wordlist
2911+ - show-prettyprint
2077
2912
2078 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2913 "Jeremy Shaw <jeremy@n-heptane.com> @stepcut":
2079 - boomerang
2914 - boomerang
2080− - clckwrks
2081− - clckwrks-cli
2082− - clckwrks-plugin-page
2083− - clckwrks-plugin-media
2084− - clckwrks-theme-bootstrap
2085− - hackage-whatsnew
2086− - happstack-authenticate
2087− - happstack-clientsession
2088 - happstack-hsp
2915 - happstack-hsp
2089 - happstack-jmacro
2916 - happstack-jmacro
2090 - happstack-server
2917 - happstack-server
@@ -2109,20 +2936,14 @@ packages:
2109 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2936 "Pedro Tacla Yamada <tacla.yamada@gmail.com> @yamadapc":
2110 - ascii-progress
2937 - ascii-progress
2111 - drawille
2938 - drawille
2112− # - extract-dependencies # BLOCKED wreq
2113 - file-modules
2939 - file-modules
2114 - frontmatter
2940 - frontmatter
2115 - read-editor
2941 - read-editor
2116− - hspec-setup
2942+ - list-prompt < 0 # 0.1.1.0 compile fail https://github.com/yamadapc/list-prompt/issues/3
2117− # bounds - hzulip
2118− - list-prompt
2119− # GHC 8 - memoization-utils
2120− # - package-description-remote # BLOCKED wreq
2943+ - package-description-remote < 0 # 0.2.0.0 compile fail
2121 - projectroot
2944 - projectroot
2122 - questioner
2945 - questioner
2123− # - 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
2124− # aeson 1.0 - hpack-convert
2125− - language-dockerfile
2126
2947
2127 "Pascal Hartig <phartig@rdrei.net> @passy":
2948 "Pascal Hartig <phartig@rdrei.net> @passy":
2128 - giphy-api
2949 - giphy-api
@@ -2131,18 +2952,30 @@ packages:
2131 "rightfold <rightfold@gmail.com> @rightfold":
2952 "rightfold <rightfold@gmail.com> @rightfold":
2132 - open-browser
2953 - open-browser
2133
2954
2134− # "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2955+ "Denis Redozubov <denis.redozubov@gmail.com> @dredozubov":
2135− # GHC 8 - tracy
2956+ - hreader-lens
2957+ - schematic
2136
2958
2137 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2959 "Yuji Yamamoto <whosekiteneverfly@gmail.com> @igrep":
2138 - 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
2139
2971
2140 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2972 "Hans-Christian Esperer <hc@hcesperer.org> @hce":
2141 - avwx
2973 - avwx
2974+ - saltine < 0.2.0.0 # https://github.com/tel/saltine/issues/58
2142 - wai-session-postgresql
2975 - wai-session-postgresql
2143
2976
2144 "Haisheng Wu <freizl@gmail.com> @freizl":
2977 "Haisheng Wu <freizl@gmail.com> @freizl":
2145− - hoauth2
2978+ - hoauth2 < 2.0 # https://github.com/commercialhaskell/stackage/issues/6424
2146
2979
2147 "Falko Peters <falko.peters@gmail.com> @informatikr":
2980 "Falko Peters <falko.peters@gmail.com> @informatikr":
2148 - scrypt
2981 - scrypt
@@ -2151,11 +2984,10 @@ packages:
2151 - dawg-ord
2984 - dawg-ord
2152
2985
2153 "Amit Levy <amit@amitlevy.com> @alevy":
2986 "Amit Levy <amit@amitlevy.com> @alevy":
2154− # 0.4.1 compilation failure - postgresql-orm
2155 - simple
2987 - simple
2156 - simple-templates
2988 - simple-templates
2157 - simple-session
2989 - simple-session
2158− # via postgresql-orm - simple-postgresql-orm
2990+ - postgresql-orm
2159
2991
2160 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2992 "Sergey Astanin <s.astanin@gmail.com> @astanin":
2161 # 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.
@@ -2164,22 +2996,29 @@ packages:
2164 - LibZip >= 1.0
2996 - LibZip >= 1.0
2165
2997
2166 "Anthony Cowley <acowley@gmail.com> @acowley":
2998 "Anthony Cowley <acowley@gmail.com> @acowley":
2999+ - vinyl
2167 - Frames
3000 - Frames
3001+ - hpp
2168
3002
2169 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
3003 "Takayuki Muranushi <muranushi@gmail.com> @nushio3":
2170 - binary-search
3004 - binary-search
2171− - unicode-show
2172
3005
2173 "Jason Shipman <jasonpshipman@gmail.com> @jship":
3006 "Jason Shipman <jasonpshipman@gmail.com> @jship":
2174− # on behalf of Boris Sukholitko @bosu
3007+ - logging-effect-extra
2175− - pure-cdb
3008+ - logging-effect-extra-file
3009+ - logging-effect-extra-handler
3010+ - overhang
3011+ - tao
3012+ - tao-example
2176
3013
2177 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
3014 "Suhail Shergill <suhailshergill@gmail.com> @suhailshergill":
2178 - extensible-effects
3015 - extensible-effects
2179
3016
2180 "Justus Adam <dev@justus.science> @JustusAdam":
3017 "Justus Adam <dev@justus.science> @JustusAdam":
2181− []
3018+ - marvin
2182− #- mustache # BLOCKED wreq
3019+ - marvin-interpolate
3020+ - mustache < 2.4.0 # https://github.com/commercialhaskell/stackage/issues/6421
3021+ - exit-codes >= 1.0.0
2183
3022
2184 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
3023 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
2185 - NoTrace
3024 - NoTrace
@@ -2194,39 +3033,40 @@ packages:
2194 - cmark
3033 - cmark
2195 - texmath
3034 - texmath
2196 - highlighting-kate
3035 - highlighting-kate
3036+ - skylighting
3037+ - skylighting-core
2197 - pandoc-types
3038 - pandoc-types
2198 - zip-archive
3039 - zip-archive
3040+ - doclayout
2199 - doctemplates
3041 - doctemplates
2200− # - pandoc # BLOCKED aeson 1.0
3042+ - emojis
3043+ - pandoc
2201− # - pandoc-citeproc # BLOCKED aeson 1.0
3044+ - citeproc
3045+ - commonmark
3046+ - commonmark-extensions
3047+ - commonmark-pandoc
3048+ - unicode-collation
3049+ - HsYAML-aeson
3050+ - ipynb
2202
3051
2203 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
3052 "Karun Ramakrishnan <karun012@gmail.com> @karun012":
2204 - doctest-discover
3053 - doctest-discover
2205
3054
2206− "Elie Genard <elaye.github.io@gmail.com> @eliegenard":
3055+ "Elie Genard <elaye.github.io@gmail.com> @elaye":
2207 - turtle-options
3056 - turtle-options
2208
3057
2209− # "Ruey-Lin Hsu <petercommand@gmail.com> @petercommand":
2210− # GHC 8 - MASMGen
2211−
2212 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
3058 "Ozgun Ataman ozgun.ataman@soostone.com @ozataman":
2213 - string-conv
3059 - string-conv
2214 - rng-utils
3060 - rng-utils
2215− - rotating-log
2216− # - ua-parser # BLOCKED derive
3061+ - ua-parser
2217 - hs-GeoIP
3062 - hs-GeoIP
2218 - retry
3063 - retry
2219− # GHC 8 - katip
3064+ - katip
2220− # via katip - katip-elasticsearch
3065+ - katip-elasticsearch < 0 # 0.7.0.0 compile fail https://github.com/commercialhaskell/stackage/issues/6341
2221
3066
2222 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
3067 "Sid Kapur sidharthkapur1@gmail.com @sid-kap":
2223 - tuple
3068 - tuple
2224 - OneTuple
3069 - OneTuple
2225− - SVGFonts
2226− - Chart-diagrams
2227−
2228− # "Aaron Levin <aaron.levin@soundcloud.com> @aaronmblevin":
2229− # GHC 8 & lots of other packages - haskell-kubernetes
2230
3070
2231 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
3071 "Aaron Levin <vilevin@gmail.com> @aaronmblevin":
2232 - free-vl
3072 - free-vl
@@ -2235,33 +3075,33 @@ packages:
2235 - xlsx-tabular
3075 - xlsx-tabular
2236
3076
2237 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
3077 "Mikhail Glushenkov <mikhail.glushenkov@gmail.com> @23Skidoo":
2238− - Cabal
3078+ # - Cabal # take the one that ships with GHC
2239 - cabal-install
3079 - cabal-install
2240 - pointful
3080 - pointful
2241
3081
2242 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
3082 "Lennart Kolmodin <kolmodin@gmail.com> @kolmodin":
2243 - binary-bits
3083 - binary-bits
2244
3084
2245− "Nicolas Trangez <ikke@nicolast.be> @NicolasT":
2246− - reedsolomon
2247−
2248− "Alp Mestanogullari <alpmestan@gmail.com> @alpmestan":
2249− - taggy
2250− - taggy-lens
2251− # 0.1 Compilation failure https://github.com/fpco/stackage/issues/1660 - inline-java
2252− # via inline-java - sparkle
2253−
2254− "Alex McLean <lxyxpx@gmail.com> @yaxu":
3085+ "Alex McLean <alex@slab.org> @yaxu":
2255 - tidal
3086 - tidal
3087+ - hosc
2256
3088
2257 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3089 "Kei Hibino <ex8k.hibino@gmail.com> @khibino":
3090+ - th-data-compat
3091+ - th-reify-compat
2258 - relational-query
3092 - relational-query
2259 - relational-query-HDBC
3093 - relational-query-HDBC
2260 - persistable-types-HDBC-pg
3094 - persistable-types-HDBC-pg
2261 - relational-record
3095 - relational-record
2262 - text-ldap
3096 - text-ldap
2263 - debian-build
3097 - debian-build
3098+ - aeson-generic-compat
2264 - 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
2265
3105
2266 "wren romano <wren@community.haskell.org> @wrengr":
3106 "wren romano <wren@community.haskell.org> @wrengr":
2267 - bytestring-lexing
3107 - bytestring-lexing
@@ -2275,57 +3115,120 @@ packages:
2275 - unification-fd
3115 - unification-fd
2276 - unix-bytestring
3116 - unix-bytestring
2277
3117
2278− # "Carlo Hamalainen <carlo@carlo-hamalainen.net> @carlohamalainen":
2279− # GHC 8 - ghc-imported-from
2280−
2281 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3118 "Fraser Tweedale <frase@frase.id.au> @frasertweedale":
3119+ - concise
3120+ - dyre
2282 - jose
3121 - jose
2283
3122
2284− "Yutaka Nishimura <ytk.nishimura@gmail.com> @ynishi":
2285− []
2286− # - atndapi # https://github.com/ynishi/atndapi/issues/1
2287−
2288 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
3123 "Yoshikuni Jujo <PAF01143@nifty.ne.jp> @YoshikuniJujo":
2289 - zot
3124 - zot
2290 - yjtools
3125 - yjtools
2291 - 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
2292
3144
2293 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
3145 "Jan Gerlinger <git@jangerlinger.de> @JanGe":
2294 - irc-dcc
3146 - irc-dcc
2295− - xdcc
3147+
3148+ "Alexey Raga <alexey.raga@gmail.com> @AlexeyRaga":
3149+ - hw-kafka-client
2296
3150
2297 "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
2298 - hw-bits
3165 - hw-bits
2299 - hw-conduit
3166 - hw-conduit
3167+ - hw-conduit-merges
2300 - hw-diagnostics
3168 - hw-diagnostics
2301− # 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
2302− # - hw-json
3180+ - hw-json-standard-cursor
3181+ - hw-mquery
3182+ - hw-packed-vector
2303 - hw-parser
3183 - hw-parser
2304 - hw-prim
3184 - hw-prim
2305 - hw-rankselect
3185 - hw-rankselect
3186+ - hw-rankselect-base
3187+ - hw-simd
3188+ - hw-streams
2306 - 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
2307
3199
2308 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
3200 "Ismail Mustafa <ismailmustafa@rocketmail.com> @ismailmustafa":
2309− []
2310− # - handwriting # BLOCKED wreq
3201+ - handwriting
2311
3202
2312− "Stephen Diehl <stephen.m.diehl@gamil.com> @sdiehl":
3203+ "Stephen Diehl <stephen.m.diehl@gmail.com> @sdiehl":
3204+ - llvm-hs-pretty
2313 - protolude
3205 - protolude
2314−
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+
2315− "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji_dayo":
3217+ "Daishi Nakajima <nakaji.dayo@gmail.com> @nakaji-dayo":
2316− []
3218+ - api-field-json-th
2317− # - yesod-job-queue # BLOCKED cron
2318−
2319− # "Braden Walters <vc@braden-walters.info> @meoblast001":
2320− # - hakyll-sass
2321
3219
2322 "Patrick Thomson <patrick@helium.com> @helium":
3220 "Patrick Thomson <patrick@helium.com> @helium":
2323 - postgresql-transactional
3221 - postgresql-transactional
2324
3222
2325− "Tom Murphy <amindfv@gmail.com> @amindfv":
3223+ "Tom Murphy <amindfv@gmail.com>":
2326− # 0.2.0.5 compilation failure - vivid
3224+ - gingersnap
3225+ - microspec
2327− # GHC 8 - midair
3226+ - midair
2328 - nano-erl
3227 - nano-erl
3228+ - rando
3229+ - vivid
3230+ - vivid-osc
3231+ - vivid-supercollider
2329
3232
2330 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
3233 "Toshio Ito <debug.ito@gmail.com> @debug-ito":
2331 - fold-debounce
3234 - fold-debounce
@@ -2334,8 +3237,10 @@ packages:
2334 - wikicfp-scraper
3237 - wikicfp-scraper
2335 - wild-bind
3238 - wild-bind
2336 - wild-bind-x11
3239 - wild-bind-x11
2337− - wild-bind-indicator
3240+ - greskell
2338− - wild-bind-task-x11
3241+ - greskell-core
3242+ - greskell-websocket
3243+ - hspec-need-env
2339
3244
2340 "Cies Breijs <cies@kde.nl> @cies":
3245 "Cies Breijs <cies@kde.nl> @cies":
2341 - htoml
3246 - htoml
@@ -2344,36 +3249,47 @@ packages:
2344 - protobuf-simple
3249 - protobuf-simple
2345
3250
2346 "David Reaver <johndreaver@gmail.com> @jdreaver":
3251 "David Reaver <johndreaver@gmail.com> @jdreaver":
3252+ - eventful-core
3253+ - eventful-dynamodb
3254+ - eventful-memory
3255+ - eventful-postgresql
3256+ - eventful-sql-common
3257+ - eventful-sqlite
3258+ - eventful-test-helpers
2347 - stratosphere
3259 - stratosphere
2348−
3260+ - sum-type-boilerplate
2349− "Alexey Rodiontsev <alex.rodiontsev@gmail.com> @klappvisor":
2350− []
2351− # - telegram-api https://github.com/fpco/stackage/issues/1689
2352
3261
2353 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
3262 "Iñaki García Etxebarria <garetxe@gmail.com> @garetxe":
2354− # Pinned to versions not using custom-setup, since stack does
2355− # not understand that syntax yet:
2356− # https://github.com/commercialhaskell/stack/issues/2094
2357− - gi-atk == 2.0.3
2358− - gi-cairo == 1.0.3
2359− - gi-gdk == 3.0.3
2360− - gi-gdkpixbuf == 2.0.3
2361− - gi-gio == 2.0.3
2362− - gi-glib == 2.0.3
2363− - gi-gobject == 2.0.3
2364− - gi-gtk == 3.0.3
2365− - gi-pango == 1.0.3
2366− - gi-soup == 2.4.3
2367− - gi-javascriptcore == 3.0.3
2368− - gi-webkit == 3.0.3
2369 - haskell-gi
3263 - haskell-gi
3264+ - haskell-gi-base
3265+ - gi-atk
3266+ - gi-cairo
3267+ - gi-dbusmenu
3268+ - gi-dbusmenugtk3
3269+ - gi-gdk == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3270+ - gi-gdkpixbuf
3271+ - gi-gdkx11 == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3272+ - gi-gio
3273+ - gi-glib
3274+ - gi-gobject
3275+ - gi-graphene
3276+ - gi-gtk == 3.* # https://github.com/commercialhaskell/stackage/issues/6317
3277+ - gi-gtk-hs
3278+ - gi-gmodule
3279+ - gi-pango
3280+ - gi-xlib
3281+ - gi-harfbuzz
3282+ - gi-gsk
3283+ - gi-gtksource
3284+ - gi-javascriptcore
3285+ - gi-vte
3286+ - gi-webkit2
2370
3287
2371 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
3288 "Brandon Simmons <brandon.m.simmons@gmail.com> @jberryman":
2372 - directory-tree
3289 - directory-tree
2373
3290
2374 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
3291 "Ian Grant Jeffries <ian@housejeffries.com> @seagreen":
2375 - hjsonpointer
3292 - hjsonpointer
2376− - hjsonschema
2377
3293
2378 "Drew Hess <src@drewhess.com> @dhess":
3294 "Drew Hess <src@drewhess.com> @dhess":
2379 - hpio
3295 - hpio
@@ -2381,8 +3297,6 @@ packages:
2381 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
3297 "Richard Eisenberg <eir@cis.upenn.edu> @goldfirere":
2382 - th-desugar
3298 - th-desugar
2383 - singletons
3299 - singletons
2384− - units
2385− - units-defs
2386 - HUnit-approx
3300 - HUnit-approx
2387 - units-parser
3301 - units-parser
2388
3302
@@ -2396,47 +3310,83 @@ packages:
2396
3310
2397 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
3311 "Pavel Ryzhov <paul@paulrz.cz> @paulrzcz":
2398 - hquantlib
3312 - hquantlib
2399− - persistent-redis
3313+ - hquantlib-time
3314+ - HSvm
2400
3315
2401 "Henri Verroken <henriverroken@gmail.com> @hverr":
3316 "Henri Verroken <henriverroken@gmail.com> @hverr":
3317+ - bordacount
2402 - 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
2403
3327
2404 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
3328 "Cliff Harvey <cs.hbar+hs@gmail.com> @BlackBrane":
2405 - ansigraph
3329 - ansigraph
2406− - quantum-random
3330+ - microsoft-translator
2407
3331
2408 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
3332 "Tebello Thejane <zyxoas+stackage@gmail.com> @tebello-thejane":
2409− - bitx-bitcoin
3333+ - bitx-bitcoin < 0 # 0.12.0.0 compile fail
2410
3334
2411 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
3335 "Andrew Lelechenko <andrew.lelechenko@gmail.com> @Bodigrim":
2412 - exp-pairs
3336 - exp-pairs
2413− - fast-digits
3337+ - fast-digits < 0 # 0.3.1.0 Cabal 3 vs stack incompat https://github.com/commercialhaskell/stackage/issues/6167
2414−
3338+ - chimera
2415− "Greg Hurrell <greg@hurrell.net> @wincent":
3339+ - quadratic-irrational
2416− - docvim
3340+ - primitive-addr
3341+ - quickcheck-classes
3342+ - quickcheck-classes-base
3343+ - arithmoi
3344+ - bitvec
3345+ - poly
3346+ - extended-reals
3347+ - ChasingBottoms
3348+ - data-interval
3349+ - vector-rotcev
3350+ - mod
3351+ - tasty-rerun
3352+ - integer-roots
3353+ - smallcheck
3354+ - quote-quot
3355+ - tasty-bench
3356+ - tasty-inspection-testing
3357+ - text-rope
2417
3358
2418 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
3359 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
2419 - countable
3360 - countable
3361+ - witness
3362+ - open-witness
2420
3363
2421 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
3364 "Victor Denisov <denisovenator@gmail.com> @VictorDenisov":
2422 - mongoDB
3365 - mongoDB
2423 - bson
3366 - bson
2424
3367
2425 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3368 "Alexis King <lexi.lambda@gmail.com> @lexi-lambda":
3369+ - freer-simple
3370+ - monad-mock
2426 - test-fixture
3371 - test-fixture
2427 - text-conversions
3372 - text-conversions
3373+ - th-to-exp
3374+ - type-assertions
2428
3375
2429 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
3376 "Patrick Chilton <chpatrick@gmail.com> @chpatrick":
2430− # - solga # BLOCKED aeson-qq
2431− # - solga-swagger # aeson-qq
2432− # Doesn't build on stackage server https://github.com/fpco/stackage/pull/1692 - clang-pure
2433 - webrtc-vad
3377 - webrtc-vad
3378+ - clang-pure < 0 # 0.2.0.6 missing system libraries #3810/closed
3379+ - codec
2434
3380
2435 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
3381 "Michal Konecny <mikkonecny@gmail.com> @michalkonecny":
2436 - hmpfr
3382 - hmpfr
3383+ - collect-errors
3384+ - mixed-types-num
3385+ - cdar-mBound
3386+ - aern2-mp
3387+ - aern2-real
2437
3388
2438 "Bartosz Nitka <niteria@gmail.com> @niteria":
3389 "Bartosz Nitka <niteria@gmail.com> @niteria":
2439− - haskell-packages
2440 - oeis
3390 - oeis
2441
3391
2442 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
3392 "Gergely Patai <patai.gergely@gmail.com> @cobbpg":
@@ -2445,51 +3395,55 @@ packages:
2445 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
3395 "Christopher Wells <cwellsny@nycap.rr.com> @ExcalburZero":
2446 - pixelated-avatar-generator
3396 - pixelated-avatar-generator
2447
3397
2448− "Allele Dev <allele.dev@gmail.com> @queertypes":
2449− - freer
2450− - wai-request-spec
2451−
2452 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
3398 "Dominic Orchard <dom.orchard@gmail.com> @dorchard":
2453 - array-memoize
3399 - array-memoize
2454− - camfort
2455− - codo-notation
3400+ - codo-notation < 0 # 0.5.2 compile fail MonadFail
2456 - fortran-src
3401 - fortran-src
2457− # 0.57 Compilation failure https://github.com/fpco/stackage/pull/1710#issuecomment-235067168 - ixmonad
2458− - language-fortran
2459−
2460− "Philipp Schuster <phischu3000@gmail.com> @phischu":
2461− - haskell-names
2462
3402
2463− "Shao Cheng <astrohavoc@gmail.com> @TerrorJack":
3403+ "Cheng Shao <astrohavoc@gmail.com> @TerrorJack":
2464− - simple-download
3404+ - binaryen
2465− - encoding-io
3405+ - cabal-toolkit
3406+ - direct-rocksdb
2466
3407
2467 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
3408 "Anton Gushcha <ncrashed@gmail.com> @ncrashed":
2468 - aeson-injector
3409 - aeson-injector
2469−
3410+ - JuicyPixels-blp
2470− "Rune K. Svendsen <runesvend@gmail.com> @runeks":
2471− []
2472− # - bitcoin-payment-channel # BLOCKED aeson 1.0
2473
3411
2474 "Al Zohali <zohl@fmap.me> @zohl":
3412 "Al Zohali <zohl@fmap.me> @zohl":
2475 - servant-auth-cookie
3413 - servant-auth-cookie
3414+ - dictionaries
3415+ - cereal-time
2476
3416
2477 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
3417 "Joachim Fasting <joachifm@fastmail.fm> @joachifm":
2478 - libmpd
3418 - libmpd
2479
3419
2480 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
3420 "Moritz Kiefer <moritz.kiefer@purelyfunctional.org> @cocreature":
2481 - lrucaching
3421 - lrucaching
3422+ - llvm-hs
3423+ - llvm-hs-pure
2482
3424
2483 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3425 "Thierry Bourrillon <thierry.bourrillon@fpinsight.com> @tbourrillon":
3426+ - heatshrink
2484 - hocilib
3427 - hocilib
2485
3428
2486− "Matthias Herrmann <matthias.mh.herrmann@gmail.com> @2chilled":
2487− []
2488− # - scrape-changes # BLOCKED wreq
2489−
2490 "Daniel Mendler <mail@daniel-mendler.de> @minad":
3429 "Daniel Mendler <mail@daniel-mendler.de> @minad":
3430+ - quickcheck-special
2491 - writer-cps-mtl
3431 - writer-cps-mtl
2492 - writer-cps-transformers
3432 - writer-cps-transformers
3433+ - writer-cps-morph < 0 # 0.1.0.2 compile fail https://github.com/louispan/writer-cps-morph/issues/2
3434+ - writer-cps-lens
3435+ - writer-cps-full
3436+ - writer-cps-exceptions
3437+ - wl-pprint-annotated
3438+ - wl-pprint-console
3439+ - console-style
3440+ - unlit
3441+ - intro
3442+ - tasty-stats
3443+ - colorful-monoids
3444+ - ihs
3445+ - paripari
3446+ - persist
2493
3447
2494 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
3448 "Taras Serduke <taras.serduke@gmail.com> @tserduke":
2495 - do-list
3449 - do-list
@@ -2498,6 +3452,12 @@ packages:
2498 - cpuinfo
3452 - cpuinfo
2499 - lmdb
3453 - lmdb
2500 - 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
2501
3461
2502 "Iago Abal <iagoabal+stack@gmail.com>":
3462 "Iago Abal <iagoabal+stack@gmail.com>":
2503 - bv
3463 - bv
@@ -2507,9 +3467,7 @@ packages:
2507
3467
2508 "Florian Hofmann fho@f12n.de @fhaust":
3468 "Florian Hofmann fho@f12n.de @fhaust":
2509 - vector-split
3469 - vector-split
2510−
3470+ - vector-mmap
2511− "Alex Mason <alex.mason@data61.csiro.au> @Axman6":
2512− - foldl-statistics
2513
3471
2514 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
3472 "Ondrej Palkovsky <palkovsky.ondrej@gmail.com> @ondrap":
2515 - json-stream
3473 - json-stream
@@ -2517,15 +3475,26 @@ packages:
2517 "Philipp Balzarek <p.balzarek@googlemail.com>":
3475 "Philipp Balzarek <p.balzarek@googlemail.com>":
2518 - xml-picklers
3476 - xml-picklers
2519
3477
2520− "Lennart Spitzner lsp@informatik.uni-kiel.de @lspitzner":
3478+ "Lennart Spitzner <hexagoxel@hexagoxel.de> @lspitzner":
2521 - multistate
3479 - multistate
2522 - pqueue
3480 - pqueue
3481+ - butcher
3482+ - czipwith
3483+ - data-tree-print
3484+ - brittany
2523
3485
2524 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
3486 "Ryan Mulligan <ryan@ryantm.com> @ryantm":
2525− - hdbc-mysql
3487+ - HDBC-mysql
3488+
3489+ "Tony Morris <haskell@tmorris.net> @tonymorris":
3490+ - validation
2526
3491
2527 "Tony Day <tonyday567@gmail.com> @tonyday567":
3492 "Tony Day <tonyday567@gmail.com> @tonyday567":
2528− - chart-unit
3493+ - numhask
3494+ - numhask-array
3495+ - numhask-prelude
3496+ - numhask-space
3497+ - perf
2529
3498
2530 "Iphigenia Df <iphydf@gmail.com> @iphydf":
3499 "Iphigenia Df <iphydf@gmail.com> @iphydf":
2531 - data-msgpack
3500 - data-msgpack
@@ -2536,125 +3505,3296 @@ packages:
2536 - hsinstall
3505 - hsinstall
2537 - tce-conf
3506 - tce-conf
2538
3507
2539− "Jonathan Fischoff <jonathangfischoff@gmail.com>":
3508+ "Jonathan Fischoff <jonathangfischoff@gmail.com> @jfischoff":
2540− - threads-extra
2541 - clock-extras
3509 - clock-extras
2542− - next-ref
3510+ - postgres-options
2543−
3511+ - tmp-postgres
2544− "Bernie Pope <bjpope@unimelb.edu.au> @bjpop":
3512+ - pg-transact
2545− - language-python
3513+ - port-utils
2546−
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+
2547− "Mahdi Dibaiee <mdibaiee@aol.com>":
3524+ "Mahdi Dibaiee <mdibaiee@aol.com> @mdibaiee":
2548 - picedit
3525 - picedit
2549−
3526+ - mathexpr
2550− "Alexis Williams <sasinestro@gmail.com> @sasinestro":
3527+ - termcolor
2551− - stb-image-redux
2552− - wavefront-obj
2553
3528
2554 "XT <e@xtendo.org> @xtendo-org":
3529 "XT <e@xtendo.org> @xtendo-org":
2555 - rawfilepath
3530 - rawfilepath
3531+
2556 "Konstantin Zudov <co@zudov.me> @zudov":
3532 "Konstantin Zudov <co@zudov.me> @zudov":
2557 - html-email-validate
3533 - html-email-validate
2558
3534
2559 "Carl Baatz <carl.baatz@gmail.com> @cbaatz":
3535 "Carl Baatz <carl.baatz@gmail.com> @cbaatz":
2560 - atom-basic
3536 - atom-basic
2561
3537
2562− # If you stop maintaining a package you can move it here.
3538+ "Reuben D'Netto <rdnetto@gmail.com>":
2563− # It will then be disabled if it starts causing problems.
3539+ - glob-posix
2564− # See https://github.com/fpco/stackage/issues/1056
3540+
2565− "Abandoned packages":
3541+ "Kadzuya Okamoto <arow.okamoto@gmail.com> @arowM":
2566− - curl
3542+ - type-level-kv-list
3543+ - heterocephalus
3544+ - bookkeeping
3545+ - ochintin-daicho
3546+ - transaction
3547+ - tonaparser
3548+ - tonalude
3549+ - tonatona
3550+ - tonatona-logger
3551+ - tonatona-servant
3552+ - tonatona-persistent-sqlite
3553+ - tonatona-persistent-postgresql
3554+
3555+ "Marcin Tolysz <tolysz@gmail.com> @tolysz":
3556+ - rawstring-qm
3557+
3558+ "Daniel YU <leptonyu@gmail.com>":
3559+ - salak
3560+ - salak-yaml
3561+ - salak-toml
3562+ - tensors
3563+ - menshen
3564+ - crc32c
3565+ - boots
3566+
3567+ "Tom Nielsen <tanielsen@gmail.com> @glutamate":
3568+ - plotlyhs
3569+ - inliterate
3570+
3571+ "Hyunje Jun <me@noraesae.net> @noraesae":
3572+ - line
3573+
3574+ "Hannes Saffrich <m0rphism@zankapfel.org> @m0rphism":
3575+ - printcess
3576+
3577+ "Alexey Kuleshevich <lehins@yandex.ru> @lehins":
3578+ - wai-middleware-auth
3579+ - hip
3580+ - massiv
3581+ - massiv-io
3582+ - massiv-test
3583+ - massiv-serialise
3584+ - massiv-persist
3585+ - scheduler
3586+ - Color
3587+ - safe-decimal
3588+ - flush-queue
3589+ - pvar
3590+
3591+ "Hans-Peter Deifel <hpd@hpdeifel.de> @hpdeifel":
3592+ - hledger-iadd
3593+
3594+ "Roy Levien <royl@aldaron.com> @orome":
3595+ - crypto-enigma
3596+
3597+ "Boldizsár Németh <nboldi@elte.hu> @nboldi":
3598+ - instance-control
3599+ - references < 0 # 0.3.3.1 compile fail
3600+ - classyplate
3601+ - haskell-tools-ast
3602+ - haskell-tools-backend-ghc
3603+ - haskell-tools-prettyprint
3604+ - haskell-tools-refactor
3605+ - haskell-tools-rewrite
3606+ - haskell-tools-demo
3607+ - haskell-tools-cli
3608+ - haskell-tools-daemon
3609+ - haskell-tools-debug
3610+
3611+ "David Fisher <ddf1991@gmail.com> @ddfisher":
3612+ - socket-activation
3613+
3614+ "aiya000 <aiya000.develop@gmail.com> @aiya000":
3615+ - character-cases
3616+ - throwable-exceptions
3617+
3618+ "Mitsutoshi Aoe <maoe@foldr.in> @maoe":
3619+ - influxdb
3620+ - sensu-run
3621+ - viewprof
3622+
3623+ "Dylan Simon <dylan-stack@dylex.net> @dylex":
3624+ - postgresql-typed
3625+ - invertible
3626+ - ztail
3627+ - zip-stream
3628+
3629+ "Louis Pan <louis@pan.me> @louispan":
3630+ - alternators
3631+ - arrow-extras
3632+ - data-diverse
3633+ - data-diverse-lens < 0 # 4.3.0.0 compile fail (lens)
3634+ - ghcjs-base-stub
3635+ - glaze
3636+ - glazier < 0 # 1.0.0.0 compile fail (lens)
3637+ - glazier-react
3638+ - glazier-react-widget
3639+ - javascript-extras
3640+ - lens-misc
3641+ - l10n
3642+ - pipes-category
3643+ - pipes-fluid
3644+ - pipes-misc
3645+ - stm-extras
3646+
3647+ "Siniša Biđin <sinisa@bidin.eu> @sbidin":
3648+ - sdl2-image
3649+ - sdl2-mixer
3650+ - sdl2-gfx
3651+
3652+ "Aditya Manthramurthy <aditya.mmy@gmail.com> @donatello":
3653+ - minio-hs
3654+ - webby
3655+
3656+ "ncaq <ncaq@ncaq.net> @ncaq":
3657+ - debug-trace-var
3658+ - haskell-import-graph
3659+ - string-transform
3660+ - uniq-deep
3661+ - yesod-form-bootstrap4
3662+ - yesod-recaptcha2
3663+
3664+ "Andrei Barbu <andrei@0xab.com> @abarbu":
3665+ - nondeterminism
3666+ - csp
3667+ - matplotlib
3668+
3669+ "mackeyrms <librarymaintainer@mackeycorp.com> @mackeyrms":
3670+ - tsv2csv
3671+
3672+ "Thomas Sutton <me@thomas-sutton.id.au> @thsutton":
3673+ - aeson-diff
3674+ - edit-distance-vector
3675+
3676+ "Kyle Van Berendonck <kvanberendonck+stackage@gmail.com> @donkeybonks":
3677+ - rot13
3678+ - dvorak
3679+
3680+ "Cuedo Business Solutions <foss@cuedo.com.au> @cuedo":
3681+ - github-webhooks
3682+
3683+ "Pavel Yakovlev <pavel@yakovlev.me> @zmactep":
3684+ - hasbolt
3685+ - uniprot-kb
3686+ - mmtf < 0 # 0.1.3.1 compile fail MonadFail
3687+
3688+ "Christopher A. Gorski <cgorski@cgorski.org> @cgorski":
3689+ - general-games
3690+
3691+ "Cristian Adrián Ontivero <cristianontivero@gmail.com> @contivero":
3692+ - hasmin
3693+ - hopfli
3694+
3695+ "Peter Trško <peter.trsko@gmail.com> @trskop":
3696+ - between
3697+ - connection-pool
3698+ - verbosity
3699+
3700+ "Devon Hollowood <devonhollowood@gmail.com> @devonhollowood":
3701+ - search-algorithms
3702+
3703+ "Chris Dornan <chris@chrisdornan.com> @cdornan":
3704+ - sort
3705+ - regex
3706+ - regex-pcre-text
3707+ - regex-with-pcre
3708+ - possibly
3709+ - enum-text
3710+ - rg
3711+ - columnar
3712+ - no-value
3713+ - optparse-enum
3714+ - fmt
3715+
3716+ "Elliot Cameron <eacameron@gmail.com> @3noch":
3717+ - ziptastic-client
3718+ - ziptastic-core
3719+
3720+ "Hardy Jones <jones3.hardy@gmail.com> @joneshf":
3721+ - katip-rollbar
3722+ - rollbar-hs
3723+ - servant-ruby
3724+ - wai-middleware-rollbar
3725+
3726+ "Andrey Mokhov <andrey.mokhov@gmail.com> @snowleopard":
3727+ - algebraic-graphs < 0.6 # https://github.com/commercialhaskell/stackage/issues/6362
3728+
3729+ "Albert Krewinkel <albert+stackage@zeitkraut.de> @tarleb":
3730+ - hslua
3731+ - hslua-aeson
3732+ - hslua-classes
3733+ - hslua-core
3734+ - hslua-marshalling
3735+ - hslua-module-doclayout < 0 # https://github.com/commercialhaskell/stackage/issues/6416
3736+ - hslua-module-path
3737+ - hslua-module-system
3738+ - hslua-module-text
3739+ - hslua-module-version
3740+ - hslua-objectorientation
3741+ - hslua-packaging
3742+ - jira-wiki-markup
3743+ - lpeg
3744+ - lua
3745+ - lua-arbitrary
3746+ - pandoc-lua-marshal
3747+ - tasty-hslua
3748+ - tasty-lua
3749+
3750+ "Judah Jacobson <judah.jacobson@gmail.com> @judah":
3751+ - proto-lens-protobuf-types
3752+ - proto-lens-protoc
3753+ - proto-lens-runtime
3754+ - proto-lens-setup
3755+ - proto-lens
3756+ - proto-lens-arbitrary
3757+ - proto-lens-optparse
3758+ - tensorflow-test
3759+ - pier-core
3760+ - pier
3761+ - haskeline
3762+ - ghc-source-gen # tests disabled due to QuickCheck < 2.14
3763+
3764+ "Christof Schramm <christof.schramm@campus.lmu.de>":
3765+ - mnist-idx
3766+
3767+ "Naushadh <naushadh@protonmail.com> @naushadh":
3768+ - persistent-mysql-haskell
3769+
3770+ "Moritz Schulte <mtesseract@silverratio.net> @mtesseract":
3771+ - async-refresh
3772+ - async-refresh-tokens
3773+ - type-level-integers
3774+ - partial-order
3775+ - async-timer
3776+ - nakadi-client
3777+ - throttle-io-stream
3778+ - conduit-throttle
3779+
3780+ "Simon Hafner <hafnersimon@gmail.com> @reactormonk":
3781+ - uri-bytestring-aeson
3782+ - katip-scalyr-scribe
3783+
3784+ "Sebastian Witte <woozletoff@gmail.com> @saep":
3785+ - nvim-hs
3786+ - nvim-hs-contrib
3787+ - nvim-hs-ghcid
3788+
3789+ "Sam Protas <sam.protas@gmail.com> @SamProtas":
3790+ - triplesec
3791+ - composable-associations
3792+ - composable-associations-aeson
3793+ - JuicyPixels-blurhash
3794+
3795+ "Anton Ekblad <anton@ekblad.cc> @valderman":
3796+ - selda
3797+ - selda-sqlite
3798+ - selda-postgresql
3799+ - selda-json
3800+
3801+ "Luis Pedro Coelho <luis@luispedro.org> @luispedro":
3802+ - safeio
3803+ - conduit-algorithms < 0 # 0.0.11.0 compile fail
3804+ - conduit-zstd
3805+
3806+ "Alex Biehl <alexbiehl@gmail.com> @alexbiehl":
3807+ - haddock-library
3808+ - http-client-openssl
3809+
3810+ "Steven Vandevelde <icid.asset@gmail.com> @icidasset":
3811+ - shikensu
3812+
3813+ "George Pollard <porges@porg.es> @Porges":
3814+ - email-validate
3815+
3816+ "Alexander Ignatyev <ignatyev.alexander@gmail.com> @aligusnet":
3817+ - astro
3818+ - mltool
3819+ - hmatrix-morpheus
3820+
3821+ "Matt Noonan <matt.noonan@gmail.com> @matt-noonan":
3822+ - justified-containers
3823+ - roles >= 0.2
3824+ - lawful
3825+ - gdp
3826+
3827+ "Levent Erkok <erkokl@gmail.com> @LeventErkok":
3828+ - sbv
3829+ - crackNum
3830+
3831+ "János Tapolczai <janos.tapolczai@gmail.com> @jtapolczai":
3832+ - listsafe
3833+
3834+ "Serokell <libraries@serokell.io> @serokell":
3835+ - importify
3836+ - log-warper
3837+ - o-clock
3838+ - tasty-hunit-compat
3839+ - universum
3840+ - with-utf8
3841+ - uncaught-exception
3842+
3843+ "Holmusk <tech@holmusk.com> @arbus":
3844+ - elm-street
3845+
3846+ "Noel Kwan <noelkwan1998@gmail.com> @kwannoel":
3847+ - servant-docs-simple
3848+
3849+ "Lorenz Moesenlechner <moesenle@gmail.com> @moesenle":
3850+ - servant-websockets
3851+
3852+ "Daniel Campoverde <alx@sillybytes.net> @alx741":
3853+ - currencies
3854+ - alerts
3855+ - yesod-alerts
3856+ - graphite
3857+
3858+ "José Lorenzo Rodríguez <jose.zap@gmail.com> @lorenzo":
3859+ - wrecker
3860+ - language-docker
3861+ - docker-build-cacher
3862+ - mysql-haskell-nem
3863+ - hadolint
3864+
3865+ "Phil Ruffwind <rf@rufflewind.com> @Rufflewind":
3866+ - blas-hs
3867+
3868+ "Eitan Chatav <eitan@gmail.com> @echatav":
3869+ - free-categories
3870+ - squeal-postgresql
3871+
3872+ "Sam Quinn <lazersmoke@gmail.com> @Lazersmoke":
3873+ - ghost-buster
3874+
3875+ "typeable.io <makeit@typeable.io>":
3876+ - dom-parser
3877+ - xml-isogen
3878+
3879+ "Jeremy Huffman <jeremy@jeremyhuffman.com> @jeremyjh":
3880+ - higher-leveldb
3881+ - distributed-process-lifted
3882+ - distributed-process-monad-control
2567
3883
2568− # Purescript
3884+ "Adam Curtis <kallisti.dev@gmail.com> @kallisti-dev":
2569− - bower-json
3885+ - webdriver
2570− - boxes
3886+ - cond
2571− - pattern-arrows
3887+
2572− # - purescript # BLOCKED aeson-1.0
3888+ "Naoto Shimazaki <naoto.shimazaki@gmail.com> @nshimaza":
3889+ - thread-hierarchy
3890+ - thread-supervisor
3891+ - bitset-word8
3892+ - webex-teams-api
3893+ - webex-teams-conduit
3894+ - webex-teams-pipes
3895+
3896+ "Deni Bertovic <deni@denibertovic.com> @denibertovic & James Parker <dev@jamesparker.me> @jprider63":
3897+ - docker
3898+
3899+ "Hexirp <hexirp@gmail.com> @Hexirp":
3900+ - doctest-driver-gen
3901+
3902+ "Václav Haisman <vhaisman@gmail.com> @wilx":
3903+ - hs-bibutils
3904+
3905+ "Christian Kjær Laustsen <ckl@codetalk.io> @tehnix":
3906+ - ghc-core
3907+ - colorize-haskell
3908+
3909+ "Chris Martin <ch.martin@gmail.com> @chris-martin":
3910+ - data-forest
3911+ - loc
3912+ - partial-semigroup
3913+ - path-text-utf8
3914+
3915+ "Type Classes <hello@typeclasses.com> @argumatronic @chris-martin":
3916+ - ascii
3917+ - ascii-case
3918+ - ascii-char
3919+ - ascii-group
3920+ - ascii-predicates
3921+ - ascii-superset
3922+ - ascii-th
3923+ - aws-cloudfront-signed-cookies
3924+ - d10
3925+ - hex-text
3926+ - stripe-concepts
3927+ - stripe-signature
3928+ - stripe-scotty
3929+ - stripe-wreq
3930+
3931+ "Viacheslav Lotsmanov <lotsmanov89@gmail.com> @unclechu":
3932+ - place-cursor-at
3933+ - qm-interpolated-string
3934+
3935+ "Douglas Burke <dburke.gw@gmail.com> @DougBurke":
3936+ - swish
3937+ - hvega
3938+ - ihaskell-hvega
3939+
3940+ "Adam Flott <adam@adamflott.com> @adamflott":
3941+ - milena
3942+
3943+ "Csongor Kiss <kiss.csongor.kiss@gmail.com> @kcsongor":
3944+ - generic-lens
3945+ - generic-optics
3946+ - generic-lens-core
3947+
3948+ "Bogdan Neterebskii <bog2dan1@gmail.com> @ozzzzz":
3949+ - cast
3950+ - aeson-picker
3951+
3952+ "Warlock <internalmike@gmail.com> @A1-Triard":
3953+ - errors-ext
3954+ - binary-ext
3955+
3956+ "Bob Long <robertjflong@gmail.com> @bobjflong":
3957+ - yesod-csp < 0 # 0.2.5.0 text 1.2.5.0 exports `elem`
3958+
3959+ "Alexander Vershilov <alexander.vershilov@gmail.com> @qnikst":
3960+ - stm-conduit
3961+ - co-log-concurrent
3962+ - HaskellNet
2573
3963
2574− - type-list
3964+ "Tung Dao <me@tungdao.com> @tungd":
2575− - zoom-refs
3965+ - time-locale-vietnamese
2576− - vinyl-utils
2577− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
2578
3966
2579− # If you want to make sure a package is removed from stackage,
3967+ "Tim McGilchrist <timmcgil@gmail.com> @tmcgilchrist":
2580− # place it here with a `< 0` constraint and send a pull
3968+ - riak
2581− # request. This will tell us if other packages would be
3969+ - riak-protobuf
2582− # affected. Packages will be kept in this list indefinitely so
3970+ - airship
2583− # that new packages depending on it will be flagged as well.
3971+ - hedgehog-corpus
2584− "Removed packages": []
3972+
3973+ "Tom Sydney Kerckhove <syd.kerckhove@gmail.com> @NorfairKing":
3974+ - autodocodec
3975+ - autodocodec-openapi3
3976+ - autodocodec-schema
3977+ - autodocodec-yaml
3978+ - cursor
3979+ - cursor-brick
3980+ - cursor-fuzzy-time
3981+ - cursor-gen
3982+ - fuzzy-time
3983+ - genvalidity
3984+ - genvalidity-aeson
3985+ - genvalidity-bytestring
3986+ - genvalidity-containers
3987+ - genvalidity-criterion
3988+ - genvalidity-hspec
3989+ - genvalidity-hspec-aeson
3990+ - genvalidity-hspec-binary
3991+ - genvalidity-hspec-cereal
3992+ - genvalidity-hspec-hashable
3993+ - genvalidity-hspec-optics
3994+ - genvalidity-hspec-persistent
3995+ - genvalidity-mergeful
3996+ - genvalidity-mergeless
3997+ - genvalidity-path
3998+ - genvalidity-persistent
3999+ - genvalidity-property
4000+ - genvalidity-scientific
4001+ - genvalidity-sydtest
4002+ - genvalidity-sydtest-aeson
4003+ - genvalidity-sydtest-hashable
4004+ - genvalidity-sydtest-lens
4005+ - genvalidity-sydtest-persistent
4006+ - genvalidity-text
4007+ - genvalidity-time
4008+ - genvalidity-typed-uuid
4009+ - genvalidity-unordered-containers
4010+ - genvalidity-uuid
4011+ - genvalidity-vector
4012+ - mergeful
4013+ - mergeless
4014+ - pretty-relative-time
4015+ - safe-coloured-text
4016+ - safe-coloured-text-terminfo
4017+ - sydtest
4018+ - sydtest-discover
4019+ - sydtest-persistent
4020+ - sydtest-persistent-sqlite
4021+ - sydtest-servant
4022+ - sydtest-wai
4023+ - sydtest-yesod
4024+ - typed-uuid
4025+ - validity
4026+ - validity-aeson
4027+ - validity-bytestring
4028+ - validity-containers
4029+ - validity-path
4030+ - validity-persistent
4031+ - validity-primitive
4032+ - validity-scientific
4033+ - validity-text
4034+ - validity-time
4035+ - validity-unordered-containers
4036+ - validity-uuid
4037+ - validity-vector
4038+ - yamlparse-applicative
4039+
4040+
4041+ "Henry Laxen <nadine.and.henry@pobox.com> @HenryLaxen":
4042+ - bbdb
4043+
4044+ "Stevan Andjelkovic <stevan.andjelkovic@here.com> @stevana":
4045+ - quickcheck-state-machine
2585
4046
2586− "GHC upper bounds":
4047+ "Sebastian Nagel <sebastian.nagel@ncoding.at> @ch1bo":
2587− # Need to always match the version shipped with GHC
4048+ - hdevtools < 0 # 0.1.8.0 compile fail
2588− - Win32 == 2.3.1.1
4049+ - servant-exceptions
4050+ - servant-exceptions-server
4051+
4052+ "Vaibhav Sagar <vaibhavsagar@gmail.com> @vaibhavsagar":
4053+ - ihaskell
4054+ - ghc-parser
4055+
4056+ "Alexis Williams <alexis@typedr.at> @typedrat":
4057+ - stb-image-redux < 0.2.1.3 || > 0.2.1.3 # deprecated version
4058+
4059+ "Alexandre Peyroux <alex@px.io> @apeyroux":
4060+ - HSlippyMap
4061+ - google-isbn
4062+ - nuxeo
4063+
4064+ "Andrey Sverdlichenko <blaze@ruddy.ru> @rblaze":
4065+ - credential-store
4066+ - dbus
4067+ - re2
4068+
4069+ "Bardur Arantsson <stackage@scientician.net> @BardurArantsson":
4070+ - peregrin
4071+ - pg-harness-client
4072+ - pg-harness-server
4073+ - unliftio-pool
4074+ - unliftio-streams
4075+
4076+ "Sebastian Graf <sgraf1337@gmail.com> @sgraf812":
4077+ - pomaps
4078+
4079+ "Alexey Kotlyarov <a@koterpillar.com> @koterpillar":
4080+ - appendmap
4081+ - serverless-haskell
4082+
4083+ "Guru Devanla <grdvnl@gmail.com> @gdevanla":
4084+ - pptable
4085+ - cassava-records < 0 # 0.1.0.4 compile fail MonadFail
4086+ - pandoc-markdown-ghci-filter < 0 # 0.1.0.0 compile fail https://github.com/gdevanla/pandoc-markdown-ghci-filter/issues/3
4087+
4088+ "Lucas David Traverso <lucas6246@gmail.com> @ludat":
4089+ - map-syntax
4090+ - heist
4091+ - snap
4092+ - conferer
4093+ - conferer-snap
4094+ - conferer-warp
4095+ - conferer-hspec
4096+ - conferer-aeson
4097+
4098+ "Tim Humphries <tim+stackage@utf8.me> @thumphries":
4099+ - transformers-either
4100+ - transformers-fix
4101+
4102+ "Dan Firth <dan.firth@homotopic.tech> @locallycompact":
4103+ - aeson-with
4104+ - binary-instances
4105+ - comonad-extras
4106+ - compact
4107+ - composite-aeson
4108+ - composite-aeson-path
4109+ - composite-aeson-refined
4110+ - composite-aeson-throw
4111+ - composite-base
4112+ - composite-binary
4113+ - composite-ekg
4114+ - composite-hashable
4115+ - composite-tuple
4116+ - composite-xstep
4117+ - ixset-typed-binary-instance
4118+ - ixset-typed-conversions
4119+ - ixset-typed-hashable-instance
4120+ - lucid-cdn
4121+ - natural-arithmetic
4122+ - pandoc-dhall-decoder
4123+ - pandoc-throw
4124+ - path-binary-instance
4125+ - path-dhall-instance
4126+ - path-extensions
4127+ - path-formatting
4128+ - path-like
4129+ - path-utils
4130+ - polysemy-extra
4131+ - polysemy-fs
4132+ - polysemy-fskvstore
4133+ - polysemy-kvstore-jsonfile
4134+ - polysemy-kvstore
4135+ - polysemy-methodology
4136+ - polysemy-path
4137+ - polysemy-several
4138+ - polysemy-socket
4139+ - polysemy-uncontrolled
4140+ - polysemy-video
4141+ - polysemy-vinyl
4142+ - primitive-offset
4143+ - shake-plus
4144+ - shake-plus-extended
4145+ - simple-media-timestamp
4146+ - simple-media-timestamp-formatting
4147+ - simple-media-timestamp-attoparsec
4148+ - srt
4149+ - srt-attoparsec
4150+ - srt-dhall
4151+ - srt-formatting
4152+ - tuples
4153+ - unliftio-path
4154+ - variable-media-field
4155+ - variable-media-field-dhall
4156+ - variable-media-field-optics
4157+ - vinyl-loeb
4158+ - within
4159+ - zipper-extra
4160+
4161+ "Domen Kozar <domen@enlambda.com> @domenkozar":
4162+ - elm2nix
4163+ - mixpanel-client
4164+ - netrc
4165+ - pretty-sop
4166+ - servant-auth
4167+ - servant-auth-server
4168+ - servant-auth-client
4169+ - servant-auth-swagger
4170+ - servant-auth-docs
4171+ - servant-elm
4172+ - systemd
4173+
4174+ "Andre Van Der Merwe <stackage@andrevdm.com> @andrevdm":
4175+ - bhoogle
4176+ - hyraxAbif
4177+ - postgresql-migration
4178+
4179+ "David Millar-Durrant <dmillardurrant@gmail.com> @DavidM-D":
4180+ - indexed-list-literals
4181+
4182+ "Dmitry Dzhus <dima@dzhus.org> @dzhus":
4183+ - csg
4184+ - simple-vec3
4185+ - static-text
4186+ - th-env
4187+ - th-nowq
4188+
4189+ "Dan Fithian <daniel.m.fithian@gmail.com> @dfithian":
4190+ - oauthenticated
4191+ - datadog
4192+ - interpolator
4193+ - file-path-th
4194+
4195+ "Raghu Kaippully <rkaippully@gmail.com> @rkaippully":
4196+ - webgear-core
4197+ - webgear-openapi
4198+ - webgear-server
4199+
4200+ "Alex Washburn <github@recursion.ninja> @recursion-ninja":
4201+ - bv-little
4202+ - mono-traversable-keys
4203+
4204+ "Avi Press <mail@avi.press> @aviaviavi":
4205+ - curl-runnings
4206+ - cryptocompare
4207+
4208+ "Jack Kiefer <jack.c.kiefer@gmail.com> @JackKiefer":
4209+ - herms
4210+
4211+ "Sergey Vinokurov <serg.foo@gmail.com> @sergv":
4212+ - bencoding
4213+ - emacs-module < 0 # 0.1.1 compile fail ghc 8.10.1 #5436/closed
4214+ - tasty-ant-xml
4215+
4216+ "Eugene Smolanka <esmolanka@gmail.com> @esmolanka":
4217+ - sexp-grammar
4218+ - invertible-grammar
4219+
4220+ "Maximilian Tagher <feedback.tagher@gmail.com> @MaxGabriel":
4221+ - aeson-iproute
4222+ - persistent-iproute
4223+
4224+ "Damian Nadales <damian.nadales@gmail.com> @capitanbatata":
4225+ - hierarchy
4226+
4227+ "Kofi Gumbs <h.kofigumbs@gmail.com> @hkgumbs":
4228+ - codec-beam
4229+
4230+ "Chris Parks <christopher.daniel.parks@gmail.com> @cdparks":
4231+ - closed
4232+
4233+ "Chris Coffey <chris@foldl.io> @ChrisCoffey":
4234+ - servant-tracing
4235+ - cuckoo-filter
4236+ - confcrypt
4237+
4238+ "Rick Owens <rick@owensmurray.com> @owensmurray":
4239+ - om-elm
4240+
4241+ "ALeX Kazik <alex@kazik.de> @alexkazik":
4242+ - exomizer
4243+ - qnap-decrypt
4244+ - qrcode-core
4245+ - qrcode-juicypixels
4246+
4247+ "Reed Oei <oei.reed@gmail.com> @ReedOei":
4248+ - fuzzy-dates
4249+
4250+ "Matthew Farkas-Dyck <strake888@gmail.com> @strake":
4251+ - Fin
4252+ - alg
4253+ - category
4254+ - constraint
4255+ - dual
4256+ - either-both
4257+ - filtrable
4258+ - foldable1
4259+ - hs-functors
4260+ - lenz
4261+ - natural-induction
4262+ - peano
4263+ - unconstrained
4264+ - util < 0 # 0.1.17.1 compile fail needs DerivingVia enabled
4265+
4266+ "Ben Sima <ben@bsima.me> @bensima":
4267+ - yesod-text-markdown
4268+
4269+ "Alexander Krupenkin <mail@akru.me> @akru":
4270+ - web3
4271+
4272+ "Georg Rudoy <0xd34df00d@gmail.com> @0xd34df00d":
4273+ - binary-generic-combinators
4274+ - can-i-haz
4275+ - enum-subset-generate
4276+
4277+ "Trevis Elser <trevis@silencedpoet.com> @telser":
4278+ - sendfile
4279+
4280+ "Kristen Kozak <grayjay@wordroute.com> @grayjay":
4281+ - json-rpc-server
4282+ - json-rpc-client
4283+
4284+ "Magnus Therning <magnus@therning.org> @magthe":
4285+ - hsini
4286+
4287+ "Baojun Wang <wangbj@gmail.com> @wangbj":
4288+ - elf
4289+
4290+ "Tom Oram <tom@x2k.co.uk> @tomphp":
4291+ - cfenv
4292+
4293+ "Owen Lynch <root@owenlynch.org> @olynch":
4294+ - natural-sort
4295+
4296+ "John Biesnecker <jbiesnecker@gmail.com> @biesnecker":
4297+ - async-pool
4298+
4299+ "Zoltan Kelemen <kelemzol@elte.hu> @kelemzol":
4300+ - fswatch
4301+
4302+ "Matthew Wraith <matt@bitnomial.com> @wraithm":
4303+ - prometheus
4304+ - prometheus-wai-middleware
4305+ - hgrev
4306+ - seqid
4307+ - seqid-streams
4308+
4309+ "Daniel Gorin <jcpetruzza@gmail.com> @jcpetruzza":
4310+ - barbies
4311+ - data-hash
4312+
4313+ "Eduard Sergeev <eduard.sergeev@gmail.com> @EduardSergeev":
4314+ - monad-memo
4315+
4316+ "Wanja Chresta <wanja.hs@chrummibei.ch> @wchresta":
4317+ - matrix-static
4318+
4319+ "Jean-Pierre Rupp <xenog@protonmail.com> @xenog":
4320+ - json-rpc
4321+ - rfc1751
4322+ - murmur3
4323+ - nqe
4324+ - secp256k1-haskell
4325+ - rocksdb-haskell
4326+ - rocksdb-haskell-jprupp
4327+ - rocksdb-query
4328+ - haskoin-core
4329+ - haskoin-node
4330+ - haskoin-store
4331+
4332+ "asakamirai <asakamirai_hackage@towanowa.net> @asakamirai":
4333+ - kazura-queue
4334+
4335+ "Eric Torreborre <etorreborre@yahoo.com> @etorreborre":
4336+ - registry
4337+
4338+ "Ryota Kameoka <kameoka.ryota@gmail.com> @ryota-ka":
4339+ - duration
4340+
4341+ "Takenobu Tani <takenobu.hs@gmail.com> @takenobu-hs":
4342+ - ghci-hexcalc
4343+
4344+ "Nikos Karagianndis <nkarag@gmail.com> @nkarag":
4345+ - DBFunctor
4346+
4347+ "Marat Khafizov <xafizoff@gmail.com> @xafizoff":
4348+ - n2o
4349+ - n2o-nitro
4350+ - n2o-protocols
4351+ - n2o-web
4352+
4353+ "David Smith <shmish111@gmail.com> @shmish111":
4354+ - bazel-runfiles
4355+
4356+ "Rob Rix <robrix@github.com> @robrix":
4357+ - fused-effects
4358+
4359+ "Josef Thorne <joseft.168@gmail.com> @Grendel-Grendel-Grendel":
4360+ - focuslist
4361+
4362+ "Pavan Rikhi <pavan.rikhi@gmail.com> @prikhi":
4363+ - hs-php-session
4364+ - wordpress-auth
4365+ - servant-auth-wordpress
4366+ - ca-province-codes
4367+ - mx-state-codes
4368+ - sitemap-gen
4369+ - tasty-wai
4370+ - stack-templatizer
4371+ - immortal-queue
4372+ - wai-middleware-clacks
4373+ - hledger-stockquotes
4374+ - bnb-staking-csvs
4375+ - solana-staking-csvs
4376+ - cointracking-imports
4377+
4378+ "David Baynard <haskell@baynard.dev> @dbaynard":
4379+ - time-qq
4380+ - ucam-webauth
4381+ - ucam-webauth-types
4382+
4383+ "Erick Gonzalez <erick@codemonkeylabs.de> @codemonkeylabs-de":
4384+ - eap
4385+ - failable
4386+ - ttl-hashtables
4387+ - radius
4388+ - structured-cli
4389+
4390+ "Jan Path <jan@jpath.de> @janpath":
4391+ - smallcheck-series
4392+
4393+ "Taisuke Hikawa <23.prime.37@gmail.com> @23prime":
4394+ - oeis2
4395+
4396+ "David Himmelstrup <lemmih@gmail.com> @lemmih":
4397+ - chiphunk
4398+ - reanimate-svg
4399+ - reanimate
4400+ - earcut
4401+ - vector-circular
4402+ - hgeometry >= 0.12.0.2 # required by reanimate as of 0.4.2.0
4403+ - hgeometry-combinatorial
4404+ - approximate-equality # required by hgeometry-combinatorial
4405+ - type-level-natural-number # required by approximate-equality
4406+
4407+ "Vitaly Bragilevsky <vit.bragilevsky@gmail.com> @bravit":
4408+ - Chart
4409+ - Chart-diagrams
2589
4410
2590− "Stackage upper bounds":
4411+ "Juri Chomé <juri.chome@gmail.com> @2mol":
4412+ - msgpack
4413+ - msgpack-rpc
4414+ - msgpack-idl
4415+ - msgpack-aeson
4416+ - int-cast
4417+
4418+ "Akihito Kirisaki <kirisaki@klaraworks.net> @kirisaki":
4419+ - caster
4420+
4421+ "Felix Paulusma <felix.paulusma@gmail.com> @Vlix":
4422+ - safe-json
4423+
4424+ "Olle Fredriksson <fredriksson.olle@gmail.com> @ollef":
4425+ - rope-utf16-splay
4426+
4427+ "Venkateswara Rao Mandela <venkat.mandela@gmail.com> @vmandela":
4428+ - pandoc-csv2table
4429+
4430+ "Elben Shira <elben@shira.im> @elben":
4431+ - pencil
4432+
4433+ "Ivan Malison <IvanMalison@gmail.com> @IvanMalison":
4434+ - ConfigFile
4435+ - dbus-hslogger
4436+ - gi-cairo-connector
4437+ - gi-cairo-render
4438+ - gtk-sni-tray
4439+ - gtk-strut
4440+ - rate-limit
4441+ - status-notifier-item
4442+ - taffybar < 0 # https://github.com/taffybar/taffybar/issues/542
4443+ - time-units
4444+ - xml-helpers
4445+ - xdg-desktop-entry
4446+
4447+ "ARATA Mizuki <minorinoki@gmail.com> @minoki":
4448+ - unboxing-vector
4449+
4450+ "Brandon Chinn <brandon@leapyear.io> @brandon-leapyear":
4451+ - aeson-schemas
4452+ - github-rest
4453+ - graphql-client
4454+ - hpc-lcov
4455+ - th-test-utils
4456+
4457+ "Brandon Chinn <brandonchinn178@gmail.com> @brandonchinn178":
4458+ - fourmolu
4459+ - http-api-data-qq
4460+ - persistent-mtl
4461+
4462+ "Akshay Mankar <itsakshaymankar@gmail.com> @akshaymankar":
4463+ - jsonpath
4464+
4465+ "James Brock <jamesbrock@gmail.com> @jamesdbrock":
4466+ - replace-megaparsec
4467+ - replace-attoparsec
4468+
4469+ "Robbie McMichael @robbiemcmichael":
4470+ - http-client-overrides
4471+
4472+ "Ian Graves <thegravian@gmail.com> @igraves":
4473+ - monad-resumption
4474+
4475+ "Marius Ghita <mhitza@gmail.com> @mhitza":
4476+ - minimal-configuration
4477+
4478+ "Davit Nalchevanidze <d.nalchevanidze@gmail.com> @nalchevanidze":
4479+ - morpheus-graphql
4480+ - morpheus-graphql-core
4481+ - morpheus-graphql-client
4482+ - morpheus-graphql-subscriptions
4483+ - morpheus-graphql-app
4484+ - morpheus-graphql-code-gen
4485+ - morpheus-graphql-tests
4486+
4487+ "Satoshi Egi <egi@egison.org> @egisatoshi":
4488+ - backtracking
4489+ - egison
4490+ - mini-egison
4491+ - sweet-egison
4492+ - egison-pattern-src
4493+ - egison-pattern-src-th-mode
4494+
4495+ "Travis Cardwell <travis.cardwell@extrema.is> @TravisCardwell":
4496+ - literatex
4497+ - ttc
4498+
4499+ "Jasper Woudenberg <mail@jasperwoudenberg.com> @jwoudenberg":
4500+ - bugsnag-hs
4501+ - junit-xml
4502+ - wai-feature-flags
4503+ - tasty-test-reporter
4504+ - pretty-diff
4505+
4506+ "Eric Conlon <ejconlon@gmail.com> @ejconlon":
4507+ - blanks
4508+ - climb
4509+ - linenoise
4510+ - little-rio
4511+ - little-logger
4512+ # Maintainership with @23Skidoo
4513+ - ekg
4514+ - ekg-core
4515+ - ekg-json
4516+ - ekg-statsd
2591
4517
2592− # https://github.com/fpco/stackage/issues/1767
4518+ "Jorah Gao <jorah@version.cloud> @gqk007":
2593− - SVGFonts < 1.6
4519+ - aeson-default
4520+ - vformat
4521+ - vformat-time
4522+ - vformat-aeson
4523+ - hkd-default
2594
4524
2595− # https://github.com/fpco/stackage/issues/1784
4525+ "Shintaro Sakata <shintaro.sakata.tokyo@gmail.com> @chemirea":
2596− - optparse-applicative < 0.13.0.0 # May need to disable test suite when lifting this https://github.com/pcapriotti/optparse-applicative/issues/228
4526+ - utf8-conversions
2597− - diagrams-canvas < 1.3.0.7
2598− - diagrams-cairo < 1.3.1.2
2599− - diagrams-rasterific < 1.3.1.9
2600− - diagrams-svg < 1.4.0.4
2601− - tttool < 1.6.1.3
2602
4527
2603− # https://github.com/fpco/stackage/issues/1842
4528+ "Alessandro Marrella <amarrella@earnestresearch.com> @amarrella":
2604− - dependent-sum < 0.4
4529+ - kubernetes-webhook-haskell
2605
4530
2606− # https://github.com/fpco/stackage/issues/1876
4531+ "8c6794b6 <8c6794b6@gmail.com> @8c6794b6":
2607− - fixed-vector < 0.9
4532+ - hpc-codecov
2608
4533
2609− # https://github.com/fpco/stackage/issues/1902
4534+ "Hiromi Ishii <konn.jinro@gmail.com> @konn":
2610− - hspec < 2.2.4
4535+ - equational-reasoning
2611− - hspec-core < 2.2.4
4536+ - ghc-typelits-presburger
2612− - hspec-discover < 2.2.4
4537+ - singletons-presburger
4538+ - type-natural
4539+ - subcategories
4540+ - sized
2613
4541
2614− # https://github.com/fpco/stackage/issues/1993
4542+ "Frank Doepper <stackage@woffs.de> @woffs":
2615− - hspec < 2.3
4543+ - amqp-utils
4544+ - magic
2616
4545
2617− # https://github.com/fpco/stackage/issues/1965
4546+ "Ziyang Liu <free@cofree.io> @zliu41":
2618− - HUnit < 1.4.0.0
4547+ - apply-refact
2619− - hspec-expectations < 0.8.2
4548+ - hadoop-streaming
4549+ - indexed-containers
4550+ - math-extras
4551+ - min-max-pqueue
4552+ - multi-containers
4553+
4554+ "Vaclav Svejcar <vaclav.svejcar@gmail.com> @vaclavsvejcar":
4555+ - headroom
4556+ - vcs-ignore
4557+
4558+ "Adrian Sieber <stackage@ad-si.com> @ad-si":
4559+ - ulid
4560+
4561+ "Rickey Visinski <rickeyvisinski+hs@gmail.com> @rickeyski":
4562+ - slack-api
4563+
4564+ "Dobromir Nikolov <dnikolovv@hotmail.com> @dnikolovv":
4565+ - it-has
4566+
4567+ "Gabriele Sales <gbrsales@gmail.com> @gbrsales":
4568+ - cabal-appimage
4569+
4570+ "Dominik Schrempf <dominik.schrempf@gmail.com> @dschrempf":
4571+ - circular
4572+ - covariance
4573+ - dirichlet
4574+ - elynx
4575+ - elynx-markov
4576+ - elynx-nexus
4577+ - elynx-seq
4578+ - elynx-tools
4579+ - elynx-tree
4580+ - glasso
4581+ - mcmc
4582+ - pava
4583+ - slynx
4584+ - tlynx
4585+
4586+ "Eric Rochester <erochest@gmail.com> @erochest":
4587+ - text-regex-replace
4588+
4589+ "Masahiro Honma <hiratara@cpan.org> @hiratara":
4590+ - string-random
4591+
4592+ "Michael B. Gale <github@michael-gale.co.uk> @mbg":
4593+ - c14n
4594+ - katip-logstash
4595+ - logstash
4596+ - monad-logger-logstash
4597+ - moss
4598+ - wai-rate-limit
4599+ - wai-rate-limit-redis
4600+ - wai-saml2
4601+
4602+ "Jun Narumi <narumij@gmail.com> @narumij":
4603+ - matrix-as-xyz
4604+ - hall-symbols
4605+ - symmetry-operations-symbols
4606+
4607+ "Hideaki Kawai <kayhide@gmail.com> @kayhide":
4608+ - wakame
4609+
4610+ "Michael Williams <mlcfp@icloud.com> @mlcfp":
4611+ - zenacy-html
4612+ - zenacy-unicode
4613+
4614+ "Maxim Koltsov <kolmax94@gmail.com> @maksbotan":
4615+ - openapi3
4616+ - servant-openapi3
4617+
4618+ "Song Zhang <HaskellZhangSong@hotmail.com> @HaskellZhangSong":
4619+ - derive-topdown
4620+
4621+ "NoRedInk <haskell-open-source@noredink.com>":
4622+ - nri-env-parser
4623+ - nri-http
4624+ - nri-kafka
4625+ - nri-observability
4626+ - nri-prelude
4627+ - nri-postgresql
4628+ - nri-redis
4629+ - nri-test-encoding
4630+
4631+ "Behrang Norouzinia <behrangn@gmail.com> @behrang":
4632+ - jalaali
4633+
4634+ "Alexander Batischev <eual.jp@gmail.com> @Minoru":
4635+ - hakyll-convert
4636+
4637+ "Edward Nerd <nerded.nerded@gmail.com> @nerded1337":
4638+ - zydiskell
4639+
4640+ "Alejandro Peralta Bazas <aleperaltabazas@gmail.com> @aleperaltabazas":
4641+ - hocon
4642+
4643+ "Joshua Booth <joshua.n.booth@gmail.com> @jnbooth":
4644+ - bitwise-enum
4645+
4646+ "Shlomo Shuck <stevenjshuck@gmail.com> @sjshuck":
4647+ - pcre2
4648+
4649+ "Emil Axelsson <78emil@gmail.com> @emax":
4650+ - tree-view
4651+
4652+ "Samuel Gélineau <gelisam@gmail.com> @gelisam":
4653+ - haskell-awk
4654+ - hint
4655+ - recursion-schemes
2620
4656
2621− # https://github.com/fpco/stackage/issues/1970
4657+ "Kyriakos Papachrysanthou <k.papachrisanthou@gmail.com> @3kyro":
2622− - haskell-gi-base < 0.19
4658+ - keep-alive
2623
4659
2624− # https://github.com/fpco/stackage/issues/1971
4660+ "Brooklyn Zelenka <hello@brooklynzelenka.com> @expede":
2625− - hspec-expectations < 0.8.0
4661+ - rescue
2626− - hspec-wai < 0.7.0
2627− - hspec-wai-json < 0.7.0
2628− - hspec-meta < 2.3.0
2629
4662
2630− # https://github.com/fpco/stackage/issues/1972
4663+ "Artem Pelenitsyn <artem.pelenitsyn@gmail.com> @ulysses4ever":
2631− - lens < 4.15 # Re-enable `lens' benchmarks when lifted
4664+ - alex-meta
4665+ - happy-meta
4666+ - BNFC-meta
2632
4667
2633− # https://github.com/fpco/stackage/issues/1991
4668+ "Tomasz Maciosowski <t4ccer@gmail.com> @t4ccer":
2634− - hackernews < 1.0
4669+ - wai-session-redis
2635
4670
2636− # https://github.com/fpco/stackage/issues/1994
4671+ "Rory Tyler Hayford <rory.hayford@protonmail.com> @ngua":
2637− - hspec-wai < 0.8.0
4672+ - ipa
2638
4673
2639− # https://github.com/fpco/stackage/issues/2007
4674+ "Andreas Herrmann <andreas.herrmann@tweag.io> @aherrmann":
2640− - ShellCheck < 0.4.5
4675+ - capability
2641
4676
2642− # https://github.com/fpco/stackage/issues/2010
4677+ "Dustin Sallings <dustin@spy.net> @dustin":
2643− - hw-bits < 0.4
4678+ - net-mqtt
2644− - hw-conduit < 0.1
4679+ - net-mqtt-lens
2645− - hw-prim < 0.4
2646− - hw-rankselect < 0.5
2647− - hw-string-parse < 0.0.0.3
2648
4680
2649−# end of packages
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
5238+ - bower-json
5239+ - boxes
5240+ - cassava
5241+ - charsetdetect-ae # #6326/closed
5242+ - coercible-utils # #6271
5243+ - compiler-warnings # #6326/closed
5244+ - curl
5245+ - docopt # #6326/closed
5246+ - dynamic-state # #6326/closed
5247+ - first-class-patterns # #5965/closed
5248+ - ghc-trace-events # #6326/closed
5249+ - hashing # #6271
5250+ - hnix-store-core # #6271
5251+ - ilist # #5965/closed
5252+ - io-storage # #6326/closed
5253+ - monadlist # #6271
5254+ - non-empty-sequence
5255+ - numeric-limits # #6326/closed
5256+ - oo-prototypes # #6326/closed
5257+ - opentelemetry # #6326/closed
5258+ - opentelemetry-extra # #6326/closed
5259+ - opentelemetry-lightstep # #6326/closed
5260+ - opentelemetry-wai # #6326/closed
5261+ - path # #6271
5262+ - pattern-arrows
5263+ - planb-token-introspection # #6326/closed
5264+ - pointedlist # #6326/closed
5265+ - relude # #5965/closed
5266+ - shellmet # #5965/closed
5267+ - slist # #5965/closed
5268+ - type-errors-pretty # #5965/closed
5269+ - typerep-map # #5965/closed
5270+ - unordered-intmap # #6326/closed
5271+ - validation-selective # #5965/closed
5272+ - word-trie # #6326/closed
5273+ - xdg-basedir # #6326/closed
5274+ - yi-rope # #6326/closed
5275+
5276+ # Packages without maintainers that cause issues,
5277+ # this is to prevent us from including them by accident. They can
5278+ # be removed from this list if they are fixed.
5279+ "Unmaintained packages with compilation failures": []
5280+
5281+ # If you want to make sure a package is removed from stackage,
5282+ # place it here with a `< 0` constraint and send a pull
5283+ # request. This will tell us if other packages would be
5284+ # affected. Packages will be kept in this list indefinitely so
5285+ # that new packages depending on it will be flagged as well.
5286+ "Removed packages":
5287+ - PSQueue < 0 # compile fail
5288+ - Unique < 0
5289+ - cli < 0 # compile fail
5290+ - co-log-core < 0 # #5965/closed
5291+ - co-log-polysemy < 0 # #5965/closed
5292+ - fingertree-psqueue < 0 # compile fail
5293+ - hastache < 0 # bounds
5294+ - heart-core < 0 # deprecated
5295+ - hnix < 0 # #6271/closed
5296+ - json-builder < 0 # compile fail https://github.com/lpsmith/json-builder/issues/2
5297+ - lens-labels < 0 # deprecated #4358/closed
5298+ - membrain < 0 # #5965/closed
5299+ - preprocessor-tools < 0 # compile fail
5300+ - present < 0 # #6271
5301+ - prim-array < 0 # compile fail
5302+ - proto-lens-combinators < 0 # deprecated https://github.com/commercialhaskell/stackage/pull/4358
5303+ - shortcut-links < 0 # #5965/closed
5304+ - snap-server < 0 # #6271
5305+ - syb-with-class < 0 # compile fail
5306+ - tinytemplate < 0 # compile fail
5307+ - tomland < 0 # #5965/closed
5308+ - type-combinators < 0 # compile fail https://github.com/kylcarte/type-combinators/issues/8
5309+ - wai-route < 0 # compile fail
5310+ - xxhash < 0 # compile fail
5311+ - universe-instances-base < 0 # deprecated
5312+ - universe-instances-trans < 0 # deprecated
5313+
5314+ "GHC upper bounds":
5315+ # Need to always match the version shipped with GHC
5316+ - Win32 == 2.12.0.1
5317+
5318+ # Section for packages that have been mass-disabled due to
5319+ # compilation failures, e.g. after we upgrade GHC. Every package
5320+ # should have a `< 0` constraint.
5321+ #
5322+ # These constraints can (should?) be moved under the maintainers
5323+ # name, but please add a "compile fail" comment to them there so
5324+ # it's clear that they must be built if we want to confirm that
5325+ # they are working.
5326+ "Compilation failures":
5327+ - Fin < 0 # 0.2.9.0 `@' not in scope
5328+ - HDBC-mysql < 0 # 0.7.1.0
5329+ - Spock-core < 0 # 0.14.0.0
5330+ - Workflow < 0 # 0.8.3
5331+ - accuerr < 0 # 0.2.0.2
5332+ - aeson-lens < 0 # 0.5.0.0
5333+ - auto < 0 # 0.4.3.1
5334+ - aws-xray-client < 0 # 0.1.0.1
5335+ - backprop < 0 # 0.2.6.4
5336+ - binary-ext < 0 # 2.0.4
5337+ - bins < 0 # 0.1.2.0
5338+ - bitcoin-script < 0 # 0.11.1
5339+ - btrfs < 0 # 0.2.0.0
5340+ - bv-little < 0 # 1.1.1 - can't reproduce locally: No instance for (Eq BigNat)
5341+ - cabal-debian < 0 # 5.1
5342+ - cabal-toolkit < 0 # 0.0.7
5343+ - chaselev-deque < 0 # 0.5.0.5
5344+ - compdata < 0 # 0.12.1
5345+ - courier < 0 # 0.1.1.5
5346+ - cql < 0 # 4.0.3
5347+ - crypto-numbers < 0 # 0.2.7
5348+ - cuckoo-filter < 0 # 0.2.0.2 benchmarks are an exe
5349+ - derive-topdown < 0 # 0.0.2.2
5350+ - distributed-closure < 0 # 0.4.2.0
5351+ - djinn-ghc < 0 # 0.0.2.3
5352+ - drinkery < 0 # 0.4
5353+ - enum-subset-generate < 0 # 0.1.0.0
5354+ - essence-of-live-coding-quickcheck < 0 # 0.2.5
5355+ - etcd < 0 # 1.0.5
5356+ - farmhash < 0 # 0.1.0.5
5357+ - eve < 0 # 0.1.9.0
5358+ - eventsource-store-specs < 0 # 1.2.1
5359+ - exinst < 0 # 0.8
5360+ - ftp-client-conduit < 0 # 0.5.0.5
5361+ - giphy-api < 0 # 0.7.0.0 https://github.com/passy/giphy-api/pull/19
5362+ - gluturtle < 0 # 0.0.58.1
5363+ - haskell-import-graph < 0 # 1.0.4
5364+ - haskell-spacegoo < 0 # 0.2.0.1
5365+ - haskoin-node < 0 # libsecp256k1
5366+ - haxl < 0 # 2.3.0.0
5367+ - hbeanstalk < 0 # 0.2.4
5368+ - heterocephalus < 0 # 1.0.5.4
5369+ - hexml-lens < 0 # 0.2.1
5370+ - hexstring < 0 # 0.11.1
5371+ - hs-functors < 0 # 0.1.7.1
5372+ - hschema < 0 # 0.0.1.1
5373+ - hstatsd < 0 # 0.1
5374+ - interpolator < 0 # 1.1.0.2
5375+ - io-choice < 0 # 0.0.7
5376+ - katydid < 0 # 0.4.0.2 MonadFail
5377+ - kdt < 0 # 0.2.4 https://github.com/giogadi/kdt/issues/5
5378+ - lens-typelevel < 0 # 0.1.1.0
5379+ - llvm-hs < 0 # llvm-config
5380+ - llvm-hs-pretty < 0 # 0.9.0.0
5381+ - machines-binary < 0 # 7.0.0.0
5382+ - machines-io < 0 # 7.0.0.0
5383+ - marvin-interpolate < 0 # 1.1.2
5384+ - mltool < 0 # 0.2.0.1
5385+ - moesocks < 0 # 1.0.1.0
5386+ - monad-recorder < 0 # 0.1.1
5387+ - monad-unlift < 0 # 0.2.0
5388+ - murmur < 0 # 0.0.0.2
5389+ - n2o-protocols < 0 # 0.11.2
5390+ - nvim-hs-contrib < 0 # 2.0.0.0
5391+ - odbc < 0 # odbc
5392+ - open-witness < 0 # 0.5
5393+ - pencil < 0 # 1.0.1
5394+ - pipes-aeson < 0 # 0.4.1.8
5395+ - pipes-binary < 0 # 0.4.3
5396+ - pipes-network < 0 # 0.6.5
5397+ - pipes-text < 0 # 1.0.0
5398+ - pkcs10 < 0 # 0.2.0.0
5399+ - planb-token-introspection < 0 # 0.1.4.0
5400+ - postgresql-transactional < 0 # 1.1.1
5401+ - raaz < 0 # 0.3.6 multiple libraries
5402+ - regex-compat-tdfa < 0 # 0.95.1.4
5403+ - rhine < 0 # 0.7.0
5404+ - rose-trees < 0 # compilation seems to hang?
5405+ - sdl2-gfx < 0 # SDL2_gfx
5406+ - sdl2-image < 0 # SDL2_image
5407+ - sdl2-mixer < 0 # SDL2_mixer
5408+ - sessiontypes < 0 # 0.1.2
5409+ - simplistic-generics < 0 # 2.0.0
5410+ - slack-api < 0 # 0.12
5411+ - squeal-postgresql < 0 # 0.8.1.1
5412+ - stm-stats < 0 # 0.2.0.0
5413+ - sydtest-persistent-sqlite < 0 # 0.2.0.0
5414+ - text-region < 0 # 0.3.1.0
5415+ - th-data-compat < 0 # 0.1.0.0
5416+ - throttle-io-stream < 0 # 0.2.0.1
5417+ - throwable-exceptions < 0 # 0.1.0.9
5418+ - thyme < 0 # 0.3.5.5 unknown argument --cpp
5419+ - time-qq < 0 # 0.0.1.0
5420+ - timemap < 0 # 0.0.7 https://github.com/athanclark/timemap/issues/1
5421+ - tintin < 0 # 1.10.1
5422+ - turtle-options < 0 # 0.1.0.4
5423+ - type-assertions < 0 # 0.1.0.0
5424+ - typecheck-plugin-nat-simple < 0 # 0.1.0.2
5425+ - ulid < 0 # 0.3.0.0
5426+ - uncertain < 0 # 0.3.1.0
5427+ - unordered-intmap < 0 # 0.1.1
5428+ - users-persistent < 0 # 0.5.0.2
5429+ - wai-predicates < 0 # 1.0.0
5430+ - webex-teams-pipes < 0 # 0.2.0.1
5431+ - websockets-rpc < 0 # 0.7.0
5432+ - word24 < 0 # 2.0.1
5433+ - xls < 0 # 0.1.3 gcc failed
5434+ - xml-conduit-parse < 0 # 0.3.1.2
5435+ - xml-lens < 0 # 0.3
5436+ - xturtle < 0 # xft
5437+ - yeshql-hdbc < 0 # 4.2.0.0
5438+
5439+
5440+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
5441+ #
5442+ # This section is meant for libraries and executables that have
5443+ # bene disabled due to bounds issues, there is a separate section
5444+ # for compilation failures as we need to build those packages to
5445+ # verify if they have been fixeq.
5446+ "Library and exe bounds failures":
5447+ - BiobaseHTTP < 0 # tried BiobaseHTTP-1.2.0, but its *library* does not support: network-3.1.2.7
5448+ - BlastHTTP < 0 # tried BlastHTTP-1.4.2, but its *library* does not support: network-3.1.2.7
5449+ - Chart-cairo < 0 # tried Chart-cairo-1.9.3, but its *library* requires the disabled package: cairo
5450+ - Chart-diagrams < 0 # tried Chart-diagrams-1.9.3, but its *library* does not support: SVGFonts-1.8.0.1
5451+ - EntrezHTTP < 0 # tried EntrezHTTP-1.0.4, but its *library* requires the disabled package: biocore
5452+ - FPretty < 0 # tried FPretty-1.1, but its *library* does not support: base-4.15.1.0
5453+ - GPipe < 0 # tried GPipe-2.2.5, but its *library* does not support: linear-1.21.8
5454+ - Genbank < 0 # tried Genbank-1.0.3, but its *library* requires the disabled package: biocore
5455+ - H < 0 # tried H-0.9.0.1, but its *executable* requires the disabled package: inline-r
5456+ - HaskellNet < 0 # tried HaskellNet-0.6, but its *library* does not support: base-4.15.1.0
5457+ - HaskellNet-SSL < 0 # tried HaskellNet-SSL-0.3.4.4, but its *library* requires the disabled package: HaskellNet
5458+ - Hoed < 0 # tried Hoed-0.5.1, but its *library* requires the disabled package: regex-tdfa-text
5459+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: fast-logger-3.1.1
5460+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: optparse-applicative-0.16.1.0
5461+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: IPv6Addr-2.0.4
5462+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: aeson-1.5.6.0
5463+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: attoparsec-0.14.4
5464+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: hedis-0.15.0
5465+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: unordered-containers-0.2.16.0
5466+ - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: attoparsec-0.14.4
5467+ - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: text-show-3.9.6
5468+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: Workflow
5469+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: monadloc
5470+ - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: pwstore-fast
5471+ - MapWith < 0 # tried MapWith-0.2.0.0, but its *library* does not support: base-4.15.1.0
5472+ - Network-NineP < 0 # tried Network-NineP-0.4.7.1, but its *library* requires the disabled package: mstate
5473+ - NoTrace < 0 # tried NoTrace-0.3.0.4, but its *library* does not support: base-4.15.1.0
5474+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseBlast-0.3.3.0
5475+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseFasta-0.4.0.1
5476+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseHTTP-1.2.0
5477+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseTypes-0.2.1.0
5478+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: aeson-1.5.6.0
5479+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: network-3.1.2.7
5480+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* requires the disabled package: hierarchical-clustering
5481+ - Spock < 0 # tried Spock-0.14.0.0, but its *library* requires the disabled package: Spock-core
5482+ - Spock-api-server < 0 # tried Spock-api-server-0.14.0.0, but its *library* requires the disabled package: Spock-core
5483+ - Spock-lucid < 0 # tried Spock-lucid-0.4.0.1, but its *library* requires the disabled package: Spock
5484+ - Spock-worker < 0 # tried Spock-worker-0.3.1.0, but its *library* requires the disabled package: Spock
5485+ - Strafunski-StrategyLib < 0 # tried Strafunski-StrategyLib-5.0.1.0, but its *library* does not support: base-4.15.1.0
5486+ - TotalMap < 0 # tried TotalMap-0.1.1.1, but its *library* does not support: base-4.15.1.0
5487+ - TotalMap < 0 # tried TotalMap-0.1.1.1, but its *library* does not support: lens-5.0.1
5488+ - YampaSynth < 0 # tried YampaSynth-0.2, but its *executable* requires the disabled package: Yampa
5489+ - accelerate < 0 # tried accelerate-1.3.0.0, but its *library* does not support: base-4.15.1.0
5490+ - accelerate-arithmetic < 0 # tried accelerate-arithmetic-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5491+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate
5492+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5493+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5494+ - accelerate-bignum < 0 # tried accelerate-bignum-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5495+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate
5496+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5497+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5498+ - accelerate-blas < 0 # tried accelerate-blas-0.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5499+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-bmp
5500+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-repa
5501+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: accelerate-io-vector
5502+ - accelerate-examples < 0 # tried accelerate-examples-1.3.0.0, but its *executable* requires the disabled package: normaldistribution
5503+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate
5504+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm
5505+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm-native
5506+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: accelerate-llvm-ptx
5507+ - accelerate-fft < 0 # tried accelerate-fft-1.3.0.0, but its *library* requires the disabled package: lens-accelerate
5508+ - accelerate-fftw < 0 # tried accelerate-fftw-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5509+ - accelerate-fftw < 0 # tried accelerate-fftw-1.0.0.1, but its *library* does not support: accelerate-io-1.3.0.0
5510+ - accelerate-fourier < 0 # tried accelerate-fourier-1.0.0.5, but its *library* does not support: accelerate-1.3.0.0
5511+ - accelerate-fourier < 0 # tried accelerate-fourier-1.0.0.5, but its *library* does not support: containers-0.6.4.1
5512+ - accelerate-io < 0 # tried accelerate-io-1.3.0.0, but its *library* requires the disabled package: accelerate
5513+ - accelerate-llvm < 0 # tried accelerate-llvm-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5514+ - accelerate-llvm-native < 0 # tried accelerate-llvm-native-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5515+ - accelerate-llvm-ptx < 0 # tried accelerate-llvm-ptx-1.3.0.0, but its *library* requires the disabled package: llvm-hs
5516+ - accelerate-utility < 0 # tried accelerate-utility-1.0.0.1, but its *library* does not support: accelerate-1.3.0.0
5517+ - aeson-diff < 0 # tried aeson-diff-1.1.0.9, but its *library* does not support: base-4.15.1.0
5518+ - aeson-injector < 0 # tried aeson-injector-1.1.5.0, but its *library* does not support: lens-5.0.1
5519+ - aeson-picker < 0 # tried aeson-picker-0.1.0.5, but its *library* does not support: lens-5.0.1
5520+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: base64-bytestring-1.2.1.0
5521+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: bytestring-trie-0.2.6
5522+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: semigroups-0.19.2
5523+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-3.2.3
5524+ - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-extra-3.1.8
5525+ - alg < 0 # tried alg-0.2.13.1, but its *library* requires the disabled package: util
5526+ - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: http-client-0.7.10
5527+ - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: unliftio-core-0.2.0.1
5528+ - amazonka-apigateway < 0 # tried amazonka-apigateway-1.6.1, but its *library* requires the disabled package: amazonka-core
5529+ - amazonka-application-autoscaling < 0 # tried amazonka-application-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
5530+ - amazonka-appstream < 0 # tried amazonka-appstream-1.6.1, but its *library* requires the disabled package: amazonka-core
5531+ - amazonka-athena < 0 # tried amazonka-athena-1.6.1, but its *library* requires the disabled package: amazonka-core
5532+ - amazonka-autoscaling < 0 # tried amazonka-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
5533+ - amazonka-budgets < 0 # tried amazonka-budgets-1.6.1, but its *library* requires the disabled package: amazonka-core
5534+ - amazonka-certificatemanager < 0 # tried amazonka-certificatemanager-1.6.1, but its *library* requires the disabled package: amazonka-core
5535+ - amazonka-cloudformation < 0 # tried amazonka-cloudformation-1.6.1, but its *library* requires the disabled package: amazonka-core
5536+ - amazonka-cloudfront < 0 # tried amazonka-cloudfront-1.6.1, but its *library* requires the disabled package: amazonka-core
5537+ - amazonka-cloudhsm < 0 # tried amazonka-cloudhsm-1.6.1, but its *library* requires the disabled package: amazonka-core
5538+ - amazonka-cloudsearch < 0 # tried amazonka-cloudsearch-1.6.1, but its *library* requires the disabled package: amazonka-core
5539+ - amazonka-cloudsearch-domains < 0 # tried amazonka-cloudsearch-domains-1.6.1, but its *library* requires the disabled package: amazonka-core
5540+ - amazonka-cloudtrail < 0 # tried amazonka-cloudtrail-1.6.1, but its *library* requires the disabled package: amazonka-core
5541+ - amazonka-cloudwatch < 0 # tried amazonka-cloudwatch-1.6.1, but its *library* requires the disabled package: amazonka-core
5542+ - amazonka-cloudwatch-events < 0 # tried amazonka-cloudwatch-events-1.6.1, but its *library* requires the disabled package: amazonka-core
5543+ - amazonka-cloudwatch-logs < 0 # tried amazonka-cloudwatch-logs-1.6.1, but its *library* requires the disabled package: amazonka-core
5544+ - amazonka-codebuild < 0 # tried amazonka-codebuild-1.6.1, but its *library* requires the disabled package: amazonka-core
5545+ - amazonka-codecommit < 0 # tried amazonka-codecommit-1.6.1, but its *library* requires the disabled package: amazonka-core
5546+ - amazonka-codedeploy < 0 # tried amazonka-codedeploy-1.6.1, but its *library* requires the disabled package: amazonka-core
5547+ - amazonka-codepipeline < 0 # tried amazonka-codepipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
5548+ - amazonka-cognito-identity < 0 # tried amazonka-cognito-identity-1.6.1, but its *library* requires the disabled package: amazonka-core
5549+ - amazonka-cognito-idp < 0 # tried amazonka-cognito-idp-1.6.1, but its *library* requires the disabled package: amazonka-core
5550+ - amazonka-cognito-sync < 0 # tried amazonka-cognito-sync-1.6.1, but its *library* requires the disabled package: amazonka-core
5551+ - amazonka-config < 0 # tried amazonka-config-1.6.1, but its *library* requires the disabled package: amazonka-core
5552+ - amazonka-core < 0 # tried amazonka-core-1.6.1, but its *library* does not support: http-client-0.7.10
5553+ - amazonka-datapipeline < 0 # tried amazonka-datapipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
5554+ - amazonka-devicefarm < 0 # tried amazonka-devicefarm-1.6.1, but its *library* requires the disabled package: amazonka-core
5555+ - amazonka-directconnect < 0 # tried amazonka-directconnect-1.6.1, but its *library* requires the disabled package: amazonka-core
5556+ - amazonka-discovery < 0 # tried amazonka-discovery-1.6.1, but its *library* requires the disabled package: amazonka-core
5557+ - amazonka-dms < 0 # tried amazonka-dms-1.6.1, but its *library* requires the disabled package: amazonka-core
5558+ - amazonka-ds < 0 # tried amazonka-ds-1.6.1, but its *library* requires the disabled package: amazonka-core
5559+ - amazonka-dynamodb < 0 # tried amazonka-dynamodb-1.6.1, but its *library* requires the disabled package: amazonka-core
5560+ - amazonka-dynamodb-streams < 0 # tried amazonka-dynamodb-streams-1.6.1, but its *library* requires the disabled package: amazonka-core
5561+ - amazonka-ecr < 0 # tried amazonka-ecr-1.6.1, but its *library* requires the disabled package: amazonka-core
5562+ - amazonka-ecs < 0 # tried amazonka-ecs-1.6.1, but its *library* requires the disabled package: amazonka-core
5563+ - amazonka-efs < 0 # tried amazonka-efs-1.6.1, but its *library* requires the disabled package: amazonka-core
5564+ - amazonka-elasticache < 0 # tried amazonka-elasticache-1.6.1, but its *library* requires the disabled package: amazonka-core
5565+ - amazonka-elasticbeanstalk < 0 # tried amazonka-elasticbeanstalk-1.6.1, but its *library* requires the disabled package: amazonka-core
5566+ - amazonka-elasticsearch < 0 # tried amazonka-elasticsearch-1.6.1, but its *library* requires the disabled package: amazonka-core
5567+ - amazonka-elastictranscoder < 0 # tried amazonka-elastictranscoder-1.6.1, but its *library* requires the disabled package: amazonka-core
5568+ - amazonka-elb < 0 # tried amazonka-elb-1.6.1, but its *library* requires the disabled package: amazonka-core
5569+ - amazonka-elbv2 < 0 # tried amazonka-elbv2-1.6.1, but its *library* requires the disabled package: amazonka-core
5570+ - amazonka-emr < 0 # tried amazonka-emr-1.6.1, but its *library* requires the disabled package: amazonka-core
5571+ - amazonka-gamelift < 0 # tried amazonka-gamelift-1.6.1, but its *library* requires the disabled package: amazonka-core
5572+ - amazonka-glacier < 0 # tried amazonka-glacier-1.6.1, but its *library* requires the disabled package: amazonka-core
5573+ - amazonka-glue < 0 # tried amazonka-glue-1.6.1, but its *library* requires the disabled package: amazonka-core
5574+ - amazonka-health < 0 # tried amazonka-health-1.6.1, but its *library* requires the disabled package: amazonka-core
5575+ - amazonka-iam < 0 # tried amazonka-iam-1.6.1, but its *library* requires the disabled package: amazonka-core
5576+ - amazonka-importexport < 0 # tried amazonka-importexport-1.6.1, but its *library* requires the disabled package: amazonka-core
5577+ - amazonka-inspector < 0 # tried amazonka-inspector-1.6.1, but its *library* requires the disabled package: amazonka-core
5578+ - amazonka-iot < 0 # tried amazonka-iot-1.6.1, but its *library* requires the disabled package: amazonka-core
5579+ - amazonka-iot-dataplane < 0 # tried amazonka-iot-dataplane-1.6.1, but its *library* requires the disabled package: amazonka-core
5580+ - amazonka-kinesis < 0 # tried amazonka-kinesis-1.6.1, but its *library* requires the disabled package: amazonka-core
5581+ - amazonka-kinesis-analytics < 0 # tried amazonka-kinesis-analytics-1.6.1, but its *library* requires the disabled package: amazonka-core
5582+ - amazonka-kinesis-firehose < 0 # tried amazonka-kinesis-firehose-1.6.1, but its *library* requires the disabled package: amazonka-core
5583+ - amazonka-kms < 0 # tried amazonka-kms-1.6.1, but its *library* requires the disabled package: amazonka-core
5584+ - amazonka-lambda < 0 # tried amazonka-lambda-1.6.1, but its *library* requires the disabled package: amazonka-core
5585+ - amazonka-lightsail < 0 # tried amazonka-lightsail-1.6.1, but its *library* requires the disabled package: amazonka-core
5586+ - amazonka-marketplace-analytics < 0 # tried amazonka-marketplace-analytics-1.6.1, but its *library* requires the disabled package: amazonka-core
5587+ - amazonka-marketplace-metering < 0 # tried amazonka-marketplace-metering-1.6.1, but its *library* requires the disabled package: amazonka-core
5588+ - amazonka-ml < 0 # tried amazonka-ml-1.6.1, but its *library* requires the disabled package: amazonka-core
5589+ - amazonka-opsworks < 0 # tried amazonka-opsworks-1.6.1, but its *library* requires the disabled package: amazonka-core
5590+ - amazonka-opsworks-cm < 0 # tried amazonka-opsworks-cm-1.6.1, but its *library* requires the disabled package: amazonka-core
5591+ - amazonka-pinpoint < 0 # tried amazonka-pinpoint-1.6.1, but its *library* requires the disabled package: amazonka-core
5592+ - amazonka-polly < 0 # tried amazonka-polly-1.6.1, but its *library* requires the disabled package: amazonka-core
5593+ - amazonka-rds < 0 # tried amazonka-rds-1.6.1, but its *library* requires the disabled package: amazonka-core
5594+ - amazonka-redshift < 0 # tried amazonka-redshift-1.6.1, but its *library* requires the disabled package: amazonka-core
5595+ - amazonka-rekognition < 0 # tried amazonka-rekognition-1.6.1, but its *library* requires the disabled package: amazonka-core
5596+ - amazonka-route53 < 0 # tried amazonka-route53-1.6.1, but its *library* requires the disabled package: amazonka-core
5597+ - amazonka-route53-domains < 0 # tried amazonka-route53-domains-1.6.1, but its *library* requires the disabled package: amazonka-core
5598+ - amazonka-s3 < 0 # tried amazonka-s3-1.6.1, but its *library* requires the disabled package: amazonka-core
5599+ - amazonka-sdb < 0 # tried amazonka-sdb-1.6.1, but its *library* requires the disabled package: amazonka-core
5600+ - amazonka-servicecatalog < 0 # tried amazonka-servicecatalog-1.6.1, but its *library* requires the disabled package: amazonka-core
5601+ - amazonka-ses < 0 # tried amazonka-ses-1.6.1, but its *library* requires the disabled package: amazonka-core
5602+ - amazonka-shield < 0 # tried amazonka-shield-1.6.1, but its *library* requires the disabled package: amazonka-core
5603+ - amazonka-sms < 0 # tried amazonka-sms-1.6.1, but its *library* requires the disabled package: amazonka-core
5604+ - amazonka-snowball < 0 # tried amazonka-snowball-1.6.1, but its *library* requires the disabled package: amazonka-core
5605+ - amazonka-sns < 0 # tried amazonka-sns-1.6.1, but its *library* requires the disabled package: amazonka-core
5606+ - amazonka-sqs < 0 # tried amazonka-sqs-1.6.1, but its *library* requires the disabled package: amazonka-core
5607+ - amazonka-ssm < 0 # tried amazonka-ssm-1.6.1, but its *library* requires the disabled package: amazonka-core
5608+ - amazonka-stepfunctions < 0 # tried amazonka-stepfunctions-1.6.1, but its *library* requires the disabled package: amazonka-core
5609+ - amazonka-storagegateway < 0 # tried amazonka-storagegateway-1.6.1, but its *library* requires the disabled package: amazonka-core
5610+ - amazonka-sts < 0 # tried amazonka-sts-1.6.1, but its *library* requires the disabled package: amazonka-core
5611+ - amazonka-support < 0 # tried amazonka-support-1.6.1, but its *library* requires the disabled package: amazonka-core
5612+ - amazonka-swf < 0 # tried amazonka-swf-1.6.1, but its *library* requires the disabled package: amazonka-core
5613+ - amazonka-test < 0 # tried amazonka-test-1.6.1, but its *library* requires the disabled package: amazonka-core
5614+ - amazonka-waf < 0 # tried amazonka-waf-1.6.1, but its *library* requires the disabled package: amazonka-core
5615+ - amazonka-workspaces < 0 # tried amazonka-workspaces-1.6.1, but its *library* requires the disabled package: amazonka-core
5616+ - amazonka-xray < 0 # tried amazonka-xray-1.6.1, but its *library* requires the disabled package: amazonka-core
5617+ - ansigraph < 0 # tried ansigraph-0.3.0.5, but its *library* does not support: ansi-terminal-0.11.1
5618+ - ansigraph < 0 # tried ansigraph-0.3.0.5, but its *library* does not support: base-4.15.1.0
5619+ - antiope-core < 0 # tried antiope-core-7.5.3, but its *library* requires the disabled package: amazonka
5620+ - antiope-core < 0 # tried antiope-core-7.5.3, but its *library* requires the disabled package: amazonka-core
5621+ - antiope-dynamodb < 0 # tried antiope-dynamodb-7.5.3, but its *library* requires the disabled package: amazonka
5622+ - antiope-dynamodb < 0 # tried antiope-dynamodb-7.5.3, but its *library* requires the disabled package: amazonka-core
5623+ - antiope-messages < 0 # tried antiope-messages-7.5.3, but its *library* requires the disabled package: amazonka
5624+ - antiope-messages < 0 # tried antiope-messages-7.5.3, but its *library* requires the disabled package: amazonka-core
5625+ - antiope-s3 < 0 # tried antiope-s3-7.5.3, but its *library* requires the disabled package: amazonka
5626+ - antiope-s3 < 0 # tried antiope-s3-7.5.3, but its *library* requires the disabled package: amazonka-core
5627+ - antiope-sns < 0 # tried antiope-sns-7.5.3, but its *library* requires the disabled package: amazonka
5628+ - antiope-sns < 0 # tried antiope-sns-7.5.3, but its *library* requires the disabled package: amazonka-core
5629+ - antiope-sqs < 0 # tried antiope-sqs-7.5.3, but its *library* requires the disabled package: amazonka
5630+ - antiope-sqs < 0 # tried antiope-sqs-7.5.3, but its *library* requires the disabled package: amazonka-core
5631+ - aos-signature < 0 # tried aos-signature-0.1.1, but its *library* requires the disabled package: protolude
5632+ - arbor-postgres < 0 # tried arbor-postgres-0.0.5, but its *library* does not support: lens-5.0.1
5633+ - arbor-postgres < 0 # tried arbor-postgres-0.0.5, but its *library* does not support: optparse-applicative-0.16.1.0
5634+ - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: haskell-src-exts-1.23.1
5635+ - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: template-haskell-2.17.0.0
5636+ - asif < 0 # tried asif-6.0.4, but its *library* requires the disabled package: thyme
5637+ - async-timer < 0 # tried async-timer-0.2.0.0, but its *library* does not support: unliftio-core-0.2.0.1
5638+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: attoparsec-0.14.4
5639+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: base-4.15.1.0
5640+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: cryptonite-0.29
5641+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: memory-0.16.0
5642+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: template-haskell-2.17.0.0
5643+ - avers-api < 0 # tried avers-api-0.1.0, but its *library* requires the disabled package: avers
5644+ - avers-server < 0 # tried avers-server-0.1.0.1, but its *library* requires the disabled package: avers
5645+ - avwx < 0 # tried avwx-0.3.0.3, but its *library* does not support: lens-5.0.1
5646+ - aws-xray-client-wai < 0 # tried aws-xray-client-wai-0.1.0.1, but its *library* requires the disabled package: aws-xray-client
5647+ - axel < 0 # tried axel-0.0.12, but its *library* does not support: base-4.15.1.0
5648+ - axiom < 0 # tried axiom-0.4.7, but its *library* requires the disabled package: transient-universe
5649+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: aeson-1.5.6.0
5650+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: hspec-2.8.5
5651+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: lens-5.0.1
5652+ - b9 < 0 # tried b9-3.2.0, but its *library* does not support: shake-0.19.6
5653+ - b9 < 0 # tried b9-3.2.0, but its *library* requires the disabled package: posix-pty
5654+ - b9 < 0 # tried b9-3.2.0, but its *library* requires the disabled package: template
5655+ - base-noprelude < 0 # tried base-noprelude-4.13.0.0, but its *library* does not support: base-4.15.1.0
5656+ - bcp47 < 0 # tried bcp47-0.2.0.5, but its *library* requires the disabled package: country
5657+ - bcp47-orphans < 0 # tried bcp47-orphans-0.1.0.4, but its *library* requires the disabled package: bcp47
5658+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: aeson-1.5.6.0
5659+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: beam-core-0.9.2.0
5660+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: hashable-1.3.5.0
5661+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: mysql-0.2.1
5662+ - bench-show < 0 # tried bench-show-0.3.1, but its *library* does not support: statistics-0.16.0.1
5663+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: brick-0.66.1
5664+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: bytestring-0.10.12.1
5665+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: directory-1.3.6.2
5666+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: filepath-1.4.2.1
5667+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: lens-5.0.1
5668+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: process-1.6.13.2
5669+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: protolude-0.3.0
5670+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: text-1.2.5.0
5671+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: time-1.9.3
5672+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: typed-process-0.2.8.0
5673+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: vector-0.12.3.1
5674+ - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: vty-5.33
5675+ - binary-bits < 0 # tried binary-bits-0.5, but its *library* does not support: base-4.15.1.0
5676+ - bioace < 0 # tried bioace-0.0.1, but its *library* requires the disabled package: biocore
5677+ - bioalign < 0 # tried bioalign-0.0.5, but its *library* requires the disabled package: biocore
5678+ - biocore < 0 # tried biocore-0.3.1, but its *library* does not support: base-4.15.1.0
5679+ - biocore < 0 # tried biocore-0.3.1, but its *library* requires the disabled package: stringable
5680+ - biofasta < 0 # tried biofasta-0.0.3, but its *library* requires the disabled package: biocore
5681+ - biofastq < 0 # tried biofastq-0.1, but its *library* requires the disabled package: biocore
5682+ - biopsl < 0 # tried biopsl-0.4, but its *library* requires the disabled package: biocore
5683+ - bitcoin-api < 0 # tried bitcoin-api-0.12.1, but its *library* requires the disabled package: bitcoin-script
5684+ - bitcoin-api < 0 # tried bitcoin-api-0.12.1, but its *library* requires the disabled package: hexstring
5685+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-api
5686+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-block
5687+ - bitcoin-api-extra < 0 # tried bitcoin-api-extra-0.9.1, but its *library* requires the disabled package: bitcoin-tx
5688+ - bitcoin-block < 0 # tried bitcoin-block-0.13.1, but its *library* requires the disabled package: hexstring
5689+ - bitcoin-tx < 0 # tried bitcoin-tx-0.13.1, but its *library* requires the disabled package: bitcoin-script
5690+ - bitcoin-tx < 0 # tried bitcoin-tx-0.13.1, but its *library* requires the disabled package: hexstring
5691+ - bitcoin-types < 0 # tried bitcoin-types-0.9.2, but its *library* requires the disabled package: hexstring
5692+ - blastxml < 0 # tried blastxml-0.3.2, but its *library* requires the disabled package: biocore
5693+ - blosum < 0 # tried blosum-0.1.1.4, but its *executable* requires the disabled package: pipes-text
5694+ - boolean-normal-forms < 0 # tried boolean-normal-forms-0.0.1.1, but its *library* does not support: base-4.15.1.0
5695+ - boundingboxes < 0 # tried boundingboxes-0.2.3, but its *library* does not support: lens-5.0.1
5696+ - brittany < 0 # tried brittany-0.14.0.2, but its *library* does not support: aeson-1.5.6.0
5697+ - brittany < 0 # tried brittany-0.14.0.2, but its *library* does not support: yaml-0.11.6.0
5698+ - buchhaltung < 0 # tried buchhaltung-0.0.7, but its *library* requires the disabled package: regex-tdfa-text
5699+ - bulletproofs < 0 # tried bulletproofs-1.1.0, but its *library* requires the disabled package: elliptic-curve
5700+ - butcher < 0 # tried butcher-1.3.3.2, but its *library* does not support: base-4.15.1.0
5701+ - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: Cabal-3.4.1.0
5702+ - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: base-4.15.1.0
5703+ - cairo < 0 # tried cairo-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5704+ - category < 0 # tried category-0.2.5.0, but its *library* requires the disabled package: alg
5705+ - cereal-time < 0 # tried cereal-time-0.1.0.0, but its *library* does not support: time-1.9.3
5706+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-1.5.6.0
5707+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-casing-0.2.0.0
5708+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: connection-0.3.1
5709+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-api-data-0.4.3
5710+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-client-0.7.10
5711+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: req-3.9.2
5712+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytebuild
5713+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: byteslice
5714+ - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytesmith
5715+ - chronos-bench < 0 # tried chronos-bench-0.2.0.2, but its *library* requires the disabled package: chronos
5716+ - clang-compilation-database < 0 # tried clang-compilation-database-0.1.0.1, but its *library* does not support: base-4.15.1.0
5717+ - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: base-4.15.1.0
5718+ - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: template-haskell-2.17.0.0
5719+ - clock-extras < 0 # tried clock-extras-0.1.0.2, but its *library* does not support: clock-0.8.2
5720+ - cmark-highlight < 0 # tried cmark-highlight-0.2.0.0, but its *library* does not support: cmark-0.6
5721+ - co-log-concurrent < 0 # tried co-log-concurrent-0.5.1.0, but its *library* requires the disabled package: co-log-core
5722+ - codec < 0 # tried codec-0.2.1, but its *library* requires the disabled package: binary-bits
5723+ - colour-accelerate < 0 # tried colour-accelerate-0.4.0.0, but its *library* requires the disabled package: accelerate
5724+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: generic-deriving-1.14.1
5725+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: profunctors-5.6.2
5726+ - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
5727+ - composite-aeson-path < 0 # tried composite-aeson-path-0.7.5.0, but its *library* does not support: path-0.9.2
5728+ - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: composite-aeson
5729+ - composite-aeson-throw < 0 # tried composite-aeson-throw-0.1.0.0, but its *library* requires the disabled package: composite-aeson
5730+ - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: profunctors-5.6.2
5731+ - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
5732+ - composite-binary < 0 # tried composite-binary-0.7.5.0, but its *library* requires the disabled package: composite-base
5733+ - composite-ekg < 0 # tried composite-ekg-0.7.5.0, but its *library* requires the disabled package: composite-base
5734+ - composite-ekg < 0 # tried composite-ekg-0.7.5.0, but its *library* requires the disabled package: ekg-core
5735+ - composite-hashable < 0 # tried composite-hashable-0.7.5.0, but its *library* requires the disabled package: composite-base
5736+ - composite-tuple < 0 # tried composite-tuple-0.1.2.0, but its *library* requires the disabled package: composite-base
5737+ - composite-xstep < 0 # tried composite-xstep-0.1.0.0, but its *library* requires the disabled package: composite-base
5738+ - compressed < 0 # tried compressed-3.11, but its *library* does not support: containers-0.6.4.1
5739+ - compressed < 0 # tried compressed-3.11, but its *library* does not support: hashable-1.3.5.0
5740+ - conduit-throttle < 0 # tried conduit-throttle-0.3.1.0, but its *library* requires the disabled package: throttle-io-stream
5741+ - confcrypt < 0 # tried confcrypt-0.2.3.3, but its *library* does not support: optparse-applicative-0.16.1.0
5742+ - confcrypt < 0 # tried confcrypt-0.2.3.3, but its *library* requires the disabled package: crypto-pubkey-openssh
5743+ - conferer-hspec < 0 # tried conferer-hspec-1.1.0.0, but its *library* does not support: hspec-core-2.8.5
5744+ - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* does not support: conferer-1.1.0.0
5745+ - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* requires the disabled package: snap-server
5746+ - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: base-4.15.1.0
5747+ - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: megaparsec-9.2.0
5748+ - constraint < 0 # tried constraint-0.1.4.0, but its *library* requires the disabled package: category
5749+ - country < 0 # tried country-0.2.1, but its *library* does not support: attoparsec-0.14.4
5750+ - country < 0 # tried country-0.2.1, but its *library* does not support: base-4.15.1.0
5751+ - cql-io < 0 # tried cql-io-1.1.1, but its *library* requires the disabled package: cql
5752+ - crypto-pubkey < 0 # tried crypto-pubkey-0.2.8, but its *library* requires the disabled package: crypto-numbers
5753+ - cryptocipher < 0 # tried cryptocipher-0.6.2, but its *library* requires the disabled package: cipher-blowfish
5754+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: QuickCheck-2.14.2
5755+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: attoparsec-0.14.4
5756+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: simple-vec3-0.6.0.1
5757+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: strict-0.4.0.1
5758+ - css-syntax < 0 # tried css-syntax-0.1.0.0, but its *library* does not support: base-4.15.1.0
5759+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: Cabal-3.4.1.0
5760+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: attoparsec-0.14.4
5761+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: base-4.15.1.0
5762+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: constraints-0.13.2
5763+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: cryptonite-0.29
5764+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: memory-0.16.0
5765+ - darcs < 0 # tried darcs-2.16.4, but its *library* requires the disabled package: regex-compat-tdfa
5766+ - data-accessor-template < 0 # tried data-accessor-template-0.2.1.16, but its *library* does not support: template-haskell-2.17.0.0
5767+ - data-compat < 0 # tried data-compat-0.1.0.3, but its *library* does not support: base-4.15.1.0
5768+ - data-tree-print < 0 # tried data-tree-print-0.1.0.2, but its *library* does not support: base-4.15.1.0
5769+ - decidable < 0 # tried decidable-0.3.0.0, but its *library* requires the disabled package: functor-products
5770+ - deepseq-instances < 0 # tried deepseq-instances-0.1.0.1, but its *library* does not support: base-4.15.1.0
5771+ - dhall-lsp-server < 0 # tried dhall-lsp-server-1.0.17, but its *library* requires the disabled package: haskell-lsp
5772+ - dhall-nix < 0 # tried dhall-nix-1.1.23, but its *library* requires the disabled package: hnix
5773+ - diagrams-builder < 0 # tried diagrams-builder-0.8.0.5, but its *library* requires the disabled package: haskell-src-exts-simple
5774+ - diagrams-cairo < 0 # tried diagrams-cairo-1.4.1.1, but its *library* requires the disabled package: statestack
5775+ - diagrams-canvas < 0 # tried diagrams-canvas-1.4.1, but its *library* requires the disabled package: blank-canvas
5776+ - diagrams-canvas < 0 # tried diagrams-canvas-1.4.1, but its *library* requires the disabled package: statestack
5777+ - diagrams-gtk < 0 # tried diagrams-gtk-1.4, but its *library* requires the disabled package: gtk
5778+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: base-4.15.1.0
5779+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: containers-0.6.4.1
5780+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: diagrams-core-1.5.0
5781+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: lens-5.0.1
5782+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* does not support: optparse-applicative-0.16.1.0
5783+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* requires the disabled package: statestack
5784+ - diagrams-html5 < 0 # tried diagrams-html5-1.4.1, but its *library* requires the disabled package: static-canvas
5785+ - diagrams-postscript < 0 # tried diagrams-postscript-1.5.1, but its *library* requires the disabled package: statestack
5786+ - dialogflow-fulfillment < 0 # tried dialogflow-fulfillment-0.1.1.4, but its *library* does not support: base-4.15.1.0
5787+ - dice < 0 # tried dice-0.1.0.1, but its *library* requires the disabled package: random-fu
5788+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *executable* does not support: criterion-1.5.12.0
5789+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: attoparsec-0.14.4
5790+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: base-4.15.1.0
5791+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: containers-0.6.4.1
5792+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: exceptions-0.10.4
5793+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: time-1.9.3
5794+ - direct-rocksdb < 0 # tried direct-rocksdb-0.0.3, but its *library* does not support: Cabal-3.4.1.0
5795+ - direct-rocksdb < 0 # tried direct-rocksdb-0.0.3, but its *library* requires the disabled package: cabal-toolkit
5796+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: containers-0.6.4.1
5797+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: hashable-1.3.5.0
5798+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: random-1.2.1
5799+ - distributed-process < 0 # tried distributed-process-0.7.4, but its *library* does not support: stm-2.5.0.0
5800+ - distributed-process-lifted < 0 # tried distributed-process-lifted-0.3.0.1, but its *library* requires the disabled package: distributed-process
5801+ - distributed-process-monad-control < 0 # tried distributed-process-monad-control-0.5.1.3, but its *library* requires the disabled package: distributed-process
5802+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: containers-0.6.4.1
5803+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-3.1.2.7
5804+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-transport-tcp-0.8.0
5805+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* requires the disabled package: network-multicast
5806+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: network-3.1.2.7
5807+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: random-1.2.1
5808+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* requires the disabled package: rematch
5809+ - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: containers-0.6.4.1
5810+ - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: random-1.2.1
5811+ - diversity < 0 # tried diversity-0.8.1.0, but its *library* requires the disabled package: fasta
5812+ - docker < 0 # tried docker-0.6.0.6, but its *library* does not support: unliftio-core-0.2.0.1
5813+ - docker-build-cacher < 0 # tried docker-build-cacher-2.1.1, but its *library* does not support: language-docker-10.4.0
5814+ - dom-parser < 0 # tried dom-parser-3.1.0, but its *library* requires the disabled package: xml-lens
5815+ - drawille < 0 # tried drawille-0.1.2.0, but its *library* does not support: containers-0.6.4.1
5816+ - earcut < 0 # tried earcut-0.1.0.4, but its *library* does not support: base-4.15.1.0
5817+ - easytest < 0 # tried easytest-0.3, but its *library* does not support: hedgehog-1.0.5
5818+ - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: QuickCheck-2.14.2
5819+ - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: base-4.15.1.0
5820+ - effect-handlers < 0 # tried effect-handlers-0.1.0.8, but its *library* does not support: free-5.1.7
5821+ - egison < 0 # tried egison-4.1.3, but its *library* requires the disabled package: sweet-egison
5822+ - egison-pattern-src < 0 # tried egison-pattern-src-0.2.1.2, but its *library* does not support: parser-combinators-1.3.0
5823+ - egison-pattern-src-th-mode < 0 # tried egison-pattern-src-th-mode-0.2.1.2, but its *library* does not support: template-haskell-2.17.0.0
5824+ - ekg < 0 # tried ekg-0.4.0.15, but its *library* does not support: base-4.15.1.0
5825+ - ekg < 0 # tried ekg-0.4.0.15, but its *library* requires the disabled package: snap-server
5826+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: amazonka
5827+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: amazonka-core
5828+ - ekg-cloudwatch < 0 # tried ekg-cloudwatch-0.0.1.6, but its *library* requires the disabled package: ekg-core
5829+ - ekg-core < 0 # tried ekg-core-0.1.1.7, but its *library* does not support: base-4.15.1.0
5830+ - ekg-core < 0 # tried ekg-core-0.1.1.7, but its *library* does not support: ghc-prim-0.7.0
5831+ - ekg-json < 0 # tried ekg-json-0.1.0.6, but its *library* does not support: base-4.15.1.0
5832+ - ekg-statsd < 0 # tried ekg-statsd-0.2.5.0, but its *library* does not support: base-4.15.1.0
5833+ - ekg-wai < 0 # tried ekg-wai-0.1.0.3, but its *library* does not support: time-1.9.3
5834+ - elm-street < 0 # tried elm-street-0.1.0.4, but its *library* does not support: base-4.15.1.0
5835+ - epub-metadata < 0 # tried epub-metadata-4.5, but its *library* requires the disabled package: regex-compat-tdfa
5836+ - euler-tour-tree < 0 # tried euler-tour-tree-0.1.1.0, but its *library* requires the disabled package: Unique
5837+ - event < 0 # tried event-0.1.4, but its *library* does not support: containers-0.6.4.1
5838+ - event < 0 # tried event-0.1.4, but its *library* does not support: semigroups-0.19.2
5839+ - eventful-dynamodb < 0 # tried eventful-dynamodb-0.2.0, but its *library* requires the disabled package: amazonka
5840+ - eventful-postgresql < 0 # tried eventful-postgresql-0.2.0, but its *library* requires the disabled package: eventful-sql-common
5841+ - eventful-sql-common < 0 # tried eventful-sql-common-0.2.0, but its *library* does not support: persistent-template-2.12.0.0
5842+ - eventful-sqlite < 0 # tried eventful-sqlite-0.2.0, but its *library* requires the disabled package: eventful-sql-common
5843+ - eventsource-geteventstore-store < 0 # tried eventsource-geteventstore-store-1.2.1, but its *library* requires the disabled package: eventsource-store-specs
5844+ - exception-hierarchy < 0 # tried exception-hierarchy-0.1.0.4, but its *library* does not support: template-haskell-2.17.0.0
5845+ - fasta < 0 # tried fasta-0.10.4.2, but its *library* requires the disabled package: pipes-text
5846+ - fib < 0 # tried fib-0.1.0.1, but its *library* requires the disabled package: base-noprelude
5847+ - filecache < 0 # tried filecache-0.4.1, but its *library* requires the disabled package: strict-base-types
5848+ - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: BiobaseNewick
5849+ - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: hierarchical-clustering
5850+ - foldable1 < 0 # tried foldable1-0.1.0.0, but its *library* requires the disabled package: util
5851+ - friday < 0 # tried friday-0.2.3.1, but its *library* does not support: containers-0.6.4.1
5852+ - friday < 0 # tried friday-0.2.3.1, but its *library* requires the disabled package: ratio-int
5853+ - friday-juicypixels < 0 # tried friday-juicypixels-0.1.2.4, but its *library* requires the disabled package: friday
5854+ - fswatch < 0 # tried fswatch-0.1.0.6, but its *library* does not support: base-4.15.1.0
5855+ - fswatch < 0 # tried fswatch-0.1.0.6, but its *library* does not support: haskeline-0.8.2
5856+ - galois-field < 0 # tried galois-field-1.0.2, but its *library* does not support: poly-0.5.0.0
5857+ - galois-field < 0 # tried galois-field-1.0.2, but its *library* does not support: protolude-0.3.0
5858+ - gdax < 0 # tried gdax-0.6.0.0, but its *library* requires the disabled package: regex-tdfa-text
5859+ - generic-xmlpickler < 0 # tried generic-xmlpickler-0.1.0.6, but its *library* does not support: base-4.15.1.0
5860+ - generic-xmlpickler < 0 # tried generic-xmlpickler-0.1.0.6, but its *library* does not support: generic-deriving-1.14.1
5861+ - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: dhall-1.40.2
5862+ - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: ghc-9.0.2
5863+ - ghc-syb-utils < 0 # tried ghc-syb-utils-0.3.0.0, but its *library* does not support: ghc-9.0.2
5864+ - ghcjs-dom < 0 # tried ghcjs-dom-0.9.5.0, but its *library* requires the disabled package: ghcjs-dom-jsaddle
5865+ - gi-gsk < 0 # tried gi-gsk-4.0.4, but its *library* does not support: gi-gdk-3.0.25
5866+ - gi-webkit2 < 0 # tried gi-webkit2-4.0.28, but its *library* requires the disabled package: gi-soup
5867+ - gingersnap < 0 # tried gingersnap-0.3.1.0, but its *library* requires the disabled package: snap-core
5868+ - gio < 0 # tried gio-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5869+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: IfElse
5870+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: aws
5871+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: bloomfilter
5872+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: fdo-notify
5873+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: git-lfs
5874+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: http-client-restricted
5875+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: network-multicast
5876+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: sandi
5877+ - git-annex < 0 # tried git-annex-8.20211231, but its *executable* requires the disabled package: torrent
5878+ - git-vogue < 0 # tried git-vogue-0.3.0.2, but its *executable* requires the disabled package: stylish-haskell
5879+ - github-webhook-handler < 0 # tried github-webhook-handler-0.0.8, but its *library* does not support: base-4.15.1.0
5880+ - github-webhook-handler-snap < 0 # tried github-webhook-handler-snap-0.0.7, but its *library* does not support: base-4.15.1.0
5881+ - gitlib-libgit2 < 0 # tried gitlib-libgit2-3.1.2.1, but its *library* requires the disabled package: gitlib
5882+ - glaze < 0 # tried glaze-0.3.0.1, but its *library* does not support: lens-5.0.1
5883+ - glazier-react < 0 # tried glazier-react-1.0.0.0, but its *library* requires the disabled package: data-diverse-lens
5884+ - glazier-react < 0 # tried glazier-react-1.0.0.0, but its *library* requires the disabled package: glazier
5885+ - glazier-react-widget < 0 # tried glazier-react-widget-1.0.0.0, but its *library* requires the disabled package: data-diverse-lens
5886+ - glazier-react-widget < 0 # tried glazier-react-widget-1.0.0.0, but its *library* requires the disabled package: glazier
5887+ - glib < 0 # tried glib-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
5888+ - gloss-accelerate < 0 # tried gloss-accelerate-2.1.0.0, but its *library* requires the disabled package: accelerate
5889+ - gloss-accelerate < 0 # tried gloss-accelerate-2.1.0.0, but its *library* requires the disabled package: linear-accelerate
5890+ - gloss-examples < 0 # tried gloss-examples-1.13.0.3, but its *executable* does not support: random-1.2.1
5891+ - gloss-raster-accelerate < 0 # tried gloss-raster-accelerate-2.1.0.0, but its *library* requires the disabled package: accelerate
5892+ - gogol < 0 # tried gogol-0.5.0, but its *library* requires the disabled package: gogol-core
5893+ - gogol-adexchange-buyer < 0 # tried gogol-adexchange-buyer-0.5.0, but its *library* requires the disabled package: gogol-core
5894+ - gogol-adexchange-seller < 0 # tried gogol-adexchange-seller-0.5.0, but its *library* requires the disabled package: gogol-core
5895+ - gogol-admin-datatransfer < 0 # tried gogol-admin-datatransfer-0.5.0, but its *library* requires the disabled package: gogol-core
5896+ - gogol-admin-directory < 0 # tried gogol-admin-directory-0.5.0, but its *library* requires the disabled package: gogol-core
5897+ - gogol-admin-emailmigration < 0 # tried gogol-admin-emailmigration-0.3.0, but its *library* requires the disabled package: gogol-core
5898+ - gogol-admin-reports < 0 # tried gogol-admin-reports-0.5.0, but its *library* requires the disabled package: gogol-core
5899+ - gogol-adsense < 0 # tried gogol-adsense-0.5.0, but its *library* requires the disabled package: gogol-core
5900+ - gogol-adsense-host < 0 # tried gogol-adsense-host-0.5.0, but its *library* requires the disabled package: gogol-core
5901+ - gogol-affiliates < 0 # tried gogol-affiliates-0.3.0, but its *library* requires the disabled package: gogol-core
5902+ - gogol-analytics < 0 # tried gogol-analytics-0.5.0, but its *library* requires the disabled package: gogol-core
5903+ - gogol-android-enterprise < 0 # tried gogol-android-enterprise-0.5.0, but its *library* requires the disabled package: gogol-core
5904+ - gogol-android-publisher < 0 # tried gogol-android-publisher-0.5.0, but its *library* requires the disabled package: gogol-core
5905+ - gogol-appengine < 0 # tried gogol-appengine-0.5.0, but its *library* requires the disabled package: gogol-core
5906+ - gogol-apps-activity < 0 # tried gogol-apps-activity-0.5.0, but its *library* requires the disabled package: gogol-core
5907+ - gogol-apps-calendar < 0 # tried gogol-apps-calendar-0.5.0, but its *library* requires the disabled package: gogol-core
5908+ - gogol-apps-licensing < 0 # tried gogol-apps-licensing-0.5.0, but its *library* requires the disabled package: gogol-core
5909+ - gogol-apps-reseller < 0 # tried gogol-apps-reseller-0.5.0, but its *library* requires the disabled package: gogol-core
5910+ - gogol-apps-tasks < 0 # tried gogol-apps-tasks-0.5.0, but its *library* requires the disabled package: gogol-core
5911+ - gogol-appstate < 0 # tried gogol-appstate-0.5.0, but its *library* requires the disabled package: gogol-core
5912+ - gogol-autoscaler < 0 # tried gogol-autoscaler-0.3.0, but its *library* requires the disabled package: gogol-core
5913+ - gogol-bigquery < 0 # tried gogol-bigquery-0.5.0, but its *library* requires the disabled package: gogol-core
5914+ - gogol-billing < 0 # tried gogol-billing-0.5.0, but its *library* requires the disabled package: gogol-core
5915+ - gogol-blogger < 0 # tried gogol-blogger-0.5.0, but its *library* requires the disabled package: gogol-core
5916+ - gogol-books < 0 # tried gogol-books-0.5.0, but its *library* requires the disabled package: gogol-core
5917+ - gogol-civicinfo < 0 # tried gogol-civicinfo-0.5.0, but its *library* requires the disabled package: gogol-core
5918+ - gogol-classroom < 0 # tried gogol-classroom-0.5.0, but its *library* requires the disabled package: gogol-core
5919+ - gogol-cloudmonitoring < 0 # tried gogol-cloudmonitoring-0.3.0, but its *library* requires the disabled package: gogol-core
5920+ - gogol-cloudtrace < 0 # tried gogol-cloudtrace-0.5.0, but its *library* requires the disabled package: gogol-core
5921+ - gogol-compute < 0 # tried gogol-compute-0.5.0, but its *library* requires the disabled package: gogol-core
5922+ - gogol-container < 0 # tried gogol-container-0.5.0, but its *library* requires the disabled package: gogol-core
5923+ - gogol-customsearch < 0 # tried gogol-customsearch-0.5.0, but its *library* requires the disabled package: gogol-core
5924+ - gogol-dataflow < 0 # tried gogol-dataflow-0.5.0, but its *library* requires the disabled package: gogol-core
5925+ - gogol-dataproc < 0 # tried gogol-dataproc-0.5.0, but its *library* requires the disabled package: gogol-core
5926+ - gogol-datastore < 0 # tried gogol-datastore-0.5.0, but its *library* requires the disabled package: gogol-core
5927+ - gogol-debugger < 0 # tried gogol-debugger-0.5.0, but its *library* requires the disabled package: gogol-core
5928+ - gogol-deploymentmanager < 0 # tried gogol-deploymentmanager-0.5.0, but its *library* requires the disabled package: gogol-core
5929+ - gogol-dfareporting < 0 # tried gogol-dfareporting-0.5.0, but its *library* requires the disabled package: gogol-core
5930+ - gogol-discovery < 0 # tried gogol-discovery-0.5.0, but its *library* requires the disabled package: gogol-core
5931+ - gogol-dns < 0 # tried gogol-dns-0.5.0, but its *library* requires the disabled package: gogol-core
5932+ - gogol-doubleclick-bids < 0 # tried gogol-doubleclick-bids-0.5.0, but its *library* requires the disabled package: gogol-core
5933+ - gogol-doubleclick-search < 0 # tried gogol-doubleclick-search-0.5.0, but its *library* requires the disabled package: gogol-core
5934+ - gogol-drive < 0 # tried gogol-drive-0.5.0, but its *library* requires the disabled package: gogol-core
5935+ - gogol-firebase-rules < 0 # tried gogol-firebase-rules-0.5.0, but its *library* requires the disabled package: gogol-core
5936+ - gogol-fitness < 0 # tried gogol-fitness-0.5.0, but its *library* requires the disabled package: gogol-core
5937+ - gogol-fonts < 0 # tried gogol-fonts-0.5.0, but its *library* requires the disabled package: gogol-core
5938+ - gogol-freebasesearch < 0 # tried gogol-freebasesearch-0.3.0, but its *library* requires the disabled package: gogol-core
5939+ - gogol-fusiontables < 0 # tried gogol-fusiontables-0.5.0, but its *library* requires the disabled package: gogol-core
5940+ - gogol-games < 0 # tried gogol-games-0.5.0, but its *library* requires the disabled package: gogol-core
5941+ - gogol-games-configuration < 0 # tried gogol-games-configuration-0.5.0, but its *library* requires the disabled package: gogol-core
5942+ - gogol-games-management < 0 # tried gogol-games-management-0.5.0, but its *library* requires the disabled package: gogol-core
5943+ - gogol-genomics < 0 # tried gogol-genomics-0.5.0, but its *library* requires the disabled package: gogol-core
5944+ - gogol-gmail < 0 # tried gogol-gmail-0.5.0, but its *library* requires the disabled package: gogol-core
5945+ - gogol-groups-migration < 0 # tried gogol-groups-migration-0.5.0, but its *library* requires the disabled package: gogol-core
5946+ - gogol-groups-settings < 0 # tried gogol-groups-settings-0.5.0, but its *library* requires the disabled package: gogol-core
5947+ - gogol-identity-toolkit < 0 # tried gogol-identity-toolkit-0.5.0, but its *library* requires the disabled package: gogol-core
5948+ - gogol-kgsearch < 0 # tried gogol-kgsearch-0.5.0, but its *library* requires the disabled package: gogol-core
5949+ - gogol-latencytest < 0 # tried gogol-latencytest-0.3.0, but its *library* requires the disabled package: gogol-core
5950+ - gogol-logging < 0 # tried gogol-logging-0.5.0, but its *library* requires the disabled package: gogol-core
5951+ - gogol-maps-coordinate < 0 # tried gogol-maps-coordinate-0.3.0, but its *library* requires the disabled package: gogol-core
5952+ - gogol-maps-engine < 0 # tried gogol-maps-engine-0.3.0, but its *library* requires the disabled package: gogol-core
5953+ - gogol-mirror < 0 # tried gogol-mirror-0.5.0, but its *library* requires the disabled package: gogol-core
5954+ - gogol-monitoring < 0 # tried gogol-monitoring-0.5.0, but its *library* requires the disabled package: gogol-core
5955+ - gogol-oauth2 < 0 # tried gogol-oauth2-0.5.0, but its *library* requires the disabled package: gogol-core
5956+ - gogol-pagespeed < 0 # tried gogol-pagespeed-0.5.0, but its *library* requires the disabled package: gogol-core
5957+ - gogol-partners < 0 # tried gogol-partners-0.5.0, but its *library* requires the disabled package: gogol-core
5958+ - gogol-people < 0 # tried gogol-people-0.5.0, but its *library* requires the disabled package: gogol-core
5959+ - gogol-play-moviespartner < 0 # tried gogol-play-moviespartner-0.5.0, but its *library* requires the disabled package: gogol-core
5960+ - gogol-plus < 0 # tried gogol-plus-0.5.0, but its *library* requires the disabled package: gogol-core
5961+ - gogol-plus-domains < 0 # tried gogol-plus-domains-0.5.0, but its *library* requires the disabled package: gogol-core
5962+ - gogol-prediction < 0 # tried gogol-prediction-0.5.0, but its *library* requires the disabled package: gogol-core
5963+ - gogol-proximitybeacon < 0 # tried gogol-proximitybeacon-0.5.0, but its *library* requires the disabled package: gogol-core
5964+ - gogol-pubsub < 0 # tried gogol-pubsub-0.5.0, but its *library* requires the disabled package: gogol-core
5965+ - gogol-qpxexpress < 0 # tried gogol-qpxexpress-0.5.0, but its *library* requires the disabled package: gogol-core
5966+ - gogol-replicapool < 0 # tried gogol-replicapool-0.5.0, but its *library* requires the disabled package: gogol-core
5967+ - gogol-replicapool-updater < 0 # tried gogol-replicapool-updater-0.5.0, but its *library* requires the disabled package: gogol-core
5968+ - gogol-resourcemanager < 0 # tried gogol-resourcemanager-0.5.0, but its *library* requires the disabled package: gogol-core
5969+ - gogol-resourceviews < 0 # tried gogol-resourceviews-0.3.0, but its *library* requires the disabled package: gogol-core
5970+ - gogol-script < 0 # tried gogol-script-0.5.0, but its *library* requires the disabled package: gogol-core
5971+ - gogol-sheets < 0 # tried gogol-sheets-0.5.0, but its *library* requires the disabled package: gogol-core
5972+ - gogol-shopping-content < 0 # tried gogol-shopping-content-0.5.0, but its *library* requires the disabled package: gogol-core
5973+ - gogol-siteverification < 0 # tried gogol-siteverification-0.5.0, but its *library* requires the disabled package: gogol-core
5974+ - gogol-spectrum < 0 # tried gogol-spectrum-0.5.0, but its *library* requires the disabled package: gogol-core
5975+ - gogol-sqladmin < 0 # tried gogol-sqladmin-0.5.0, but its *library* requires the disabled package: gogol-core
5976+ - gogol-storage < 0 # tried gogol-storage-0.5.0, but its *library* requires the disabled package: gogol-core
5977+ - gogol-storage-transfer < 0 # tried gogol-storage-transfer-0.5.0, but its *library* requires the disabled package: gogol-core
5978+ - gogol-tagmanager < 0 # tried gogol-tagmanager-0.5.0, but its *library* requires the disabled package: gogol-core
5979+ - gogol-taskqueue < 0 # tried gogol-taskqueue-0.3.0, but its *library* requires the disabled package: gogol-core
5980+ - gogol-translate < 0 # tried gogol-translate-0.5.0, but its *library* requires the disabled package: gogol-core
5981+ - gogol-urlshortener < 0 # tried gogol-urlshortener-0.5.0, but its *library* requires the disabled package: gogol-core
5982+ - gogol-useraccounts < 0 # tried gogol-useraccounts-0.3.0, but its *library* requires the disabled package: gogol-core
5983+ - gogol-vision < 0 # tried gogol-vision-0.5.0, but its *library* requires the disabled package: gogol-core
5984+ - gogol-webmaster-tools < 0 # tried gogol-webmaster-tools-0.5.0, but its *library* requires the disabled package: gogol-core
5985+ - gogol-youtube < 0 # tried gogol-youtube-0.5.0, but its *library* requires the disabled package: gogol-core
5986+ - gogol-youtube-analytics < 0 # tried gogol-youtube-analytics-0.5.0, but its *library* requires the disabled package: gogol-core
5987+ - gogol-youtube-reporting < 0 # tried gogol-youtube-reporting-0.5.0, but its *library* requires the disabled package: gogol-core
5988+ - google-cloud < 0 # tried google-cloud-0.0.4, but its *library* does not support: base-4.15.1.0
5989+ - google-oauth2-jwt < 0 # tried google-oauth2-jwt-0.3.3, but its *library* does not support: base64-bytestring-1.2.1.0
5990+ - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-api-data-0.4.3
5991+ - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-client-0.7.10
5992+ - graphql-client < 0 # tried graphql-client-1.1.1, but its *executable* does not support: path-0.9.2
5993+ - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-0.12.0
5994+ - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-th-0.12
5995+ - groundhog-mysql < 0 # tried groundhog-mysql-0.12, but its *library* does not support: mysql-0.2.1
5996+ - grouped-list < 0 # tried grouped-list-0.2.2.1, but its *library* does not support: base-4.15.1.0
5997+ - gtk3 < 0 # tried gtk3-0.15.6, but its *library* does not support: Cabal-3.4.1.0
5998+ - hOpenPGP < 0 # tried hOpenPGP-2.9.7, but its *library* requires the disabled package: ixset-typed
5999+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: http-client-0.7.10
6000+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-0.18.3
6001+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-client-0.18.3
6002+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* does not support: deepseq-1.4.5.0
6003+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: colourista
6004+ - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: spdx
6005+ - hapistrano < 0 # tried hapistrano-0.4.3.0, but its *library* does not support: path-0.9.2
6006+ - happstack-hsp < 0 # tried happstack-hsp-7.3.7.5, but its *library* requires the disabled package: harp
6007+ - haskell-lsp < 0 # tried haskell-lsp-0.24.0.0, but its *executable* does not support: base-4.15.1.0
6008+ - haskell-lsp-client < 0 # tried haskell-lsp-client-1.0.0.1, but its *library* requires the disabled package: haskell-lsp
6009+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: base-4.15.1.0
6010+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: ghc-9.0.2
6011+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6012+ - haskell-tools-ast < 0 # tried haskell-tools-ast-1.1.1.0, but its *library* requires the disabled package: references
6013+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: base-4.15.1.0
6014+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: ghc-9.0.2
6015+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: ghc-boot-th-9.0.2
6016+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6017+ - haskell-tools-backend-ghc < 0 # tried haskell-tools-backend-ghc-1.1.1.0, but its *library* requires the disabled package: references
6018+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *executable* does not support: Glob-0.10.2
6019+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *executable* does not support: optparse-applicative-0.16.1.0
6020+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: base-4.15.1.0
6021+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: ghc-9.0.2
6022+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* does not support: strict-0.4.0.1
6023+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6024+ - haskell-tools-cli < 0 # tried haskell-tools-cli-1.1.1.0, but its *library* requires the disabled package: references
6025+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: Cabal-3.4.1.0
6026+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: Diff-0.4.1
6027+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6028+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: base-4.15.1.0
6029+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: ghc-9.0.2
6030+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: network-3.1.2.7
6031+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: optparse-applicative-0.16.1.0
6032+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: strict-0.4.0.1
6033+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6034+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6035+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* requires the disabled package: references
6036+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: base-4.15.1.0
6037+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: ghc-9.0.2
6038+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6039+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6040+ - haskell-tools-debug < 0 # tried haskell-tools-debug-1.1.1.0, but its *library* requires the disabled package: references
6041+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6042+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: base-4.15.1.0
6043+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: ghc-9.0.2
6044+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* does not support: warp-3.3.18
6045+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* requires the disabled package: haskell-tools-builtin-refactorings
6046+ - haskell-tools-demo < 0 # tried haskell-tools-demo-1.1.1.0, but its *library* requires the disabled package: references
6047+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* does not support: base-4.15.1.0
6048+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* does not support: ghc-9.0.2
6049+ - haskell-tools-prettyprint < 0 # tried haskell-tools-prettyprint-1.1.1.0, but its *library* requires the disabled package: references
6050+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: Cabal-3.4.1.0
6051+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
6052+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: base-4.15.1.0
6053+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: ghc-9.0.2
6054+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
6055+ - haskell-tools-refactor < 0 # tried haskell-tools-refactor-1.1.1.0, but its *library* requires the disabled package: references
6056+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* does not support: base-4.15.1.0
6057+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* does not support: ghc-9.0.2
6058+ - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* requires the disabled package: references
6059+ - haskey < 0 # tried haskey-0.3.1.0, but its *library* does not support: stm-containers-1.2
6060+ - haskey-mtl < 0 # tried haskey-mtl-0.3.1.0, but its *library* does not support: monad-control-1.0.3.1
6061+ - haskoin-store < 0 # tried haskoin-store-0.64.18, but its *library* requires the disabled package: haskoin-node
6062+ - haskoin-store < 0 # tried haskoin-store-0.64.18, but its *library* requires the disabled package: haskoin-store-data
6063+ - hasmin < 0 # tried hasmin-1.0.3, but its *executable* does not support: optparse-applicative-0.16.1.0
6064+ - hasmin < 0 # tried hasmin-1.0.3, but its *library* does not support: attoparsec-0.14.4
6065+ - haxl-amazonka < 0 # tried haxl-amazonka-0.1.1, but its *library* requires the disabled package: haxl
6066+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: aeson-1.5.6.0
6067+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: attoparsec-0.14.4
6068+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: base-4.15.1.0
6069+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: dlist-1.0
6070+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: ansi-terminal-0.11.1
6071+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: brick-0.66.1
6072+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: optparse-applicative-0.16.1.0
6073+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: semigroups-0.19.2
6074+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: vty-5.33
6075+ - hgeometry < 0 # tried hgeometry-0.13, but its *library* requires the disabled package: vector-circular
6076+ - hgeometry-combinatorial < 0 # tried hgeometry-combinatorial-0.13, but its *library* requires the disabled package: vector-circular
6077+ - hgrev < 0 # tried hgrev-0.2.6, but its *library* does not support: base-4.15.1.0
6078+ - hgrev < 0 # tried hgrev-0.2.6, but its *library* does not support: template-haskell-2.17.0.0
6079+ - hidden-char < 0 # tried hidden-char-0.1.0.2, but its *library* does not support: base-4.15.1.0
6080+ - hierarchy < 0 # tried hierarchy-1.0.2, but its *library* does not support: base-4.15.1.0
6081+ - highjson-swagger < 0 # tried highjson-swagger-0.5.0.0, but its *library* requires the disabled package: swagger2
6082+ - highjson-th < 0 # tried highjson-th-0.5.0.0, but its *library* requires the disabled package: swagger2
6083+ - hip < 0 # tried hip-1.5.6.0, but its *library* requires the disabled package: Chart-diagrams
6084+ - hit < 0 # tried hit-0.7.0, but its *executable* requires the disabled package: git
6085+ - hmatrix-backprop < 0 # tried hmatrix-backprop-0.1.3.0, but its *library* requires the disabled package: backprop
6086+ - hmpfr < 0 # tried hmpfr-0.4.4, but its *library* does not support: integer-gmp-1.1
6087+ - holy-project < 0 # tried holy-project-0.2.0.1, but its *library* requires the disabled package: hastache
6088+ - hopenpgp-tools < 0 # tried hopenpgp-tools-0.23.6, but its *executable* requires the disabled package: ixset-typed
6089+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: aeson-1.5.6.0
6090+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: containers-0.6.4.1
6091+ - hpc-coveralls < 0 # tried hpc-coveralls-1.0.10, but its *library* does not support: retry-0.9.0.0
6092+ - hpc-lcov < 0 # tried hpc-lcov-1.0.1, but its *executable* does not support: path-0.9.2
6093+ - hpio < 0 # tried hpio-0.9.0.7, but its *executable* does not support: optparse-applicative-0.16.1.0
6094+ - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: QuickCheck-2.14.2
6095+ - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: protolude-0.3.0
6096+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: containers-0.6.4.1
6097+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: hmatrix-0.20.2
6098+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: statistics-0.16.0.1
6099+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: time-1.9.3
6100+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: vector-algorithms-0.8.0.4
6101+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* requires the disabled package: hmatrix-special
6102+ - hquantlib-time < 0 # tried hquantlib-time-0.0.4.1, but its *library* does not support: time-1.9.3
6103+ - hsb2hs < 0 # tried hsb2hs-0.3.1, but its *executable* requires the disabled package: preprocessor-tools
6104+ - hschema-aeson < 0 # tried hschema-aeson-0.0.1.1, but its *library* requires the disabled package: hschema
6105+ - hschema-prettyprinter < 0 # tried hschema-prettyprinter-0.0.1.1, but its *library* requires the disabled package: hschema
6106+ - hschema-quickcheck < 0 # tried hschema-quickcheck-0.0.1.1, but its *library* requires the disabled package: hschema
6107+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: attoparsec-0.14.4
6108+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-boot-9.0.2
6109+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6110+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: hlint-3.3.6
6111+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: http-client-0.7.10
6112+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: lens-5.0.1
6113+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: optparse-applicative-0.16.1.0
6114+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: template-haskell-2.17.0.0
6115+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* requires the disabled package: text-region
6116+ - hspec-tables < 0 # tried hspec-tables-0.0.1, but its *library* does not support: base-4.15.1.0
6117+ - hspec-tables < 0 # tried hspec-tables-0.0.1, but its *library* does not support: hspec-core-2.8.5
6118+ - hspec-wai-json < 0 # tried hspec-wai-json-0.11.0, but its *library* does not support: hspec-wai-0.11.1
6119+ - hspec-webdriver < 0 # tried hspec-webdriver-1.2.0, but its *library* requires the disabled package: webdriver
6120+ - hsx2hs < 0 # tried hsx2hs-0.14.1.8, but its *library* does not support: template-haskell-2.17.0.0
6121+ - hw-hspec-hedgehog < 0 # tried hw-hspec-hedgehog-0.1.1.0, but its *library* does not support: hspec-2.8.5
6122+ - hyraxAbif < 0 # tried hyraxAbif-0.2.3.27, but its *library* does not support: text-1.2.5.0
6123+ - idris < 0 # tried idris-1.3.4, but its *library* does not support: Cabal-3.4.1.0
6124+ - idris < 0 # tried idris-1.3.4, but its *library* does not support: network-3.1.2.7
6125+ - importify < 0 # tried importify-1.0.1, but its *library* requires the disabled package: hse-cpp
6126+ - indentation-core < 0 # tried indentation-core-0.0.0.2, but its *library* does not support: base-4.15.1.0
6127+ - indentation-parsec < 0 # tried indentation-parsec-0.0.0.2, but its *library* does not support: base-4.15.1.0
6128+ - inline-java < 0 # tried inline-java-0.10.0, but its *library* does not support: ghc-9.0.2
6129+ - inline-java < 0 # tried inline-java-0.10.0, but its *library* requires the disabled package: jni
6130+ - inline-r < 0 # tried inline-r-0.10.5, but its *library* does not support: singletons-3.0.1
6131+ - interpolatedstring-qq2 < 0 # tried interpolatedstring-qq2-0.1.0.0, but its *library* does not support: template-haskell-2.17.0.0
6132+ - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: attoparsec-0.14.4
6133+ - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: base-4.15.1.0
6134+ - ipa < 0 # tried ipa-0.3.1.1, but its *library* does not support: unicode-transforms-0.4.0
6135+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: attoparsec-0.14.4
6136+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: network-3.1.2.7
6137+ - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: path-0.9.2
6138+ - it-has < 0 # tried it-has-0.2.0.0, but its *library* does not support: generic-lens-2.2.0.0
6139+ - ixset < 0 # tried ixset-1.1.1.1, but its *library* requires the disabled package: syb-with-class
6140+ - ixset-typed < 0 # tried ixset-typed-0.5, but its *library* does not support: template-haskell-2.17.0.0
6141+ - ixset-typed-binary-instance < 0 # tried ixset-typed-binary-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
6142+ - ixset-typed-conversions < 0 # tried ixset-typed-conversions-0.1.2.0, but its *library* requires the disabled package: ixset-typed
6143+ - ixset-typed-hashable-instance < 0 # tried ixset-typed-hashable-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
6144+ - jmacro-rpc-snap < 0 # tried jmacro-rpc-snap-0.3, but its *library* requires the disabled package: snap-core
6145+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: attoparsec-0.14.4
6146+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: base64-bytestring-1.2.1.0
6147+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: ref-tf-0.5.0.1
6148+ - json-alt < 0 # tried json-alt-1.0.0, but its *library* does not support: aeson-1.5.6.0
6149+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: aeson-1.5.6.0
6150+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: lens-5.0.1
6151+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* does not support: smallcheck-1.2.1
6152+ - json-autotype < 0 # tried json-autotype-3.1.2, but its *library* requires the disabled package: run-haskell-module
6153+ - json-rpc-client < 0 # tried json-rpc-client-0.2.5.0, but its *library* does not support: aeson-1.5.6.0
6154+ - json-rpc-client < 0 # tried json-rpc-client-0.2.5.0, but its *library* does not support: base-4.15.1.0
6155+ - json-rpc-server < 0 # tried json-rpc-server-0.2.6.0, but its *library* does not support: base-4.15.1.0
6156+ - jvm < 0 # tried jvm-0.6.0, but its *library* requires the disabled package: distributed-closure
6157+ - jvm < 0 # tried jvm-0.6.0, but its *library* requires the disabled package: jni
6158+ - jvm-batching < 0 # tried jvm-batching-0.2.0, but its *library* requires the disabled package: distributed-closure
6159+ - jvm-batching < 0 # tried jvm-batching-0.2.0, but its *library* requires the disabled package: jni
6160+ - jvm-streaming < 0 # tried jvm-streaming-0.4.0, but its *library* requires the disabled package: distributed-closure
6161+ - jvm-streaming < 0 # tried jvm-streaming-0.4.0, but its *library* requires the disabled package: jni
6162+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: aeson-1.5.6.0
6163+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: async-2.2.4
6164+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: katip-0.8.7.0
6165+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: rollbar-hs-0.3.1.0
6166+ - katip-rollbar < 0 # tried katip-rollbar-0.3.0.1, but its *library* does not support: time-1.9.3
6167+ - katip-scalyr-scribe < 0 # tried katip-scalyr-scribe-0.1.0.1, but its *library* does not support: aeson-1.5.6.0
6168+ - katip-scalyr-scribe < 0 # tried katip-scalyr-scribe-0.1.0.1, but its *library* does not support: katip-0.8.7.0
6169+ - kraken < 0 # tried kraken-0.1.0, but its *library* does not support: base-4.15.1.0
6170+ - lambdabot-core < 0 # tried lambdabot-core-5.3.0.2, but its *library* requires the disabled package: random-fu
6171+ - lambdabot-irc-plugins < 0 # tried lambdabot-irc-plugins-5.3.0.2, but its *library* requires the disabled package: lambdabot-core
6172+ - language-haskell-extract < 0 # tried language-haskell-extract-0.2.4, but its *library* does not support: template-haskell-2.17.0.0
6173+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: base16-bytestring-1.0.2.0
6174+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: formatting-7.1.3
6175+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: lens-5.0.1
6176+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: megaparsec-9.2.0
6177+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: memory-0.16.0
6178+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: servant-0.18.3
6179+ - language-puppet < 0 # tried language-puppet-1.4.6.5, but its *library* does not support: servant-client-0.18.3
6180+ - large-hashable < 0 # tried large-hashable-0.1.0.4, but its *library* does not support: template-haskell-2.17.0.0
6181+ - lens-accelerate < 0 # tried lens-accelerate-0.3.0.0, but its *library* does not support: lens-5.0.1
6182+ - lens-datetime < 0 # tried lens-datetime-0.3, but its *library* does not support: lens-5.0.1
6183+ - lens-simple < 0 # tried lens-simple-0.1.0.9, but its *library* does not support: lens-family-2.1.1
6184+ - lens-simple < 0 # tried lens-simple-0.1.0.9, but its *library* does not support: lens-family-core-2.1.0
6185+ - lenz < 0 # tried lenz-0.4.2.0, but its *library* requires the disabled package: hs-functors
6186+ - libinfluxdb < 0 # tried libinfluxdb-0.0.4, but its *library* does not support: base-4.15.1.0
6187+ - libjwt-typed < 0 # tried libjwt-typed-0.2, but its *library* does not support: base-4.15.1.0
6188+ - libjwt-typed < 0 # tried libjwt-typed-0.2, but its *library* does not support: text-1.2.5.0
6189+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: ekg
6190+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: ekg-core
6191+ - libraft < 0 # tried libraft-0.5.0.0, but its *library* requires the disabled package: protolude
6192+ - licensor < 0 # tried licensor-0.5.0, but its *library* does not support: Cabal-3.4.1.0
6193+ - licensor < 0 # tried licensor-0.5.0, but its *library* does not support: base-4.15.1.0
6194+ - linear-accelerate < 0 # tried linear-accelerate-0.7.0.0, but its *library* does not support: lens-5.0.1
6195+ - linked-list-with-iterator < 0 # tried linked-list-with-iterator-0.1.1.0, but its *library* does not support: containers-0.6.4.1
6196+ - liquid-fixpoint < 0 # tried liquid-fixpoint-8.10.7, but its *library* does not support: megaparsec-9.2.0
6197+ - liquid-fixpoint < 0 # tried liquid-fixpoint-8.10.7, but its *library* requires the disabled package: rest-rewrite
6198+ - list-witnesses < 0 # tried list-witnesses-0.1.3.2, but its *library* requires the disabled package: functor-products
6199+ - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log
6200+ - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log-core
6201+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: aeson-1.5.6.0
6202+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: o-clock-1.2.1
6203+ - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: universum-1.7.2
6204+ - logger-thread < 0 # tried logger-thread-0.1.0.2, but its *library* requires the disabled package: protolude
6205+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* does not support: base-4.15.1.0
6206+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* does not support: prettyprinter-1.7.1
6207+ - logging-effect-extra < 0 # tried logging-effect-extra-2.0.0, but its *library* requires the disabled package: logging-effect
6208+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* does not support: base-4.15.1.0
6209+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* does not support: prettyprinter-1.7.1
6210+ - logging-effect-extra-file < 0 # tried logging-effect-extra-file-2.0.1, but its *library* requires the disabled package: logging-effect
6211+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: base-4.15.1.0
6212+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: prettyprinter-1.7.1
6213+ - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* requires the disabled package: logging-effect
6214+ - loopbreaker < 0 # tried loopbreaker-0.1.1.1, but its *library* does not support: ghc-9.0.2
6215+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: network-3.1.2.7
6216+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-0.18.3
6217+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-client-0.18.3
6218+ - machines-directory < 0 # tried machines-directory-7.0.0.0, but its *library* requires the disabled package: machines-io
6219+ - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-core
6220+ - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-wai
6221+ - makefile < 0 # tried makefile-1.1.0.0, but its *library* does not support: attoparsec-0.14.4
6222+ - mallard < 0 # tried mallard-0.6.1.1, but its *library* does not support: megaparsec-9.2.0
6223+ - mallard < 0 # tried mallard-0.6.1.1, but its *library* requires the disabled package: Interpolation
6224+ - map-syntax < 0 # tried map-syntax-0.3, but its *library* does not support: base-4.15.1.0
6225+ - markup < 0 # tried markup-4.2.0, but its *library* requires the disabled package: attoparsec-uri
6226+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: aeson-1.5.6.0
6227+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: http-client-0.7.10
6228+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: lens-5.0.1
6229+ - marvin < 0 # tried marvin-0.2.5, but its *library* requires the disabled package: marvin-interpolate
6230+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: extra-1.7.10
6231+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: formatting-7.1.3
6232+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: http-client-0.7.10
6233+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: optparse-applicative-0.16.1.0
6234+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: scalpel-core-0.6.2
6235+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: time-1.9.3
6236+ - menshen < 0 # tried menshen-0.0.3, but its *library* does not support: regex-tdfa-1.3.1.1
6237+ - merkle-tree < 0 # tried merkle-tree-0.1.1, but its *library* requires the disabled package: protolude
6238+ - messagepack-rpc < 0 # tried messagepack-rpc-0.5.1, but its *library* does not support: containers-0.6.4.1
6239+ - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *executable* requires the disabled package: aws-lambda-haskell-runtime-wai
6240+ - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *library* requires the disabled package: xml-lens
6241+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.10
6242+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-media-0.8.0.0
6243+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-0.18.3
6244+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-client-0.18.3
6245+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: time-1.9.3
6246+ - midi-music-box < 0 # tried midi-music-box-0.0.1.2, but its *executable* requires the disabled package: diagrams-postscript
6247+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: lens-5.0.1
6248+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.7
6249+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: random-1.2.1
6250+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: semigroups-0.19.2
6251+ - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src
6252+ - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src-th-mode
6253+ - minio-hs < 0 # tried minio-hs-1.5.3, but its *library* requires the disabled package: protolude
6254+ - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: knob
6255+ - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: random-fu
6256+ - miso < 0 # tried miso-1.8.1.0, but its *library* requires the disabled package: jsaddle
6257+ - modify-fasta < 0 # tried modify-fasta-0.8.3.0, but its *executable* requires the disabled package: pipes-text
6258+ - mole < 0 # tried mole-0.0.7, but its *executable* does not support: base-4.15.1.0
6259+ - mole < 0 # tried mole-0.0.7, but its *executable* requires the disabled package: snap-server
6260+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: base-4.15.1.0
6261+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: mwc-random-0.15.0.2
6262+ - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: statistics-0.16.0.1
6263+ - monad-metrics < 0 # tried monad-metrics-0.2.2.0, but its *library* requires the disabled package: ekg-core
6264+ - monad-mock < 0 # tried monad-mock-0.2.0.0, but its *library* does not support: template-haskell-2.17.0.0
6265+ - monad-unlift-ref < 0 # tried monad-unlift-ref-0.2.1, but its *library* requires the disabled package: monad-unlift
6266+ - msgpack < 0 # tried msgpack-1.0.1.0, but its *library* does not support: base-4.15.1.0
6267+ - msgpack-aeson < 0 # tried msgpack-aeson-0.1.0.0, but its *library* requires the disabled package: msgpack
6268+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: blaze-builder-0.4.2.2
6269+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: filepath-1.4.2.1
6270+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: msgpack-1.0.1.0
6271+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* does not support: template-haskell-2.17.0.0
6272+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* requires the disabled package: peggy
6273+ - msgpack-idl < 0 # tried msgpack-idl-0.2.1, but its *library* requires the disabled package: shakespeare-text
6274+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: base-4.15.1.0
6275+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: binary-conduit-1.3.1
6276+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-1.3.4.2
6277+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-extra-1.3.5
6278+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.7
6279+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: random-1.2.1
6280+ - multistate < 0 # tried multistate-0.8.0.3, but its *library* does not support: base-4.15.1.0
6281+ - mwc-random-accelerate < 0 # tried mwc-random-accelerate-0.2.0.0, but its *library* requires the disabled package: accelerate
6282+ - mysql-haskell < 0 # tried mysql-haskell-0.8.4.3, but its *library* does not support: memory-0.16.0
6283+ - mysql-haskell < 0 # tried mysql-haskell-0.8.4.3, but its *library* requires the disabled package: word24
6284+ - mysql-haskell-nem < 0 # tried mysql-haskell-nem-0.1.0.0, but its *library* requires the disabled package: mysql-haskell
6285+ - mysql-haskell-openssl < 0 # tried mysql-haskell-openssl-0.8.3.1, but its *library* requires the disabled package: mysql-haskell
6286+ - mysql-haskell-openssl < 0 # tried mysql-haskell-openssl-0.8.3.1, but its *library* requires the disabled package: tcp-streams-openssl
6287+ - n-tuple < 0 # tried n-tuple-0.0.2.0, but its *library* does not support: base-4.15.1.0
6288+ - n-tuple < 0 # tried n-tuple-0.0.2.0, but its *library* does not support: singletons-3.0.1
6289+ - n2o-web < 0 # tried n2o-web-0.11.2, but its *library* requires the disabled package: n2o-protocols
6290+ - nakadi-client < 0 # tried nakadi-client-0.7.0.0, but its *library* requires the disabled package: async-timer
6291+ - naqsha < 0 # tried naqsha-0.3.0.1, but its *library* does not support: base-4.15.1.0
6292+ - net-mqtt < 0 # tried net-mqtt-0.8.2.0, but its *library* does not support: attoparsec-0.14.4
6293+ - net-mqtt-lens < 0 # tried net-mqtt-lens-0.1.1.0, but its *library* requires the disabled package: net-mqtt
6294+ - netrc < 0 # tried netrc-0.2.0.0, but its *library* does not support: base-4.15.1.0
6295+ - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: hexstring
6296+ - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: network-attoparsec
6297+ - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* does not support: network-3.1.2.7
6298+ - network-transport-inmemory < 0 # tried network-transport-inmemory-0.5.2, but its *library* does not support: containers-0.6.4.1
6299+ - nri-test-encoding < 0 # tried nri-test-encoding-0.1.1.1, but its *library* requires the disabled package: servant-auth-server
6300+ - numhask-prelude < 0 # tried numhask-prelude-0.5.0, but its *library* does not support: numhask-0.8.1.0
6301+ - nvim-hs-ghcid < 0 # tried nvim-hs-ghcid-2.0.0.0, but its *library* requires the disabled package: nvim-hs-contrib
6302+ - oblivious-transfer < 0 # tried oblivious-transfer-0.1.0, but its *library* requires the disabled package: protolude
6303+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: Cabal-3.4.1.0
6304+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: base-4.15.1.0
6305+ - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: template-haskell-2.17.0.0
6306+ - oset < 0 # tried oset-0.4.0.1, but its *library* does not support: base-4.15.1.0
6307+ - packdeps < 0 # tried packdeps-0.6.0.0, but its *library* does not support: Cabal-3.4.1.0
6308+ - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: groups-0.5.3
6309+ - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: protolude-0.3.0
6310+ - pairing < 0 # tried pairing-1.1.0, but its *library* requires the disabled package: elliptic-curve
6311+ - pango < 0 # tried pango-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
6312+ - papillon < 0 # tried papillon-0.1.1.1, but its *library* does not support: template-haskell-2.17.0.0
6313+ - paripari < 0 # tried paripari-0.7.0.0, but its *library* does not support: parser-combinators-1.3.0
6314+ - path-text-utf8 < 0 # tried path-text-utf8-0.0.1.8, but its *library* does not support: path-0.9.2
6315+ - pcf-font-embed < 0 # tried pcf-font-embed-0.1.2.0, but its *library* requires the disabled package: pcf-font
6316+ - pedersen-commitment < 0 # tried pedersen-commitment-0.2.0, but its *library* requires the disabled package: protolude
6317+ - perfect-vector-shuffle < 0 # tried perfect-vector-shuffle-0.1.1.1, but its *library* does not support: base-4.15.1.0
6318+ - persistable-record < 0 # tried persistable-record-0.6.0.5, but its *library* requires the disabled package: th-data-compat
6319+ - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: persistable-record
6320+ - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: relational-query-HDBC
6321+ - persistent-mysql-haskell < 0 # tried persistent-mysql-haskell-0.6.0, but its *library* does not support: tls-1.5.7
6322+ - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: random-1.2.1
6323+ - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: scotty-0.12
6324+ - picedit < 0 # tried picedit-0.2.3.0, but its *executable* requires the disabled package: cli
6325+ - picedit < 0 # tried picedit-0.2.3.0, but its *library* does not support: JuicyPixels-3.3.6
6326+ - picedit < 0 # tried picedit-0.2.3.0, but its *library* does not support: hmatrix-0.20.2
6327+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: Cabal-3.4.1.0
6328+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: aeson-1.5.6.0
6329+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: base-4.15.1.0
6330+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: binary-orphans-1.0.2
6331+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: containers-0.6.4.1
6332+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: hashable-1.3.5.0
6333+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: shake-0.19.6
6334+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: yaml-0.11.6.0
6335+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: Cabal-3.4.1.0
6336+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base-4.15.1.0
6337+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
6338+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: containers-0.6.4.1
6339+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: hashable-1.3.5.0
6340+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: http-client-0.7.10
6341+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: shake-0.19.6
6342+ - pinboard < 0 # tried pinboard-0.10.2.0, but its *library* does not support: http-client-0.7.10
6343+ - pipes-category < 0 # tried pipes-category-0.3.0.0, but its *library* does not support: lens-5.0.1
6344+ - pipes-misc < 0 # tried pipes-misc-0.5.0.0, but its *library* requires the disabled package: pipes-category
6345+ - pipes-network-tls < 0 # tried pipes-network-tls-0.4, but its *library* requires the disabled package: pipes-network
6346+ - pixelated-avatar-generator < 0 # tried pixelated-avatar-generator-0.1.3, but its *executable* requires the disabled package: cli
6347+ - plot < 0 # tried plot-0.2.3.11, but its *library* requires the disabled package: cairo
6348+ - plot < 0 # tried plot-0.2.3.11, but its *library* requires the disabled package: pango
6349+ - pointful < 0 # tried pointful-1.1.0.0, but its *library* does not support: base-4.15.1.0
6350+ - pointful < 0 # tried pointful-1.1.0.0, but its *library* requires the disabled package: haskell-src-exts-simple
6351+ - polysemy-zoo < 0 # tried polysemy-zoo-0.7.0.2, but its *library* does not support: constraints-0.13.2
6352+ - pomaps < 0 # tried pomaps-0.2.0.1, but its *library* does not support: base-4.15.1.0
6353+ - pomaps < 0 # tried pomaps-0.2.0.1, but its *library* does not support: ghc-prim-0.7.0
6354+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: base-4.15.1.0
6355+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: hasql-1.5.0.1
6356+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: retry-0.9.0.0
6357+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* does not support: swagger2-2.7
6358+ - postgrest < 0 # tried postgrest-8.0.0, but its *library* requires the disabled package: hasql-dynamic-statements
6359+ - prairie < 0 # tried prairie-0.0.1.0, but its *library* does not support: template-haskell-2.17.0.0
6360+ - pred-set < 0 # tried pred-set-0.0.1, but its *library* requires the disabled package: HSet
6361+ - pred-trie < 0 # tried pred-trie-0.6.1, but its *library* requires the disabled package: pred-set
6362+ - pred-trie < 0 # tried pred-trie-0.6.1, but its *library* requires the disabled package: tries
6363+ - printcess < 0 # tried printcess-0.1.0.3, but its *library* does not support: containers-0.6.4.1
6364+ - printcess < 0 # tried printcess-0.1.0.3, but its *library* does not support: lens-5.0.1
6365+ - product-isomorphic < 0 # tried product-isomorphic-0.0.3.3, but its *library* requires the disabled package: th-data-compat
6366+ - protolude < 0 # tried protolude-0.3.0, but its *library* does not support: base-4.15.1.0
6367+ - protolude < 0 # tried protolude-0.3.0, but its *library* does not support: ghc-prim-0.7.0
6368+ - publicsuffix < 0 # tried publicsuffix-0.20200526, but its *library* does not support: base-4.15.1.0
6369+ - pure-io < 0 # tried pure-io-0.2.1, but its *library* does not support: base-4.15.1.0
6370+ - qnap-decrypt < 0 # tried qnap-decrypt-0.3.5, but its *executable* does not support: optparse-applicative-0.16.1.0
6371+ - questioner < 0 # tried questioner-0.1.1.0, but its *library* does not support: ansi-terminal-0.11.1
6372+ - questioner < 0 # tried questioner-0.1.1.0, but its *library* requires the disabled package: readline
6373+ - quickcheck-arbitrary-template < 0 # tried quickcheck-arbitrary-template-0.2.1.1, but its *library* does not support: template-haskell-2.17.0.0
6374+ - quickcheck-combinators < 0 # tried quickcheck-combinators-0.0.5, but its *library* requires the disabled package: unfoldable-restricted
6375+ - quickcheck-state-machine < 0 # tried quickcheck-state-machine-0.7.1, but its *library* requires the disabled package: markov-chain-usage-model
6376+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: aeson-1.5.6.0
6377+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: connection-0.3.1
6378+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: constraints-0.13.2
6379+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-api-data-0.4.3
6380+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-client-0.7.10
6381+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: lens-5.0.1
6382+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: req-3.9.2
6383+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* requires the disabled package: extensible
6384+ - ranged-list < 0 # tried ranged-list-0.1.0.0, but its *library* requires the disabled package: typecheck-plugin-nat-simple
6385+ - rank-product < 0 # tried rank-product-0.2.2.0, but its *library* requires the disabled package: random-fu
6386+ - rdf < 0 # tried rdf-0.1.0.5, but its *library* does not support: attoparsec-0.14.4
6387+ - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry
6388+ - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry-combinatorial
6389+ - reform-hsp < 0 # tried reform-hsp-0.2.7.2, but its *library* requires the disabled package: hsx2hs
6390+ - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-base-0.94.0.2
6391+ - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-pcre-builtin-0.95.2.3.8.44
6392+ - regex-tdfa-text < 0 # tried regex-tdfa-text-1.0.0.3, but its *library* does not support: regex-base-0.94.0.2
6393+ - registry < 0 # tried registry-0.2.1.0, but its *library* requires the disabled package: protolude
6394+ - relapse < 0 # tried relapse-1.0.0.0, but its *library* does not support: attoparsec-0.14.4
6395+ - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: persistable-record
6396+ - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: product-isomorphic
6397+ - relational-query-HDBC < 0 # tried relational-query-HDBC-0.7.2.0, but its *library* requires the disabled package: th-data-compat
6398+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: persistable-record
6399+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: product-isomorphic
6400+ - relational-record < 0 # tried relational-record-0.2.2.0, but its *library* requires the disabled package: relational-query-HDBC
6401+ - relational-schemas < 0 # tried relational-schemas-0.1.8.0, but its *library* requires the disabled package: relational-query
6402+ - repa-algorithms < 0 # tried repa-algorithms-3.4.1.4, but its *library* does not support: base-4.15.1.0
6403+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *executable* does not support: aeson-1.5.6.0
6404+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: base-4.15.1.0
6405+ - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: req-3.9.2
6406+ - rethinkdb-client-driver < 0 # tried rethinkdb-client-driver-0.0.25, but its *library* does not support: base-4.15.1.0
6407+ - rhine-gloss < 0 # tried rhine-gloss-0.7.0, but its *library* requires the disabled package: rhine
6408+ - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: attoparsec-0.14.4
6409+ - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: network-3.1.2.7
6410+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: aeson-1.5.6.0
6411+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: http-client-0.7.10
6412+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: network-3.1.2.7
6413+ - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: time-1.9.3
6414+ - safe-tensor < 0 # tried safe-tensor-0.2.1.1, but its *library* does not support: singletons-3.0.1
6415+ - salak-toml < 0 # tried salak-toml-0.3.5.3, but its *library* requires the disabled package: tomland
6416+ - sandwich-webdriver < 0 # tried sandwich-webdriver-0.1.0.6, but its *library* requires the disabled package: webdriver
6417+ - scalendar < 0 # tried scalendar-1.2.0, but its *library* does not support: containers-0.6.4.1
6418+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* does not support: aeson-1.5.6.0
6419+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* requires the disabled package: hjsonschema
6420+ - schematic < 0 # tried schematic-0.5.1.0, but its *library* requires the disabled package: validationt
6421+ - sendgrid-v3 < 0 # tried sendgrid-v3-0.3.0.0, but its *library* does not support: base-4.15.1.0
6422+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: aeson-1.5.6.0
6423+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: base-4.15.1.0
6424+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: http-client-0.7.10
6425+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: lens-5.0.1
6426+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: optparse-applicative-0.16.1.0
6427+ - seqloc < 0 # tried seqloc-0.6.1.1, but its *library* requires the disabled package: biocore
6428+ - sequence-formats < 0 # tried sequence-formats-1.6.1, but its *library* does not support: base-4.15.1.0
6429+ - sequenceTools < 0 # tried sequenceTools-1.5.0, but its *library* requires the disabled package: sequence-formats
6430+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: blaze-builder-0.4.2.2
6431+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: cryptonite-0.29
6432+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: exceptions-0.10.4
6433+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: http-api-data-0.4.3
6434+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: http-types-0.12.3
6435+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: memory-0.16.0
6436+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: servant-0.18.3
6437+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: servant-server-0.18.3
6438+ - servant-auth-cookie < 0 # tried servant-auth-cookie-0.6.0.3, but its *library* does not support: time-1.9.3
6439+ - servant-auth-docs < 0 # tried servant-auth-docs-0.2.10.0, but its *library* does not support: base-4.15.1.0
6440+ - servant-auth-server < 0 # tried servant-auth-server-0.4.6.0, but its *library* does not support: base64-bytestring-1.2.1.0
6441+ - servant-auth-swagger < 0 # tried servant-auth-swagger-0.2.10.1, but its *library* does not support: swagger2-2.7
6442+ - servant-errors < 0 # tried servant-errors-0.1.6.0, but its *library* does not support: base-4.15.1.0
6443+ - servant-js < 0 # tried servant-js-0.9.4.2, but its *executable* does not support: aeson-1.5.6.0
6444+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: containers-0.6.4.1
6445+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: formatting-7.1.3
6446+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: lens-5.0.1
6447+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: servant-0.18.3
6448+ - servant-kotlin < 0 # tried servant-kotlin-0.1.1.9, but its *library* does not support: time-1.9.3
6449+ - servant-mock < 0 # tried servant-mock-0.8.7, but its *library* does not support: QuickCheck-2.14.2
6450+ - servant-mock < 0 # tried servant-mock-0.8.7, but its *library* does not support: base-4.15.1.0
6451+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: http-media-0.8.0.0
6452+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: lens-5.0.1
6453+ - servant-pandoc < 0 # tried servant-pandoc-0.5.0.0, but its *library* does not support: pandoc-types-1.22.1
6454+ - servant-quickcheck < 0 # tried servant-quickcheck-0.0.10.0, but its *library* does not support: base-4.15.1.0
6455+ - servant-quickcheck < 0 # tried servant-quickcheck-0.0.10.0, but its *library* does not support: hspec-2.8.5
6456+ - servant-streaming < 0 # tried servant-streaming-0.3.0.0, but its *library* does not support: base-4.15.1.0
6457+ - servant-streaming < 0 # tried servant-streaming-0.3.0.0, but its *library* does not support: servant-0.18.3
6458+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: base-4.15.1.0
6459+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: http-media-0.8.0.0
6460+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: servant-0.18.3
6461+ - servant-streaming-client < 0 # tried servant-streaming-client-0.3.0.0, but its *library* does not support: servant-client-core-0.18.3
6462+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: base-4.15.1.0
6463+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: http-media-0.8.0.0
6464+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* does not support: servant-server-0.18.3
6465+ - servant-streaming-server < 0 # tried servant-streaming-server-0.3.0.0, but its *library* requires the disabled package: streaming-wai
6466+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: Cabal-3.4.1.0
6467+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: base-4.15.1.0
6468+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: lens-5.0.1
6469+ - servant-swagger < 0 # tried servant-swagger-1.1.10, but its *library* does not support: swagger2-2.7
6470+ - servant-yaml < 0 # tried servant-yaml-0.1.0.1, but its *library* does not support: base-4.15.1.0
6471+ - servant-yaml < 0 # tried servant-yaml-0.1.0.1, but its *library* does not support: servant-0.18.3
6472+ - serverless-haskell < 0 # tried serverless-haskell-0.12.6, but its *library* requires the disabled package: amazonka-core
6473+ - serversession-backend-persistent < 0 # tried serversession-backend-persistent-1.0.5, but its *library* does not support: base64-bytestring-1.2.1.0
6474+ - serversession-backend-redis < 0 # tried serversession-backend-redis-1.0.4, but its *library* does not support: hedis-0.15.0
6475+ - serversession-frontend-yesod < 0 # tried serversession-frontend-yesod-1.0, but its *library* does not support: yesod-core-1.6.21.0
6476+ - sessiontypes-distributed < 0 # tried sessiontypes-distributed-0.1.1, but its *library* does not support: exceptions-0.10.4
6477+ - sessiontypes-distributed < 0 # tried sessiontypes-distributed-0.1.1, but its *library* requires the disabled package: sessiontypes
6478+ - sexpr-parser < 0 # tried sexpr-parser-0.2.0.0, but its *library* does not support: base-4.15.1.0
6479+ - sexpr-parser < 0 # tried sexpr-parser-0.2.0.0, but its *library* does not support: megaparsec-9.2.0
6480+ - shake-plus-extended < 0 # tried shake-plus-extended-0.4.1.0, but its *library* requires the disabled package: ixset-typed
6481+ - show-prettyprint < 0 # tried show-prettyprint-0.3.0.1, but its *library* does not support: trifecta-2.1.2
6482+ - shower < 0 # tried shower-0.2.0.2, but its *library* does not support: base-4.15.1.0
6483+ - simplest-sqlite < 0 # tried simplest-sqlite-0.1.0.2, but its *library* does not support: template-haskell-2.17.0.0
6484+ - size-based < 0 # tried size-based-0.1.2.0, but its *library* does not support: template-haskell-2.17.0.0
6485+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: aeson-1.5.6.0
6486+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: base-4.15.1.0
6487+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: constraints-0.13.2
6488+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: lens-5.0.1
6489+ - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: random-1.2.1
6490+ - skeletons < 0 # tried skeletons-0.4.0, but its *executable* requires the disabled package: tinytemplate
6491+ - slack-web < 0 # tried slack-web-0.4.0.0, but its *library* does not support: http-client-0.7.10
6492+ - smallcheck-series < 0 # tried smallcheck-series-0.7.1.0, but its *library* does not support: base-4.15.1.0
6493+ - smash-lens < 0 # tried smash-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
6494+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: aeson-1.5.6.0
6495+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: attoparsec-0.14.4
6496+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: base-4.15.1.0
6497+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: dlist-1.0
6498+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: lens-5.0.1
6499+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: mwc-random-0.15.0.2
6500+ - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: pwstore-fast
6501+ - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: snap-server
6502+ - snap-blaze < 0 # tried snap-blaze-0.2.1.5, but its *library* requires the disabled package: snap-core
6503+ - snap-core < 0 # tried snap-core-1.0.4.2, but its *library* does not support: attoparsec-0.14.4
6504+ - socket-activation < 0 # tried socket-activation-0.1.0.2, but its *library* does not support: network-3.1.2.7
6505+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: inline-java-0.10.0
6506+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: jvm-0.6.0
6507+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: distributed-closure
6508+ - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: jni
6509+ - sparse-tensor < 0 # tried sparse-tensor-0.2.1.5, but its *library* does not support: ad-4.5
6510+ - speculation < 0 # tried speculation-1.5.0.3, but its *library* does not support: stm-2.5.0.0
6511+ - sqlite-simple-errors < 0 # tried sqlite-simple-errors-0.6.1.0, but its *library* does not support: text-1.2.5.0
6512+ - streamproc < 0 # tried streamproc-1.6.2, but its *library* does not support: base-4.15.1.0
6513+ - strict-base-types < 0 # tried strict-base-types-0.7, but its *library* requires the disabled package: strict-lens
6514+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-2.8.5
6515+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-core-2.8.5
6516+ - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: random-1.2.1
6517+ - structured-haskell-mode < 0 # tried structured-haskell-mode-1.1.0, but its *executable* does not support: haskell-src-exts-1.23.1
6518+ - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: Cabal-3.4.1.0
6519+ - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6520+ - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: attoparsec-0.14.4
6521+ - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: base-4.15.1.0
6522+ - sv-cassava < 0 # tried sv-cassava-0.3, but its *library* does not support: attoparsec-0.14.4
6523+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: attoparsec-0.14.4
6524+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: base-4.15.1.0
6525+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: lens-5.0.1
6526+ - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: profunctors-5.6.2
6527+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: containers-0.6.4.1
6528+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-api-data-0.4.3
6529+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-client-0.7.10
6530+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-media-0.8.0.0
6531+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: katip-0.8.7.0
6532+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: network-3.1.2.7
6533+ - swagger2 < 0 # tried swagger2-2.7, but its *library* does not support: aeson-1.5.6.0
6534+ - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src
6535+ - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src-th-mode
6536+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: containers-0.6.4.1
6537+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: tasty-1.4.2.1
6538+ - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: time-1.9.3
6539+ - tcp-streams-openssl < 0 # tried tcp-streams-openssl-1.0.1.0, but its *library* does not support: network-3.1.2.7
6540+ - termcolor < 0 # tried termcolor-0.2.0.0, but its *executable* requires the disabled package: cli
6541+ - termonad < 0 # tried termonad-4.2.0.0, but its *library* requires the disabled package: xml-html-qq
6542+ - test-fixture < 0 # tried test-fixture-0.5.1.0, but its *library* does not support: template-haskell-2.17.0.0
6543+ - test-framework-th < 0 # tried test-framework-th-0.2.4, but its *library* requires the disabled package: language-haskell-extract
6544+ - testing-feat < 0 # tried testing-feat-1.1.0.0, but its *library* requires the disabled package: size-based
6545+ - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-1.2.5.0
6546+ - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-format-0.3.2
6547+ - text-format < 0 # tried text-format-0.3.2, but its *library* does not support: base-4.15.1.0
6548+ - text-generic-pretty < 0 # tried text-generic-pretty-1.2.1, but its *library* does not support: wl-pprint-text-1.2.0.2
6549+ - th-to-exp < 0 # tried th-to-exp-0.0.1.1, but its *library* does not support: template-haskell-2.17.0.0
6550+ - threepenny-gui < 0 # tried threepenny-gui-0.9.1.0, but its *library* requires the disabled package: snap-server
6551+ - threepenny-gui-flexbox < 0 # tried threepenny-gui-flexbox-0.4.2, but its *library* requires the disabled package: threepenny-gui
6552+ - thumbnail-plus < 0 # tried thumbnail-plus-1.0.5, but its *library* does not support: either-5.0.1.1
6553+ - token-bucket < 0 # tried token-bucket-0.1.0.1, but its *library* does not support: base-4.15.1.0
6554+ - tonalude < 0 # tried tonalude-0.1.1.1, but its *library* does not support: base-4.15.1.0
6555+ - tonaparser < 0 # tried tonaparser-0.1.0.1, but its *library* does not support: base-4.15.1.0
6556+ - tonatona < 0 # tried tonatona-0.1.2.1, but its *library* does not support: base-4.15.1.0
6557+ - tonatona-logger < 0 # tried tonatona-logger-0.2.0.2, but its *library* does not support: base-4.15.1.0
6558+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: base-4.15.1.0
6559+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-2.13.2.2
6560+ - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-postgresql-2.13.2.2
6561+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: base-4.15.1.0
6562+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-2.13.2.2
6563+ - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-sqlite-2.13.0.4
6564+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: base-4.15.1.0
6565+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-0.18.3
6566+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-server-0.18.3
6567+ - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: wai-extra-3.1.8
6568+ - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: base-4.15.1.0
6569+ - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: writer-cps-transformers-0.5.6.1
6570+ - transient-universe < 0 # tried transient-universe-0.6.0.1, but its *library* does not support: network-3.1.2.7
6571+ - tries < 0 # tried tries-0.0.6.1, but its *library* requires the disabled package: rose-trees
6572+ - true-name < 0 # tried true-name-0.1.0.3, but its *library* does not support: template-haskell-2.17.0.0
6573+ - type-combinators-singletons < 0 # tried type-combinators-singletons-0.2.1.0, but its *library* requires the disabled package: type-combinators
6574+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6575+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: attoparsec-0.14.4
6576+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: base-4.15.1.0
6577+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: cryptonite-0.29
6578+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: parser-combinators-1.3.0
6579+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6580+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base-4.15.1.0
6581+ - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
6582+ - unfoldable-restricted < 0 # tried unfoldable-restricted-0.0.3, but its *library* requires the disabled package: unfoldable
6583+ - uniprot-kb < 0 # tried uniprot-kb-0.1.2.0, but its *library* does not support: attoparsec-0.14.4
6584+ - uri-templater < 0 # tried uri-templater-0.3.1.0, but its *library* does not support: trifecta-2.1.2
6585+ - urlpath < 0 # tried urlpath-9.0.1, but its *library* requires the disabled package: attoparsec-uri
6586+ - userid < 0 # tried userid-0.1.3.6, but its *library* does not support: base-4.15.1.0
6587+ - utf8-conversions < 0 # tried utf8-conversions-0.1.0.4, but its *library* does not support: text-short-0.1.5
6588+ - vado < 0 # tried vado-0.0.13, but its *library* does not support: attoparsec-0.14.4
6589+ - vado < 0 # tried vado-0.0.13, but its *library* does not support: base-4.15.1.0
6590+ - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: base-4.15.1.0
6591+ - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: containers-0.6.4.1
6592+ - vector-circular < 0 # tried vector-circular-0.1.3, but its *library* does not support: template-haskell-2.17.0.0
6593+ - vector-fftw < 0 # tried vector-fftw-0.1.4.0, but its *library* does not support: base-4.15.1.0
6594+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: base-4.15.1.0
6595+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: brick-0.66.1
6596+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: lens-5.0.1
6597+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: vty-5.33
6598+ - wai-middleware-crowd < 0 # tried wai-middleware-crowd-0.1.4.2, but its *executable* does not support: optparse-applicative-0.16.1.0
6599+ - wai-middleware-metrics < 0 # tried wai-middleware-metrics-0.2.4, but its *library* requires the disabled package: ekg-core
6600+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: aeson-1.5.6.0
6601+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: http-client-0.7.10
6602+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: time-1.9.3
6603+ - wai-middleware-throttle < 0 # tried wai-middleware-throttle-0.3.0.1, but its *library* requires the disabled package: token-bucket
6604+ - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-predicates
6605+ - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-route
6606+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: attoparsec-0.14.4
6607+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: base-4.15.1.0
6608+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: dlist-1.0
6609+ - web-routes-th < 0 # tried web-routes-th-0.22.6.6, but its *library* does not support: template-haskell-2.17.0.0
6610+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: OneTuple-0.3.1
6611+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: aeson-1.5.6.0
6612+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: attoparsec-0.14.4
6613+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: base-4.15.1.0
6614+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: cryptonite-0.29
6615+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: hspec-2.8.5
6616+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: http-client-0.7.10
6617+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: memory-0.16.0
6618+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-0.18.3
6619+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-client-0.18.3
6620+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: template-haskell-2.17.0.0
6621+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: vinyl-0.13.3
6622+ - webby < 0 # tried webby-1.0.1, but its *library* does not support: formatting-7.1.3
6623+ - webdriver < 0 # tried webdriver-0.9.0.1, but its *library* does not support: base-4.15.1.0
6624+ - webdriver-angular < 0 # tried webdriver-angular-0.1.11, but its *library* does not support: language-javascript-0.7.1.0
6625+ - webdriver-angular < 0 # tried webdriver-angular-0.1.11, but its *library* does not support: webdriver-0.9.0.1
6626+ - websockets-snap < 0 # tried websockets-snap-0.10.3.1, but its *library* requires the disabled package: snap-server
6627+ - wl-pprint-extras < 0 # tried wl-pprint-extras-3.5.0.5, but its *library* does not support: containers-0.6.4.1
6628+ - wl-pprint-terminfo < 0 # tried wl-pprint-terminfo-3.7.1.4, but its *library* does not support: containers-0.6.4.1
6629+ - wrecker < 0 # tried wrecker-1.3.2.0, but its *library* requires the disabled package: next-ref
6630+ - wrecker < 0 # tried wrecker-1.3.2.0, but its *library* requires the disabled package: threads-extras
6631+ - writer-cps-full < 0 # tried writer-cps-full-0.1.0.0, but its *library* requires the disabled package: writer-cps-morph
6632+ - writer-cps-lens < 0 # tried writer-cps-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
6633+ - ws < 0 # tried ws-0.0.5, but its *library* requires the disabled package: attoparsec-uri
6634+ - xml-html-qq < 0 # tried xml-html-qq-0.1.0.1, but its *library* requires the disabled package: heterocephalus
6635+ - xml-isogen < 0 # tried xml-isogen-0.3.0, but its *library* requires the disabled package: dom-parser
6636+ - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* does not support: yeshql-core-4.2.0.0
6637+ - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* requires the disabled package: yeshql-hdbc
6638+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: persistent-2.13.2.2
6639+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-auth-1.6.10.5
6640+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-core-1.6.21.0
6641+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-form-1.7.0
6642+ - yesod-form-richtext < 0 # tried yesod-form-richtext-0.1.0.2, but its *library* does not support: yesod-core-1.6.21.0
6643+ - yesod-form-richtext < 0 # tried yesod-form-richtext-0.1.0.2, but its *library* does not support: yesod-form-1.7.0
6644+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *executable* does not support: yesod-1.6.1.2
6645+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: language-javascript-0.7.1.0
6646+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: yesod-core-1.6.21.0
6647+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* does not support: yesod-static-1.6.1.0
6648+ - yesod-static-angular < 0 # tried yesod-static-angular-0.1.8, but its *library* requires the disabled package: hamlet
6649+ - zasni-gerna < 0 # tried zasni-gerna-0.0.7.1, but its *library* requires the disabled package: papillon
6650+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: base-compat-0.11.2
6651+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: servant-0.18.3
6652+ - ziptastic-client < 0 # tried ziptastic-client-0.3.0.3, but its *library* does not support: servant-client-0.18.3
6653+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: aeson-1.5.6.0
6654+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: base-compat-0.11.2
6655+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: http-api-data-0.4.3
6656+ - ziptastic-core < 0 # tried ziptastic-core-0.2.0.3, but its *library* does not support: servant-0.18.3
6657+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: containers-0.6.4.1
6658+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: flat-0.4.4
6659+ - zm < 0 # tried zm-0.3.2, but its *library* does not support: model-0.5
6660+ - zydiskell < 0 # tried zydiskell-0.2.0.0, but its *library* does not support: base-4.15.1.0
6661+ - zydiskell < 0 # tried zydiskell-0.2.0.0, but its *library* does not support: storable-record-0.0.6
6662+ # End of Library and exe bounds failures
6663+
6664+ "Stackage upper bounds":
6665+
6666+ # https://github.com/commercialhaskell/stackage/issues/6122
6667+ - mmorph < 1.2
6668+
6669+ # https://github.com/commercialhaskell/stackage/issues/6184
6670+ - base-compat < 0.12
6671+
6672+ # https://github.com/commercialhaskell/stackage/issues/6185
6673+ - base-compat-batteries < 0.12
6674+
6675+ # aeson-2
6676+ # https://github.com/commercialhaskell/stackage/issues/6217
6677+ # https://github.com/commercialhaskell/stackage/issues/6402
6678+ # https://github.com/commercialhaskell/stackage/issues/6243
6679+ # https://github.com/commercialhaskell/stackage/issues/6393
6680+ - aeson < 2.0.0.0
6681+ - aura < 3.2.6
6682+ - avro < 0.6.0.0
6683+ - cabal-flatpak < 0.1.0.3
6684+ - core-data < 0.3.0.0
6685+ - eventstore < 1.4.2
6686+ - faktory < 1.1.2.1
6687+ - flow < 2.0.0.0
6688+ - forma < 1.2.0
6689+ - geojson < 4.1.0
6690+ - greskell < 2.0.0.0
6691+ - greskell-core < 1.0.0.0
6692+ - greskell-websocket < 1.0.0.0
6693+ - hruby < 0.4.0.0
6694+ - hspec-expectations-json < 1.0.0.5
6695+ - http2 < 3.0.3
6696+ - jose < 0.9
6697+ - jsonpath < 0.2.1.0
6698+ - kanji < 3.5
6699+ - microlens-aeson < 2.4
6700+ - mmark-cli < 0.0.5.1
6701+ - pandoc-plot < 1.4.0
6702+ - postgresql-binary < 0.12.4.2
6703+ - servant-tracing < 0.2.0.0
6704+ - shikensu < 0.4.0
6705+ - stache < 2.3.1
6706+ - stripe-scotty < 1.1.0.1
6707+ - stripe-wreq < 1.0.1.12
6708+ - yaml < 0.11.7
6709+
6710+ # https://github.com/commercialhaskell/stackage/issues/6264
6711+ # Requires GHC 9.2
6712+ # Any new package-version that must use GHC 9.2 should be added here.
6713+ # We'll Remove this section along with the nightly upgrade to GHC 9.2.
6714+ - dbus < 1.2.23
6715+ - eliminators < 0.9
6716+ - ghc-exactprint < 1.1
6717+ - ghc-lib < 9.2.1.20211030
6718+ - ghc-lib-parser < 9.2.1.20211030
6719+ - ghc-lib-parser-ex < 9.2.0.0
6720+ - ghc-syntax-highlighter < 0.0.8 # requires ghc-lib-parser >= 9.2
6721+ - ormolu < 0.4.0.0
6722+ - singletons-base < 3.1
6723+ - singletons-th < 3.1
6724+ - th-desugar < 1.13
6725+ - fourmolu < 0.5.0.0
6726+
6727+ # https://github.com/commercialhaskell/stackage/issues/6268
6728+ - hashable < 1.4.0.0
6729+
6730+ # https://github.com/commercialhaskell/stackage/issues/6273
6731+ - freckle-app < 1.0.1
6732+
6733+ # https://github.com/commercialhaskell/stackage/issues/6292
6734+ - doctest < 0.19
6735+
6736+ # https://github.com/commercialhaskell/stackage/issues/6297
6737+ - hspec-discover < 2.9
6738+
6739+ # https://github.com/commercialhaskell/stackage/issues/6298
6740+ - hspec-core < 2.9
6741+ - hspec-meta < 2.9
6742+
6743+ # https://github.com/commercialhaskell/stackage/issues/6299
6744+ - hspec < 2.9
6745+
6746+ # https://github.com/commercialhaskell/stackage/issues/6308
6747+ - semigroups < 0.20
6748+
6749+ # https://github.com/commercialhaskell/stackage/issues/6309
6750+ - polysemy < 1.7
6751+ - polysemy-plugin < 0.4.2
6752+
6753+ # https://github.com/commercialhaskell/stackage/issues/6310
6754+ - lens < 5.1
6755+
6756+ # https://github.com/commercialhaskell/stackage/issues/6322
6757+ - hashtables < 1.3
6758+
6759+ # https://github.com/commercialhaskell/stackage/issues/6348
6760+ - headed-megaparsec < 0.2.0.2
6761+ - rebase < 1.14
6762+ - rerebase < 1.14
6763+ - selective < 0.5
6764+ - yaml-unscrambler < 0.1.0.5
6765+
6766+ # https://github.com/commercialhaskell/stackage/issues/6388
6767+ # issue is for 5.0, but 4.0.4 is deprecated.
6768+ - hw-kafka-client < 4.0.4
6769+
6770+ # https://github.com/commercialhaskell/stackage/issues/6395
6771+ - wuss < 2.0
6772+
6773+ # https://github.com/haskell-game/sdl2/issues/240 (need newer Ubuntu)
6774+ - sdl2 < 2.5.3.1
6775+
6776+ # https://github.com/commercialhaskell/stack/issues/5670 (fails with Cabal-3.4)
6777+ - stack < 0
6778+
6779+ # https://github.com/commercialhaskell/stackage/issues/6401
6780+ - rope-utf16-splay < 0.4
2650
6781
6782+# end of packages
2651
6783
2652# 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
2653# global-flags
6785# global-flags
2654package-flags:
6786package-flags:
6787+ QuickCheck:
6788+ old-random: false
6789+ pathtype:
6790+ old-time: false
6791+
2655 brick:
6792 brick:
2656 demos: true
6793 demos: true
2657
6794
6795+ bz2:
6796+ with-bzlib: false # Exclude bzlib from benchmarks to avoid unnecessary dependencies.
6797+
2658 mersenne-random-pure64:
6798 mersenne-random-pure64:
2659 small_base: false
6799 small_base: false
2660
6800
@@ -2663,12 +6803,15 @@ package-flags:
2663 simplelocalnet: true
6803 simplelocalnet: true
2664 p2p: true
6804 p2p: true
2665
6805
2666− logfloat:
2667− splitbase: true
2668−
2669 curl:
6806 curl:
2670 new-base: true
6807 new-base: true
2671
6808
6809+ hpio:
6810+ test-hlint: false
6811+
6812+ idris:
6813+ ffi: true
6814+
2672 hxt:
6815 hxt:
2673 network-uri: true
6816 network-uri: true
2674 hxt-http:
6817 hxt-http:
@@ -2676,28 +6819,15 @@ package-flags:
2676 hxt-relaxng:
6819 hxt-relaxng:
2677 network-uri: true
6820 network-uri: true
2678
6821
2679− pandoc:
2680− https: true
2681− old-locale: false
2682−
2683 text:
6822 text:
2684 integer-simple: false
6823 integer-simple: false
2685
6824
2686 tar:
6825 tar:
2687 old-time: false
6826 old-time: false
2688
6827
2689− # https://github.com/fpco/stackage/pull/482#issuecomment-83635207
2690− jose-jwt:
2691− doctest: false
2692−
2693 time-locale-compat:
6828 time-locale-compat:
2694 old-locale: false
6829 old-locale: false
2695
6830
2696− th-data-compat:
2697− template-haskell-210: false
2698− th-reify-compat:
2699− template-haskell-210: false
2700−
2701 HsOpenSSL:
6831 HsOpenSSL:
2702 fast-bignum: false
6832 fast-bignum: false
2703
6833
@@ -2724,34 +6854,63 @@ package-flags:
2724 ghc_7_7: false
6854 ghc_7_7: false
2725 ghc_8_0: true
6855 ghc_8_0: true
2726
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+
2727# end of package-flags
6897# end of package-flags
2728
6898
2729# Special configure options for individual packages
6899# Special configure options for individual packages
2730
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
2731−configure-args:
6903+configure-args: {}
2732− jni:
2733− - --extra-lib-dirs
2734− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2735− - --extra-include-dirs
2736− - /usr/lib/jvm/java-8-openjdk-amd64/include
2737− sparkle:
2738− - --extra-lib-dirs
2739− - /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server
2740− - --extra-include-dirs
2741− - /usr/lib/jvm/java-8-openjdk-amd64/include
2742− hocilib:
2743− - --extra-lib-dirs
2744− - /usr/local/lib
2745−
2746# end of configure-args
6904# end of configure-args
2747
6905
2748
6906
2749# Used for packages that cannot be built on Linux
6907# Used for packages that cannot be built on Linux
2750skipped-builds:
6908skipped-builds:
2751 - hfsevents
6909 - hfsevents
6910+ - lzma-clib
2752 - Win32
6911 - Win32
2753 - Win32-notify
6912 - Win32-notify
2754− - Win32-extras
6913+ - windns
2755
6914
2756# end of skipped-builds
6915# end of skipped-builds
2757
6916
@@ -2761,312 +6920,912 @@ skipped-builds:
2761# or if Setup fails because of missing foreign libraries.
6920# or if Setup fails because of missing foreign libraries.
2762# Otherwise place them in expected-test-failures.
6921# Otherwise place them in expected-test-failures.
2763skipped-tests:
6922skipped-tests:
2764− # Outdated dependencies
6923+ # aeson-2
2765− # These can periodically be checked for updates;
6924+ # https://github.com/commercialhaskell/stackage/issues/6217
2766− # just remove these lines and run `stackage-curator check' to verify.
6925+ - jsonifier
2767− - Cabal # QuickCheck 2.9
6926+ - req
2768− - ChasingBottoms # QuickCheck 2.9
6927+
2769− - ReadArgs # https://github.com/rampion/ReadArgs/issues/8
6928+ # Missing foreign libraries
2770− - bytestring-handle # QuickCheck 2.9
6929+ - symengine
2771− - cases # https://github.com/nikita-volkov/cases/pull/3
6930+
2772− - cgi # QuickCheck 2.9
6931+ # Timeouts
2773− - chell # options & via chell-quickcheck
6932+ # These tests sometimes take too long and hit the stackage build
2774− - concurrent-extra # https://github.com/basvandijk/concurrent-extra/pull/15
6933+ # servers time limit so these shouldn't be removed from
2775− - ed25519 # QuickCheck 2.9
6934+ # skipped-tests unless we know a fix has been released.
2776− - hasql # QuickCheck 2.9
6935+ - accelerate-fourier
2777− - hastache # https://github.com/lymar/hastache/pull/53
6936+ - cabal-helper
2778− - heaps # https://github.com/ekmett/heaps/pull/8
6937+ - graphviz
2779− - hyphenation # https://github.com/ekmett/hyphenation/pull/10
6938+ - network-attoparsec
2780− - pure-cdb # test-simple
6939+ - punycode
2781− - state-plus # QuickCheck 2.9
6940+ - unagi-chan
2782− - system-filepath # QuickCheck 2.9
6941+ - zeromq4-patterns
2783− - vector # https://github.com/haskell/vector/commit/31edb3fc51e76facc1e291f1e9e721663d91dbd8
6942+ - port-utils
2784− - zlib # 0.6.1.1-r3 https://github.com/haskell/zlib/issues/2
2785− - snap # QuickCheck 2.9
2786− - terminal-progress-bar # depends on older version of itself
2787−
2788− # Transitive outdated dependencies
2789− # These packages
2790− # These can also be checked for updates periodically.
2791− - MissingH # via testpack https://github.com/jgoerzen/testpack/issues/11
2792− - clustering # via RLang-QQ via HList https://github.com/kaizhang/clustering/issues/2 (also sent e-mail to HList maintainer)
2793− - options # QuickCheck via chell-quickcheck
2794− - uri-bytestring # haskell-src-exts via derive
2795−
2796− # Blocked by stackage upper bounds. These can be re-enabled once
2797− # the relevant stackage upper bound is lifted.
2798−
2799−
2800− # Runtime issues
2801 - 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
2802 - 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
2803 - 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
2804
7039
2805− # Missing foreign library
7040+ # TODO
2806− - symengine # symengine
7041+ - rpmbuild-order
2807−
7042+
7043+ # Revision to package caused it to require bounds and break
7044+ - htoml # https://github.com/commercialhaskell/stackage/issues/6239
7045+
7046+ # was in expected test failures, but seems we may have to skip
7047+ # entirely for unknown reasons, previously:
7048+ # https://github.com/clash-lang/clash-compiler/issues/1622
7049+ - clash-prelude
7050+
7051+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
7052+ #
7053+ # Test bounds issues
7054+ - ENIG # tried ENIG-0.0.1.0, but its *test-suite* requires the disabled package: test-framework-th
7055+ - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: hspec-2.8.5
7056+ - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: http-client-0.7.10
7057+ - MissingH # tried MissingH-1.4.3.0, but its *test-suite* requires the disabled package: errorcall-eq-instance
7058+ - aeson # tried aeson-1.5.6.0, but its *test-suite* does not support: hashable-time-0.3
7059+ - airship # tried airship-0.9.4, but its *test-suite* does not support: tasty-1.4.2.1
7060+ - algebraic-graphs # tried algebraic-graphs-0.5, but its *test-suite* does not support: QuickCheck-2.14.2
7061+ - antiope-core # tried antiope-core-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7062+ - antiope-core # tried antiope-core-7.5.3, but its *test-suite* requires the disabled package: aeson-lens
7063+ - antiope-messages # tried antiope-messages-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7064+ - antiope-s3 # tried antiope-s3-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7065+ - antiope-sns # tried antiope-sns-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7066+ - antiope-sqs # tried antiope-sqs-7.5.3, but its *test-suite* does not support: hspec-2.8.5
7067+ - arbor-lru-cache # tried arbor-lru-cache-0.1.1.1, but its *test-suite* does not support: hspec-2.8.5
7068+ - asif # tried asif-6.0.4, but its *test-suite* does not support: doctest-0.18.2
7069+ - avro # tried avro-0.5.2.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7070+ - barrier # tried barrier-0.1.1, but its *test-suite* does not support: lens-family-core-2.1.0
7071+ - barrier # tried barrier-0.1.1, but its *test-suite* does not support: tasty-1.4.2.1
7072+ - bits-extra # tried bits-extra-0.0.2.0, but its *test-suite* does not support: hspec-2.8.5
7073+ - blaze-html # tried blaze-html-0.9.1.2, but its *test-suite* does not support: QuickCheck-2.14.2
7074+ - bloodhound # tried bloodhound-0.18.0.0, but its *test-suite* requires the disabled package: quickcheck-properties
7075+ - boolean-normal-forms # tried boolean-normal-forms-0.0.1.1, but its *test-suite* does not support: QuickCheck-2.14.2
7076+ - cassava-conduit # tried cassava-conduit-0.6.0, but its *test-suite* does not support: QuickCheck-2.14.2
7077+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: hspec-2.8.5
7078+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: servant-server-0.18.3
7079+ - chatwork # tried chatwork-0.1.3.5, but its *test-suite* does not support: warp-3.3.18
7080+ - clay # tried clay-0.13.3, but its *test-suite* does not support: hspec-2.8.5
7081+ - clay # tried clay-0.13.3, but its *test-suite* does not support: hspec-discover-2.8.5
7082+ - colour # tried colour-2.3.6, but its *test-suite* does not support: random-1.2.1
7083+ - csg # tried csg-0.1.0.6, but its *test-suite* does not support: doctest-0.18.2
7084+ - csg # tried csg-0.1.0.6, but its *test-suite* does not support: tasty-1.4.2.1
7085+ - darcs # tried darcs-2.16.4, but its *test-suite* does not support: QuickCheck-2.14.2
7086+ - dhall-lsp-server # tried dhall-lsp-server-1.0.17, but its *test-suite* does not support: lsp-test-0.14.0.2
7087+ - distributed-process-lifted # tried distributed-process-lifted-0.3.0.1, but its *test-suite* does not support: network-transport-tcp-0.8.0
7088+ - distributed-process-lifted # tried distributed-process-lifted-0.3.0.1, but its *test-suite* requires the disabled package: rematch
7089+ - doldol # tried doldol-0.4.1.2, but its *test-suite* requires the disabled package: test-framework-th
7090+ - drawille # tried drawille-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7091+ - dual-tree # tried dual-tree-0.2.3.0, but its *test-suite* requires the disabled package: testing-feat
7092+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: QuickCheck-2.14.2
7093+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: directory-1.3.6.2
7094+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: doctest-0.18.2
7095+ - ed25519 # tried ed25519-0.0.5.0, but its *test-suite* does not support: hlint-3.3.6
7096+ - edit # tried edit-1.0.1.0, but its *test-suite* does not support: doctest-0.18.2
7097+ - edit # tried edit-1.0.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7098+ - elm-street # tried elm-street-0.1.0.4, but its *test-suite* does not support: hspec-2.8.5
7099+ - errors-ext # tried errors-ext-0.4.2, but its *test-suite* requires the disabled package: binary-ext
7100+ - euler-tour-tree # tried euler-tour-tree-0.1.1.0, but its *test-suite* requires the disabled package: sequence
7101+ - eventsource-stub-store # tried eventsource-stub-store-1.1.1, but its *test-suite* requires the disabled package: eventsource-store-specs
7102+ - extensible-effects # tried extensible-effects-5.0.0.1, but its *test-suite* requires the disabled package: test-framework-th
7103+ - filtrable # tried filtrable-0.1.6.0, but its *test-suite* does not support: tasty-1.4.2.1
7104+ - focuslist # tried focuslist-0.1.1.0, but its *test-suite* does not support: genvalidity-1.0.0.1
7105+ - focuslist # tried focuslist-0.1.1.0, but its *test-suite* does not support: validity-0.12.0.0
7106+ - ftp-client # tried ftp-client-0.5.1.4, but its *test-suite* does not support: tasty-1.4.2.1
7107+ - ftp-client # tried ftp-client-0.5.1.4, but its *test-suite* does not support: tasty-hspec-1.2
7108+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: QuickCheck-2.14.2
7109+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: bitvec-1.1.2.0
7110+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: groups-0.5.3
7111+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: integer-gmp-1.1
7112+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: semirings-0.6
7113+ - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: tasty-1.4.2.1
7114+ - generic-xmlpickler # tried generic-xmlpickler-0.1.0.6, but its *test-suite* does not support: tasty-1.4.2.1
7115+ - ghc-prof # tried ghc-prof-1.4.1.9, but its *test-suite* does not support: attoparsec-0.14.4
7116+ - gitlib-libgit2 # tried gitlib-libgit2-3.1.2.1, but its *test-suite* requires the disabled package: gitlib-test
7117+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-2.8.5
7118+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-discover-2.8.5
7119+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: optparse-applicative-0.16.1.0
7120+ - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: tree-diff-0.2.1.1
7121+ - haskell-names # tried haskell-names-0.9.9, but its *test-suite* does not support: tasty-1.4.2.1
7122+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7123+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* requires the disabled package: knob
7124+ - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: Glob-0.10.2
7125+ - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7126+ - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: network-3.1.2.7
7127+ - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7128+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: polyparse-1.13
7129+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7130+ - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: time-1.9.3
7131+ - haskell-tools-rewrite # tried haskell-tools-rewrite-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7132+ - haskey-mtl # tried haskey-mtl-0.3.1.0, but its *test-suite* does not support: lens-5.0.1
7133+ - hasmin # tried hasmin-1.0.3, but its *test-suite* does not support: doctest-0.18.2
7134+ - heist # tried heist-1.1.0.1, but its *test-suite* does not support: lens-5.0.1
7135+ - hidden-char # tried hidden-char-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7136+ - hspec-tables # tried hspec-tables-0.0.1, but its *test-suite* does not support: hspec-2.8.5
7137+ - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7138+ - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: base-4.15.1.0
7139+ - http-streams # tried http-streams-0.8.9.4, but its *test-suite* requires the disabled package: snap-server
7140+ - hw-balancedparens # tried hw-balancedparens-0.4.1.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7141+ - hw-bits # tried hw-bits-0.7.2.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7142+ - hw-conduit # tried hw-conduit-0.2.1.0, but its *test-suite* does not support: hspec-2.8.5
7143+ - hw-dsv # tried hw-dsv-0.4.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7144+ - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7145+ - hw-excess # tried hw-excess-0.2.3.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7146+ - hw-fingertree # tried hw-fingertree-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7147+ - hw-fingertree-strict # tried hw-fingertree-strict-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7148+ - hw-int # tried hw-int-0.0.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7149+ - hw-ip # tried hw-ip-2.4.2.0, but its *test-suite* does not support: hspec-2.8.5
7150+ - hw-json # tried hw-json-1.3.2.2, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7151+ - hw-json-simple-cursor # tried hw-json-simple-cursor-0.1.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7152+ - hw-json-standard-cursor # tried hw-json-standard-cursor-0.2.3.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7153+ - hw-mquery # tried hw-mquery-0.2.1.0, but its *test-suite* does not support: hspec-2.8.5
7154+ - hw-packed-vector # tried hw-packed-vector-0.2.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7155+ - hw-parser # tried hw-parser-0.1.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7156+ - hw-prim # tried hw-prim-0.6.3.0, but its *test-suite* does not support: hspec-2.8.5
7157+ - hw-rankselect # tried hw-rankselect-0.13.4.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7158+ - hw-rankselect-base # tried hw-rankselect-base-0.3.4.1, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7159+ - hw-simd # tried hw-simd-0.1.2.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7160+ - hw-streams # tried hw-streams-0.0.1.0, but its *test-suite* does not support: hspec-2.8.5
7161+ - hw-xml # tried hw-xml-0.5.1.0, but its *test-suite* requires the disabled package: hw-hspec-hedgehog
7162+ - indexed-containers # tried indexed-containers-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7163+ - irc-dcc # tried irc-dcc-2.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7164+ - irc-dcc # tried irc-dcc-2.0.1, but its *test-suite* does not support: tasty-hspec-1.2
7165+ - json-rpc-client # tried json-rpc-client-0.2.5.0, but its *test-suite* does not support: QuickCheck-2.14.2
7166+ - jwt # tried jwt-0.11.0, but its *test-suite* does not support: doctest-0.18.2
7167+ - libjwt-typed # tried libjwt-typed-0.2, but its *test-suite* does not support: hspec-2.8.5
7168+ - libjwt-typed # tried libjwt-typed-0.2, but its *test-suite* does not support: hspec-core-2.8.5
7169+ - libraft # tried libraft-0.5.0.0, but its *test-suite* requires the disabled package: quickcheck-state-machine
7170+ - linear-accelerate # tried linear-accelerate-0.7.0.0, but its *test-suite* does not support: doctest-0.18.2
7171+ - lrucaching # tried lrucaching-0.3.3, but its *test-suite* does not support: hspec-2.8.5
7172+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: Glob-0.10.2
7173+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7174+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: base-4.15.1.0
7175+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: doctest-0.18.2
7176+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-1.4.2.1
7177+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-hunit-0.10.0.3
7178+ - makefile # tried makefile-1.1.0.0, but its *test-suite* does not support: tasty-quickcheck-0.10.2
7179+ - map-syntax # tried map-syntax-0.3, but its *test-suite* does not support: hspec-2.8.5
7180+ - menshen # tried menshen-0.0.3, but its *test-suite* does not support: QuickCheck-2.14.2
7181+ - messagepack # tried messagepack-0.5.4, but its *test-suite* requires the disabled package: test-framework-th
7182+ - monad-par # tried monad-par-0.3.5, but its *test-suite* requires the disabled package: test-framework-th
7183+ - msgpack # tried msgpack-1.0.1.0, but its *test-suite* does not support: QuickCheck-2.14.2
7184+ - msgpack # tried msgpack-1.0.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7185+ - multistate # tried multistate-0.8.0.3, but its *test-suite* does not support: hspec-2.8.5
7186+ - nakadi-client # tried nakadi-client-0.7.0.0, but its *test-suite* does not support: classy-prelude-1.5.0.2
7187+ - netrc # tried netrc-0.2.0.0, but its *test-suite* does not support: tasty-1.4.2.1
7188+ - network-transport-inmemory # tried network-transport-inmemory-0.5.2, but its *test-suite* does not support: network-transport-tests-0.3.0
7189+ - numhask-prelude # tried numhask-prelude-0.5.0, but its *test-suite* does not support: doctest-0.18.2
7190+ - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell
7191+ - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell-quickcheck
7192+ - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-2.8.5
7193+ - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-discover-2.8.5
7194+ - partial-semigroup # tried partial-semigroup-0.5.1.14, but its *test-suite* does not support: doctest-0.18.2
7195+ - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
7196+ - postgrest # tried postgrest-8.0.0, but its *test-suite* does not support: hspec-2.8.5
7197+ - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: HUnit-1.6.2.0
7198+ - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: QuickCheck-2.14.2
7199+ - qnap-decrypt # tried qnap-decrypt-0.3.5, but its *test-suite* does not support: hspec-2.8.5
7200+ - quickcheck-state-machine # tried quickcheck-state-machine-0.7.1, but its *test-suite* requires the disabled package: hs-rqlite
7201+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: hspec-2.8.5
7202+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: servant-server-0.18.3
7203+ - rakuten # tried rakuten-0.1.1.5, but its *test-suite* does not support: warp-3.3.18
7204+ - records-sop # tried records-sop-0.1.1.0, but its *test-suite* does not support: hspec-2.8.5
7205+ - req-url-extra # tried req-url-extra-0.1.1.0, but its *test-suite* does not support: hspec-2.8.5
7206+ - safeio # tried safeio-0.0.5.0, but its *test-suite* requires the disabled package: test-framework-th
7207+ - salak-toml # tried salak-toml-0.3.5.3, but its *test-suite* does not support: QuickCheck-2.14.2
7208+ - scalendar # tried scalendar-1.2.0, but its *test-suite* requires the disabled package: SCalendar
7209+ - schematic # tried schematic-0.5.1.0, but its *test-suite* does not support: base-4.15.1.0
7210+ - servant-auth-client # tried servant-auth-client-0.4.1.0, but its *test-suite* does not support: hspec-discover-2.8.5
7211+ - servant-auth-server # tried servant-auth-server-0.4.6.0, but its *test-suite* does not support: hspec-2.8.5
7212+ - servant-auth-server # tried servant-auth-server-0.4.6.0, but its *test-suite* does not support: hspec-discover-2.8.5
7213+ - servant-docs # tried servant-docs-0.11.9, but its *test-suite* does not support: tasty-1.4.2.1
7214+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* does not support: hspec-2.8.5
7215+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* does not support: hspec-discover-2.8.5
7216+ - servant-js # tried servant-js-0.9.4.2, but its *test-suite* requires the disabled package: language-ecmascript
7217+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: aeson-1.5.6.0
7218+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: hspec-2.8.5
7219+ - servant-kotlin # tried servant-kotlin-0.1.1.9, but its *test-suite* does not support: http-api-data-0.4.3
7220+ - servant-mock # tried servant-mock-0.8.7, but its *test-suite* does not support: hspec-wai-0.11.1
7221+ - servant-quickcheck # tried servant-quickcheck-0.0.10.0, but its *test-suite* does not support: hspec-core-2.8.5
7222+ - servant-streaming # tried servant-streaming-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7223+ - servant-streaming-client # tried servant-streaming-client-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7224+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7225+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: streaming-bytestring-0.2.1
7226+ - servant-streaming-server # tried servant-streaming-server-0.3.0.0, but its *test-suite* does not support: warp-3.3.18
7227+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: doctest-0.18.2
7228+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: hspec-2.8.5
7229+ - servant-swagger # tried servant-swagger-1.1.10, but its *test-suite* does not support: hspec-discover-2.8.5
7230+ - servant-yaml # tried servant-yaml-0.1.0.1, but its *test-suite* does not support: aeson-1.5.6.0
7231+ - servant-yaml # tried servant-yaml-0.1.0.1, but its *test-suite* does not support: servant-server-0.18.3
7232+ - sessiontypes-distributed # tried sessiontypes-distributed-0.1.1, but its *test-suite* does not support: hspec-2.8.5
7233+ - sessiontypes-distributed # tried sessiontypes-distributed-0.1.1, but its *test-suite* does not support: network-transport-tcp-0.8.0
7234+ - sexpr-parser # tried sexpr-parser-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
7235+ - simple-log # tried simple-log-0.9.12, but its *test-suite* does not support: hspec-2.8.5
7236+ - sized-grid # tried sized-grid-0.2.0.1, but its *test-suite* does not support: ansi-terminal-0.11.1
7237+ - snap # tried snap-1.1.3.1, but its *test-suite* does not support: QuickCheck-2.14.2
7238+ - stb-image-redux # tried stb-image-redux-0.2.1.2, but its *test-suite* does not support: hspec-2.8.5
7239+ - stm-supply # tried stm-supply-0.2.0.0, but its *test-suite* requires the disabled package: Unique
7240+ - streaming-cassava # tried streaming-cassava-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
7241+ - stripe-http-client # tried stripe-http-client-2.6.2, but its *test-suite* does not support: hspec-2.8.5
7242+ - superbuffer # tried superbuffer-0.3.1.1, but its *test-suite* does not support: HTF-0.14.0.6
7243+ - superbuffer # tried superbuffer-0.3.1.1, but its *test-suite* does not support: QuickCheck-2.14.2
7244+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: lens-5.0.1
7245+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7246+ - sv # tried sv-1.4.0.1, but its *test-suite* does not support: tasty-hedgehog-1.1.0.0
7247+ - sv-core # tried sv-core-0.5, but its *test-suite* does not support: tasty-1.4.2.1
7248+ - sydtest-yesod # tried sydtest-yesod-0.3.0.0, but its *test-suite* requires the disabled package: sydtest-persistent-sqlite
7249+ - system-fileio # tried system-fileio-0.3.16.4, but its *test-suite* requires the disabled package: chell
7250+ - system-filepath # tried system-filepath-0.4.14, but its *test-suite* requires the disabled package: chell
7251+ - system-filepath # tried system-filepath-0.4.14, but its *test-suite* requires the disabled package: chell-quickcheck
7252+ - tar # tried tar-0.5.1.1, but its *test-suite* requires the disabled package: bytestring-handle
7253+ - temporary-resourcet # tried temporary-resourcet-0.1.0.1, but its *test-suite* does not support: tasty-1.4.2.1
7254+ - test-framework # tried test-framework-0.8.2.0, but its *test-suite* requires the disabled package: libxml
7255+ - transient # tried transient-0.7.0.0, but its *test-suite* does not support: random-1.2.1
7256+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
7257+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: generic-random-1.5.0.1
7258+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
7259+ - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* requires the disabled package: time-qq
7260+ - ucam-webauth-types # tried ucam-webauth-types-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
7261+ - uniprot-kb # tried uniprot-kb-0.1.2.0, but its *test-suite* does not support: QuickCheck-2.14.2
7262+ - uniprot-kb # tried uniprot-kb-0.1.2.0, but its *test-suite* does not support: hspec-2.8.5
7263+ - validation # tried validation-1.1.2, but its *test-suite* does not support: lens-5.0.1
7264+ - validation-selective # tried validation-selective-0.1.0.1, but its *test-suite* does not support: hspec-2.8.5
7265+ - web-routes-th # tried web-routes-th-0.22.6.6, but its *test-suite* does not support: hspec-2.8.5
7266+ - web3 # tried web3-0.9.1.0, but its *test-suite* does not support: hspec-discover-2.8.5
7267+ - web3 # tried web3-0.9.1.0, but its *test-suite* does not support: random-1.2.1
7268+ - wreq # tried wreq-0.5.3.3, but its *test-suite* requires the disabled package: snap-server
7269+ - xmlhtml # tried xmlhtml-0.2.5.2, but its *test-suite* does not support: hspec-2.8.5
7270+ - yesod-static-angular # tried yesod-static-angular-0.1.8, but its *test-suite* does not support: yesod-test-1.6.12
7271+ - zm # tried zm-0.3.2, but its *test-suite* does not support: doctest-0.18.2
7272+ - zm # tried zm-0.3.2, but its *test-suite* does not support: tasty-1.4.2.1
7273+ - zm # tried zm-0.3.2, but its *test-suite* does not support: tasty-quickcheck-0.10.2
7274+ - zm # tried zm-0.3.2, but its *test-suite* does not support: timeit-2.0
7275+ # End of Test bounds issues
7276+
7277+ # https://github.com/commercialhaskell/stackage/issues/6363
7278+ - amqp
2808
7279
2809− # Wontfix. The maintainer chose to keep these broken/outdated, only
7280+ - c2hs # https://github.com/commercialhaskell/stackage/issues/6420
2810− # re-enable if requested.
2811− - postgresql-binary # https://github.com/nikita-volkov/postgresql-binary/issues/6#issuecomment-243063139
2812
7281
2813# end of skipped-tests
7282# end of skipped-tests
2814
7283
2815−# 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
2816−# 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.
2817expected-test-failures:
7292expected-test-failures:
2818
7293
2819 # Intermittent failures or unreliable. These tests may pass when
7294 # Intermittent failures or unreliable. These tests may pass when
2820− # re-enabled, but will eventually fail again. Only remove these
7295+ # re-enabled, but will eventually fail again.
2821− # from expected-failures if we know a fix has been released.
7296+ #
2822 - 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
2823 - 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
2824 - crypto-numbers
7303 - crypto-numbers
2825− - 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
2826 - distributed-process
7305 - distributed-process
2827 - 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
2828 - 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
2829 - fsnotify # Often runs out of inotify handles
7310 - fsnotify # Often runs out of inotify handles
7311+ - hastache
2830 - idris # https://github.com/fpco/stackage/issues/1382
7312 - idris # https://github.com/fpco/stackage/issues/1382
2831 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
7313 - ihaskell # https://github.com/gibiansky/IHaskell/issues/551
2832 - 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
2833 - network # Unfortunately network failures seem to happen haphazardly
7316 - network # Unfortunately network failures seem to happen haphazardly
2834 - nsis # Intermittent on non-Windows systems
7317 - nsis # Intermittent on non-Windows systems
2835− - pandoc-citeproc # https://github.com/jgm/pandoc-citeproc/issues/172
2836− - spdx # https://github.com/phadej/spdx/issues/8
2837 - statistics # https://github.com/bos/statistics/issues/42
7318 - statistics # https://github.com/bos/statistics/issues/42
2838
7319
2839− # Timeouts
2840− # These tests sometimes take too long and hit the stackage build
2841− # servers time limit so these shouldn't be removed from
2842− # expected-tests unless we know a fix has been released.
2843− - cabal-helper
2844− - graphviz
2845− - punycode
2846− - zip
2847−
2848− # Requires running servers, accounts, or a specific
7320+ # Requires running servers, accounts, or a specific environment.
2849− # environment. These shouldn't be re-enabled unless we know a fix
7321+ #
2850− # has been released.
7322+ # If a maintainer wants us to run a partial tests suite with tests
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
2851 - GLFW-b # X
7327 - GLFW-b # X
2852 - HTF # Requires shell script and are incompatible with sandboxed package databases
7328 - HTF # Requires shell script and are incompatible with sandboxed package databases
2853− - 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
2854 - amqp
7333 - amqp
2855 - aws # AWS Credentials
7334 - aws # AWS Credentials
7335+ - beam-postgres # requires Postgress instance
2856 - bindings-GLFW # Expects running X server
7336 - bindings-GLFW # Expects running X server
2857 - bitcoin-api
7337 - bitcoin-api
2858 - bitcoin-api-extra
7338 - bitcoin-api-extra
2859− - bitcoin-api-extra
2860 - bloodhound # ElasticSearch
7339 - bloodhound # ElasticSearch
2861 - cabal-install
7340 - cabal-install
7341+ - cayley-client
2862 - 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
2863 - dbmigrations # PostgreSQL
7347 - dbmigrations # PostgreSQL
2864− - dns # https://github.com/kazu-yamamoto/dns/issues/29
7348+ - dns # https://github.com/commercialhaskell/stackage/issues/6374
2865 - drifter-postgresql # PostgreSQL
7349 - drifter-postgresql # PostgreSQL
2866− - ersatz # Requires SAT solver
7350+ - egison # executable not found https://github.com/egison/egison/issues/250
7351+ - esqueleto # mysql and postgresql
2867 - 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
2868 - eventstore # Event Store
7356 - eventstore # Event Store
7357+ - faktory # connection refused, https://github.com/commercialhaskell/stackage/issues/5905
2869 - fb # Facebook app
7358 - fb # Facebook app
7359+ - gdax # Needs environment variables set
2870 - 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
2871 - 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
2872 - 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
2873 - gitson # https://github.com/myfreeweb/gitson/issues/1
7364 - gitson # https://github.com/myfreeweb/gitson/issues/1
2874 - happy # Needs mtl in the user package DB
7365 - happy # Needs mtl in the user package DB
2875 - 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
2876 - hasql # PostgreSQL
7369 - hasql # PostgreSQL
7370+ - hasql-notifications # PostgreSQL
7371+ - hasql-queue
7372+ - hasql-transaction # PostgreSQL
2877 - 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
2878 - 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
2879 - hworker
7381 - hworker
7382+ - influxdb
7383+ - json-autotype # Requires filesystem access
7384+ - jvm
2880 - katip-elasticsearch # elasticsearch
7385 - katip-elasticsearch # elasticsearch
7386+ - log # ElasticSearch
7387+ - lsp-test
7388+ - lxd-client # Needs LXD, not available on debian
7389+ - lz4 # executable not found https://github.com/commercialhaskell/stackage/issues/6226
2881 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
7390 - mangopay # https://github.com/prowdsponsor/mangopay/issues/30
2882 - memcached-binary # memcached
7391 - memcached-binary # memcached
2883− - mongoDB # mongoDB - https://github.com/mongodb-haskell/mongodb/issues/61
7392+ - milena
7393+ - mongoDB # Requires local MongoDB server
2884 - mysql # MySQL
7394 - mysql # MySQL
7395+ - mysql-haskell # Requires local mysql server with a test account, and binlog enabled.
2885 - mysql-simple # MySQL
7396 - mysql-simple # MySQL
2886 - 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"
2887 - 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
2888 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
7407 - persistent-redis # redis - https://github.com/fpco/stackage/pull/1581
2889 - pipes-mongodb
7408 - pipes-mongodb
7409+ - postgresql-libpq-notify
2890 - postgresql-query # PostgreSQL
7410 - postgresql-query # PostgreSQL
2891 - 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
2892 - 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
2893 - redis-io
7419 - redis-io
7420+ - rel8
2894 - rethinkdb
7421 - rethinkdb
2895 - rethinkdb-client-driver
7422 - rethinkdb-client-driver
2896− - 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
2897 - 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
2898 - serversession-backend-redis # redis
7427 - serversession-backend-redis # redis
2899 - shake # Needs ghc on $PATH with some installed haskell packages
7428 - shake # Needs ghc on $PATH with some installed haskell packages
2900− - 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
2901 - users-postgresql-simple # PostgreSQL
7433 - users-postgresql-simple # PostgreSQL
2902 - wai-cors # PhantomJS
7434 - wai-cors # PhantomJS
7435+ - wai-rate-limit-redis # Redis
2903 - 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
2904 - webdriver-angular # webdriver server
7439 - webdriver-angular # webdriver server
2905− - yahoo-finance-api # Requires being able to access Yahoo Finance API
7440+ - websockets
2906−
2907− # Deprecated
2908− # Eventually we'll have to disable these packages completely.
2909− - doctest-prop # https://github.com/fpco/stackage/issues/1817
2910− - system-filepath # https://github.com/jmillikin/haskell-filesystem/issues/3
2911
7441
2912 # Missing test files in sdist
7442 # Missing test files in sdist
2913− # Hopefully gets fixed in the next release...
7443+ #
2914− - angel # https://github.com/MichaelXavier/Angel/issues/43
7444+ # The cause is that a test suite requires a file that is not
2915− - 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
2916 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7451 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7452+ - doctest-discover # https://github.com/karun012/doctest-discover/issues/33
2917− - ghc-events # https://github.com/haskell/ghc-events/issues/9
7453+ - ghc-events # https://github.com/haskell/ghc-events/issues/70
2918− - graylog # 0.1.0.1 https://github.com/fpco/stackage/pull/1254
7454+ - gitlab-haskell # https://github.com/commercialhaskell/stackage/issues/6088
2919− - haskell-names # 0.7.0 https://github.com/haskell-suite/haskell-names/issues/78
7455+ - hspec-core # https://github.com/commercialhaskell/stackage/issues/6291
7456+ - hspec-junit-formatter # https://github.com/freckle/hspec-junit-formatter/issues/14
2920− - rematch # No issue tracker, sent e-mail to maintainer https://github.com/fpco/stackage/issues/376
7457+ - persistent # https://github.com/commercialhaskell/stackage/issues/6037
2921− - xlsior # https://github.com/rcallahan/xlsior/issues/1
7458+ - reanimate-svg # https://github.com/commercialhaskell/stackage/issues/5688
2922−
7459+
7460+ # Testcase assertion failures, or other runtime failures.
2923− # Assertion failures, these can be real bugs or just limitations
7461+ # These can be real testsuite bugs, or maybe limitations in test cases or the test setup.
2924− # in the test cases.
7462+ #
2925− - DRBG # https://github.com/TomMD/DRBG/issues/7
7463+ - dbus # https://github.com/commercialhaskell/stackage/issues/6373
2926− - cayley-client # https://github.com/MichelBoucey/cayley-client/issues/2
7464+ - generic-optics # optimization output https://github.com/kcsongor/generic-lens/issues/133
2927− - clash-prelude # 0.10.14 Runtime errors https://github.com/clash-lang/clash-prelude/issues/57
7465+ - binary-parsers # runtime failure https://github.com/winterland1989/binary-parsers/issues/3
2928− - direct-sqlite # 2.3.17 https://github.com/IreneKnapp/direct-sqlite/issues/63
7466+ - JuicyPixels-blurhash
7467+ - aeson-casing
7468+ - algebraic-graphs # Module not visible https://github.com/commercialhaskell/stackage/issues/4670
7469+ - base32
7470+ - blaze-colonnade
7471+ - bsb-http-chunked
7472+ - c2hs
7473+ - cfenv # https://github.com/tomphp/haskell-cfenv/issues/1
2929− - ed25519 # 0.0.5.0 https://github.com/thoughtpolice/hs-ed25519/issues/15
7474+ - character-cases # 0.1.0.6 https://github.com/aiya000/hs-character-cases/issues/3
7475+ - colonnade
7476+ - composable-associations-aeson
7477+ - control-dsl
7478+ - crypto-enigma
7479+ - curl-runnings
7480+ - debian
7481+ - dhall-yaml # https://github.com/commercialhaskell/stackage/issues/5640
7482+ - dimensional
7483+ - doctest-parallel # https://github.com/commercialhaskell/stackage/issues/6380
7484+ - download # https://github.com/fpco/stackage/issues/2811
7485+ - duration
7486+ - ede
7487+ - error # https://github.com/commercialhaskell/stackage/issues/6300
7488+ - exp-pairs # https://github.com/Bodigrim/exp-pairs/issues/16
7489+ - fixed-vector-hetero
7490+ - freckle-app # 1.0.0.4 https://github.com/commercialhaskell/stackage/issues/6197
7491+ - genvalidity-persistent
7492+ - genvalidity-property
7493+ - ghc-prof
7494+ - gingersnap
7495+ - github-types
7496+ - haskeline # https://github.com/commercialhaskell/stackage/issues/5439
7497+ - haskell-src-exts # https://github.com/commercialhaskell/stackage/issues/5151
7498+ - haskoin-core
7499+ - hpack # https://github.com/commercialhaskell/stackage/issues/4512
7500+ - hpack-dhall # https://github.com/BlockScope/hpack-dhall/issues/25
7501+ - hspec-golden-aeson
7502+ - incremental-parser # 0.5.0.2
7503+ - jose
7504+ - justified-containers
7505+ - jwt
7506+ - katip
7507+ - language-docker # https://github.com/commercialhaskell/stackage/issues/5407
7508+ - lens-regex
7509+ - list-transformer
7510+ - lz4-frame-conduit # https://github.com/nh2/lz4-frame-conduit/issues/3
7511+ - massiv-io
7512+ - megaparsec-tests # 9.2.0
7513+ - mighty-metropolis # https://github.com/jtobin/mighty-metropolis/issues/6
7514+ - mixpanel-client # https://github.com/domenkozar/mixpanel-client/issues/7
7515+ - mmark # https://github.com/mmark-md/mmark/issues/80
7516+ - mmark-ext # https://github.com/mmark-md/mmark/issues/80
7517+ - morpheus-graphql-app
7518+ - mwc-random
2930− - nettle # https://github.com/stbuehler/haskell-nettle/issues/8
7519+ - nettle # https://github.com/stbuehler/haskell-nettle/issues/10
7520+ - nri-observability # https://github.com/commercialhaskell/stackage/issues/6179
7521+ - nri-prelude # https://github.com/commercialhaskell/stackage/issues/6179
7522+ - numhask-array
7523+ - ochintin-daicho
7524+ - openapi3
7525+ - pcre-heavy
7526+ - persistent-sqlite # https://github.com/yesodweb/persistent/issues/989
7527+ - posix-paths
7528+ - prettyprinter
7529+ - prettyprinter-ansi-terminal
7530+ - rando # https://github.com/commercialhaskell/stackage/issues/4249
7531+ - rank1dynamic
7532+ - rescue
7533+ - rose-trees
7534+ - safe-decimal
7535+ - simple-affine-space
7536+ - simple-vec3 # https://github.com/commercialhaskell/stackage/pull/5410
7537+ - singletons-base
7538+ - sized
7539+ - spatial-math
7540+ - subcategories
7541+ - tasty-fail-fast
7542+ - triplesec
7543+ - turtle
7544+ - type-level-kv-list
7545+ - unicode-show
7546+ - universe-some
7547+ - universum
7548+ - utf8-conversions
7549+ - varying
7550+ - vector-algorithms
7551+ - vivid-osc
7552+ - wakame
7553+ - world-peace
2931− - th-printf # 0.3.1 https://github.com/pikajude/th-printf/issues/3
7554+ - xml-picklers # https://github.com/Philonous/xml-picklers/issues/5
2932− - wreq # https://github.com/bos/wreq/issues/53
7555+ - xmlbf
2933− - xmonad # 0.12 https://github.com/xmonad/xmonad/issues/36
7556+ - yesod-gitrev # needs a git repo https://github.com/commercialhaskell/stackage/issues/6132
7557+ - yesod-markdown # https://github.com/pbrisbin/yesod-markdown/issues/77
7558+
7559+ # Assertion failures due to module name ambiguity.
7560+ # These _should_ be fixed by using the `hide` section of this file
7561+ - reanimate # https://github.com/commercialhaskell/stackage/issues/5626
2934
7562
2935 # Compilation failures
7563 # Compilation failures
2936− - ListLike # No issue tracker, e-mail sent to maintainer
7564+ - blake2 # 0.3.0
2937− - dbus # 0.10.12 No issue tracker, e-mail sent to maintainer
7565+ - blas-hs # 0.1.1.0
2938− - hspec-expectations-pretty-diff # GHC 8 issue not reported upstream since issue tracker disabled
7566+ - butter # 0.1.0.6
2939− - safecopy # time 1.6 https://github.com/acid-state/safecopy/issues/45
7567+ - cabal-file-th # 0.2.7
2940− - sourcemap # https://github.com/chrisdone/sourcemap/issues/3
7568+ - cacophony # 0.10.1 https://github.com/centromere/cacophony/issues/15
2941− - text-ldap # # https://github.com/khibino/haskell-text-ldap/issues/1
7569+ - conduit-connection # 0.1.0.5
2942− - thyme # https://github.com/liyang/thyme/issues/50
7570+ - config-ini # 0.2.4.0 https://github.com/aisamanra/config-ini/issues/22
2943− - tries # https://github.com/athanclark/tries/issues/2
7571+ - construct # 0.3.0.2
2944− - wai-middleware-content-type # 0.4.1 - https://github.com/athanclark/wai-middleware-content-type/issues/2
7572+ - cryptohash # 0.11.9 Stack builds test and benchmarks in one pass so benchmark could prevent tests from getting built
2945− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
7573+ - data-diverse # 4.7.0.0
2946−
7574+ - do-notation # 0.1.0.2
2947− # Misc.
7575+ - domain-optics # 0.1.0.2 https://github.com/commercialhaskell/stackage/pull/6102
2948− - distributed-process-supervisor # # https://github.com/haskell-d
7576+ - easy-logger # https://github.com/commercialhaskell/stackage/issues/6384
2949− - ghcid # Weird conflicts with sandboxingistributed/distributed-process-supervisor/issues/1
7577+ - flat # 0.4.4
2950−
7578+ - flay # 0.4
2951− # Doctest ran across ambiguous modules
7579+ - functor-combinators # https://github.com/commercialhaskell/stackage/issues/6376
2952− # https://github.com/bergmark/blog/blob/master/2016/package-faq.md#ambiguous-modules-when-using-doctest
2953− - doctest # 0.11.0 https://github.com/sol/doctest/issues/137
2954− - jwt # https://bitbucket.org/ssaasen/haskell-jwt/issues/18/test-suite-build-failure-in-stackage
2955− - monad-logger-prefix # https://github.com/fpco/stackage/issues/1831
7580+ - generic-lens # https://github.com/commercialhaskell/stackage/issues/6377
2956− - warp # https://github.com/yesodweb/wai/issues/579
7581+ - geojson # 4.0.2
2957−
7582+ - heap # 1.0.4 https://github.com/pruvisto/heap/issues/11
2958− # Stackage upper bounds, re-enable these when their upper bound is removed
7583+ - hsini # 0.5.1.2
2959− - hindent # 4.6.4
7584+ - hweblib # 0.6.3 https://github.com/aycanirican/hweblib/issues/3
7585+ - leveldb-haskell
7586+ - mfsolve # https://github.com/commercialhaskell/stackage/issues/6379
7587+ - multiarg # 0.30.0.10
7588+ - parameterized # 0.5.0.0 https://github.com/commercialhaskell/stackage/issues/5746
7589+ - protobuf # 0.2.1.4
7590+ - record-wrangler # 0.1.1.0
7591+ - relapse # 1.0.0.0 #5948/closed
7592+ - secp256k1-haskell # #5948/closed
7593+ - servant-static-th # 1.0.0.0 Tasty issue: https://github.com/commercialhaskell/stackage/issues/6090
7594+ - snap-core # 1.0.4.2 random 1.2
7595+ - snappy # Could not find module ‘Functions’
7596+ - text-icu # 0.7.1.0 https://github.com/bos/text-icu/issues/32
7597+ - thread-supervisor # 0.2.0.0
7598+ - type-of-html-static # 0.1.0.2 https://github.com/commercialhaskell/stackage/issues/5728
7599+ - vivid-supercollider # 0.4.1.2 https://github.com/commercialhaskell/stackage/issues/4250
7600+ - xmlgen # 0.6.2.2 https://github.com/skogsbaer/xmlgen/issues/6
2960
7601
2961 # Recursive deps https://github.com/fpco/stackage/issues/1818
7602 # Recursive deps https://github.com/fpco/stackage/issues/1818
2962− - clock # 0.7.2 clock:test => tasty:lib => clock:lib
2963 - options
7603 - options
2964 - text # 1.2.2.1
7604 - text # 1.2.2.1
2965− - wai-logger # Missing build dep because of this https://github.com/kazu-yamamoto/logger/issues/42
2966
7605
2967 # 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
2968 # these if we want them fixed
7607 # these if we want them fixed
2969− - 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
2970 - 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
2971
7614
2972− - snap-core # https://github.com/snapframework/snap-core/issues/26
7615+ # doctests can be flaky on the build server, add packages here if
2973−
7616+ # they start causing issues.
2974− - hackernews # https://github.com/dmjio/hackernews/issues/19
7617+ - bookkeeping
2975−
7618+ - detour-via-sci # https://github.com/commercialhaskell/stackage/issues/6360
7619+ - dhall
7620+ - doctest-driver-gen
7621+ - envelope # https://github.com/commercialhaskell/stackage/issues/6383
7622+ - email-validate
2976− - heist # https://github.com/snapframework/heist/issues/95
7623+ - fmt # https://github.com/commercialhaskell/stackage/issues/6375
2977−
7624+ - greskell
2978− - language-lua2 # https://github.com/mitchellwrosen/language-lua2/issues/4
7625+ - greskell-core
2979−
7626+ - headroom
2980− - commutative # https://github.com/athanclark/commutative/issues/4
7627+ - hint
7628+ - hledger-lib
7629+ - iproute
7630+ - kawhi
7631+ - makefile # Doctests require hidden Glob package
7632+ - multiset # Doctests require hidden Glob package
7633+ - perf
7634+ - prometheus-client
7635+ - xml-indexed-cursor
7636+ - yesod-paginator
7637+
7638+ # Misc. Please check if there is a better section before adding more packages here.
7639+ - ghc-exactprint # https://github.com/alanz/ghc-exactprint/issues/82
7640+ - ghcid # Weird conflicts with sandboxingistributed/distributed-process-supervisor/issues/1
2981
7641
2982− - docopt # https://github.com/docopt/docopt.hs/issues/29
7642+ - hspec-expectations-pretty-diff # https://github.com/unrelentingtech/hspec-expectations-pretty-diff/issues/7
7643+ - hw-kafka-client # missing exe https://github.com/commercialhaskell/stackage/pull/5542
7644+ - lzma-conduit # https://github.com/alphaHeavy/lzma-conduit/issues/19
7645+ - pandoc # https://github.com/jgm/pandoc/issues/5582
7646+ - password # Module not visible https://github.com/cdepillabout/password/issues/2
7647+ - password-instances # Module not visible https://github.com/commercialhaskell/stackage/issues/4653
7648+ - pcg-random # https://github.com/cchalmers/pcg-random/pull/7
7649+ - persistent-mongoDB # Requires a running server
7650+ - persistent-mysql # https://github.com/commercialhaskell/stackage/issues/4764
7651+ - persistent-postgresql # https://github.com/commercialhaskell/stackage/issues/4763
7652+ - pg-transact # https://github.com/jfischoff/pg-transact/issues/2
7653+ - poly
7654+ - postgresql-simple-queue # same issue as before, see also https://github.com/fpco/stackage/issues/2592 as that will fix both
7655+ - raaz # https://github.com/commercialhaskell/stackage/issues/4784
7656+ - rattletrap # OOM? https://github.com/fpco/stackage/issues/2232
7657+ - relude # doctest fails due to GHC bugs, will be fixed in the next `relude` release
7658+ - sbv
7659+ - servant-elm # https://github.com/haskell-servant/servant-elm/issues/62
7660+ - servant-ruby # Module not visible https://github.com/commercialhaskell/stackage/issues/4650
7661+ - skews # https://github.com/iij-ii/direct-hs/issues/100
7662+ - stm-delay # https://github.com/joeyadams/haskell-stm-delay/issues/5
7663+ - tar-conduit # to get fixed in version after 0.3.2 https://github.com/snoyberg/tar-conduit/issues/28
7664+ - tasty-discover # https://github.com/commercialhaskell/stackage/issues/4722
7665+ - threads # https://github.com/basvandijk/threads/issues/10
7666+ - tmp-postgres # https://github.com/jfischoff/tmp-postgres/issues/1
7667+ - yesod-core # https://github.com/yesodweb/yesod/issues/1711
7668+
7669+ # Please review the sections above before adding packages to a new section or to Misc.
2983
7670
2984# end of expected-test-failures
7671# end of expected-test-failures
2985
7672
2986−# Benchmarks which are known not to build. Note that, currently we do not run
2987−# benchmarks, and therefore failures are only for building, not running.
2988−expected-benchmark-failures:
2989− # Recursive deps https://github.com/fpco/stackage/issues/1818
2990− - attoparsec
2991− - hashable
2992− - unordered-containers # 0.2.7.1 unordered-containers:bench -> criterion:lib -> aeson:lib -> unordered-containers:lib
2993−
2994− # stack bug https://github.com/commercialhaskell/stack/issues/2153
2995− - scientific
2996− - vector-binary-instances
2997−
2998− # Missing files in sdist
2999− - cassava # https://github.com/hvr/cassava/pull/117
3000− - picoparsec # https://bitbucket.org/blamario/picoparsec/issues/3/benchmark-compilation-failure
3001−
3002− # Compilation failures
3003− - Frames # https://github.com/acowley/Frames/issues/47
3004− - cryptohash # https://github.com/vincenthz/hs-cryptohash/pull/43
3005− - dbus # No issue tracker, sent e-mail to maintainer
3006− - lens # Fixed in lens-4.15
3007− - thyme # https://github.com/liyang/thyme/issues/50
3008− - xmlgen # https://github.com/skogsbaer/xmlgen/issues/6
3009−
3010−# end of expected-benchmark-failures
3011−
3012
7673
3013# 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.
3014expected-haddock-failures:
7675expected-haddock-failures:
3015
7676
3016 # Requires build before haddock, which doesn't always happen in incremental
7677 # Requires build before haddock, which doesn't always happen in incremental
3017 # builds. Could consider special-casing this requirement.
7678 # builds. Could consider special-casing this requirement.
3018− - gtk
3019 - gtk3
7679 - gtk3
3020
7680
3021− # Intermittent failures or unreliable. These tay pass when
7681+ # Intermittent failures or unreliable. These may pass when
3022 # re-enabled, but will eventually fail again. Only remove these
7682 # re-enabled, but will eventually fail again. Only remove these
3023 # 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.
3024 - gi-gtk # Uses all memory
7684 - gi-gtk # Uses all memory
3025
7685
3026 # 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
3027 # these if we want them fixed
7687 # these if we want them fixed
3028− - yesod-job-queue # https://github.com/fpco/stackage/issues/1383
3029−
3030− # "Compilation" errors
3031− - MemoTrie # https://github.com/conal/MemoTrie/issues/10
3032− - metrics # https://github.com/iand675/metrics/issues/5
3033
7688
3034− # Haddock bugs
7689+ # internal error when calculating transitive package dependencies
3035− - 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
3036
7695
3037# end of expected-haddock-failures
7696# end of expected-haddock-failures
3038
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+
3039# 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.
3040# 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
3041# 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'
3042# or if Setup fails because of missing foreign libraries.
7727# or if Setup fails because of missing foreign libraries.
3043# Otherwise place them in expected-benchmark-failures.
7728# Otherwise place them in expected-benchmark-failures.
3044skipped-benchmarks:
7729skipped-benchmarks:
7730+ # aeson-2
7731+ # https://github.com/commercialhaskell/stackage/issues/6217
7732+ - jsonifier
3045
7733
3046− # Outdated dependencies
7734+ # Cyclic dependencies
3047− # These can periodically be checked for updates;
7735+ - attoparsec
3048− # just remove these lines and run `stackage-curator check'
7736+ - case-insensitive
3049− # to verify.
7737+ - cassava
3050− - criterion-plus
7738+ - clock
3051−
7739+ - criterion
3052− # Transitive outdated dependencies
7740+ - foundation
3053− # These packages
7741+ - hashable # https://github.com/fpco/stackage/issues/1818
3054− # These can also be checked for updates periodically.
7742+ - hspec
3055− - cases # via criterion-plus
7743+ - nanospec
3056− - hasql-postgres # via criterion-plus
7744+ - scientific
3057− - ttrie # via criterion-plus
7745+ - vector-binary-instances
3058− - machines # via pipes
3059−
3060− # Compilation failures
3061− - cipher-aes # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3062− - cipher-blowfish # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3063− - cipher-camellia # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3064− - cipher-des # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3065− - cipher-rc4 # https://github.com/vincenthz/hs-crypto-cipher/issues/46
3066− - data-msgpack # https://github.com/TokTok/hs-msgpack/issues/20
3067
7746
3068− # GHC Bugs
7747+ # Timeouts
7748+ - gogol-youtube
7749+
7750+ # Very resource intensive
7751+ - OpenGLRaw
7752+ - pandoc
7753+ - git-annex
7754+
7755+ # Maintainers who don't want to update benchmarks
7756+ # Only re-enable if requested.
3069− - hledger-lib # https://github.com/fpco/stackage/issues/1587
7757+ ## @hvr https://github.com/fpco/stackage/issues/2538#issuecomment-304458844
7758+ - cassava
7759+ - cryptohash-md5
7760+ - cryptohash-sha1
7761+ - cryptohash-sha256
7762+ - uuid
7763+ - uuid-types
7764+ # @nikita-volkov https://github.com/fpco/stackage/issues/2538#issuecomment-305129396
7765+ - base-prelude
7766+ - bytestring-strict-builder
7767+ - bytestring-tree-builder
7768+ - cases
7769+ - focus
7770+ - hasql
7771+ - hasql-pool
7772+ - list-t
7773+ - mtl-prelude
7774+ - neat-interpolation
7775+ - partial-handler
7776+ - postgresql-binary
7777+ - refined
7778+ - slave-thread
7779+ - stm-containers
7780+ - vector-builder
7781+ # @ivan-m https://github.com/fpco/stackage/issues/2538#issuecomment-307290070
7782+ - fgl
7783+ - fgl-arbitrary
7784+ - graphviz
7785+ - graphviz
7786+ - wl-pprint-text
7787+ # @phadej
7788+ - dlist-nonempty # criterion-1.3
7789+ - splitmix # criterion-1.3
7790+ # @sjakobi
7791+ - prettyprinter
7792+ - prettyprinter-ansi-terminal # https://github.com/commercialhaskell/stackage/issues/5560
7793+
7794+ # See "Large scale enabling/disabling of packages" in CURATORS.md for how to manage this section.
7795+ #
7796+ # Benchmark bounds issues
7797+ - IntervalMap # tried IntervalMap-0.6.1.2, but its *benchmarks* requires the disabled package: SegmentTree
7798+ - accelerate-bignum # tried accelerate-bignum-0.3.0.0, but its *benchmarks* requires the disabled package: accelerate-io-vector
7799+ - accelerate-fourier # tried accelerate-fourier-1.0.0.5, but its *benchmarks* does not support: accelerate-llvm-native-1.3.0.0
7800+ - accelerate-fourier # tried accelerate-fourier-1.0.0.5, but its *benchmarks* does not support: criterion-1.5.12.0
7801+ - binary-parsers # tried binary-parsers-0.2.4.0, but its *benchmarks* does not support: criterion-1.5.12.0
7802+ - buffer-builder # tried buffer-builder-0.2.4.7, but its *benchmarks* requires the disabled package: json-builder
7803+ - chronos # tried chronos-1.1.3, but its *benchmarks* requires the disabled package: thyme
7804+ - cipher-aes # tried cipher-aes-0.2.11, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7805+ - cipher-camellia # tried cipher-camellia-0.0.2, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7806+ - cipher-des # tried cipher-des-0.0.6, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7807+ - cipher-rc4 # tried cipher-rc4-0.1.4, but its *benchmarks* requires the disabled package: crypto-cipher-benchmarks
7808+ - distributed-process # tried distributed-process-0.7.4, but its *benchmarks* does not support: network-transport-tcp-0.8.0
7809+ - ed25519 # tried ed25519-0.0.5.0, but its *benchmarks* does not support: criterion-1.5.12.0
7810+ - extensible-effects # tried extensible-effects-5.0.0.1, but its *benchmarks* requires the disabled package: test-framework-th
7811+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: aeson-1.5.6.0
7812+ - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: time-1.9.3
7813+ - heist # tried heist-1.1.0.1, but its *benchmarks* does not support: statistics-0.16.0.1
7814+ - hip # tried hip-1.5.6.0, but its *benchmarks* requires the disabled package: repa-algorithms
7815+ - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *benchmarks* requires the disabled package: hw-hspec-hedgehog
7816+ - o-clock # tried o-clock-1.2.1, but its *benchmarks* requires the disabled package: tiempo
7817+ - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: PSQueue
7818+ - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: fingertree-psqueue
7819+ - regex-applicative # tried regex-applicative-0.3.4, but its *benchmarks* requires the disabled package: parsers-megaparsec
7820+ - sbv # tried sbv-8.17, but its *benchmarks* requires the disabled package: bench-show
7821+ - servant-auth-cookie # tried servant-auth-cookie-0.6.0.3, but its *benchmarks* does not support: criterion-1.5.12.0
7822+ - superbuffer # tried superbuffer-0.3.1.1, but its *benchmarks* does not support: criterion-1.5.12.0
7823+ - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: criterion-plus
7824+ - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: stm-stats
7825+ - tz # tried tz-0.1.3.5, but its *benchmarks* requires the disabled package: thyme
7826+ - unicode-transforms # tried unicode-transforms-0.4.0, but its *benchmarks* does not support: path-0.9.2
7827+ - xxhash-ffi # tried xxhash-ffi-0.2.0.0, but its *benchmarks* requires the disabled package: xxhash
7828+ # End of Benchmark bounds issues
3070
7829
3071# end of skipped-benchmarks
7830# end of skipped-benchmarks
3072
7831
@@ -3104,11 +7863,11 @@ github-users:
3104 - meteficha
7863 - meteficha
3105 analytics:
7864 analytics:
3106 - ekmett
7865 - ekmett
7866+ haskell-openal:
7867+ - svenpanne
3107 haskell-opengl:
7868 haskell-opengl:
3108 - ekmett
7869 - ekmett
3109 - svenpanne
7870 - svenpanne
3110− # - elliottt
3111− # - jmcarthur
3112 lambdabot:
7871 lambdabot:
3113 - DanBurton
7872 - DanBurton
3114 - mokus0
7873 - mokus0
@@ -3119,11 +7878,10 @@ github-users:
3119 clckwrks:
7878 clckwrks:
3120 - stepcut
7879 - stepcut
3121 stackbuilders:
7880 stackbuilders:
3122− - sestrella
3123 - jsl
7881 - jsl
3124− - jpvillaisaza
7882+ - sestrella
3125− - jsantos17
7883+ - juanpaucar
3126− - mrkkrp
7884+ - CristhianMotoche
3127 scotty-web:
7885 scotty-web:
3128 - RyanGlScott
7886 - RyanGlScott
3129 - xich
7887 - xich
@@ -3131,9 +7889,6 @@ github-users:
3131 - RyanGlScott
7889 - RyanGlScott
3132 haskell-compat:
7890 haskell-compat:
3133 - RyanGlScott
7891 - RyanGlScott
3134− haskell-servant:
3135− - jkarni
3136− - SoenkeHahn
3137 vivid:
7892 vivid:
3138 - vivid-synth
7893 - vivid-synth
3139 midair:
7894 midair:
@@ -3147,7 +7902,26 @@ github-users:
3147 arithmoi:
7902 arithmoi:
3148 - Bodigrim
7903 - Bodigrim
3149 - cartazio
7904 - cartazio
3150− - 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
3151
7925
3152# end of github-users
7926# end of github-users
3153
7927
@@ -3175,10 +7949,100 @@ build-tool-overrides:
3175#
7949#
3176# Example:
7950# Example:
3177# 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
3178−# - 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
3179−tell-me-when-its-released:
7953+tell-me-when-its-released: []
3180−- vector-0.11.0.0 # skipped test-suite
7954+
3181−- criterion-1.1.1.0 # fixes build on windows, upgrade in LTS 7 #1912
7955+# Packages which should be hidden after registering, to avoid module name
3182−- point-octree-0.5.5.3 # If this closes https://github.com/fpco/stackage/issues/1902 we can also resolve https://github.com/fpco/lts-haskell/issues/27
7956+# conflicts. This is intended for at least two use cases:
3183−- wreq-0.4.1.0 # Try to re-enable lots of packages, and the test-suite if https://github.com/bos/wreq/issues/53 is closed.
7957+#
3184−- gogol-0.1.0 # Re-enable package
7958+# * Making doctests pass (https://github.com/yesodweb/wai/issues/579)
7959+#
7960+# * Allowing tools like Stack to get a mapping from module name to package name
7961+# for automatically installing dependencies
7962+hide:
7963+- HTF # conflicts with Test.Framework in test-framework
7964+- async-dejafu # https://github.com/yesodweb/wai/issues/579
7965+- base-compat # conflicts with base-compat-batteries, see https://github.com/fpco/stackage/issues/3607
7966+- base-noprelude # By design, conflicts with base
7967+- binary-ieee754 # conflicts with data-binary-ieee754
7968+- cipher-aes # Cryptonite deprecation
7969+- cipher-blowfish # Cryptonite deprecation
7970+- cipher-camellia # Cryptonite deprecation
7971+- cipher-des # Cryptonite deprecation
7972+- cipher-rc4 # Cryptonite deprecation
7973+- constraint # conflicts with constraints
7974+- control-monad-free # conflicts with Control.Monad.Free in free
7975+- courier # conflicts with Network.Transport in network-transport
7976+- crypto-api # `module Crypto.Random` conflicts with cryptonite
7977+- crypto-cipher-types # Cryptonite deprecation
7978+- crypto-numbers # Cryptonite deprecation
7979+- crypto-pubkey # Cryptonite deprecation
7980+- crypto-random # Cryptonite deprecation
7981+- cryptohash # Cryptonite deprecation
7982+- cryptohash-conduit # Cryptonite deprecation
7983+- cryptohash-md5 # cryptohash fork
7984+- cryptohash-sha1 # cryptohash fork
7985+- cryptohash-sha256 # cryptohash fork
7986+- fay-base # conflicts with many modules in base and others
7987+- filemanip # conflicts with System.FilePath.Glob in Glob
7988+- ghc-lib # per its own recommendation. conflicts with template-haskell
7989+- ghc-lib-parser # also conflicts with template-haskell
7990+- gl # conflicts with modules in OpenGLRaw
7991+- gtk3 # conflicts with many modules in gtk
7992+- hashmap # conflicts with Data.HashSet in unordered-containers
7993+- hledger-web # conflicts with Foundation in foundation
7994+- hs-functors # conflicts with profunctors, see #3609/closed
7995+- hxt-unicode # conflicts with Data.String.UTF8 in utf8-string
7996+- kawhi # conflicts with Control.Monad.Http in monad-http
7997+- language-c # conflicts with modules in language-c-quote
7998+- lenz # conflicts with lens, see https://github.com/fpco/stackage/issues/3600
7999+- log # conflicts with modules in its dependencies
8000+- matrices # conflicts with matrix
8001+- monad-extras # conflicts with Control.Monad.Extra in extra
8002+- monads-tf # mtl is preferred
8003+- nanospec # conflicts with Test.Hspec in hspec
8004+- objective # conflicts with Control.Object in natural-transformation
8005+- plot-gtk3 # conflicts with many modules in plot-gtk
8006+- pretty-class # conflicts with pretty and prettyclass
8007+- prettyclass # conflicts with pretty and pretty-class
8008+- prompt # conflicts with Control.Monad.Prompt in MonadPrompt
8009+- regex-compat-tdfa # conflicts with many modules in regex-compat
8010+- regex-pcre-builtin # conflicts with many modules in regex-pcre
8011+- rerebase # conflicts with base
8012+- svg-tree # conflicts with Graphics.Svg in svg-builder
8013+- temporary-rc # conflicts with temporary
8014+- temporary-resourcet # conflicts with temporary
8015+- zip # conflicts with Codec.Archive.Zip in zip-archive
8016+
8017+
8018+# Experimental: packages where Hackage cabal file revisions should be ignored.
8019+#
8020+# This always use the cabal file shipped with the sdist tarball instead of the latest revision.
8021+#
8022+# This only supports pinning to the initial release (revision 0), not to an arbitrary revision.
8023+no-revisions:
8024+- hjsonpointer
8025+- tls
8026+- mime-mail
8027+- basement
8028+- cryptonite
8029+- foundation
8030+- gauge
8031+- stack
8032+- http-download
8033+- pantry
8034+- rio-prettyprint
8035+- hi-file-parser
8036+
8037+
8038+# Note, this no longer actually does anything with curator2 unfortunately:
8039+# Do not build these packages in parallel with others. Useful for high memory
8040+# usage.
8041+non-parallel-builds:
8042+- pandoc
8043+- gogol-dfareporting
8044+- gogol-compute
8045+- idris
8046+- amazonka-ec2
8047+- massiv-persist
8048+- massiv-serialise
check+10−2
@@ -1,6 +1,14 @@
1−#!/bin/sh
1+#!/bin/bash
2
2
3# Convenience script for checking constraints locally
3# Convenience script for checking constraints locally
4
4
5cd `dirname $0`
5cd `dirname $0`
6+
7+export GHCVER=$(sed -n "s/^ghc-version: \"\(.*\)\"/\1/p" "build-constraints.yaml")
8+
9+NIGHTLY="nightly-$(date +%Y-%m-%d)"
10+curator update &&
11+ curator constraints --target=$NIGHTLY &&
12+ curator snapshot-incomplete --target=$NIGHTLY &&
13+ curator snapshot &&
6−exec stack exec --resolver ghc-8.0.1 stackage-curator check
14+ stack --resolver ghc-$GHCVER exec curator check-snapshot
commenternew file+20
@@ -0,0 +1,20 @@
1+#!/usr/bin/env bash
2+
3+if ! command -v cargo
4+then
5+ echo "Rust doesn't seem to be installed. https://rustup.rs/"
6+ exit 1
7+fi
8+
9+if [ "$1" = "outdated" ];
10+then
11+ if ! command -v latest-version &> /dev/null
12+ then
13+ echo "This command requires latest-version in your PATH"
14+ echo "Install it with: "
15+ echo "stack install --stack-yaml etc/commenter/latest-version/stack.yaml"
16+ exit 1
17+ fi
18+fi
19+
20+cargo run -q --release --manifest-path etc/commenter/Cargo.toml $@
debian-bootstrap.sh+211−41
@@ -4,93 +4,132 @@
4# up-and-running on a freshly installed Debian-based system (including Ubuntu).
4# up-and-running on a freshly installed Debian-based system (including Ubuntu).
5
5
6# Quick start:
6# Quick start:
7−# wget -O - https://raw.github.com/fpco/stackage/master/debian-bootstrap.sh | bash -ex
7+# wget -O - https://raw.github.com/commercialhaskell/stackage/master/debian-bootstrap.sh | bash -ex
8
8
9# NOTE: Requires that GHC and Cabal are installed and on your PATH. For
9# NOTE: Requires that GHC and Cabal are installed and on your PATH. For
10# instructions, see:
10# instructions, see:
11# http://www.stackage.org/install
11# http://www.stackage.org/install
12
12
13−set -exu
13+set -exuo pipefail
14
14
15−mkdir /home/stackage -p
15+mkdir -p /home/stackage
16−locale-gen en_US.UTF-8
17
16
17+export LANG=C.UTF-8
18export DEBIAN_FRONTEND=noninteractive
18export DEBIAN_FRONTEND=noninteractive
19−apt-get update
20−apt-get install -y software-properties-common
21
19
22−add-apt-repository ppa:hvr/ghc -y
20+# Get curl and unzip
23−add-apt-repository -y ppa:marutter/rrutter
21+apt-get update
24−# not sure what this was needed for
22+apt-get install -y curl unzip
25−#add-apt-repository -y ppa:openstack-ubuntu-testing/icehouse
26
23
27−# Set the GHC version
24+# Install AWS CLI
28−GHCVER=8.0.1
25+mkdir -p /tmp/awscli
26+(
27+cd /tmp/awscli
28+curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
29+unzip awscliv2.zip
30+./aws/install --bin-dir /usr/bin
31+)
32+rm -rf /tmp/awscli
29
33
30−# Get Stack
34+# Get Stack and GHC
31−apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 575159689BEFB442
35+curl -sSL https://get.haskellstack.org/ | sh -s - -d /usr/bin
32−echo 'deb http://download.fpcomplete.com/ubuntu xenial main'|tee /etc/apt/sources.list.d/fpco.list
36+stack setup --resolver ghc-$GHCVER
33
37
34apt-get update
38apt-get update
39+
35apt-get install -y \
40apt-get install -y \
41+ apt-transport-https \
36 build-essential \
42 build-essential \
37− ghc-$GHCVER \
43+ cmake \
38− ghc-$GHCVER-dyn \
39− ghc-$GHCVER-prof \
40− ghc-$GHCVER-htmldocs \
41− hscolour \
42− sudo \
43 curl \
44 curl \
45+ dvipng \
44 freeglut3-dev \
46 freeglut3-dev \
47+ freetds-dev \
48+ fsharp \
49+ g++ \
50+ gawk \
45 git \
51 git \
52+ gnupg \
53+ gradle \
54+ hscolour \
46 libadns1-dev \
55 libadns1-dev \
47 libaio1 \
56 libaio1 \
57+ libalut-dev \
48 libasound2-dev \
58 libasound2-dev \
49 libblas-dev \
59 libblas-dev \
50 libbz2-dev \
60 libbz2-dev \
51 libcairo2-dev \
61 libcairo2-dev \
52− libclang-3.7-dev \
62+ libclang-3.9-dev \
53 libcurl4-openssl-dev \
63 libcurl4-openssl-dev \
64+ libcwiid-dev \
65+ libdbusmenu-glib-dev \
66+ libdbusmenu-gtk3-dev \
54 libdevil-dev \
67 libdevil-dev \
55 libedit-dev \
68 libedit-dev \
56 libedit2 \
69 libedit2 \
57 libfftw3-dev \
70 libfftw3-dev \
71+ libflac-dev \
58 libfreenect-dev \
72 libfreenect-dev \
59− libgd2-xpm-dev \
73+ libgd-dev \
60 libgeoip-dev \
74 libgeoip-dev \
61 libgirepository1.0-dev \
75 libgirepository1.0-dev \
76+ libglew-dev \
62 libglfw3-dev \
77 libglfw3-dev \
63 libglib2.0-dev \
78 libglib2.0-dev \
64 libglu1-mesa-dev \
79 libglu1-mesa-dev \
65 libgmp3-dev \
80 libgmp3-dev \
66− libgnutls-dev \
81+ libgnutls28-dev \
82+ libgraphene-1.0-dev \
67 libgsasl7-dev \
83 libgsasl7-dev \
68− libgsl0-dev \
84+ libgsl-dev \
69 libgtk-3-dev \
85 libgtk-3-dev \
70 libgtk2.0-dev \
86 libgtk2.0-dev \
71 libgtksourceview-3.0-dev \
87 libgtksourceview-3.0-dev \
72 libhidapi-dev \
88 libhidapi-dev \
89+ libi2c-dev \
73 libicu-dev \
90 libicu-dev \
91+ libimlib2-dev \
92+ libjack-jackd2-dev \
93+ libjavascriptcoregtk-4.0-dev \
94+ libjansson-dev \
74 libjudy-dev \
95 libjudy-dev \
75 liblapack-dev \
96 liblapack-dev \
76 libleveldb-dev \
97 libleveldb-dev \
77 liblmdb-dev \
98 liblmdb-dev \
99+ liblz4-tool \
78 liblzma-dev \
100 liblzma-dev \
79 libmagic-dev \
101 libmagic-dev \
80 libmagickcore-dev \
102 libmagickcore-dev \
81 libmagickwand-dev \
103 libmagickwand-dev \
82 libmarkdown2-dev \
104 libmarkdown2-dev \
105+ libmono-2.0-dev \
106+ libmp3lame-dev \
83 libmpfr-dev \
107 libmpfr-dev \
108+ libmpich-dev \
84 libmysqlclient-dev \
109 libmysqlclient-dev \
85− libncurses-dev \
110+ libncurses5-dev \
111+ libnfc-dev \
112+ liboath-dev \
86 libnotify-dev \
113 libnotify-dev \
87 libopenal-dev \
114 libopenal-dev \
88 libpango1.0-dev \
115 libpango1.0-dev \
89 libpcap0.8-dev \
116 libpcap0.8-dev \
117+ libpcre2-dev \
90 libpq-dev \
118 libpq-dev \
119+ libprotobuf-dev \
120+ libre2-dev \
121+ librocksdb-dev \
122+ libsdl1.2-dev \
91 libsdl2-dev \
123 libsdl2-dev \
124+ libsdl2-gfx-dev \
125+ libsdl2-image-dev \
126+ libsdl2-mixer-dev \
127+ libsdl2-ttf-dev \
128+ libsecp256k1-dev \
92 libsnappy-dev \
129 libsnappy-dev \
93 libsndfile1-dev \
130 libsndfile1-dev \
131+ libsodium-dev \
132+ libsox-dev \
94 libsqlite3-dev \
133 libsqlite3-dev \
95 libssl-dev \
134 libssl-dev \
96 libsystemd-dev \
135 libsystemd-dev \
@@ -98,6 +137,7 @@ apt-get install -y \
98 libtre-dev \
137 libtre-dev \
99 libudev-dev \
138 libudev-dev \
100 libusb-1.0-0-dev \
139 libusb-1.0-0-dev \
140+ libvte-2.91-dev \
101 libwebkitgtk-3.0-dev \
141 libwebkitgtk-3.0-dev \
102 libxau-dev \
142 libxau-dev \
103 libxml2-dev \
143 libxml2-dev \
@@ -105,25 +145,53 @@ apt-get install -y \
105 libxss-dev \
145 libxss-dev \
106 libyaml-dev \
146 libyaml-dev \
107 libzip-dev \
147 libzip-dev \
148+ libzstd-dev \
108 libzmq3-dev \
149 libzmq3-dev \
109− llvm-3.7 \
150+ llvm-7 \
151+ llvm-8 \
152+ llvm-9 \
153+ locales \
110 m4 \
154 m4 \
155+ minisat \
156+ mono-mcs \
111 nettle-dev \
157 nettle-dev \
112− nodejs \
158+ ninja-build \
113− npm \
114 openjdk-8-jdk \
159 openjdk-8-jdk \
160+ python-mpltoolkits.basemap \
161+ python3-matplotlib \
162+ python3-numpy \
163+ python3-pip \
164+ python3-scipy \
115 r-base \
165 r-base \
116 r-base-dev \
166 r-base-dev \
167+ rpm \
117 ruby-dev \
168 ruby-dev \
118− stack \
169+ software-properties-common \
170+ sudo \
171+ texlive \
172+ unixodbc-dev \
119 wget \
173 wget \
120 xclip \
174 xclip \
121− z3 \
122 zip \
175 zip \
123− zlib1g-dev
176+ zlib1g-dev \
177+ zsh
124
178
125−# Put documentation where we expect it
179+# odbc
126−mv /opt/ghc/$GHCVER/share/doc/ghc-$GHCVER/ /opt/ghc/$GHCVER/share/doc/ghc
180+# TODO: See if we can fix this...
181+# E: Failed to fetch https://packages.microsoft.com/debian/9/prod/pool/main/u/unixodbc/odbcinst_2.3.7_amd64.deb 404 Not Found
182+#
183+# curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
184+# curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list
185+# apt-get update
186+# ACCEPT_EULA=Y apt-get install msodbcsql17 -y
187+
188+# llvm for llvm-hs
189+curl https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
190+add-apt-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-9 main"
191+apt-get update
192+apt-get install llvm-9-dev -y
193+
194+locale-gen en_US.UTF-8
127
195
128# Buggy versions of ld.bfd fail to link some Haskell packages:
196# Buggy versions of ld.bfd fail to link some Haskell packages:
129# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
197# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is
@@ -135,9 +203,13 @@ update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10
135# This version is tracked here:
203# This version is tracked here:
136# https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/Installing
204# https://ghc.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/Installing
137#
205#
138−# GHC 8.0 requires LLVM 3.7 tools (specifically, llc-3.7 and opt-3.7).
206+# GHC 8.10 requires LLVM 9 tools (?) (specifically, llc-9 and opt-9).
139−update-alternatives --install "/usr/bin/llc" "llc" "/usr/bin/llc-3.7" 50
207+update-alternatives --install "/usr/bin/llc" "llc" "/usr/bin/llc-9" 50
140−update-alternatives --install "/usr/bin/opt" "opt" "/usr/bin/opt-3.7" 50
208+update-alternatives --install "/usr/bin/opt" "opt" "/usr/bin/opt-9" 50
209+
210+# nodejs 10 (nodejs8 in bionic needs conflicting libssl10-dev)
211+curl -sL https://deb.nodesource.com/setup_10.x | bash -
212+apt-get install -y nodejs
141
213
142# install ocilib dependencies then build and install ocilib
214# install ocilib dependencies then build and install ocilib
143cd /tmp \
215cd /tmp \
@@ -147,9 +219,9 @@ cd /tmp \
147 && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
219 && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
148 && dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
220 && dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
149 && rm -f oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
221 && rm -f oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \
150− && wget https://github.com/vrogier/ocilib/archive/v4.2.1.tar.gz \
222+ && wget https://github.com/vrogier/ocilib/archive/v4.3.2.tar.gz \
151− && tar xvf v4.2.1.tar.gz \
223+ && tar xvf v4.3.2.tar.gz \
152− && cd /tmp/ocilib-4.2.1 \
224+ && cd /tmp/ocilib-4.3.2 \
153 && ./configure --with-oracle-import=linkage \
225 && ./configure --with-oracle-import=linkage \
154 --with-oracle-charset=ansi \
226 --with-oracle-charset=ansi \
155 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
227 --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \
@@ -157,7 +229,105 @@ cd /tmp \
157 && make \
229 && make \
158 && make install \
230 && make install \
159 && cd \
231 && cd \
160− && rm -rf /tmp/ocilib-4.2.1 \
232+ && rm -rf /tmp/ocilib-4.3.2 \
161 && echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf \
233 && echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf \
162 && echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle-client.conf \
234 && echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle-client.conf \
163 && ldconfig
235 && ldconfig
236+
237+# Add JDK to system paths.
238+echo "/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/" > /etc/ld.so.conf.d/openjdk.conf \
239+ && ldconfig
240+
241+# Install erlang/otp platform and its dependencies
242+ERLANG_DEB_FILE="esl-erlang_21.1-1~ubuntu~bionic_amd64.deb"
243+pushd /tmp \
244+ && wget https://packages.erlang-solutions.com/erlang/debian/pool/${ERLANG_DEB_FILE} \
245+ && (dpkg -i ${ERLANG_DEB_FILE}; apt-get install -yf) \
246+ && rm ${ERLANG_DEB_FILE} \
247+ && popd
248+
249+# Install the TensorFlow C API.
250+curl https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.1.0.tar.gz > libtensorflow.tar.gz \
251+ && sudo tar zxf libtensorflow.tar.gz -C /usr \
252+ && rm libtensorflow.tar.gz \
253+ && ldconfig
254+
255+# NOTE: also update Dockerfile when cuda version changes
256+# Install CUDA toolkit
257+# The current version can be found at: https://developer.nvidia.com/cuda-downloads
258+CUDA_PKG=10.0.130-1
259+CUDA_VER=10.0
260+CUDA_APT=10-0
261+
262+pushd /tmp \
263+ && wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
264+ && apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub \
265+ && dpkg -i cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
266+ && apt-get update -qq \
267+ && apt-get install -y cuda-drivers cuda-core-${CUDA_APT} cuda-cudart-dev-${CUDA_APT} cuda-cufft-dev-${CUDA_APT} cuda-cublas-dev-${CUDA_APT} cuda-cusparse-dev-${CUDA_APT} cuda-cusolver-dev-${CUDA_APT} \
268+ && rm cuda-repo-ubuntu1804_${CUDA_PKG}_amd64.deb \
269+ && export CUDA_PATH=/usr/local/cuda-${CUDA_VER} \
270+ && export LD_LIBRARY_PATH=${CUDA_PATH}/nvvm/lib64:${LD_LIBRARY_PATH+x} \
271+ && export LD_LIBRARY_PATH=${CUDA_PATH}/lib64:${LD_LIBRARY_PATH} \
272+ && export PATH=${CUDA_PATH}/bin:${PATH} \
273+ && popd
274+
275+# non-free repo for mediabus-fdk-aac
276+apt-add-repository multiverse \
277+ && apt-get update \
278+ && apt-get install -y nvidia-cuda-dev
279+
280+export CLANG_PURE_LLVM_LIB_DIR=/usr/lib/llvm-9/lib;
281+export CLANG_PURE_LLVM_INCLUDE_DIR=/usr/lib/llvm-9/include;
282+
283+# protoc, for proto-lens-combinators test suite
284+# Instructions from: https://google.github.io/proto-lens/installing-protoc.html
285+PROTOC_ZIP=protoc-3.3.0-linux-x86_64.zip
286+curl -OL https://github.com/google/protobuf/releases/download/v3.3.0/$PROTOC_ZIP
287+sudo unzip -o $PROTOC_ZIP -d /usr bin/protoc
288+rm -f $PROTOC_ZIP
289+
290+# Update library search paths
291+echo /usr/local/cuda-10.0/lib64 > /etc/ld.so.conf.d/cuda.conf
292+echo /usr/local/cuda-10.0/nvvm/lib64 >> /etc/ld.so.conf.d/cuda.conf
293+
294+echo /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server > /etc/ld.so.conf.d/java.conf
295+
296+echo /usr/lib/llvm-3.7/lib > /etc/ld.so.conf.d/llvm.conf
297+
298+ldconfig
299+
300+# Install librdkafka (Apache Kafka C/C++ library)
301+wget -qO - https://packages.confluent.io/deb/5.2/archive.key | apt-key add -
302+add-apt-repository "deb https://packages.confluent.io/deb/5.2 stable main"
303+apt-get update && apt install -y librdkafka-dev
304+
305+Z3_VER=4.8.8
306+(
307+ cd /usr/local/ \
308+ && wget https://github.com/Z3Prover/z3/releases/download/z3-${Z3_VER}/z3-${Z3_VER}-x64-ubuntu-16.04.zip \
309+ && unzip z3-${Z3_VER}-x64-ubuntu-16.04.zip \
310+ && rm z3-${Z3_VER}-x64-ubuntu-16.04.zip \
311+ && ln -s /usr/local/z3-${Z3_VER}-x64-ubuntu-16.04/bin/z3 /usr/bin/z3
312+)
313+
314+LIBJWT_VER=1.12.1
315+(
316+pushd /tmp \
317+ && wget https://github.com/benmcollins/libjwt/archive/v${LIBJWT_VER}.zip \
318+ && unzip v${LIBJWT_VER}.zip \
319+ && pushd libjwt-${LIBJWT_VER} \
320+ && autoreconf -fiv \
321+ && ./configure --disable-valgrind --disable-doxygen-doc --prefix /usr \
322+ && make \
323+ && sudo make install \
324+ && popd \
325+ && popd
326+)
327+
328+
329+# EOF: don't build anything below this line
330+
331+# Cleanup
332+apt-get clean
333+rm -rf /var/lib/apt/lists/*
etc/check.shnew file+28
@@ -0,0 +1,28 @@
1+#!/usr/bin/env bash
2+
3+set -euxo pipefail
4+
5+ETC=$(cd $(dirname $0) ; pwd)
6+export GHCVER=$(sed -n "s/^ghc-version: \"\(.*\)\"/\1/p" "$ETC/../build-constraints.yaml")
7+
8+# Download and unpack the stack executable
9+mkdir -p ~/.local/bin
10+export PATH=$HOME/.local/bin:$PATH
11+curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
12+
13+# Get new Stackage curator
14+curl -L "https://github.com/commercialhaskell/curator/releases/download/commit-a79aadca0f6497ec6accc927df5be7c49f5de86a/curator.bz2" | bunzip2 > curator
15+chmod +x curator
16+
17+# Install GHC
18+stack setup $GHCVER
19+
20+# curator's constraint command has target as a required parameter
21+# because of a different constraints handling in minor LTS version bumps
22+NIGHTLY="nightly-$(date +%Y-%m-%d)"
23+# New curator check
24+./curator update &&
25+ ./curator constraints --target=$NIGHTLY &&
26+ ./curator snapshot-incomplete --target=$NIGHTLY &&
27+ ./curator snapshot &&
28+ stack --resolver ghc-$GHCVER exec ./curator check-snapshot
etc/commenter/.gitignorenew file+3
@@ -0,0 +1,3 @@
1+/target
2+/comments.txt
3+/out.txt
etc/commenter/Cargo.locknew file+365
@@ -0,0 +1,365 @@
1+# This file is automatically @generated by Cargo.
2+# It is not intended for manual editing.
3+version = 3
4+
5+[[package]]
6+name = "aho-corasick"
7+version = "0.7.18"
8+source = "registry+https://github.com/rust-lang/crates.io-index"
9+checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
10+dependencies = [
11+ "memchr",
12+]
13+
14+[[package]]
15+name = "ansi_term"
16+version = "0.12.1"
17+source = "registry+https://github.com/rust-lang/crates.io-index"
18+checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
19+dependencies = [
20+ "winapi",
21+]
22+
23+[[package]]
24+name = "atty"
25+version = "0.2.14"
26+source = "registry+https://github.com/rust-lang/crates.io-index"
27+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
28+dependencies = [
29+ "hermit-abi",
30+ "libc",
31+ "winapi",
32+]
33+
34+[[package]]
35+name = "autocfg"
36+version = "1.0.1"
37+source = "registry+https://github.com/rust-lang/crates.io-index"
38+checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
39+
40+[[package]]
41+name = "bitflags"
42+version = "1.3.2"
43+source = "registry+https://github.com/rust-lang/crates.io-index"
44+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
45+
46+[[package]]
47+name = "clap"
48+version = "2.34.0"
49+source = "registry+https://github.com/rust-lang/crates.io-index"
50+checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
51+dependencies = [
52+ "ansi_term",
53+ "atty",
54+ "bitflags",
55+ "strsim",
56+ "textwrap",
57+ "unicode-width",
58+ "vec_map",
59+]
60+
61+[[package]]
62+name = "commenter"
63+version = "0.2.0"
64+dependencies = [
65+ "lazy-regex",
66+ "regex",
67+ "serde",
68+ "serde_yaml",
69+ "structopt",
70+]
71+
72+[[package]]
73+name = "hashbrown"
74+version = "0.11.2"
75+source = "registry+https://github.com/rust-lang/crates.io-index"
76+checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
77+
78+[[package]]
79+name = "heck"
80+version = "0.3.3"
81+source = "registry+https://github.com/rust-lang/crates.io-index"
82+checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
83+dependencies = [
84+ "unicode-segmentation",
85+]
86+
87+[[package]]
88+name = "hermit-abi"
89+version = "0.1.19"
90+source = "registry+https://github.com/rust-lang/crates.io-index"
91+checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
92+dependencies = [
93+ "libc",
94+]
95+
96+[[package]]
97+name = "indexmap"
98+version = "1.8.0"
99+source = "registry+https://github.com/rust-lang/crates.io-index"
100+checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
101+dependencies = [
102+ "autocfg",
103+ "hashbrown",
104+]
105+
106+[[package]]
107+name = "lazy-regex"
108+version = "2.2.2"
109+source = "registry+https://github.com/rust-lang/crates.io-index"
110+checksum = "919a16773ebf2de27e95fc58460110932e55bb0780e23aa51fa5a6b59c9e2b3d"
111+dependencies = [
112+ "lazy-regex-proc_macros",
113+ "once_cell",
114+ "regex",
115+]
116+
117+[[package]]
118+name = "lazy-regex-proc_macros"
119+version = "2.2.2"
120+source = "registry+https://github.com/rust-lang/crates.io-index"
121+checksum = "5fbe6bf0a04af51c07976625d5007e75ed9b8b955befc21c77b3947733496e36"
122+dependencies = [
123+ "proc-macro2",
124+ "quote",
125+ "regex",
126+ "syn",
127+]
128+
129+[[package]]
130+name = "lazy_static"
131+version = "1.4.0"
132+source = "registry+https://github.com/rust-lang/crates.io-index"
133+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
134+
135+[[package]]
136+name = "libc"
137+version = "0.2.112"
138+source = "registry+https://github.com/rust-lang/crates.io-index"
139+checksum = "1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125"
140+
141+[[package]]
142+name = "linked-hash-map"
143+version = "0.5.4"
144+source = "registry+https://github.com/rust-lang/crates.io-index"
145+checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
146+
147+[[package]]
148+name = "memchr"
149+version = "2.4.1"
150+source = "registry+https://github.com/rust-lang/crates.io-index"
151+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
152+
153+[[package]]
154+name = "once_cell"
155+version = "1.9.0"
156+source = "registry+https://github.com/rust-lang/crates.io-index"
157+checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5"
158+
159+[[package]]
160+name = "proc-macro-error"
161+version = "1.0.4"
162+source = "registry+https://github.com/rust-lang/crates.io-index"
163+checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
164+dependencies = [
165+ "proc-macro-error-attr",
166+ "proc-macro2",
167+ "quote",
168+ "syn",
169+ "version_check",
170+]
171+
172+[[package]]
173+name = "proc-macro-error-attr"
174+version = "1.0.4"
175+source = "registry+https://github.com/rust-lang/crates.io-index"
176+checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
177+dependencies = [
178+ "proc-macro2",
179+ "quote",
180+ "version_check",
181+]
182+
183+[[package]]
184+name = "proc-macro2"
185+version = "1.0.36"
186+source = "registry+https://github.com/rust-lang/crates.io-index"
187+checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
188+dependencies = [
189+ "unicode-xid",
190+]
191+
192+[[package]]
193+name = "quote"
194+version = "1.0.14"
195+source = "registry+https://github.com/rust-lang/crates.io-index"
196+checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d"
197+dependencies = [
198+ "proc-macro2",
199+]
200+
201+[[package]]
202+name = "regex"
203+version = "1.5.4"
204+source = "registry+https://github.com/rust-lang/crates.io-index"
205+checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461"
206+dependencies = [
207+ "aho-corasick",
208+ "memchr",
209+ "regex-syntax",
210+]
211+
212+[[package]]
213+name = "regex-syntax"
214+version = "0.6.25"
215+source = "registry+https://github.com/rust-lang/crates.io-index"
216+checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
217+
218+[[package]]
219+name = "ryu"
220+version = "1.0.9"
221+source = "registry+https://github.com/rust-lang/crates.io-index"
222+checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f"
223+
224+[[package]]
225+name = "serde"
226+version = "1.0.133"
227+source = "registry+https://github.com/rust-lang/crates.io-index"
228+checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
229+dependencies = [
230+ "serde_derive",
231+]
232+
233+[[package]]
234+name = "serde_derive"
235+version = "1.0.133"
236+source = "registry+https://github.com/rust-lang/crates.io-index"
237+checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537"
238+dependencies = [
239+ "proc-macro2",
240+ "quote",
241+ "syn",
242+]
243+
244+[[package]]
245+name = "serde_yaml"
246+version = "0.8.23"
247+source = "registry+https://github.com/rust-lang/crates.io-index"
248+checksum = "a4a521f2940385c165a24ee286aa8599633d162077a54bdcae2a6fd5a7bfa7a0"
249+dependencies = [
250+ "indexmap",
251+ "ryu",
252+ "serde",
253+ "yaml-rust",
254+]
255+
256+[[package]]
257+name = "strsim"
258+version = "0.8.0"
259+source = "registry+https://github.com/rust-lang/crates.io-index"
260+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
261+
262+[[package]]
263+name = "structopt"
264+version = "0.3.25"
265+source = "registry+https://github.com/rust-lang/crates.io-index"
266+checksum = "40b9788f4202aa75c240ecc9c15c65185e6a39ccdeb0fd5d008b98825464c87c"
267+dependencies = [
268+ "clap",
269+ "lazy_static",
270+ "structopt-derive",
271+]
272+
273+[[package]]
274+name = "structopt-derive"
275+version = "0.4.18"
276+source = "registry+https://github.com/rust-lang/crates.io-index"
277+checksum = "dcb5ae327f9cc13b68763b5749770cb9e048a99bd9dfdfa58d0cf05d5f64afe0"
278+dependencies = [
279+ "heck",
280+ "proc-macro-error",
281+ "proc-macro2",
282+ "quote",
283+ "syn",
284+]
285+
286+[[package]]
287+name = "syn"
288+version = "1.0.85"
289+source = "registry+https://github.com/rust-lang/crates.io-index"
290+checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7"
291+dependencies = [
292+ "proc-macro2",
293+ "quote",
294+ "unicode-xid",
295+]
296+
297+[[package]]
298+name = "textwrap"
299+version = "0.11.0"
300+source = "registry+https://github.com/rust-lang/crates.io-index"
301+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
302+dependencies = [
303+ "unicode-width",
304+]
305+
306+[[package]]
307+name = "unicode-segmentation"
308+version = "1.8.0"
309+source = "registry+https://github.com/rust-lang/crates.io-index"
310+checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b"
311+
312+[[package]]
313+name = "unicode-width"
314+version = "0.1.9"
315+source = "registry+https://github.com/rust-lang/crates.io-index"
316+checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
317+
318+[[package]]
319+name = "unicode-xid"
320+version = "0.2.2"
321+source = "registry+https://github.com/rust-lang/crates.io-index"
322+checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3"
323+
324+[[package]]
325+name = "vec_map"
326+version = "0.8.2"
327+source = "registry+https://github.com/rust-lang/crates.io-index"
328+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
329+
330+[[package]]
331+name = "version_check"
332+version = "0.9.4"
333+source = "registry+https://github.com/rust-lang/crates.io-index"
334+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
335+
336+[[package]]
337+name = "winapi"
338+version = "0.3.9"
339+source = "registry+https://github.com/rust-lang/crates.io-index"
340+checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
341+dependencies = [
342+ "winapi-i686-pc-windows-gnu",
343+ "winapi-x86_64-pc-windows-gnu",
344+]
345+
346+[[package]]
347+name = "winapi-i686-pc-windows-gnu"
348+version = "0.4.0"
349+source = "registry+https://github.com/rust-lang/crates.io-index"
350+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
351+
352+[[package]]
353+name = "winapi-x86_64-pc-windows-gnu"
354+version = "0.4.0"
355+source = "registry+https://github.com/rust-lang/crates.io-index"
356+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
357+
358+[[package]]
359+name = "yaml-rust"
360+version = "0.4.5"
361+source = "registry+https://github.com/rust-lang/crates.io-index"
362+checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
363+dependencies = [
364+ "linked-hash-map",
365+]
etc/commenter/Cargo.tomlnew file+14
@@ -0,0 +1,14 @@
1+[package]
2+name = "commenter"
3+version = "0.2.0"
4+authors = ["Adam Bergmark <adam@bergmark.nl>"]
5+edition = "2018"
6+
7+# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
8+
9+[dependencies]
10+lazy-regex = "2.2.1"
11+regex = "1.5.4"
12+serde = { version = "1.0.133", features = ["derive"] }
13+serde_yaml = "0.8.23"
14+structopt = "0.3.25"
etc/commenter/README.mdnew file+3
@@ -0,0 +1,3 @@
1+Helps automate mass-disabling of packages in Stackage's build-constraint.yaml.
2+
3+See CURATORS.md for usage instructions.
etc/commenter/commenternew file+2
@@ -0,0 +1,2 @@
1+#!/bin/bash
2+cargo run -- $@
etc/commenter/latest-version/LICENSEnew file+30
@@ -0,0 +1,30 @@
1+Copyright Adam Bergmark (c) 2021
2+
3+All rights reserved.
4+
5+Redistribution and use in source and binary forms, with or without
6+modification, are permitted provided that the following conditions are met:
7+
8+ * Redistributions of source code must retain the above copyright
9+ notice, this list of conditions and the following disclaimer.
10+
11+ * Redistributions in binary form must reproduce the above
12+ copyright notice, this list of conditions and the following
13+ disclaimer in the documentation and/or other materials provided
14+ with the distribution.
15+
16+ * Neither the name of Author name here nor the names of other
17+ contributors may be used to endorse or promote products derived
18+ from this software without specific prior written permission.
19+
20+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
etc/commenter/latest-version/README.mdnew file+1
@@ -0,0 +1 @@
1+# latest-version
stackage/Setup.hs → etc/commenter/latest-version/Setup.hsrenamed

The content is the same.

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