on master help sign in
10 files changed+733−308
since splitsnapshots
unifiedsplit
CURATORS.md+45−15 build-constraints.yaml+197−198 commenter+20 etc/commenter/Cargo.lock+95−18 etc/commenter/Cargo.toml+2 etc/commenter/latest-version/latest-version.cabal+1−1 etc/commenter/latest-version/src/Main.hs+17−7 etc/commenter/latest-version/stack.yaml.lock+13 etc/commenter/src/lib.rs+332−49 etc/commenter/src/main.rs+11−20
CURATORS.md+45−15
@@ -210,6 +210,8 @@ can modify it and push it to Github to trigger a build. The nightly
210210branch is used for nightlies. For LTSes, we use the ltsX branch, where X is the
211211major version number (e.g., lts3 for lts-3.\*).
212212
213+Update the `Win32` version in `build-constraints.yaml` under "GHC upper bounds".
214+
213215Note that when starting a new LTS major release, you'll need to modify `.github/workflows/image.yml` to add a new lts branch.
214216
215217Update `GHCVER` in `Dockerfile`. (This env var automatically gets passed to `debian-bootstrap.sh`.)
@@ -315,7 +317,7 @@ First run `build.sh` to regenerate updated `ltsXX/work/constraints.yaml` and `lt
315317
316318For an LTS minor bump, you'll typically want to:
317319
318−* Add constraints to package `range:` fields _under_ the `source:` field in that `constraints.yaml`, and edit `snapshot-incomplete.yaml` to change the version used for that package, if necessary.
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).
319321* Add new packages to the `constraints.yaml` file
320322* 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.
321323
@@ -420,20 +422,16 @@ errors for builds, tests and benchmarks.
420422
421423### Large scale enabling/disabling of packages
422424
423−`etc/commenter` is a binary that mostly automates the translation of
424−`./check` errors into lines that go into `build-constraints.yaml`. It
425−can only handle bounds issues, compilation issues still need to be
426−handled manually.
427−
428−It disables all offending packages/test suites/benchmarks, so it is
429−only meant to be used when we close bounds issues and want to disable
430−packages, and when upgrading GHC.
425+`etc/commenter` is a binary that automates `build-constraints.yaml` workflows.
431426
432427#### Setup
433428This is currently a rust program, You can install the rust toolchain
434429by using [rustup](https://rustup.rs/).
435430
436−Then `cargo install --locked --path etc/commenter`
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+```
437435
438436#### Example usage
439437
@@ -454,7 +452,7 @@ testing-feat (GHC 9 bounds issues, Grandfathered dependencies) (not present) dep
454452
455453Now run:
456454```
457−./check 2>&1 >/dev/null | commenter add
455+./check 2>&1 >/dev/null | ./commenter add
458456```
459457
460458You will get this output:
@@ -481,8 +479,8 @@ Re-run this command until no more packages are disabled.
481479We 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.
482480
483481```
484−commenter clear
485−./check 2>&1 >/dev/null | commenter add
482+./commenter clear
483+./check 2>&1 >/dev/null | ./commenter add
486484```
487485
488486Repeat the second command until no updates are made to build-constraints.yaml.
@@ -491,7 +489,7 @@ Repeat the second command until no updates are made to build-constraints.yaml.
491489
492490Run `stack update` before doing this.
493491
494−`commenter outdated` looks through all bounds issues and library
492+`./commenter outdated` looks through all bounds issues and library
495493compilation failures and compares the marked version with the latest hackage release. Example output is
496494
497495```
@@ -502,7 +500,7 @@ aeson mismatch, auto: 1.5.6.0, hackage: 2.0.2.0
502500where "manual" means the bound was added manually by a curator,
503501perhaps due to a compilation failure so we could try re-enabling the
504502package. "auto" means it's part of the sections generated by
505−`commenter`, to update that run the `Re-enabling` step as documented
503+`./commenter`, to update that run the `Re-enabling` step as documented
506504above.
507505
508506`outdated` only finds packages that are in the auto generated
@@ -512,6 +510,38 @@ sections, or that are of the form `- package < 0 # $version`.
512510
513511* 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!
514512
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+```
515545
516546## Adding new curators
517547
build-constraints.yaml+197−198
@@ -10,6 +10,14 @@ cabal-format-version: "3.0"
1010# Constraints for brand new builds
1111packages:
1212
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+
1321 "David Burkett <david@davidburkett.xyz> @Disco-Dave":
1422 - katip-wai
1523
@@ -66,6 +74,7 @@ packages:
6674 - regex-posix-clib
6775 - regex-tdfa
6876 - java-adt
77+ - shelly
6978 - tasty-silver
7079
7180 "Diogo Biazus <diogo@biazus.ca>":
@@ -127,7 +136,7 @@ packages:
127136 - Rattus
128137
129138 "Rob Stewart <robstewart57@gmail.com> @robstewart57":
130− - gitlab-haskell
139+ - gitlab-haskell < 0 # 0.3.2.0 text 1.2.5.0 exports `elem`
131140
132141 "Callan McGill <callan.mcgill@gmail.com> @callanmcgill":
133142 - perfect-vector-shuffle
@@ -287,7 +296,7 @@ packages:
287296
288297 "Matthew Ahrens <matt.p.ahrens@gmail.com> @mpahrens":
289298 - forkable-monad
290− - butter
299+ - butter < 0 # 0.1.0.6 text 1.2.5.0 exports `elem`
291300
292301 "Iris Ward <aditu.venyhandottir@gmail.com> @AdituV":
293302 - typenums
@@ -307,8 +316,10 @@ packages:
307316 - essence-of-live-coding-gloss
308317 - essence-of-live-coding-pulse
309318 - essence-of-live-coding-quickcheck
319+ - essence-of-live-coding-warp
310320 - pulse-simple
311321 - simple-affine-space
322+ - has-transformers
312323
313324 "Paul Johnson <paul@cogito.org.uk> @PaulJohnson":
314325 - geodetics
@@ -397,7 +408,7 @@ packages:
397408 - normalization-insensitive
398409
399410 "Jacob Stanley <jacob@stanley.io> @jacobstanley":
400− - hedgehog
411+ - hedgehog < 1.1 # https://github.com/commercialhaskell/stackage/issues/6415
401412 - hedgehog-quickcheck
402413 - transformers-bifunctors
403414 - unix-compat
@@ -755,7 +766,7 @@ packages:
755766 - cryptonite-conduit
756767 - streaming-commons
757768
758− - alex
769+ - alex < 3.2.7 || > 3.2.7
759770 - async
760771 - base16-bytestring
761772 - csv-conduit
@@ -764,7 +775,7 @@ packages:
764775 - foreign-store
765776 - formatting
766777 - gtk2hs-buildtools
767− - happy
778+ - happy < 1.21.0 || > 1.21.0 # https://github.com/commercialhaskell/stackage/issues/6294
768779 - hybrid-vectors
769780 - indents
770781 - language-c
@@ -890,7 +901,6 @@ packages:
890901 - wai-slack-middleware
891902 - sysinfo
892903 - xmonad-extras
893− - shelly
894904 - persistent-redis
895905 - fakedata
896906 - fakedata-parser
@@ -1123,7 +1133,7 @@ packages:
11231133 - bugsnag-haskell
11241134 - gravatar
11251135 - load-env
1126− - yesod-auth-oauth2
1136+ - yesod-auth-oauth2 < 0.7 # https://github.com/commercialhaskell/stackage/issues/6424
11271137 - yesod-markdown
11281138 - yesod-paginator
11291139
@@ -1441,10 +1451,11 @@ packages:
14411451 # incompatible bounds, we would prefer they be disabled temporarily,
14421452 # rather than disabling the latest hledger-lib and hledger.
14431453 # (#3494/closed, #5779/closed)
1444− - hledger
1445− - hledger-lib
1446− - hledger-ui
1447− - hledger-web
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
14481459
14491460 "Mihai Maruseac <mihai.maruseac@gmail.com> @mihaimaruseac":
14501461 - io-manager
@@ -1504,7 +1515,7 @@ packages:
15041515 - generic-aeson
15051516 - parameterized
15061517 - tracing-control
1507− - primitive-unlifted
1518+ - primitive-unlifted < 0.2 # 1.0.0.0 ghc 9.0.2 panic, https://github.com/metrix-ai/primitive-extras/issues/6
15081519 - stm-lifted
15091520 - monad-primitive
15101521 - mwc-random-monad
@@ -1576,7 +1587,7 @@ packages:
15761587 - hasql
15771588 - hasql-optparse-applicative
15781589 - hasql-pool
1579− - hasql-th < 0 # 0.4.0.9 TH compile error
1590+ - hasql-th
15801591 - hasql-transaction
15811592 - headed-megaparsec
15821593 - jsonifier
@@ -1718,18 +1729,23 @@ packages:
17181729 - linux-capabilities
17191730
17201731 "Jens Petersen <juhpetersen@gmail.com> @juhp":
1732+ - bodhi
17211733 - bugzilla-redhat
17221734 - cabal-file
17231735 - cabal-rpm
17241736 - cached-json-file
1725− - dl-fedora
1737+ - copr-api
1738+ - dl-fedora < 0 # 0.9.2 https://github.com/juhp/dl-fedora/issues/2
17261739 - fedora-dists
17271740 - fedora-haskell-tools
1741+ - HaXml
17281742 - hkgr
1729− - http-directory < 0.1.9 # https://github.com/juhp/dl-fedora/issues/2
1743+ - http-directory
17301744 - http-query
17311745 - koji
1746+ - pagure
17321747 - pagure-cli
1748+ - pdc
17331749 - pkgtreediff
17341750 - rhbzquery
17351751 - rpm-nvr
@@ -1737,7 +1753,8 @@ packages:
17371753 - simple-cabal
17381754 - simple-cmd
17391755 - simple-cmd-args
1740− - HaXml
1756+ - stack-all
1757+ - stack-clean-old
17411758
17421759 - async-pool
17431760 - darcs
@@ -2958,7 +2975,7 @@ packages:
29582975 - wai-session-postgresql
29592976
29602977 "Haisheng Wu <freizl@gmail.com> @freizl":
2961− - hoauth2
2978+ - hoauth2 < 2.0 # https://github.com/commercialhaskell/stackage/issues/6424
29622979
29632980 "Falko Peters <falko.peters@gmail.com> @informatikr":
29642981 - scrypt
@@ -3000,7 +3017,7 @@ packages:
30003017 "Justus Adam <dev@justus.science> @JustusAdam":
30013018 - marvin
30023019 - marvin-interpolate
3003− - mustache
3020+ - mustache < 2.4.0 # https://github.com/commercialhaskell/stackage/issues/6421
30043021 - exit-codes >= 1.0.0
30053022
30063023 "Cindy Wang <cindylinz@gmail.com> @CindyLinz":
@@ -3337,6 +3354,7 @@ packages:
33373354 - quote-quot
33383355 - tasty-bench
33393356 - tasty-inspection-testing
3357+ - text-rope
33403358
33413359 "Ashley Yakeley <ashley@semantic.org> @AshleyYakeley":
33423360 - countable
@@ -3710,10 +3728,11 @@ packages:
37103728
37113729 "Albert Krewinkel <albert+stackage@zeitkraut.de> @tarleb":
37123730 - hslua
3731+ - hslua-aeson
37133732 - hslua-classes
37143733 - hslua-core
37153734 - hslua-marshalling
3716− - hslua-module-doclayout
3735+ - hslua-module-doclayout < 0 # https://github.com/commercialhaskell/stackage/issues/6416
37173736 - hslua-module-path
37183737 - hslua-module-system
37193738 - hslua-module-text
@@ -3935,7 +3954,7 @@ packages:
39353954 - binary-ext
39363955
39373956 "Bob Long <robertjflong@gmail.com> @bobjflong":
3938− - yesod-csp
3957+ - yesod-csp < 0 # 0.2.5.0 text 1.2.5.0 exports `elem`
39393958
39403959 "Alexander Vershilov <alexander.vershilov@gmail.com> @qnikst":
39413960 - stm-conduit
@@ -4035,7 +4054,7 @@ packages:
40354054 - ghc-parser
40364055
40374056 "Alexis Williams <alexis@typedr.at> @typedrat":
4038− - stb-image-redux
4057+ - stb-image-redux < 0.2.1.3 || > 0.2.1.3 # deprecated version
40394058
40404059 "Alexandre Peyroux <alex@px.io> @apeyroux":
40414060 - HSlippyMap
@@ -4177,7 +4196,6 @@ packages:
41774196 - webgear-core
41784197 - webgear-openapi
41794198 - webgear-server
4180− - webgear-core
41814199
41824200 "Alex Washburn <github@recursion.ninja> @recursion-ninja":
41834201 - bv-little
@@ -4243,7 +4261,7 @@ packages:
42434261 - natural-induction
42444262 - peano
42454263 - unconstrained
4246− - util
4264+ - util < 0 # 0.1.17.1 compile fail needs DerivingVia enabled
42474265
42484266 "Ben Sima <ben@bsima.me> @bensima":
42494267 - yesod-text-markdown
@@ -4421,7 +4439,7 @@ packages:
44214439 - gtk-strut
44224440 - rate-limit
44234441 - status-notifier-item
4424− - taffybar
4442+ - taffybar < 0 # https://github.com/taffybar/taffybar/issues/542
44254443 - time-units
44264444 - xml-helpers
44274445 - xdg-desktop-entry
@@ -4442,7 +4460,7 @@ packages:
44424460 - persistent-mtl
44434461
44444462 "Akshay Mankar <itsakshaymankar@gmail.com> @akshaymankar":
4445− - jsonpath < 0.2.1.0 # requires aeson >= 2.0
4463+ - jsonpath
44464464
44474465 "James Brock <jamesbrock@gmail.com> @jamesdbrock":
44484466 - replace-megaparsec
@@ -4534,7 +4552,7 @@ packages:
45344552 - multi-containers
45354553
45364554 "Vaclav Svejcar <vaclav.svejcar@gmail.com> @vaclavsvejcar":
4537− - headroom < 0 # 0.4.2.0 compile fail https://github.com/commercialhaskell/stackage/issues/6342
4555+ - headroom
45384556 - vcs-ignore
45394557
45404558 "Adrian Sieber <stackage@ad-si.com> @ad-si":
@@ -4651,13 +4669,13 @@ packages:
46514669 - wai-session-redis
46524670
46534671 "Rory Tyler Hayford <rory.hayford@protonmail.com> @ngua":
4654− - ipa < 0 # https://gitlab.com/ngua/ipa-hs/-/issues/1
4672+ - ipa
46554673
46564674 "Andreas Herrmann <andreas.herrmann@tweag.io> @aherrmann":
46574675 - capability
46584676
46594677 "Dustin Sallings <dustin@spy.net> @dustin":
4660− - net-mqtt < 0 # 0.8.1.0 compile fail attoparsec 0.14
4678+ - net-mqtt
46614679 - net-mqtt-lens
46624680
46634681 "David A Roberts <d@vidr.cc> @davidar":
@@ -4733,8 +4751,22 @@ packages:
47334751 "Ghais Issa <0x47@0x49.dev> @ghais":
47344752 - LetsBeRational
47354753
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+
47364767 "Grandfathered dependencies":
47374768 - Boolean
4769+ - Cabal-syntax
47384770 - Decimal
47394771 - Diff
47404772 - FloatingHex
@@ -4862,7 +4894,7 @@ packages:
48624894 - dlist
48634895 - dlist-instances
48644896 - dlist-nonempty
4865− - double-conversion
4897+ - double-conversion < 2.0.3.0 # https://github.com/commercialhaskell/stackage/issues/6417
48664898 - dual-tree
48674899 - easy-file
48684900 - easytest
@@ -5024,7 +5056,7 @@ packages:
50245056 - process-extras
50255057 - product-isomorphic
50265058 - project-template
5027− - protobuf < 0.2.1.4 # https://github.com/alphaHeavy/protobuf/issues/39
5059+ - protobuf < 0.2.1.4 || > 0.2.1.4 # deprecated version
50285060 - pureMD5
50295061 - quickcheck-instances
50305062 - quickcheck-io
@@ -5207,18 +5239,18 @@ packages:
52075239 - boxes
52085240 - cassava
52095241 - charsetdetect-ae # #6326/closed
5210− - coercible-utils # 6271
5242+ - coercible-utils # #6271
52115243 - compiler-warnings # #6326/closed
52125244 - curl
52135245 - docopt # #6326/closed
52145246 - dynamic-state # #6326/closed
52155247 - first-class-patterns # #5965/closed
52165248 - ghc-trace-events # #6326/closed
5217− - hashing # 6271
5218− - hnix-store-core # 6271
5249+ - hashing # #6271
5250+ - hnix-store-core # #6271
52195251 - ilist # #5965/closed
52205252 - io-storage # #6326/closed
5221− - monadlist # 6271
5253+ - monadlist # #6271
52225254 - non-empty-sequence
52235255 - numeric-limits # #6326/closed
52245256 - oo-prototypes # #6326/closed
@@ -5226,7 +5258,7 @@ packages:
52265258 - opentelemetry-extra # #6326/closed
52275259 - opentelemetry-lightstep # #6326/closed
52285260 - opentelemetry-wai # #6326/closed
5229− - path # 6271
5261+ - path # #6271
52305262 - pattern-arrows
52315263 - planb-token-introspection # #6326/closed
52325264 - pointedlist # #6326/closed
@@ -5281,7 +5313,7 @@ packages:
52815313
52825314 "GHC upper bounds":
52835315 # Need to always match the version shipped with GHC
5284− - Win32 == 2.10.0.0
5316+ - Win32 == 2.12.0.1
52855317
52865318 # Section for packages that have been mass-disabled due to
52875319 # compilation failures, e.g. after we upgrade GHC. Every package
@@ -5327,7 +5359,6 @@ packages:
53275359 - exinst < 0 # 0.8
53285360 - ftp-client-conduit < 0 # 0.5.0.5
53295361 - giphy-api < 0 # 0.7.0.0 https://github.com/passy/giphy-api/pull/19
5330− - groundhog-th < 0 # 0.11
53315362 - gluturtle < 0 # 0.0.58.1
53325363 - haskell-import-graph < 0 # 1.0.4
53335364 - haskell-spacegoo < 0 # 0.2.0.1
@@ -5390,7 +5421,6 @@ packages:
53905421 - tintin < 0 # 1.10.1
53915422 - turtle-options < 0 # 0.1.0.4
53925423 - type-assertions < 0 # 0.1.0.0
5393− - type-map < 0 # 0.1.6.0
53945424 - typecheck-plugin-nat-simple < 0 # 0.1.0.2
53955425 - ulid < 0 # 0.3.0.0
53965426 - uncertain < 0 # 0.3.1.0
@@ -5414,8 +5444,8 @@ packages:
54145444 # for compilation failures as we need to build those packages to
54155445 # verify if they have been fixeq.
54165446 "Library and exe bounds failures":
5417− - BiobaseHTTP < 0 # tried BiobaseHTTP-1.2.0, but its *library* does not support: network-3.1.2.5
5418− - BlastHTTP < 0 # tried BlastHTTP-1.4.2, but its *library* does not support: network-3.1.2.5
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
54195449 - Chart-cairo < 0 # tried Chart-cairo-1.9.3, but its *library* requires the disabled package: cairo
54205450 - Chart-diagrams < 0 # tried Chart-diagrams-1.9.3, but its *library* does not support: SVGFonts-1.8.0.1
54215451 - EntrezHTTP < 0 # tried EntrezHTTP-1.0.4, but its *library* requires the disabled package: biocore
@@ -5426,15 +5456,15 @@ packages:
54265456 - HaskellNet < 0 # tried HaskellNet-0.6, but its *library* does not support: base-4.15.1.0
54275457 - HaskellNet-SSL < 0 # tried HaskellNet-SSL-0.3.4.4, but its *library* requires the disabled package: HaskellNet
54285458 - Hoed < 0 # tried Hoed-0.5.1, but its *library* requires the disabled package: regex-tdfa-text
5429− - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: fast-logger-3.1.0
5459+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: fast-logger-3.1.1
54305460 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: optparse-applicative-0.16.1.0
5431− - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: IPv6Addr-2.0.3
5461+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: IPv6Addr-2.0.4
54325462 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: aeson-1.5.6.0
5433− - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: attoparsec-0.14.3
5463+ - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: attoparsec-0.14.4
54345464 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: hedis-0.15.0
54355465 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: unordered-containers-0.2.16.0
5436− - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: attoparsec-0.14.3
5437− - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: text-show-3.9.5
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
54385468 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: Workflow
54395469 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: monadloc
54405470 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: pwstore-fast
@@ -5446,7 +5476,7 @@ packages:
54465476 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseHTTP-1.2.0
54475477 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseTypes-0.2.1.0
54485478 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: aeson-1.5.6.0
5449− - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: network-3.1.2.5
5479+ - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: network-3.1.2.7
54505480 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* requires the disabled package: hierarchical-clustering
54515481 - Spock < 0 # tried Spock-0.14.0.0, but its *library* requires the disabled package: Spock-core
54525482 - Spock-api-server < 0 # tried Spock-api-server-0.14.0.0, but its *library* requires the disabled package: Spock-core
@@ -5492,7 +5522,8 @@ packages:
54925522 - airship < 0 # tried airship-0.9.4, but its *library* does not support: semigroups-0.19.2
54935523 - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-3.2.3
54945524 - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-extra-3.1.8
5495− - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: http-client-0.7.9
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
54965527 - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: unliftio-core-0.2.0.1
54975528 - amazonka-apigateway < 0 # tried amazonka-apigateway-1.6.1, but its *library* requires the disabled package: amazonka-core
54985529 - amazonka-application-autoscaling < 0 # tried amazonka-application-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
@@ -5518,7 +5549,7 @@ packages:
55185549 - amazonka-cognito-idp < 0 # tried amazonka-cognito-idp-1.6.1, but its *library* requires the disabled package: amazonka-core
55195550 - amazonka-cognito-sync < 0 # tried amazonka-cognito-sync-1.6.1, but its *library* requires the disabled package: amazonka-core
55205551 - amazonka-config < 0 # tried amazonka-config-1.6.1, but its *library* requires the disabled package: amazonka-core
5521− - amazonka-core < 0 # tried amazonka-core-1.6.1, but its *library* does not support: http-client-0.7.9
5552+ - amazonka-core < 0 # tried amazonka-core-1.6.1, but its *library* does not support: http-client-0.7.10
55225553 - amazonka-datapipeline < 0 # tried amazonka-datapipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
55235554 - amazonka-devicefarm < 0 # tried amazonka-devicefarm-1.6.1, but its *library* requires the disabled package: amazonka-core
55245555 - amazonka-directconnect < 0 # tried amazonka-directconnect-1.6.1, but its *library* requires the disabled package: amazonka-core
@@ -5604,8 +5635,7 @@ packages:
56045635 - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: template-haskell-2.17.0.0
56055636 - asif < 0 # tried asif-6.0.4, but its *library* requires the disabled package: thyme
56065637 - async-timer < 0 # tried async-timer-0.2.0.0, but its *library* does not support: unliftio-core-0.2.0.1
5607− - atom-conduit < 0 # tried atom-conduit-0.9.0.1, but its *library* requires the disabled package: refined
5608− - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: attoparsec-0.14.3
5638+ - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: attoparsec-0.14.4
56095639 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: base-4.15.1.0
56105640 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: cryptonite-0.29
56115641 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: memory-0.16.0
@@ -5625,19 +5655,12 @@ packages:
56255655 - base-noprelude < 0 # tried base-noprelude-4.13.0.0, but its *library* does not support: base-4.15.1.0
56265656 - bcp47 < 0 # tried bcp47-0.2.0.5, but its *library* requires the disabled package: country
56275657 - bcp47-orphans < 0 # tried bcp47-orphans-0.1.0.4, but its *library* requires the disabled package: bcp47
5628− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: dlist-1.0
5629− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: ghc-prim-0.7.0
5630− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: vector-sized-1.5.0
5631− - beam-migrate < 0 # tried beam-migrate-0.5.1.0, but its *library* does not support: ghc-prim-0.7.0
56325658 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: aeson-1.5.6.0
5633− - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: beam-core-0.9.1.0
5659+ - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: beam-core-0.9.2.0
56345660 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: hashable-1.3.5.0
56355661 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: mysql-0.2.1
5636− - beam-postgres < 0 # tried beam-postgres-0.5.1.0, but its *library* does not support: attoparsec-0.14.3
5637− - beam-sqlite < 0 # tried beam-sqlite-0.5.1.0, but its *library* does not support: attoparsec-0.14.3
5638− - beam-sqlite < 0 # tried beam-sqlite-0.5.1.0, but its *library* does not support: dlist-1.0
5639− - bench-show < 0 # tried bench-show-0.3.1, but its *library* requires the disabled package: Chart-diagrams
5640− - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: brick-0.65
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
56415664 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: bytestring-0.10.12.1
56425665 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: directory-1.3.6.2
56435666 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: filepath-1.4.2.1
@@ -5670,30 +5693,27 @@ packages:
56705693 - blosum < 0 # tried blosum-0.1.1.4, but its *executable* requires the disabled package: pipes-text
56715694 - boolean-normal-forms < 0 # tried boolean-normal-forms-0.0.1.1, but its *library* does not support: base-4.15.1.0
56725695 - boundingboxes < 0 # tried boundingboxes-0.2.3, but its *library* does not support: lens-5.0.1
5673− - brittany < 0 # tried brittany-0.14.0.0, but its *library* does not support: aeson-1.5.6.0
5674− - broadcast-chan < 0 # tried broadcast-chan-0.2.1.1, but its *library* does not support: base-4.15.1.0
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
56755698 - buchhaltung < 0 # tried buchhaltung-0.0.7, but its *library* requires the disabled package: regex-tdfa-text
56765699 - bulletproofs < 0 # tried bulletproofs-1.1.0, but its *library* requires the disabled package: elliptic-curve
56775700 - butcher < 0 # tried butcher-1.3.3.2, but its *library* does not support: base-4.15.1.0
5678− - cabal-file < 0 # tried cabal-file-0.1.1, but its *library* requires the disabled package: hackage-security
56795701 - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: Cabal-3.4.1.0
56805702 - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: base-4.15.1.0
56815703 - 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
56825705 - cereal-time < 0 # tried cereal-time-0.1.0.0, but its *library* does not support: time-1.9.3
56835706 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-1.5.6.0
56845707 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-casing-0.2.0.0
56855708 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: connection-0.3.1
56865709 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-api-data-0.4.3
5687− - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-client-0.7.9
5710+ - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-client-0.7.10
56885711 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: req-3.9.2
56895712 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytebuild
56905713 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: byteslice
56915714 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytesmith
56925715 - chronos-bench < 0 # tried chronos-bench-0.2.0.2, but its *library* requires the disabled package: chronos
56935716 - clang-compilation-database < 0 # tried clang-compilation-database-0.1.0.1, but its *library* does not support: base-4.15.1.0
5694− - clash-ghc < 0 # tried clash-ghc-1.4.6, but its *library* does not support: ghc-bignum-1.1
5695− - clash-lib < 0 # tried clash-lib-1.4.6, but its *library* does not support: ghc-bignum-1.1
5696− - clash-prelude < 0 # tried clash-prelude-1.4.6, but its *library* does not support: ghc-bignum-1.1
56975717 - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: base-4.15.1.0
56985718 - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: template-haskell-2.17.0.0
56995719 - clock-extras < 0 # tried clock-extras-0.1.0.2, but its *library* does not support: clock-0.8.2
@@ -5706,7 +5726,6 @@ packages:
57065726 - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
57075727 - composite-aeson-path < 0 # tried composite-aeson-path-0.7.5.0, but its *library* does not support: path-0.9.2
57085728 - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: composite-aeson
5709− - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: refined
57105729 - composite-aeson-throw < 0 # tried composite-aeson-throw-0.1.0.0, but its *library* requires the disabled package: composite-aeson
57115730 - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: profunctors-5.6.2
57125731 - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -5726,18 +5745,19 @@ packages:
57265745 - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* requires the disabled package: snap-server
57275746 - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: base-4.15.1.0
57285747 - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: megaparsec-9.2.0
5729− - country < 0 # tried country-0.2.1, but its *library* does not support: attoparsec-0.14.3
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
57305750 - country < 0 # tried country-0.2.1, but its *library* does not support: base-4.15.1.0
57315751 - cql-io < 0 # tried cql-io-1.1.1, but its *library* requires the disabled package: cql
57325752 - crypto-pubkey < 0 # tried crypto-pubkey-0.2.8, but its *library* requires the disabled package: crypto-numbers
57335753 - cryptocipher < 0 # tried cryptocipher-0.6.2, but its *library* requires the disabled package: cipher-blowfish
57345754 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: QuickCheck-2.14.2
5735− - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: attoparsec-0.14.3
5755+ - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: attoparsec-0.14.4
57365756 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: simple-vec3-0.6.0.1
57375757 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: strict-0.4.0.1
57385758 - css-syntax < 0 # tried css-syntax-0.1.0.0, but its *library* does not support: base-4.15.1.0
57395759 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: Cabal-3.4.1.0
5740− - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: attoparsec-0.14.3
5760+ - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: attoparsec-0.14.4
57415761 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: base-4.15.1.0
57425762 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: constraints-0.13.2
57435763 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: cryptonite-0.29
@@ -5766,7 +5786,7 @@ packages:
57665786 - dialogflow-fulfillment < 0 # tried dialogflow-fulfillment-0.1.1.4, but its *library* does not support: base-4.15.1.0
57675787 - dice < 0 # tried dice-0.1.0.1, but its *library* requires the disabled package: random-fu
57685788 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *executable* does not support: criterion-1.5.12.0
5769− - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: attoparsec-0.14.3
5789+ - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: attoparsec-0.14.4
57705790 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: base-4.15.1.0
57715791 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: containers-0.6.4.1
57725792 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: exceptions-0.10.4
@@ -5780,10 +5800,10 @@ packages:
57805800 - distributed-process-lifted < 0 # tried distributed-process-lifted-0.3.0.1, but its *library* requires the disabled package: distributed-process
57815801 - distributed-process-monad-control < 0 # tried distributed-process-monad-control-0.5.1.3, but its *library* requires the disabled package: distributed-process
57825802 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: containers-0.6.4.1
5783− - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-3.1.2.5
5803+ - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-3.1.2.7
57845804 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-transport-tcp-0.8.0
57855805 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* requires the disabled package: network-multicast
5786− - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: network-3.1.2.5
5806+ - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: network-3.1.2.7
57875807 - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: random-1.2.1
57885808 - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* requires the disabled package: rematch
57895809 - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: containers-0.6.4.1
@@ -5795,7 +5815,6 @@ packages:
57955815 - drawille < 0 # tried drawille-0.1.2.0, but its *library* does not support: containers-0.6.4.1
57965816 - earcut < 0 # tried earcut-0.1.0.4, but its *library* does not support: base-4.15.1.0
57975817 - easytest < 0 # tried easytest-0.3, but its *library* does not support: hedgehog-1.0.5
5798− - ed25519 < 0 # tried ed25519-0.0.5.0, but its *library* does not support: ghc-prim-0.7.0
57995818 - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: QuickCheck-2.14.2
58005819 - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: base-4.15.1.0
58015820 - effect-handlers < 0 # tried effect-handlers-0.1.0.8, but its *library* does not support: free-5.1.7
@@ -5813,7 +5832,6 @@ packages:
58135832 - ekg-statsd < 0 # tried ekg-statsd-0.2.5.0, but its *library* does not support: base-4.15.1.0
58145833 - ekg-wai < 0 # tried ekg-wai-0.1.0.3, but its *library* does not support: time-1.9.3
58155834 - elm-street < 0 # tried elm-street-0.1.0.4, but its *library* does not support: base-4.15.1.0
5816− - emd < 0 # tried emd-0.2.0.0, but its *library* requires the disabled package: ghc-typelits-natnormalise
58175835 - epub-metadata < 0 # tried epub-metadata-4.5, but its *library* requires the disabled package: regex-compat-tdfa
58185836 - euler-tour-tree < 0 # tried euler-tour-tree-0.1.1.0, but its *library* requires the disabled package: Unique
58195837 - event < 0 # tried event-0.1.4, but its *library* does not support: containers-0.6.4.1
@@ -5829,7 +5847,7 @@ packages:
58295847 - filecache < 0 # tried filecache-0.4.1, but its *library* requires the disabled package: strict-base-types
58305848 - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: BiobaseNewick
58315849 - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: hierarchical-clustering
5832− - freer-simple < 0 # tried freer-simple-1.2.1.1, but its *library* does not support: template-haskell-2.17.0.0
5850+ - foldable1 < 0 # tried foldable1-0.1.0.0, but its *library* requires the disabled package: util
58335851 - friday < 0 # tried friday-0.2.3.1, but its *library* does not support: containers-0.6.4.1
58345852 - friday < 0 # tried friday-0.2.3.1, but its *library* requires the disabled package: ratio-int
58355853 - friday-juicypixels < 0 # tried friday-juicypixels-0.1.2.4, but its *library* requires the disabled package: friday
@@ -5843,9 +5861,6 @@ packages:
58435861 - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: dhall-1.40.2
58445862 - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: ghc-9.0.2
58455863 - ghc-syb-utils < 0 # tried ghc-syb-utils-0.3.0.0, but its *library* does not support: ghc-9.0.2
5846− - ghc-typelits-extra < 0 # tried ghc-typelits-extra-0.4.3, but its *library* does not support: ghc-bignum-1.1
5847− - ghc-typelits-knownnat < 0 # tried ghc-typelits-knownnat-0.7.6, but its *library* requires the disabled package: ghc-typelits-natnormalise
5848− - ghc-typelits-natnormalise < 0 # tried ghc-typelits-natnormalise-0.7.6, but its *library* does not support: ghc-bignum-1.1
58495864 - ghcjs-dom < 0 # tried ghcjs-dom-0.9.5.0, but its *library* requires the disabled package: ghcjs-dom-jsaddle
58505865 - gi-gsk < 0 # tried gi-gsk-4.0.4, but its *library* does not support: gi-gdk-3.0.25
58515866 - gi-webkit2 < 0 # tried gi-webkit2-4.0.28, but its *library* requires the disabled package: gi-soup
@@ -5973,22 +5988,20 @@ packages:
59735988 - google-cloud < 0 # tried google-cloud-0.0.4, but its *library* does not support: base-4.15.1.0
59745989 - google-oauth2-jwt < 0 # tried google-oauth2-jwt-0.3.3, but its *library* does not support: base64-bytestring-1.2.1.0
59755990 - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-api-data-0.4.3
5976− - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-client-0.7.9
5991+ - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-client-0.7.10
59775992 - graphql-client < 0 # tried graphql-client-1.1.1, but its *executable* does not support: path-0.9.2
59785993 - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-0.12.0
5979− - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* requires the disabled package: groundhog-th
5994+ - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-th-0.12
59805995 - groundhog-mysql < 0 # tried groundhog-mysql-0.12, but its *library* does not support: mysql-0.2.1
59815996 - grouped-list < 0 # tried grouped-list-0.2.2.1, but its *library* does not support: base-4.15.1.0
59825997 - gtk3 < 0 # tried gtk3-0.15.6, but its *library* does not support: Cabal-3.4.1.0
59835998 - hOpenPGP < 0 # tried hOpenPGP-2.9.7, but its *library* requires the disabled package: ixset-typed
5984− - hackage-security < 0 # tried hackage-security-0.6.0.1, but its *library* does not support: template-haskell-2.17.0.0
5985− - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: http-client-0.7.9
5999+ - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: http-client-0.7.10
59866000 - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-0.18.3
59876001 - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-client-0.18.3
59886002 - hadolint < 0 # tried hadolint-2.8.0, but its *library* does not support: deepseq-1.4.5.0
59896003 - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: colourista
59906004 - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: spdx
5991− - hamilton < 0 # tried hamilton-0.1.0.3, but its *executable* requires the disabled package: ghc-typelits-knownnat
59926005 - hapistrano < 0 # tried hapistrano-0.4.3.0, but its *library* does not support: path-0.9.2
59936006 - happstack-hsp < 0 # tried happstack-hsp-7.3.7.5, but its *library* requires the disabled package: harp
59946007 - haskell-lsp < 0 # tried haskell-lsp-0.24.0.0, but its *executable* does not support: base-4.15.1.0
@@ -6014,7 +6027,7 @@ packages:
60146027 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
60156028 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: base-4.15.1.0
60166029 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: ghc-9.0.2
6017− - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: network-3.1.2.5
6030+ - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: network-3.1.2.7
60186031 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: optparse-applicative-0.16.1.0
60196032 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: strict-0.4.0.1
60206033 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6045,17 +6058,17 @@ packages:
60456058 - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* requires the disabled package: references
60466059 - haskey < 0 # tried haskey-0.3.1.0, but its *library* does not support: stm-containers-1.2
60476060 - haskey-mtl < 0 # tried haskey-mtl-0.3.1.0, but its *library* does not support: monad-control-1.0.3.1
6048− - haskoin-store < 0 # tried haskoin-store-0.64.10, but its *library* requires the disabled package: haskoin-node
6049− - haskoin-store < 0 # tried haskoin-store-0.64.10, but its *library* requires the disabled package: haskoin-store-data
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
60506063 - hasmin < 0 # tried hasmin-1.0.3, but its *executable* does not support: optparse-applicative-0.16.1.0
6051− - hasmin < 0 # tried hasmin-1.0.3, but its *library* does not support: attoparsec-0.14.3
6064+ - hasmin < 0 # tried hasmin-1.0.3, but its *library* does not support: attoparsec-0.14.4
60526065 - haxl-amazonka < 0 # tried haxl-amazonka-0.1.1, but its *library* requires the disabled package: haxl
60536066 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: aeson-1.5.6.0
6054− - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: attoparsec-0.14.3
6067+ - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: attoparsec-0.14.4
60556068 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: base-4.15.1.0
60566069 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: dlist-1.0
60576070 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: ansi-terminal-0.11.1
6058− - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: brick-0.65
6071+ - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: brick-0.66.1
60596072 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: optparse-applicative-0.16.1.0
60606073 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: semigroups-0.19.2
60616074 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: vty-5.33
@@ -6082,7 +6095,7 @@ packages:
60826095 - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: protolude-0.3.0
60836096 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: containers-0.6.4.1
60846097 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: hmatrix-0.20.2
6085− - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: statistics-0.15.2.0
6098+ - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: statistics-0.16.0.1
60866099 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: time-1.9.3
60876100 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: vector-algorithms-0.8.0.4
60886101 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* requires the disabled package: hmatrix-special
@@ -6091,11 +6104,11 @@ packages:
60916104 - hschema-aeson < 0 # tried hschema-aeson-0.0.1.1, but its *library* requires the disabled package: hschema
60926105 - hschema-prettyprinter < 0 # tried hschema-prettyprinter-0.0.1.1, but its *library* requires the disabled package: hschema
60936106 - hschema-quickcheck < 0 # tried hschema-quickcheck-0.0.1.1, but its *library* requires the disabled package: hschema
6094− - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: attoparsec-0.14.3
6107+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: attoparsec-0.14.4
60956108 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-boot-9.0.2
60966109 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
60976110 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: hlint-3.3.6
6098− - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: http-client-0.7.9
6111+ - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: http-client-0.7.10
60996112 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: lens-5.0.1
61006113 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: optparse-applicative-0.16.1.0
61016114 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6108,7 +6121,7 @@ packages:
61086121 - hw-hspec-hedgehog < 0 # tried hw-hspec-hedgehog-0.1.1.0, but its *library* does not support: hspec-2.8.5
61096122 - hyraxAbif < 0 # tried hyraxAbif-0.2.3.27, but its *library* does not support: text-1.2.5.0
61106123 - idris < 0 # tried idris-1.3.4, but its *library* does not support: Cabal-3.4.1.0
6111− - idris < 0 # tried idris-1.3.4, but its *library* does not support: network-3.1.2.5
6124+ - idris < 0 # tried idris-1.3.4, but its *library* does not support: network-3.1.2.7
61126125 - importify < 0 # tried importify-1.0.1, but its *library* requires the disabled package: hse-cpp
61136126 - indentation-core < 0 # tried indentation-core-0.0.0.2, but its *library* does not support: base-4.15.1.0
61146127 - indentation-parsec < 0 # tried indentation-parsec-0.0.0.2, but its *library* does not support: base-4.15.1.0
@@ -6116,10 +6129,11 @@ packages:
61166129 - inline-java < 0 # tried inline-java-0.10.0, but its *library* requires the disabled package: jni
61176130 - inline-r < 0 # tried inline-r-0.10.5, but its *library* does not support: singletons-3.0.1
61186131 - interpolatedstring-qq2 < 0 # tried interpolatedstring-qq2-0.1.0.0, but its *library* does not support: template-haskell-2.17.0.0
6119− - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: attoparsec-0.14.3
6132+ - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: attoparsec-0.14.4
61206133 - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: base-4.15.1.0
6121− - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: attoparsec-0.14.3
6122− - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: network-3.1.2.5
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
61236137 - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: path-0.9.2
61246138 - it-has < 0 # tried it-has-0.2.0.0, but its *library* does not support: generic-lens-2.2.0.0
61256139 - ixset < 0 # tried ixset-1.1.1.1, but its *library* requires the disabled package: syb-with-class
@@ -6128,7 +6142,7 @@ packages:
61286142 - ixset-typed-conversions < 0 # tried ixset-typed-conversions-0.1.2.0, but its *library* requires the disabled package: ixset-typed
61296143 - ixset-typed-hashable-instance < 0 # tried ixset-typed-hashable-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
61306144 - jmacro-rpc-snap < 0 # tried jmacro-rpc-snap-0.3, but its *library* requires the disabled package: snap-core
6131− - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: attoparsec-0.14.3
6145+ - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: attoparsec-0.14.4
61326146 - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: base64-bytestring-1.2.1.0
61336147 - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: ref-tf-0.5.0.1
61346148 - json-alt < 0 # tried json-alt-1.0.0, but its *library* does not support: aeson-1.5.6.0
@@ -6184,7 +6198,6 @@ packages:
61846198 - list-witnesses < 0 # tried list-witnesses-0.1.3.2, but its *library* requires the disabled package: functor-products
61856199 - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log
61866200 - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log-core
6187− - loc < 0 # tried loc-0.1.3.10, but its *library* does not support: base-4.15.1.0
61886201 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: aeson-1.5.6.0
61896202 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: o-clock-1.2.1
61906203 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: universum-1.7.2
@@ -6199,43 +6212,40 @@ packages:
61996212 - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: prettyprinter-1.7.1
62006213 - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* requires the disabled package: logging-effect
62016214 - loopbreaker < 0 # tried loopbreaker-0.1.1.1, but its *library* does not support: ghc-9.0.2
6202− - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: network-3.1.2.5
6215+ - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: network-3.1.2.7
62036216 - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-0.18.3
62046217 - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-client-0.18.3
62056218 - machines-directory < 0 # tried machines-directory-7.0.0.0, but its *library* requires the disabled package: machines-io
62066219 - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-core
62076220 - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-wai
6208− - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: refined
6209− - makefile < 0 # tried makefile-1.1.0.0, but its *library* does not support: attoparsec-0.14.3
6221+ - makefile < 0 # tried makefile-1.1.0.0, but its *library* does not support: attoparsec-0.14.4
62106222 - mallard < 0 # tried mallard-0.6.1.1, but its *library* does not support: megaparsec-9.2.0
62116223 - mallard < 0 # tried mallard-0.6.1.1, but its *library* requires the disabled package: Interpolation
62126224 - map-syntax < 0 # tried map-syntax-0.3, but its *library* does not support: base-4.15.1.0
62136225 - markup < 0 # tried markup-4.2.0, but its *library* requires the disabled package: attoparsec-uri
62146226 - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: aeson-1.5.6.0
6215− - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: http-client-0.7.9
6227+ - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: http-client-0.7.10
62166228 - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: lens-5.0.1
62176229 - marvin < 0 # tried marvin-0.2.5, but its *library* requires the disabled package: marvin-interpolate
6218− - matrix-static < 0 # tried matrix-static-0.3, but its *library* requires the disabled package: ghc-typelits-natnormalise
62196230 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: extra-1.7.10
62206231 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: formatting-7.1.3
6221− - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: http-client-0.7.9
6232+ - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: http-client-0.7.10
62226233 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: optparse-applicative-0.16.1.0
62236234 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: scalpel-core-0.6.2
62246235 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: time-1.9.3
6225− - mega-sdist < 0 # tried mega-sdist-0.4.1.0, but its *executable* requires the disabled package: pantry
62266236 - menshen < 0 # tried menshen-0.0.3, but its *library* does not support: regex-tdfa-1.3.1.1
62276237 - merkle-tree < 0 # tried merkle-tree-0.1.1, but its *library* requires the disabled package: protolude
62286238 - messagepack-rpc < 0 # tried messagepack-rpc-0.5.1, but its *library* does not support: containers-0.6.4.1
62296239 - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *executable* requires the disabled package: aws-lambda-haskell-runtime-wai
62306240 - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *library* requires the disabled package: xml-lens
6231− - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.9
6241+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.10
62326242 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-media-0.8.0.0
62336243 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-0.18.3
62346244 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-client-0.18.3
62356245 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: time-1.9.3
62366246 - midi-music-box < 0 # tried midi-music-box-0.0.1.2, but its *executable* requires the disabled package: diagrams-postscript
62376247 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: lens-5.0.1
6238− - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.5
6248+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.7
62396249 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: random-1.2.1
62406250 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: semigroups-0.19.2
62416251 - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src
@@ -6245,11 +6255,11 @@ packages:
62456255 - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: random-fu
62466256 - miso < 0 # tried miso-1.8.1.0, but its *library* requires the disabled package: jsaddle
62476257 - modify-fasta < 0 # tried modify-fasta-0.8.3.0, but its *executable* requires the disabled package: pipes-text
6248− - modular < 0 # tried modular-0.1.0.8, but its *library* requires the disabled package: ghc-typelits-knownnat
62496258 - mole < 0 # tried mole-0.0.7, but its *executable* does not support: base-4.15.1.0
62506259 - mole < 0 # tried mole-0.0.7, but its *executable* requires the disabled package: snap-server
62516260 - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: base-4.15.1.0
62526261 - 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
62536263 - monad-metrics < 0 # tried monad-metrics-0.2.2.0, but its *library* requires the disabled package: ekg-core
62546264 - monad-mock < 0 # tried monad-mock-0.2.0.0, but its *library* does not support: template-haskell-2.17.0.0
62556265 - monad-unlift-ref < 0 # tried monad-unlift-ref-0.2.1, but its *library* requires the disabled package: monad-unlift
@@ -6265,7 +6275,7 @@ packages:
62656275 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: binary-conduit-1.3.1
62666276 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-1.3.4.2
62676277 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-extra-1.3.5
6268− - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.5
6278+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.7
62696279 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: random-1.2.1
62706280 - multistate < 0 # tried multistate-0.8.0.3, but its *library* does not support: base-4.15.1.0
62716281 - mwc-random-accelerate < 0 # tried mwc-random-accelerate-0.2.0.0, but its *library* requires the disabled package: accelerate
@@ -6279,12 +6289,12 @@ packages:
62796289 - n2o-web < 0 # tried n2o-web-0.11.2, but its *library* requires the disabled package: n2o-protocols
62806290 - nakadi-client < 0 # tried nakadi-client-0.7.0.0, but its *library* requires the disabled package: async-timer
62816291 - 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
62826293 - net-mqtt-lens < 0 # tried net-mqtt-lens-0.1.1.0, but its *library* requires the disabled package: net-mqtt
62836294 - netrc < 0 # tried netrc-0.2.0.0, but its *library* does not support: base-4.15.1.0
62846295 - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: hexstring
62856296 - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: network-attoparsec
6286− - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* does not support: network-3.1.2.5
6287− - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* requires the disabled package: data-default-instances-base
6297+ - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* does not support: network-3.1.2.7
62886298 - network-transport-inmemory < 0 # tried network-transport-inmemory-0.5.2, but its *library* does not support: containers-0.6.4.1
62896299 - nri-test-encoding < 0 # tried nri-test-encoding-0.1.1.1, but its *library* requires the disabled package: servant-auth-server
62906300 - numhask-prelude < 0 # tried numhask-prelude-0.5.0, but its *library* does not support: numhask-0.8.1.0
@@ -6293,14 +6303,12 @@ packages:
62936303 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: Cabal-3.4.1.0
62946304 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: base-4.15.1.0
62956305 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: template-haskell-2.17.0.0
6296− - opml-conduit < 0 # tried opml-conduit-0.9.0.0, but its *library* requires the disabled package: refined
62976306 - oset < 0 # tried oset-0.4.0.1, but its *library* does not support: base-4.15.1.0
62986307 - packdeps < 0 # tried packdeps-0.6.0.0, but its *library* does not support: Cabal-3.4.1.0
62996308 - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: groups-0.5.3
63006309 - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: protolude-0.3.0
63016310 - pairing < 0 # tried pairing-1.1.0, but its *library* requires the disabled package: elliptic-curve
63026311 - pango < 0 # tried pango-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
6303− - pantry < 0 # tried pantry-0.5.3, but its *library* requires the disabled package: hackage-security
63046312 - papillon < 0 # tried papillon-0.1.1.1, but its *library* does not support: template-haskell-2.17.0.0
63056313 - paripari < 0 # tried paripari-0.7.0.0, but its *library* does not support: parser-combinators-1.3.0
63066314 - path-text-utf8 < 0 # tried path-text-utf8-0.0.1.8, but its *library* does not support: path-0.9.2
@@ -6310,7 +6318,7 @@ packages:
63106318 - persistable-record < 0 # tried persistable-record-0.6.0.5, but its *library* requires the disabled package: th-data-compat
63116319 - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: persistable-record
63126320 - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: relational-query-HDBC
6313− - persistent-mysql-haskell < 0 # tried persistent-mysql-haskell-0.6.0, but its *library* does not support: tls-1.5.6
6321+ - persistent-mysql-haskell < 0 # tried persistent-mysql-haskell-0.6.0, but its *library* does not support: tls-1.5.7
63146322 - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: random-1.2.1
63156323 - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: scotty-0.12
63166324 - picedit < 0 # tried picedit-0.2.3.0, but its *executable* requires the disabled package: cli
@@ -6323,15 +6331,15 @@ packages:
63236331 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: containers-0.6.4.1
63246332 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: hashable-1.3.5.0
63256333 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: shake-0.19.6
6326− - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: yaml-0.11.7.0
6334+ - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: yaml-0.11.6.0
63276335 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: Cabal-3.4.1.0
63286336 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base-4.15.1.0
63296337 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
63306338 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: containers-0.6.4.1
63316339 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: hashable-1.3.5.0
6332− - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: http-client-0.7.9
6340+ - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: http-client-0.7.10
63336341 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: shake-0.19.6
6334− - pinboard < 0 # tried pinboard-0.10.2.0, but its *library* does not support: http-client-0.7.9
6342+ - pinboard < 0 # tried pinboard-0.10.2.0, but its *library* does not support: http-client-0.7.10
63356343 - pipes-category < 0 # tried pipes-category-0.3.0.0, but its *library* does not support: lens-5.0.1
63366344 - pipes-misc < 0 # tried pipes-misc-0.5.0.0, but its *library* requires the disabled package: pipes-category
63376345 - pipes-network-tls < 0 # tried pipes-network-tls-0.4, but its *library* requires the disabled package: pipes-network
@@ -6369,23 +6377,21 @@ packages:
63696377 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: connection-0.3.1
63706378 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: constraints-0.13.2
63716379 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-api-data-0.4.3
6372− - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-client-0.7.9
6380+ - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-client-0.7.10
63736381 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: lens-5.0.1
63746382 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: req-3.9.2
63756383 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* requires the disabled package: extensible
63766384 - ranged-list < 0 # tried ranged-list-0.1.0.0, but its *library* requires the disabled package: typecheck-plugin-nat-simple
63776385 - rank-product < 0 # tried rank-product-0.2.2.0, but its *library* requires the disabled package: random-fu
6378− - rdf < 0 # tried rdf-0.1.0.5, but its *library* does not support: attoparsec-0.14.3
6386+ - rdf < 0 # tried rdf-0.1.0.5, but its *library* does not support: attoparsec-0.14.4
63796387 - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry
63806388 - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry-combinatorial
6381− - refined < 0 # tried refined-0.6.2, but its *library* does not support: base-4.15.1.0
6382− - refined < 0 # tried refined-0.6.2, but its *library* does not support: template-haskell-2.17.0.0
63836389 - reform-hsp < 0 # tried reform-hsp-0.2.7.2, but its *library* requires the disabled package: hsx2hs
63846390 - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-base-0.94.0.2
63856391 - 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
63866392 - regex-tdfa-text < 0 # tried regex-tdfa-text-1.0.0.3, but its *library* does not support: regex-base-0.94.0.2
63876393 - registry < 0 # tried registry-0.2.1.0, but its *library* requires the disabled package: protolude
6388− - relapse < 0 # tried relapse-1.0.0.0, but its *library* does not support: attoparsec-0.14.3
6394+ - relapse < 0 # tried relapse-1.0.0.0, but its *library* does not support: attoparsec-0.14.4
63896395 - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: persistable-record
63906396 - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: product-isomorphic
63916397 - relational-query-HDBC < 0 # tried relational-query-HDBC-0.7.2.0, but its *library* requires the disabled package: th-data-compat
@@ -6399,13 +6405,12 @@ packages:
63996405 - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: req-3.9.2
64006406 - rethinkdb-client-driver < 0 # tried rethinkdb-client-driver-0.0.25, but its *library* does not support: base-4.15.1.0
64016407 - rhine-gloss < 0 # tried rhine-gloss-0.7.0, but its *library* requires the disabled package: rhine
6402− - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: attoparsec-0.14.3
6403− - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: network-3.1.2.5
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
64046410 - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: aeson-1.5.6.0
6405− - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: http-client-0.7.9
6406− - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: network-3.1.2.5
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
64076413 - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: time-1.9.3
6408− - rss-conduit < 0 # tried rss-conduit-0.6.0.1, but its *library* requires the disabled package: atom-conduit
64096414 - safe-tensor < 0 # tried safe-tensor-0.2.1.1, but its *library* does not support: singletons-3.0.1
64106415 - salak-toml < 0 # tried salak-toml-0.3.5.3, but its *library* requires the disabled package: tomland
64116416 - sandwich-webdriver < 0 # tried sandwich-webdriver-0.1.0.6, but its *library* requires the disabled package: webdriver
@@ -6416,7 +6421,7 @@ packages:
64166421 - sendgrid-v3 < 0 # tried sendgrid-v3-0.3.0.0, but its *library* does not support: base-4.15.1.0
64176422 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: aeson-1.5.6.0
64186423 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: base-4.15.1.0
6419− - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: http-client-0.7.9
6424+ - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: http-client-0.7.10
64206425 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: lens-5.0.1
64216426 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: optparse-applicative-0.16.1.0
64226427 - seqloc < 0 # tried seqloc-0.6.1.1, but its *library* requires the disabled package: biocore
@@ -6477,20 +6482,17 @@ packages:
64776482 - shower < 0 # tried shower-0.2.0.2, but its *library* does not support: base-4.15.1.0
64786483 - simplest-sqlite < 0 # tried simplest-sqlite-0.1.0.2, but its *library* does not support: template-haskell-2.17.0.0
64796484 - size-based < 0 # tried size-based-0.1.2.0, but its *library* does not support: template-haskell-2.17.0.0
6480− - sized < 0 # tried sized-1.0.0.0, but its *library* requires the disabled package: ghc-typelits-knownnat
6481− - sized < 0 # tried sized-1.0.0.0, but its *library* requires the disabled package: type-natural
64826485 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: aeson-1.5.6.0
64836486 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: base-4.15.1.0
64846487 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: constraints-0.13.2
64856488 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: lens-5.0.1
64866489 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: random-1.2.1
64876490 - skeletons < 0 # tried skeletons-0.4.0, but its *executable* requires the disabled package: tinytemplate
6488− - slack-web < 0 # tried slack-web-0.3.0.1, but its *library* does not support: base-4.15.1.0
6489− - slack-web < 0 # tried slack-web-0.3.0.1, but its *library* does not support: http-client-0.7.9
6491+ - slack-web < 0 # tried slack-web-0.4.0.0, but its *library* does not support: http-client-0.7.10
64906492 - smallcheck-series < 0 # tried smallcheck-series-0.7.1.0, but its *library* does not support: base-4.15.1.0
64916493 - smash-lens < 0 # tried smash-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
64926494 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: aeson-1.5.6.0
6493− - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: attoparsec-0.14.3
6495+ - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: attoparsec-0.14.4
64946496 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: base-4.15.1.0
64956497 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: dlist-1.0
64966498 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: lens-5.0.1
@@ -6498,8 +6500,8 @@ packages:
64986500 - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: pwstore-fast
64996501 - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: snap-server
65006502 - snap-blaze < 0 # tried snap-blaze-0.2.1.5, but its *library* requires the disabled package: snap-core
6501− - snap-core < 0 # tried snap-core-1.0.4.2, but its *library* does not support: attoparsec-0.14.3
6502− - socket-activation < 0 # tried socket-activation-0.1.0.2, but its *library* does not support: network-3.1.2.5
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
65036505 - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: inline-java-0.10.0
65046506 - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: jvm-0.6.0
65056507 - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: distributed-closure
@@ -6507,39 +6509,34 @@ packages:
65076509 - sparse-tensor < 0 # tried sparse-tensor-0.2.1.5, but its *library* does not support: ad-4.5
65086510 - speculation < 0 # tried speculation-1.5.0.3, but its *library* does not support: stm-2.5.0.0
65096511 - sqlite-simple-errors < 0 # tried sqlite-simple-errors-0.6.1.0, but its *library* does not support: text-1.2.5.0
6510− - stack < 0 # tried stack-2.7.3, but its *library* requires the disabled package: hackage-security
65116512 - streamproc < 0 # tried streamproc-1.6.2, but its *library* does not support: base-4.15.1.0
65126513 - strict-base-types < 0 # tried strict-base-types-0.7, but its *library* requires the disabled package: strict-lens
6513− - strict-tuple < 0 # tried strict-tuple-0.1.4, but its *library* does not support: base-4.15.1.0
6514− - strict-tuple-lens < 0 # tried strict-tuple-lens-0.2, but its *library* requires the disabled package: strict-tuple
65156514 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-2.8.5
65166515 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-core-2.8.5
65176516 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: random-1.2.1
65186517 - structured-haskell-mode < 0 # tried structured-haskell-mode-1.1.0, but its *executable* does not support: haskell-src-exts-1.23.1
65196518 - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: Cabal-3.4.1.0
65206519 - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6521− - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: attoparsec-0.14.3
6520+ - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: attoparsec-0.14.4
65226521 - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: base-4.15.1.0
6523− - sv-cassava < 0 # tried sv-cassava-0.3, but its *library* does not support: attoparsec-0.14.3
6524− - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: attoparsec-0.14.3
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
65256524 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: base-4.15.1.0
65266525 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: lens-5.0.1
65276526 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: profunctors-5.6.2
65286527 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: containers-0.6.4.1
65296528 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-api-data-0.4.3
6530− - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-client-0.7.9
6529+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-client-0.7.10
65316530 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-media-0.8.0.0
65326531 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: katip-0.8.7.0
6533− - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: network-3.1.2.5
6532+ - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: network-3.1.2.7
65346533 - swagger2 < 0 # tried swagger2-2.7, but its *library* does not support: aeson-1.5.6.0
65356534 - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src
65366535 - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src-th-mode
6537− - taffybar < 0 # tried taffybar-3.3.0, but its *library* requires the disabled package: broadcast-chan
65386536 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: containers-0.6.4.1
65396537 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: tasty-1.4.2.1
65406538 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: time-1.9.3
6541− - tcp-streams-openssl < 0 # tried tcp-streams-openssl-1.0.1.0, but its *library* does not support: network-3.1.2.5
6542− - termbox < 0 # tried termbox-0.3.0, but its *library* does not support: base-4.15.1.0
6539+ - tcp-streams-openssl < 0 # tried tcp-streams-openssl-1.0.1.0, but its *library* does not support: network-3.1.2.7
65436540 - termcolor < 0 # tried termcolor-0.2.0.0, but its *executable* requires the disabled package: cli
65446541 - termonad < 0 # tried termonad-4.2.0.0, but its *library* requires the disabled package: xml-html-qq
65456542 - test-fixture < 0 # tried test-fixture-0.5.1.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6548,9 +6545,8 @@ packages:
65486545 - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-1.2.5.0
65496546 - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-format-0.3.2
65506547 - text-format < 0 # tried text-format-0.3.2, but its *library* does not support: base-4.15.1.0
6551− - text-generic-pretty < 0 # tried text-generic-pretty-1.2.1, but its *library* does not support: wl-pprint-text-1.2.0.1
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
65526549 - th-to-exp < 0 # tried th-to-exp-0.0.1.1, but its *library* does not support: template-haskell-2.17.0.0
6553− - these-skinny < 0 # tried these-skinny-0.7.4, but its *library* does not support: base-4.15.1.0
65546550 - threepenny-gui < 0 # tried threepenny-gui-0.9.1.0, but its *library* requires the disabled package: snap-server
65556551 - threepenny-gui-flexbox < 0 # tried threepenny-gui-flexbox-0.4.2, but its *library* requires the disabled package: threepenny-gui
65566552 - thumbnail-plus < 0 # tried thumbnail-plus-1.0.5, but its *library* does not support: either-5.0.1.1
@@ -6560,25 +6556,23 @@ packages:
65606556 - tonatona < 0 # tried tonatona-0.1.2.1, but its *library* does not support: base-4.15.1.0
65616557 - tonatona-logger < 0 # tried tonatona-logger-0.2.0.2, but its *library* does not support: base-4.15.1.0
65626558 - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: base-4.15.1.0
6563− - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-2.13.2.1
6564− - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-postgresql-2.13.2.1
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
65656561 - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: base-4.15.1.0
6566− - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-2.13.2.1
6567− - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-sqlite-2.13.0.3
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
65686564 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: base-4.15.1.0
65696565 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-0.18.3
65706566 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-server-0.18.3
65716567 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: wai-extra-3.1.8
65726568 - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: base-4.15.1.0
65736569 - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: writer-cps-transformers-0.5.6.1
6574− - transient-universe < 0 # tried transient-universe-0.6.0.1, but its *library* does not support: network-3.1.2.5
6570+ - transient-universe < 0 # tried transient-universe-0.6.0.1, but its *library* does not support: network-3.1.2.7
65756571 - tries < 0 # tried tries-0.0.6.1, but its *library* requires the disabled package: rose-trees
65766572 - true-name < 0 # tried true-name-0.1.0.3, but its *library* does not support: template-haskell-2.17.0.0
65776573 - type-combinators-singletons < 0 # tried type-combinators-singletons-0.2.1.0, but its *library* requires the disabled package: type-combinators
6578− - type-natural < 0 # tried type-natural-1.1.0.1, but its *library* requires the disabled package: ghc-typelits-natnormalise
6579− - tz < 0 # tried tz-0.1.3.5, but its *library* does not support: template-haskell-2.17.0.0
65806574 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6581− - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: attoparsec-0.14.3
6575+ - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: attoparsec-0.14.4
65826576 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: base-4.15.1.0
65836577 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: cryptonite-0.29
65846578 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: parser-combinators-1.3.0
@@ -6586,40 +6580,40 @@ packages:
65866580 - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base-4.15.1.0
65876581 - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
65886582 - unfoldable-restricted < 0 # tried unfoldable-restricted-0.0.3, but its *library* requires the disabled package: unfoldable
6589− - uniprot-kb < 0 # tried uniprot-kb-0.1.2.0, but its *library* does not support: attoparsec-0.14.3
6583+ - uniprot-kb < 0 # tried uniprot-kb-0.1.2.0, but its *library* does not support: attoparsec-0.14.4
65906584 - uri-templater < 0 # tried uri-templater-0.3.1.0, but its *library* does not support: trifecta-2.1.2
65916585 - urlpath < 0 # tried urlpath-9.0.1, but its *library* requires the disabled package: attoparsec-uri
65926586 - userid < 0 # tried userid-0.1.3.6, but its *library* does not support: base-4.15.1.0
65936587 - utf8-conversions < 0 # tried utf8-conversions-0.1.0.4, but its *library* does not support: text-short-0.1.5
6594− - vado < 0 # tried vado-0.0.13, but its *library* does not support: attoparsec-0.14.3
6588+ - vado < 0 # tried vado-0.0.13, but its *library* does not support: attoparsec-0.14.4
65956589 - vado < 0 # tried vado-0.0.13, but its *library* does not support: base-4.15.1.0
65966590 - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: base-4.15.1.0
65976591 - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: containers-0.6.4.1
65986592 - vector-circular < 0 # tried vector-circular-0.1.3, but its *library* does not support: template-haskell-2.17.0.0
65996593 - vector-fftw < 0 # tried vector-fftw-0.1.4.0, but its *library* does not support: base-4.15.1.0
66006594 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: base-4.15.1.0
6601− - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: brick-0.65
6595+ - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: brick-0.66.1
66026596 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: lens-5.0.1
66036597 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: vty-5.33
66046598 - wai-middleware-crowd < 0 # tried wai-middleware-crowd-0.1.4.2, but its *executable* does not support: optparse-applicative-0.16.1.0
66056599 - wai-middleware-metrics < 0 # tried wai-middleware-metrics-0.2.4, but its *library* requires the disabled package: ekg-core
66066600 - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: aeson-1.5.6.0
6607− - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: http-client-0.7.9
6601+ - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: http-client-0.7.10
66086602 - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: time-1.9.3
66096603 - wai-middleware-throttle < 0 # tried wai-middleware-throttle-0.3.0.1, but its *library* requires the disabled package: token-bucket
66106604 - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-predicates
66116605 - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-route
6612− - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: attoparsec-0.14.3
6606+ - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: attoparsec-0.14.4
66136607 - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: base-4.15.1.0
66146608 - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: dlist-1.0
66156609 - web-routes-th < 0 # tried web-routes-th-0.22.6.6, but its *library* does not support: template-haskell-2.17.0.0
66166610 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: OneTuple-0.3.1
66176611 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: aeson-1.5.6.0
6618− - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: attoparsec-0.14.3
6612+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: attoparsec-0.14.4
66196613 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: base-4.15.1.0
66206614 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: cryptonite-0.29
66216615 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: hspec-2.8.5
6622− - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: http-client-0.7.9
6616+ - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: http-client-0.7.10
66236617 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: memory-0.16.0
66246618 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-0.18.3
66256619 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-client-0.18.3
@@ -6641,7 +6635,7 @@ packages:
66416635 - xml-isogen < 0 # tried xml-isogen-0.3.0, but its *library* requires the disabled package: dom-parser
66426636 - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* does not support: yeshql-core-4.2.0.0
66436637 - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* requires the disabled package: yeshql-hdbc
6644− - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: persistent-2.13.2.1
6638+ - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: persistent-2.13.2.2
66456639 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-auth-1.6.10.5
66466640 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-core-1.6.21.0
66476641 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-form-1.7.0
@@ -6680,6 +6674,9 @@ packages:
66806674
66816675 # aeson-2
66826676 # 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
66836680 - aeson < 2.0.0.0
66846681 - aura < 3.2.6
66856682 - avro < 0.6.0.0
@@ -6687,6 +6684,7 @@ packages:
66876684 - core-data < 0.3.0.0
66886685 - eventstore < 1.4.2
66896686 - faktory < 1.1.2.1
6687+ - flow < 2.0.0.0
66906688 - forma < 1.2.0
66916689 - geojson < 4.1.0
66926690 - greskell < 2.0.0.0
@@ -6694,25 +6692,20 @@ packages:
66946692 - greskell-websocket < 1.0.0.0
66956693 - hruby < 0.4.0.0
66966694 - hspec-expectations-json < 1.0.0.5
6695+ - http2 < 3.0.3
6696+ - jose < 0.9
66976697 - jsonpath < 0.2.1.0
66986698 - kanji < 3.5
66996699 - microlens-aeson < 2.4
67006700 - mmark-cli < 0.0.5.1
6701+ - pandoc-plot < 1.4.0
67016702 - postgresql-binary < 0.12.4.2
67026703 - servant-tracing < 0.2.0.0
67036704 - shikensu < 0.4.0
67046705 - stache < 2.3.1
67056706 - stripe-scotty < 1.1.0.1
67066707 - stripe-wreq < 1.0.1.12
6707−
6708− # happy-1.21.0 is deprecated an unbuildable
6709− # https://github.com/commercialhaskell/stackage/issues/6294
6710− # see also https://github.com/commercialhaskell/stackage/issues/6242
6711− - happy < 1.21
6712−
6713− # https://github.com/commercialhaskell/stackage/issues/6243
6714− # lift together with https://github.com/commercialhaskell/stackage/issues/6217
6715− - jose < 0.9
6708+ - yaml < 0.11.7
67166709
67176710 # https://github.com/commercialhaskell/stackage/issues/6264
67186711 # Requires GHC 9.2
@@ -6729,6 +6722,7 @@ packages:
67296722 - singletons-base < 3.1
67306723 - singletons-th < 3.1
67316724 - th-desugar < 1.13
6725+ - fourmolu < 0.5.0.0
67326726
67336727 # https://github.com/commercialhaskell/stackage/issues/6268
67346728 - hashable < 1.4.0.0
@@ -6769,19 +6763,21 @@ packages:
67696763 - selective < 0.5
67706764 - yaml-unscrambler < 0.1.0.5
67716765
6772− # https://github.com/commercialhaskell/stackage/issues/6382
6773− - unicode-data < 0.3
6774−
67756766 # https://github.com/commercialhaskell/stackage/issues/6388
67766767 # issue is for 5.0, but 4.0.4 is deprecated.
67776768 - hw-kafka-client < 4.0.4
67786769
6779− # https://github.com/commercialhaskell/stackage/issues/6392
6780− - burrito < 2.0.0.0
6770+ # https://github.com/commercialhaskell/stackage/issues/6395
6771+ - wuss < 2.0
67816772
6782− # https://github.com/commercialhaskell/stackage/issues/6393
6783− - flow < 2.0.0.0
6773+ # https://github.com/haskell-game/sdl2/issues/240 (need newer Ubuntu)
6774+ - sdl2 < 2.5.3.1
67846775
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
67856781
67866782# end of packages
67876783
@@ -6925,6 +6921,7 @@ skipped-builds:
69256921# Otherwise place them in expected-test-failures.
69266922skipped-tests:
69276923 # aeson-2
6924+ # https://github.com/commercialhaskell/stackage/issues/6217
69286925 - jsonifier
69296926 - req
69306927
@@ -7006,6 +7003,9 @@ skipped-tests:
70067003 - hpqtypes-extras # needs a running postgres database
70077004 # norfairking
70087005 - autodocodec # runs doctest
7006+ - captcha-core
7007+ - captcha-2captcha
7008+ - captcha-capmonster
70097009
70107010 # Uses Cabal's "library internal" stanza feature
70117011 - s3-signer
@@ -7053,7 +7053,7 @@ skipped-tests:
70537053 # Test bounds issues
70547054 - ENIG # tried ENIG-0.0.1.0, but its *test-suite* requires the disabled package: test-framework-th
70557055 - 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.9
7056+ - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: http-client-0.7.10
70577057 - MissingH # tried MissingH-1.4.3.0, but its *test-suite* requires the disabled package: errorcall-eq-instance
70587058 - aeson # tried aeson-1.5.6.0, but its *test-suite* does not support: hashable-time-0.3
70597059 - airship # tried airship-0.9.4, but its *test-suite* does not support: tasty-1.4.2.1
@@ -7112,9 +7112,8 @@ skipped-tests:
71127112 - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: semirings-0.6
71137113 - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: tasty-1.4.2.1
71147114 - 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.3
7115+ - ghc-prof # tried ghc-prof-1.4.1.9, but its *test-suite* does not support: attoparsec-0.14.4
71167116 - gitlib-libgit2 # tried gitlib-libgit2-3.1.2.1, but its *test-suite* requires the disabled package: gitlib-test
7117− - hackage-security # tried hackage-security-0.6.0.1, but its *test-suite* does not support: tasty-1.4.2.1
71187117 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-2.8.5
71197118 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-discover-2.8.5
71207119 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: optparse-applicative-0.16.1.0
@@ -7124,7 +7123,7 @@ skipped-tests:
71247123 - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* requires the disabled package: knob
71257124 - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: Glob-0.10.2
71267125 - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7127− - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: network-3.1.2.5
7126+ - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: network-3.1.2.7
71287127 - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
71297128 - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: polyparse-1.13
71307129 - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
@@ -7134,7 +7133,6 @@ skipped-tests:
71347133 - hasmin # tried hasmin-1.0.3, but its *test-suite* does not support: doctest-0.18.2
71357134 - heist # tried heist-1.1.0.1, but its *test-suite* does not support: lens-5.0.1
71367135 - hidden-char # tried hidden-char-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7137− - hmatrix-vector-sized # tried hmatrix-vector-sized-0.1.3.0, but its *test-suite* requires the disabled package: ghc-typelits-knownnat
71387136 - hspec-tables # tried hspec-tables-0.0.1, but its *test-suite* does not support: hspec-2.8.5
71397137 - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
71407138 - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: base-4.15.1.0
@@ -7193,7 +7191,7 @@ skipped-tests:
71937191 - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell-quickcheck
71947192 - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-2.8.5
71957193 - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-discover-2.8.5
7196− - partial-semigroup # tried partial-semigroup-0.5.1.12, but its *test-suite* does not support: doctest-0.18.2
7194+ - partial-semigroup # tried partial-semigroup-0.5.1.14, but its *test-suite* does not support: doctest-0.18.2
71977195 - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
71987196 - postgrest # tried postgrest-8.0.0, but its *test-suite* does not support: hspec-2.8.5
71997197 - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: HUnit-1.6.2.0
@@ -7237,7 +7235,7 @@ skipped-tests:
72377235 - simple-log # tried simple-log-0.9.12, but its *test-suite* does not support: hspec-2.8.5
72387236 - sized-grid # tried sized-grid-0.2.0.1, but its *test-suite* does not support: ansi-terminal-0.11.1
72397237 - snap # tried snap-1.1.3.1, but its *test-suite* does not support: QuickCheck-2.14.2
7240− - stb-image-redux # tried stb-image-redux-0.2.1.3, but its *test-suite* does not support: hspec-2.8.5
7238+ - stb-image-redux # tried stb-image-redux-0.2.1.2, but its *test-suite* does not support: hspec-2.8.5
72417239 - stm-supply # tried stm-supply-0.2.0.0, but its *test-suite* requires the disabled package: Unique
72427240 - streaming-cassava # tried streaming-cassava-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
72437241 - stripe-http-client # tried stripe-http-client-2.6.2, but its *test-suite* does not support: hspec-2.8.5
@@ -7255,8 +7253,6 @@ skipped-tests:
72557253 - temporary-resourcet # tried temporary-resourcet-0.1.0.1, but its *test-suite* does not support: tasty-1.4.2.1
72567254 - test-framework # tried test-framework-0.8.2.0, but its *test-suite* requires the disabled package: libxml
72577255 - transient # tried transient-0.7.0.0, but its *test-suite* does not support: random-1.2.1
7258− - typerep-map # tried typerep-map-0.4.0.0, but its *test-suite* requires the disabled package: ghc-typelits-knownnat
7259− - tzdata # tried tzdata-0.2.20201021.0, but its *test-suite* requires the disabled package: test-framework-th
72607256 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
72617257 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: generic-random-1.5.0.1
72627258 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
@@ -7281,6 +7277,8 @@ skipped-tests:
72817277 # https://github.com/commercialhaskell/stackage/issues/6363
72827278 - amqp
72837279
7280+ - c2hs # https://github.com/commercialhaskell/stackage/issues/6420
7281+
72847282# end of skipped-tests
72857283
72867284# Tests listed in expected-test-failures configure correctly but may fail to run
@@ -7303,7 +7301,7 @@ expected-test-failures:
73037301 - capataz # https://github.com/roman/Haskell-capataz/issues/6
73047302 - concurrent-extra # https://github.com/basvandijk/concurrent-extra/issues/12
73057303 - crypto-numbers
7306− - 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
73077305 - distributed-process
73087306 - distributed-process-execution # https://github.com/haskell-distributed/distributed-process-execution/issues/2
73097307 - distributed-process-task
@@ -7451,8 +7449,7 @@ expected-test-failures:
74517449 - bugsnag-haskell # https://github.com/commercialhaskell/stackage/issues/6372
74527450 - cpio-conduit # Test file not in tarball https://github.com/da-x/cpio-conduit/issues/1
74537451 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7454− - doctest
7455− - doctest-discover # 0.1.0.9 https://github.com/karun012/doctest-discover/issues/22
7452+ - doctest-discover # https://github.com/karun012/doctest-discover/issues/33
74567453 - ghc-events # https://github.com/haskell/ghc-events/issues/70
74577454 - gitlab-haskell # https://github.com/commercialhaskell/stackage/issues/6088
74587455 - hspec-core # https://github.com/commercialhaskell/stackage/issues/6291
@@ -7537,6 +7534,7 @@ expected-test-failures:
75377534 - safe-decimal
75387535 - simple-affine-space
75397536 - simple-vec3 # https://github.com/commercialhaskell/stackage/pull/5410
7537+ - singletons-base
75407538 - sized
75417539 - spatial-math
75427540 - subcategories
@@ -7549,12 +7547,14 @@ expected-test-failures:
75497547 - universum
75507548 - utf8-conversions
75517549 - varying
7550+ - vector-algorithms
75527551 - vivid-osc
75537552 - wakame
75547553 - world-peace
75557554 - xml-picklers # https://github.com/Philonous/xml-picklers/issues/5
75567555 - xmlbf
75577556 - yesod-gitrev # needs a git repo https://github.com/commercialhaskell/stackage/issues/6132
7557+ - yesod-markdown # https://github.com/pbrisbin/yesod-markdown/issues/77
75587558
75597559 # Assertion failures due to module name ambiguity.
75607560 # These _should_ be fixed by using the `hide` section of this file
@@ -7576,7 +7576,6 @@ expected-test-failures:
75767576 - easy-logger # https://github.com/commercialhaskell/stackage/issues/6384
75777577 - flat # 0.4.4
75787578 - flay # 0.4
7579− - focuslist # 0.1.0.2
75807579 - functor-combinators # https://github.com/commercialhaskell/stackage/issues/6376
75817580 - generic-lens # https://github.com/commercialhaskell/stackage/issues/6377
75827581 - geojson # 4.0.2
@@ -7707,7 +7706,6 @@ expected-benchmark-failures:
77077706 # Compilation failures
77087707 - OrderedBits # 0.0.2.0
77097708 - aeson-combinators # 0.0.5.0
7710− - cipher-blowfish # 0.0.11 https://github.com/vincenthz/hs-crypto-cipher/issues/46
77117709 - cmark-gfm # https://github.com/kivikakk/cmark-gfm-hs/issues/5
77127710 - cryptohash # 0.11.9 https://github.com/vincenthz/hs-cryptohash/pull/43
77137711 - incremental-parser # 0.5.0.2
@@ -7730,6 +7728,7 @@ expected-benchmark-failures:
77307728# Otherwise place them in expected-benchmark-failures.
77317729skipped-benchmarks:
77327730 # aeson-2
7731+ # https://github.com/commercialhaskell/stackage/issues/6217
77337732 - jsonifier
77347733
77357734 # Cyclic dependencies
@@ -7811,10 +7810,10 @@ skipped-benchmarks:
78117810 - extensible-effects # tried extensible-effects-5.0.0.1, but its *benchmarks* requires the disabled package: test-framework-th
78127811 - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: aeson-1.5.6.0
78137812 - 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
78147814 - hip # tried hip-1.5.6.0, but its *benchmarks* requires the disabled package: repa-algorithms
78157815 - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *benchmarks* requires the disabled package: hw-hspec-hedgehog
78167816 - o-clock # tried o-clock-1.2.1, but its *benchmarks* requires the disabled package: tiempo
7817− - polysemy # tried polysemy-1.6.0.0, but its *benchmarks* requires the disabled package: freer-simple
78187817 - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: PSQueue
78197818 - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: fingertree-psqueue
78207819 - regex-applicative # tried regex-applicative-0.3.4, but its *benchmarks* requires the disabled package: parsers-megaparsec
@@ -7823,7 +7822,6 @@ skipped-benchmarks:
78237822 - superbuffer # tried superbuffer-0.3.1.1, but its *benchmarks* does not support: criterion-1.5.12.0
78247823 - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: criterion-plus
78257824 - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: stm-stats
7826− - typerep-map # tried typerep-map-0.4.0.0, but its *benchmarks* requires the disabled package: ghc-typelits-knownnat
78277825 - tz # tried tz-0.1.3.5, but its *benchmarks* requires the disabled package: thyme
78287826 - unicode-transforms # tried unicode-transforms-0.4.0, but its *benchmarks* does not support: path-0.9.2
78297827 - xxhash-ffi # tried xxhash-ffi-0.2.0.0, but its *benchmarks* requires the disabled package: xxhash
@@ -8037,6 +8035,7 @@ no-revisions:
80378035- hi-file-parser
80388036
80398037
8038+# Note, this no longer actually does anything with curator2 unfortunately:
80408039# Do not build these packages in parallel with others. Useful for high memory
80418040# usage.
80428041non-parallel-builds:
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 $@
etc/commenter/Cargo.lock+95−18
@@ -31,6 +31,12 @@ dependencies = [
3131 "winapi",
3232]
3333
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+
3440[[package]]
3541name = "bitflags"
3642version = "1.3.2"
@@ -58,9 +64,17 @@ version = "0.2.0"
5864dependencies = [
5965 "lazy-regex",
6066 "regex",
67+ "serde",
68+ "serde_yaml",
6169 "structopt",
6270]
6371
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+
6478[[package]]
6579name = "heck"
6680version = "0.3.3"
@@ -79,11 +93,21 @@ dependencies = [
7993 "libc",
8094]
8195
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+
82106[[package]]
83107name = "lazy-regex"
84−version = "2.2.1"
108+version = "2.2.2"
85109source = "registry+https://github.com/rust-lang/crates.io-index"
86−checksum = "17d198f91272f6e788a5c0bd5d741cf778da4e5bc761ec67b32d5d3b0db34a54"
110+checksum = "919a16773ebf2de27e95fc58460110932e55bb0780e23aa51fa5a6b59c9e2b3d"
87111dependencies = [
88112 "lazy-regex-proc_macros",
89113 "once_cell",
@@ -92,9 +116,9 @@ dependencies = [
92116
93117[[package]]
94118name = "lazy-regex-proc_macros"
95−version = "2.2.1"
119+version = "2.2.2"
96120source = "registry+https://github.com/rust-lang/crates.io-index"
97−checksum = "6c12938b1b92cf5be22940527e15b79fd0c7e706e34bc70816f6a72b3484f84e"
121+checksum = "5fbe6bf0a04af51c07976625d5007e75ed9b8b955befc21c77b3947733496e36"
98122dependencies = [
99123 "proc-macro2",
100124 "quote",
@@ -110,21 +134,27 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
110134
111135[[package]]
112136name = "libc"
113−version = "0.2.108"
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"
114144source = "registry+https://github.com/rust-lang/crates.io-index"
115−checksum = "8521a1b57e76b1ec69af7599e75e38e7b7fad6610f037db8c79b127201b5d119"
145+checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3"
116146
117147[[package]]
118148name = "memchr"
119−version = "2.4.0"
149+version = "2.4.1"
120150source = "registry+https://github.com/rust-lang/crates.io-index"
121−checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc"
151+checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a"
122152
123153[[package]]
124154name = "once_cell"
125−version = "1.8.0"
155+version = "1.9.0"
126156source = "registry+https://github.com/rust-lang/crates.io-index"
127−checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56"
157+checksum = "da32515d9f6e6e489d7bc9d84c71b060db7247dc035bbe44eac88cf87486d8d5"
128158
129159[[package]]
130160name = "proc-macro-error"
@@ -152,18 +182,18 @@ dependencies = [
152182
153183[[package]]
154184name = "proc-macro2"
155−version = "1.0.27"
185+version = "1.0.36"
156186source = "registry+https://github.com/rust-lang/crates.io-index"
157−checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038"
187+checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
158188dependencies = [
159189 "unicode-xid",
160190]
161191
162192[[package]]
163193name = "quote"
164−version = "1.0.9"
194+version = "1.0.14"
165195source = "registry+https://github.com/rust-lang/crates.io-index"
166−checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7"
196+checksum = "47aa80447ce4daf1717500037052af176af5d38cc3e571d9ec1c7353fc10c87d"
167197dependencies = [
168198 "proc-macro2",
169199]
@@ -185,6 +215,44 @@ version = "0.6.25"
185215source = "registry+https://github.com/rust-lang/crates.io-index"
186216checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
187217
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+
188256[[package]]
189257name = "strsim"
190258version = "0.8.0"
@@ -217,9 +285,9 @@ dependencies = [
217285
218286[[package]]
219287name = "syn"
220−version = "1.0.73"
288+version = "1.0.85"
221289source = "registry+https://github.com/rust-lang/crates.io-index"
222−checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7"
290+checksum = "a684ac3dcd8913827e18cd09a68384ee66c1de24157e3c556c9ab16d85695fb7"
223291dependencies = [
224292 "proc-macro2",
225293 "quote",
@@ -261,9 +329,9 @@ checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
261329
262330[[package]]
263331name = "version_check"
264−version = "0.9.3"
332+version = "0.9.4"
265333source = "registry+https://github.com/rust-lang/crates.io-index"
266−checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe"
334+checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
267335
268336[[package]]
269337name = "winapi"
@@ -286,3 +354,12 @@ name = "winapi-x86_64-pc-windows-gnu"
286354version = "0.4.0"
287355source = "registry+https://github.com/rust-lang/crates.io-index"
288356checksum = "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.toml+2
@@ -9,4 +9,6 @@ edition = "2018"
99[dependencies]
1010lazy-regex = "2.2.1"
1111regex = "1.5.4"
12+serde = { version = "1.0.133", features = ["derive"] }
13+serde_yaml = "0.8.23"
1214structopt = "0.3.25"
etc/commenter/latest-version/latest-version.cabal+1−1
@@ -12,7 +12,7 @@ cabal-version: >=1.10
1212extra-source-files: README.md
1313
1414executable latest-version
15− ghc-options: -Wall
15+ ghc-options: -Wall -threaded
1616 hs-source-dirs: src
1717 main-is: Main.hs
1818 default-language: Haskell2010
etc/commenter/latest-version/src/Main.hs+17−7
@@ -9,10 +9,20 @@ import System.Environment
99import qualified Data.Map as Map
1010
1111main :: IO ()
12−main =
13− runPantryApp $
14− liftIO . putStrLn
15− . intercalate "." . map show . versionNumbers
16− . fst . head . Map.toDescList
17− =<< getHackagePackageVersions YesRequireHackageIndex IgnorePreferredVersions
18− . mkPackageName =<< head <$> liftIO getArgs
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.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.rs+332−49
@@ -1,10 +1,13 @@
11use std::collections::{BTreeMap, BTreeSet};
2+use std::error::Error;
3+use std::fmt;
24use std::fs::File;
35use std::io::{BufRead, BufReader, LineWriter, Lines, Write};
46use std::path::Path;
57use std::process::Command;
68
79use lazy_regex::regex;
10+use serde::{Deserialize, Deserializer};
811
912pub fn clear() {
1013 handle(true, |loc, _lines| match loc {
@@ -27,8 +30,8 @@ pub fn add(lib: Vec<String>, test: Vec<String>, bench: Vec<String>) {
2730}
2831
2932enum VersionTag {
30− Manual(String),
31− Auto(String),
33+ Manual(Version),
34+ Auto(Version),
3235}
3336
3437impl VersionTag {
@@ -39,58 +42,65 @@ impl VersionTag {
3942 }
4043 }
4144
42− fn version(&self) -> &str {
45+ fn version(&self) -> &Version {
4346 match self {
44− VersionTag::Manual(s) => &s,
45− VersionTag::Auto(s) => &s,
47+ VersionTag::Manual(s) => s,
48+ VersionTag::Auto(s) => s,
4649 }
4750 }
4851}
4952
5053pub fn outdated() {
5154 let mut all: Vec<String> = vec![];
52− let disabled = handle(false, |_loc, lines| {
55+ let (versioned, disabled) = handle(false, |_loc, lines| {
5356 all.extend(lines);
5457 vec![]
5558 });
56− let mut map: BTreeMap<String, VersionTag> = BTreeMap::new();
57− for DisabledPackage { package, version } in disabled {
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 {
5866 map.insert(package, VersionTag::Manual(version));
5967 }
60− let mut support: BTreeMap<(String, String), BTreeSet<(String, String)>> = BTreeMap::new();
68+ let mut support: BTreeMap<(Package, Version), BTreeSet<(Package, Version)>> = BTreeMap::new();
6169 for v in all.into_iter() {
6270 let caps = regex!("tried ([^ ]+)-([^,-]+),").captures(&v).unwrap();
63− let package = caps.get(1).unwrap().as_str().to_owned();
64− let version = caps.get(2).unwrap().as_str().to_owned();
71+ let package = Package(caps.get(1).unwrap().as_str().to_owned());
72+ let version = Version(caps.get(2).unwrap().as_str().to_owned());
6573 map.insert(package.clone(), VersionTag::Auto(version.clone()));
6674
6775 if let Some(caps) = regex!("does not support: ([^ ]+)-([^-]+)").captures(&v) {
68− let dep_package = caps.get(1).unwrap().as_str().to_owned();
69− let dep_version = caps.get(2).unwrap().as_str().to_owned();
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());
7078 let entry = support.entry((dep_package, dep_version)).or_default();
7179 entry.insert((package, version));
7280 }
7381 }
7482
75− let entries = map.len() + support.len();
76− let mut i = 0;
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+ };
7793
7894 for (package, version) in map {
7995 if is_boot(&package) {
8096 continue;
8197 }
82− if i % 100 == 0 {
83− println!("{:02}%", ((i as f64 / entries as f64) * 100.0).floor());
84− }
85− i += 1;
86− let latest = latest_version(&package);
98+ let latest = latest_versions.get(&package).unwrap();
8799 if version.version() != latest {
88100 println!(
89− "{} mismatch, {}: {}, hackage: {}",
90− package,
91− version.tag(),
92− version.version(),
93− latest
101+ "{package} mismatch, {tag}: {version}, hackage: {latest}",
102+ tag = version.tag(),
103+ version = version.version(),
94104 );
95105 }
96106 }
@@ -100,35 +110,30 @@ pub fn outdated() {
100110 continue;
101111 }
102112
103− if i % 100 == 0 {
104− println!("{:02}%", ((i as f64 / entries as f64) * 100.0).floor());
105− }
106− i += 1;
107− let latest = latest_version(&package);
108− if version != latest {
113+ let latest = latest_versions.get(&package).unwrap();
114+ if &version != latest {
109115 let max = 3;
110− let dependents_stripped = dependents.len().checked_sub(max).unwrap_or(0);
116+ let dependents_stripped = dependents.len().saturating_sub(max);
111117 let dependents = dependents
112118 .into_iter()
113119 .take(max)
114− .map(|(p, v)| format!("{}-{}", p, v))
120+ .map(|(p, v)| format!("{p}-{v}"))
115121 .collect::<Vec<String>>()
116122 .join(", ");
117123 let dependents = if dependents_stripped > 0 {
118− format!("{} and {} more", dependents, dependents_stripped)
124+ format!("{dependents} and {dependents_stripped} more")
119125 } else {
120126 dependents
121127 };
122128
123129 println!(
124− "{} mismatch, snapshot: {}, hackage: {}, dependents: {}",
125− package, version, latest, dependents,
130+ "{package} mismatch, snapshot: {version}, hackage: {latest}, dependents: {dependents}"
126131 );
127132 }
128133 }
129134}
130135
131−fn is_boot(package: &str) -> bool {
136+fn is_boot(package: &Package) -> bool {
132137 [
133138 "Cabal",
134139 "base",
@@ -139,9 +144,11 @@ fn is_boot(package: &str) -> bool {
139144 "filepath",
140145 "deepseq",
141146 "ghc",
147+ "ghc-bignum",
142148 "ghc-boot",
143149 "ghc-boot-th",
144150 "ghc-prim",
151+ "ghc-lib-parser", // not a boot lib, but tied to the GHC version.
145152 "integer-gmp",
146153 "process",
147154 "stm",
@@ -149,20 +156,26 @@ fn is_boot(package: &str) -> bool {
149156 "text",
150157 "time",
151158 ]
152− .contains(&package)
159+ .contains(&&*package.0)
153160}
154161
155−fn latest_version(pkg: &str) -> String {
162+fn latest_version(packages: impl Iterator<Item = Package>) -> BTreeMap<Package, Version> {
156163 String::from_utf8(
157164 Command::new("latest-version")
158− .args([pkg])
165+ .args(packages.map(|p| p.0))
159166 .output()
160− .unwrap()
167+ .expect("Could not find latest-version in PATH")
161168 .stdout,
162169 )
163170 .unwrap()
164171 .trim()
165172 .to_owned()
173+ .lines()
174+ .map(|s| {
175+ let VersionedPackage { package, version } = parse_versioned_package_canonical(s).unwrap();
176+ (package, version)
177+ })
178+ .collect()
166179}
167180
168181enum State {
@@ -175,33 +188,68 @@ enum State {
175188 Done,
176189}
177190
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+
178221struct DisabledPackage {
179222 package: String,
180− version: String,
181223}
182224
183225fn parse_disabled_package(s: &str) -> Option<DisabledPackage> {
184− if let Some(caps) = regex!(r#"- *([^ ]+) < *0 *# *([\d.]+)"#).captures(s) {
185− let package = caps.get(1).unwrap().as_str().to_owned();
186− let version = caps.get(2).unwrap().as_str().to_owned();
187− Some(DisabledPackage { package, version })
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+ }
188233 } else {
189234 None
190235 }
191236}
192237
193−fn handle<F>(write: bool, mut f: F) -> Vec<DisabledPackage>
238+fn handle<F>(write: bool, mut f: F) -> (Vec<VersionedPackage>, Vec<DisabledPackage>)
194239where
195240 F: FnMut(Location, Vec<String>) -> Vec<String>,
196241{
197242 let path = "build-constraints.yaml";
198243 let mut new_lines: Vec<String> = vec![];
244+ let mut versioned_packages: Vec<VersionedPackage> = vec![];
199245 let mut disabled_packages: Vec<DisabledPackage> = vec![];
200246
201247 let mut state = State::LookingForLibBounds;
202248 let mut buf = vec![];
203249 for line in read_lines(path).map(|s| s.unwrap()) {
204− if let Some(disabled_package) = parse_disabled_package(&line) {
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) {
205253 disabled_packages.push(disabled_package);
206254 }
207255
@@ -273,7 +321,7 @@ where
273321 file.flush().unwrap();
274322 }
275323
276− disabled_packages
324+ (versioned_packages, disabled_packages)
277325}
278326
279327enum Location {
@@ -289,3 +337,238 @@ where
289337 let file = File::open(filename).unwrap();
290338 BufReader::new(file).lines()
291339}
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.rs+11−20
@@ -19,28 +19,24 @@ enum Header {
1919 about = "Automates generation of bounds in build-constraints.yaml"
2020)]
2121enum Opt {
22− Clear,
2322 Add,
23+ Clear,
24+ DiffSnapshot { a: String, b: String },
25+ Disabled,
2426 Outdated,
2527}
2628
2729fn main() {
2830 let opt = Opt::from_args();
2931 match opt {
30− Opt::Clear => clear(),
3132 Opt::Add => add(),
32− Opt::Outdated => outdated(),
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(),
3337 }
3438}
3539
36−fn clear() {
37− commenter::clear();
38−}
39−
40−fn outdated() {
41− commenter::outdated();
42−}
43−
4440fn add() {
4541 let mut lib_exes: H = Default::default();
4642 let mut tests: H = Default::default();
@@ -64,7 +60,7 @@ fn add() {
6460 } else if line == "curator: Snapshot dependency graph contains errors:" {
6561 process_line = true;
6662 } else if !process_line {
67− println!("[INFO] {}", line);
63+ println!("[INFO] {line}");
6864 } else if let Some(cap) = package.captures(&line) {
6965 let root = last_header.clone().unwrap();
7066 let package = cap.name("package").unwrap().as_str();
@@ -100,7 +96,7 @@ fn add() {
10096 for (header, packages) in lib_exes {
10197 for (package, version, component) in packages {
10298 let s = printer(" ", &package, true, &version, &component, &header);
103− println!("{}", s);
99+ println!("{s}");
104100 auto_lib_exes.push(s);
105101 }
106102 }
@@ -111,7 +107,7 @@ fn add() {
111107 for (header, packages) in tests {
112108 for (package, version, component) in packages {
113109 let s = printer(" ", &package, false, &version, &component, &header);
114− println!("{}", s);
110+ println!("{s}");
115111 auto_tests.push(s);
116112 }
117113 }
@@ -122,7 +118,7 @@ fn add() {
122118 for (header, packages) in benches {
123119 for (package, version, component) in packages {
124120 let s = printer(" ", &package, false, &version, &component, &header);
125− println!("{}", s);
121+ println!("{s}");
126122 auto_benches.push(s);
127123 }
128124 }
@@ -148,11 +144,6 @@ fn printer(
148144 let lt0 = if lt0 { " < 0" } else { "" };
149145 format!(
150146 "{indent}- {package}{lt0} # tried {package}-{version}, but its *{component}* {cause}",
151− indent = indent,
152− package = package,
153− lt0 = lt0,
154− version = version,
155− component = component,
156147 cause = match header {
157148 Header::Versioned { package, version } => format!(
158149 "does not support: {package}-{version}",