on master help sign in
10 files changed+722−302
since splitsnapshots
unifiedsplit
CURATORS.md+45−15 build-constraints.yaml+186−192 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+186−192
@@ -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
@@ -4174,6 +4193,8 @@ packages:
41744193 - file-path-th
41754194
41764195 "Raghu Kaippully <rkaippully@gmail.com> @rkaippully":
4196+ - webgear-core
4197+ - webgear-openapi
41774198 - webgear-server
41784199
41794200 "Alex Washburn <github@recursion.ninja> @recursion-ninja":
@@ -4240,7 +4261,7 @@ packages:
42404261 - natural-induction
42414262 - peano
42424263 - unconstrained
4243− - util
4264+ - util < 0 # 0.1.17.1 compile fail needs DerivingVia enabled
42444265
42454266 "Ben Sima <ben@bsima.me> @bensima":
42464267 - yesod-text-markdown
@@ -4418,7 +4439,7 @@ packages:
44184439 - gtk-strut
44194440 - rate-limit
44204441 - status-notifier-item
4421− - taffybar
4442+ - taffybar < 0 # https://github.com/taffybar/taffybar/issues/542
44224443 - time-units
44234444 - xml-helpers
44244445 - xdg-desktop-entry
@@ -4531,7 +4552,7 @@ packages:
45314552 - multi-containers
45324553
45334554 "Vaclav Svejcar <vaclav.svejcar@gmail.com> @vaclavsvejcar":
4534− - headroom < 0 # 0.4.2.0 compile fail https://github.com/commercialhaskell/stackage/issues/6342
4555+ - headroom
45354556 - vcs-ignore
45364557
45374558 "Adrian Sieber <stackage@ad-si.com> @ad-si":
@@ -4648,13 +4669,13 @@ packages:
46484669 - wai-session-redis
46494670
46504671 "Rory Tyler Hayford <rory.hayford@protonmail.com> @ngua":
4651− - ipa < 0 # https://gitlab.com/ngua/ipa-hs/-/issues/1
4672+ - ipa
46524673
46534674 "Andreas Herrmann <andreas.herrmann@tweag.io> @aherrmann":
46544675 - capability
46554676
46564677 "Dustin Sallings <dustin@spy.net> @dustin":
4657− - net-mqtt < 0 # 0.8.1.0 compile fail attoparsec 0.14
4678+ - net-mqtt
46584679 - net-mqtt-lens
46594680
46604681 "David A Roberts <d@vidr.cc> @davidar":
@@ -4745,6 +4766,7 @@ packages:
47454766
47464767 "Grandfathered dependencies":
47474768 - Boolean
4769+ - Cabal-syntax
47484770 - Decimal
47494771 - Diff
47504772 - FloatingHex
@@ -4872,7 +4894,7 @@ packages:
48724894 - dlist
48734895 - dlist-instances
48744896 - dlist-nonempty
4875− - double-conversion
4897+ - double-conversion < 2.0.3.0 # https://github.com/commercialhaskell/stackage/issues/6417
48764898 - dual-tree
48774899 - easy-file
48784900 - easytest
@@ -5034,7 +5056,7 @@ packages:
50345056 - process-extras
50355057 - product-isomorphic
50365058 - project-template
5037− - protobuf < 0.2.1.4 # https://github.com/alphaHeavy/protobuf/issues/39
5059+ - protobuf < 0.2.1.4 || > 0.2.1.4 # deprecated version
50385060 - pureMD5
50395061 - quickcheck-instances
50405062 - quickcheck-io
@@ -5217,18 +5239,18 @@ packages:
52175239 - boxes
52185240 - cassava
52195241 - charsetdetect-ae # #6326/closed
5220− - coercible-utils # 6271
5242+ - coercible-utils # #6271
52215243 - compiler-warnings # #6326/closed
52225244 - curl
52235245 - docopt # #6326/closed
52245246 - dynamic-state # #6326/closed
52255247 - first-class-patterns # #5965/closed
52265248 - ghc-trace-events # #6326/closed
5227− - hashing # 6271
5228− - hnix-store-core # 6271
5249+ - hashing # #6271
5250+ - hnix-store-core # #6271
52295251 - ilist # #5965/closed
52305252 - io-storage # #6326/closed
5231− - monadlist # 6271
5253+ - monadlist # #6271
52325254 - non-empty-sequence
52335255 - numeric-limits # #6326/closed
52345256 - oo-prototypes # #6326/closed
@@ -5236,7 +5258,7 @@ packages:
52365258 - opentelemetry-extra # #6326/closed
52375259 - opentelemetry-lightstep # #6326/closed
52385260 - opentelemetry-wai # #6326/closed
5239− - path # 6271
5261+ - path # #6271
52405262 - pattern-arrows
52415263 - planb-token-introspection # #6326/closed
52425264 - pointedlist # #6326/closed
@@ -5291,7 +5313,7 @@ packages:
52915313
52925314 "GHC upper bounds":
52935315 # Need to always match the version shipped with GHC
5294− - Win32 == 2.10.0.0
5316+ - Win32 == 2.12.0.1
52955317
52965318 # Section for packages that have been mass-disabled due to
52975319 # compilation failures, e.g. after we upgrade GHC. Every package
@@ -5337,7 +5359,6 @@ packages:
53375359 - exinst < 0 # 0.8
53385360 - ftp-client-conduit < 0 # 0.5.0.5
53395361 - giphy-api < 0 # 0.7.0.0 https://github.com/passy/giphy-api/pull/19
5340− - groundhog-th < 0 # 0.11
53415362 - gluturtle < 0 # 0.0.58.1
53425363 - haskell-import-graph < 0 # 1.0.4
53435364 - haskell-spacegoo < 0 # 0.2.0.1
@@ -5400,7 +5421,6 @@ packages:
54005421 - tintin < 0 # 1.10.1
54015422 - turtle-options < 0 # 0.1.0.4
54025423 - type-assertions < 0 # 0.1.0.0
5403− - type-map < 0 # 0.1.6.0
54045424 - typecheck-plugin-nat-simple < 0 # 0.1.0.2
54055425 - ulid < 0 # 0.3.0.0
54065426 - uncertain < 0 # 0.3.1.0
@@ -5424,8 +5444,8 @@ packages:
54245444 # for compilation failures as we need to build those packages to
54255445 # verify if they have been fixeq.
54265446 "Library and exe bounds failures":
5427− - BiobaseHTTP < 0 # tried BiobaseHTTP-1.2.0, but its *library* does not support: network-3.1.2.5
5428− - 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
54295449 - Chart-cairo < 0 # tried Chart-cairo-1.9.3, but its *library* requires the disabled package: cairo
54305450 - Chart-diagrams < 0 # tried Chart-diagrams-1.9.3, but its *library* does not support: SVGFonts-1.8.0.1
54315451 - EntrezHTTP < 0 # tried EntrezHTTP-1.0.4, but its *library* requires the disabled package: biocore
@@ -5436,15 +5456,15 @@ packages:
54365456 - HaskellNet < 0 # tried HaskellNet-0.6, but its *library* does not support: base-4.15.1.0
54375457 - HaskellNet-SSL < 0 # tried HaskellNet-SSL-0.3.4.4, but its *library* requires the disabled package: HaskellNet
54385458 - Hoed < 0 # tried Hoed-0.5.1, but its *library* requires the disabled package: regex-tdfa-text
5439− - 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
54405460 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *executable* does not support: optparse-applicative-0.16.1.0
5441− - 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
54425462 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: aeson-1.5.6.0
5443− - 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
54445464 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: hedis-0.15.0
54455465 - IPv6DB < 0 # tried IPv6DB-0.3.2, but its *library* does not support: unordered-containers-0.2.16.0
5446− - JuicyPixels-blp < 0 # tried JuicyPixels-blp-0.2.0.0, but its *library* does not support: attoparsec-0.14.3
5447− - 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
54485468 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: Workflow
54495469 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: monadloc
54505470 - MFlow < 0 # tried MFlow-0.4.6.0, but its *library* requires the disabled package: pwstore-fast
@@ -5456,7 +5476,7 @@ packages:
54565476 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseHTTP-1.2.0
54575477 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: BiobaseTypes-0.2.1.0
54585478 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* does not support: aeson-1.5.6.0
5459− - 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
54605480 - RNAlien < 0 # tried RNAlien-1.7.0, but its *library* requires the disabled package: hierarchical-clustering
54615481 - Spock < 0 # tried Spock-0.14.0.0, but its *library* requires the disabled package: Spock-core
54625482 - Spock-api-server < 0 # tried Spock-api-server-0.14.0.0, but its *library* requires the disabled package: Spock-core
@@ -5502,7 +5522,8 @@ packages:
55025522 - airship < 0 # tried airship-0.9.4, but its *library* does not support: semigroups-0.19.2
55035523 - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-3.2.3
55045524 - airship < 0 # tried airship-0.9.4, but its *library* does not support: wai-extra-3.1.8
5505− - 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
55065527 - amazonka < 0 # tried amazonka-1.6.1, but its *library* does not support: unliftio-core-0.2.0.1
55075528 - amazonka-apigateway < 0 # tried amazonka-apigateway-1.6.1, but its *library* requires the disabled package: amazonka-core
55085529 - amazonka-application-autoscaling < 0 # tried amazonka-application-autoscaling-1.6.1, but its *library* requires the disabled package: amazonka-core
@@ -5528,7 +5549,7 @@ packages:
55285549 - amazonka-cognito-idp < 0 # tried amazonka-cognito-idp-1.6.1, but its *library* requires the disabled package: amazonka-core
55295550 - amazonka-cognito-sync < 0 # tried amazonka-cognito-sync-1.6.1, but its *library* requires the disabled package: amazonka-core
55305551 - amazonka-config < 0 # tried amazonka-config-1.6.1, but its *library* requires the disabled package: amazonka-core
5531− - 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
55325553 - amazonka-datapipeline < 0 # tried amazonka-datapipeline-1.6.1, but its *library* requires the disabled package: amazonka-core
55335554 - amazonka-devicefarm < 0 # tried amazonka-devicefarm-1.6.1, but its *library* requires the disabled package: amazonka-core
55345555 - amazonka-directconnect < 0 # tried amazonka-directconnect-1.6.1, but its *library* requires the disabled package: amazonka-core
@@ -5614,8 +5635,7 @@ packages:
56145635 - arrowp-qq < 0 # tried arrowp-qq-0.3.0, but its *library* does not support: template-haskell-2.17.0.0
56155636 - asif < 0 # tried asif-6.0.4, but its *library* requires the disabled package: thyme
56165637 - async-timer < 0 # tried async-timer-0.2.0.0, but its *library* does not support: unliftio-core-0.2.0.1
5617− - atom-conduit < 0 # tried atom-conduit-0.9.0.1, but its *library* requires the disabled package: refined
5618− - 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
56195639 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: base-4.15.1.0
56205640 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: cryptonite-0.29
56215641 - avers < 0 # tried avers-0.0.17.1, but its *library* does not support: memory-0.16.0
@@ -5635,19 +5655,12 @@ packages:
56355655 - base-noprelude < 0 # tried base-noprelude-4.13.0.0, but its *library* does not support: base-4.15.1.0
56365656 - bcp47 < 0 # tried bcp47-0.2.0.5, but its *library* requires the disabled package: country
56375657 - bcp47-orphans < 0 # tried bcp47-orphans-0.1.0.4, but its *library* requires the disabled package: bcp47
5638− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: dlist-1.0
5639− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: ghc-prim-0.7.0
5640− - beam-core < 0 # tried beam-core-0.9.1.0, but its *library* does not support: vector-sized-1.5.0
5641− - beam-migrate < 0 # tried beam-migrate-0.5.1.0, but its *library* does not support: ghc-prim-0.7.0
56425658 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: aeson-1.5.6.0
5643− - 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
56445660 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: hashable-1.3.5.0
56455661 - beam-mysql < 0 # tried beam-mysql-0.2.0.0, but its *library* does not support: mysql-0.2.1
5646− - beam-postgres < 0 # tried beam-postgres-0.5.1.0, but its *library* does not support: attoparsec-0.14.3
5647− - beam-sqlite < 0 # tried beam-sqlite-0.5.1.0, but its *library* does not support: attoparsec-0.14.3
5648− - beam-sqlite < 0 # tried beam-sqlite-0.5.1.0, but its *library* does not support: dlist-1.0
5649− - bench-show < 0 # tried bench-show-0.3.1, but its *library* requires the disabled package: Chart-diagrams
5650− - 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
56515664 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: bytestring-0.10.12.1
56525665 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: directory-1.3.6.2
56535666 - bhoogle < 0 # tried bhoogle-0.1.3.5, but its *executable* does not support: filepath-1.4.2.1
@@ -5680,30 +5693,27 @@ packages:
56805693 - blosum < 0 # tried blosum-0.1.1.4, but its *executable* requires the disabled package: pipes-text
56815694 - boolean-normal-forms < 0 # tried boolean-normal-forms-0.0.1.1, but its *library* does not support: base-4.15.1.0
56825695 - boundingboxes < 0 # tried boundingboxes-0.2.3, but its *library* does not support: lens-5.0.1
5683− - brittany < 0 # tried brittany-0.14.0.0, but its *library* does not support: aeson-1.5.6.0
5684− - 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
56855698 - buchhaltung < 0 # tried buchhaltung-0.0.7, but its *library* requires the disabled package: regex-tdfa-text
56865699 - bulletproofs < 0 # tried bulletproofs-1.1.0, but its *library* requires the disabled package: elliptic-curve
56875700 - butcher < 0 # tried butcher-1.3.3.2, but its *library* does not support: base-4.15.1.0
5688− - cabal-file < 0 # tried cabal-file-0.1.1, but its *library* requires the disabled package: hackage-security
56895701 - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: Cabal-3.4.1.0
56905702 - cabal-install < 0 # tried cabal-install-3.6.2.0, but its *executable* does not support: base-4.15.1.0
56915703 - 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
56925705 - cereal-time < 0 # tried cereal-time-0.1.0.0, but its *library* does not support: time-1.9.3
56935706 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-1.5.6.0
56945707 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: aeson-casing-0.2.0.0
56955708 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: connection-0.3.1
56965709 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: http-api-data-0.4.3
5697− - 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
56985711 - chatwork < 0 # tried chatwork-0.1.3.5, but its *library* does not support: req-3.9.2
56995712 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytebuild
57005713 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: byteslice
57015714 - chronos < 0 # tried chronos-1.1.3, but its *library* requires the disabled package: bytesmith
57025715 - chronos-bench < 0 # tried chronos-bench-0.2.0.2, but its *library* requires the disabled package: chronos
57035716 - clang-compilation-database < 0 # tried clang-compilation-database-0.1.0.1, but its *library* does not support: base-4.15.1.0
5704− - clash-ghc < 0 # tried clash-ghc-1.4.6, but its *library* does not support: ghc-bignum-1.1
5705− - clash-lib < 0 # tried clash-lib-1.4.6, but its *library* does not support: ghc-bignum-1.1
5706− - clash-prelude < 0 # tried clash-prelude-1.4.6, but its *library* does not support: ghc-bignum-1.1
57075717 - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: base-4.15.1.0
57085718 - classyplate < 0 # tried classyplate-0.3.2.0, but its *library* does not support: template-haskell-2.17.0.0
57095719 - clock-extras < 0 # tried clock-extras-0.1.0.2, but its *library* does not support: clock-0.8.2
@@ -5716,7 +5726,6 @@ packages:
57165726 - composite-aeson < 0 # tried composite-aeson-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
57175727 - composite-aeson-path < 0 # tried composite-aeson-path-0.7.5.0, but its *library* does not support: path-0.9.2
57185728 - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: composite-aeson
5719− - composite-aeson-refined < 0 # tried composite-aeson-refined-0.7.5.0, but its *library* requires the disabled package: refined
57205729 - composite-aeson-throw < 0 # tried composite-aeson-throw-0.1.0.0, but its *library* requires the disabled package: composite-aeson
57215730 - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: profunctors-5.6.2
57225731 - composite-base < 0 # tried composite-base-0.7.5.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -5736,18 +5745,19 @@ packages:
57365745 - conferer-snap < 0 # tried conferer-snap-1.0.0.0, but its *library* requires the disabled package: snap-server
57375746 - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: base-4.15.1.0
57385747 - configurator-pg < 0 # tried configurator-pg-0.2.5, but its *library* does not support: megaparsec-9.2.0
5739− - 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
57405750 - country < 0 # tried country-0.2.1, but its *library* does not support: base-4.15.1.0
57415751 - cql-io < 0 # tried cql-io-1.1.1, but its *library* requires the disabled package: cql
57425752 - crypto-pubkey < 0 # tried crypto-pubkey-0.2.8, but its *library* requires the disabled package: crypto-numbers
57435753 - cryptocipher < 0 # tried cryptocipher-0.6.2, but its *library* requires the disabled package: cipher-blowfish
57445754 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: QuickCheck-2.14.2
5745− - 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
57465756 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: simple-vec3-0.6.0.1
57475757 - csg < 0 # tried csg-0.1.0.6, but its *library* does not support: strict-0.4.0.1
57485758 - css-syntax < 0 # tried css-syntax-0.1.0.0, but its *library* does not support: base-4.15.1.0
57495759 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: Cabal-3.4.1.0
5750− - 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
57515761 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: base-4.15.1.0
57525762 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: constraints-0.13.2
57535763 - darcs < 0 # tried darcs-2.16.4, but its *library* does not support: cryptonite-0.29
@@ -5776,7 +5786,7 @@ packages:
57765786 - dialogflow-fulfillment < 0 # tried dialogflow-fulfillment-0.1.1.4, but its *library* does not support: base-4.15.1.0
57775787 - dice < 0 # tried dice-0.1.0.1, but its *library* requires the disabled package: random-fu
57785788 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *executable* does not support: criterion-1.5.12.0
5779− - 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
57805790 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: base-4.15.1.0
57815791 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: containers-0.6.4.1
57825792 - dictionaries < 0 # tried dictionaries-0.2.0.4, but its *library* does not support: exceptions-0.10.4
@@ -5790,10 +5800,10 @@ packages:
57905800 - distributed-process-lifted < 0 # tried distributed-process-lifted-0.3.0.1, but its *library* requires the disabled package: distributed-process
57915801 - distributed-process-monad-control < 0 # tried distributed-process-monad-control-0.5.1.3, but its *library* requires the disabled package: distributed-process
57925802 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: containers-0.6.4.1
5793− - 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
57945804 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* does not support: network-transport-tcp-0.8.0
57955805 - distributed-process-simplelocalnet < 0 # tried distributed-process-simplelocalnet-0.2.4, but its *library* requires the disabled package: network-multicast
5796− - 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
57975807 - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* does not support: random-1.2.1
57985808 - distributed-process-tests < 0 # tried distributed-process-tests-0.4.11, but its *library* requires the disabled package: rematch
57995809 - distribution < 0 # tried distribution-1.1.1.0, but its *library* does not support: containers-0.6.4.1
@@ -5805,7 +5815,6 @@ packages:
58055815 - drawille < 0 # tried drawille-0.1.2.0, but its *library* does not support: containers-0.6.4.1
58065816 - earcut < 0 # tried earcut-0.1.0.4, but its *library* does not support: base-4.15.1.0
58075817 - easytest < 0 # tried easytest-0.3, but its *library* does not support: hedgehog-1.0.5
5808− - ed25519 < 0 # tried ed25519-0.0.5.0, but its *library* does not support: ghc-prim-0.7.0
58095818 - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: QuickCheck-2.14.2
58105819 - edit < 0 # tried edit-1.0.1.0, but its *library* does not support: base-4.15.1.0
58115820 - effect-handlers < 0 # tried effect-handlers-0.1.0.8, but its *library* does not support: free-5.1.7
@@ -5823,7 +5832,6 @@ packages:
58235832 - ekg-statsd < 0 # tried ekg-statsd-0.2.5.0, but its *library* does not support: base-4.15.1.0
58245833 - ekg-wai < 0 # tried ekg-wai-0.1.0.3, but its *library* does not support: time-1.9.3
58255834 - elm-street < 0 # tried elm-street-0.1.0.4, but its *library* does not support: base-4.15.1.0
5826− - emd < 0 # tried emd-0.2.0.0, but its *library* requires the disabled package: ghc-typelits-natnormalise
58275835 - epub-metadata < 0 # tried epub-metadata-4.5, but its *library* requires the disabled package: regex-compat-tdfa
58285836 - euler-tour-tree < 0 # tried euler-tour-tree-0.1.1.0, but its *library* requires the disabled package: Unique
58295837 - event < 0 # tried event-0.1.4, but its *library* does not support: containers-0.6.4.1
@@ -5839,7 +5847,7 @@ packages:
58395847 - filecache < 0 # tried filecache-0.4.1, but its *library* requires the disabled package: strict-base-types
58405848 - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: BiobaseNewick
58415849 - find-clumpiness < 0 # tried find-clumpiness-0.2.3.2, but its *library* requires the disabled package: hierarchical-clustering
5842− - 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
58435851 - friday < 0 # tried friday-0.2.3.1, but its *library* does not support: containers-0.6.4.1
58445852 - friday < 0 # tried friday-0.2.3.1, but its *library* requires the disabled package: ratio-int
58455853 - friday-juicypixels < 0 # tried friday-juicypixels-0.1.2.4, but its *library* requires the disabled package: friday
@@ -5853,9 +5861,6 @@ packages:
58535861 - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: dhall-1.40.2
58545862 - ghc-clippy-plugin < 0 # tried ghc-clippy-plugin-0.0.0.1, but its *library* does not support: ghc-9.0.2
58555863 - ghc-syb-utils < 0 # tried ghc-syb-utils-0.3.0.0, but its *library* does not support: ghc-9.0.2
5856− - ghc-typelits-extra < 0 # tried ghc-typelits-extra-0.4.3, but its *library* does not support: ghc-bignum-1.1
5857− - ghc-typelits-knownnat < 0 # tried ghc-typelits-knownnat-0.7.6, but its *library* requires the disabled package: ghc-typelits-natnormalise
5858− - ghc-typelits-natnormalise < 0 # tried ghc-typelits-natnormalise-0.7.6, but its *library* does not support: ghc-bignum-1.1
58595864 - ghcjs-dom < 0 # tried ghcjs-dom-0.9.5.0, but its *library* requires the disabled package: ghcjs-dom-jsaddle
58605865 - gi-gsk < 0 # tried gi-gsk-4.0.4, but its *library* does not support: gi-gdk-3.0.25
58615866 - gi-webkit2 < 0 # tried gi-webkit2-4.0.28, but its *library* requires the disabled package: gi-soup
@@ -5983,22 +5988,20 @@ packages:
59835988 - google-cloud < 0 # tried google-cloud-0.0.4, but its *library* does not support: base-4.15.1.0
59845989 - google-oauth2-jwt < 0 # tried google-oauth2-jwt-0.3.3, but its *library* does not support: base64-bytestring-1.2.1.0
59855990 - google-translate < 0 # tried google-translate-0.5, but its *library* does not support: http-api-data-0.4.3
5986− - 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
59875992 - graphql-client < 0 # tried graphql-client-1.1.1, but its *executable* does not support: path-0.9.2
59885993 - groundhog-inspector < 0 # tried groundhog-inspector-0.11.0, but its *library* does not support: groundhog-0.12.0
5989− - 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
59905995 - groundhog-mysql < 0 # tried groundhog-mysql-0.12, but its *library* does not support: mysql-0.2.1
59915996 - grouped-list < 0 # tried grouped-list-0.2.2.1, but its *library* does not support: base-4.15.1.0
59925997 - gtk3 < 0 # tried gtk3-0.15.6, but its *library* does not support: Cabal-3.4.1.0
59935998 - hOpenPGP < 0 # tried hOpenPGP-2.9.7, but its *library* requires the disabled package: ixset-typed
5994− - hackage-security < 0 # tried hackage-security-0.6.0.1, but its *library* does not support: template-haskell-2.17.0.0
5995− - 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
59966000 - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-0.18.3
59976001 - hackernews < 0 # tried hackernews-1.4.0.0, but its *library* does not support: servant-client-0.18.3
59986002 - hadolint < 0 # tried hadolint-2.8.0, but its *library* does not support: deepseq-1.4.5.0
59996003 - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: colourista
60006004 - hadolint < 0 # tried hadolint-2.8.0, but its *library* requires the disabled package: spdx
6001− - hamilton < 0 # tried hamilton-0.1.0.3, but its *executable* requires the disabled package: ghc-typelits-knownnat
60026005 - hapistrano < 0 # tried hapistrano-0.4.3.0, but its *library* does not support: path-0.9.2
60036006 - happstack-hsp < 0 # tried happstack-hsp-7.3.7.5, but its *library* requires the disabled package: harp
60046007 - haskell-lsp < 0 # tried haskell-lsp-0.24.0.0, but its *executable* does not support: base-4.15.1.0
@@ -6024,7 +6027,7 @@ packages:
60246027 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: aeson-1.5.6.0
60256028 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: base-4.15.1.0
60266029 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: ghc-9.0.2
6027− - 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
60286031 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: optparse-applicative-0.16.1.0
60296032 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: strict-0.4.0.1
60306033 - haskell-tools-daemon < 0 # tried haskell-tools-daemon-1.1.1.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6055,17 +6058,17 @@ packages:
60556058 - haskell-tools-rewrite < 0 # tried haskell-tools-rewrite-1.1.1.0, but its *library* requires the disabled package: references
60566059 - haskey < 0 # tried haskey-0.3.1.0, but its *library* does not support: stm-containers-1.2
60576060 - haskey-mtl < 0 # tried haskey-mtl-0.3.1.0, but its *library* does not support: monad-control-1.0.3.1
6058− - haskoin-store < 0 # tried haskoin-store-0.64.10, but its *library* requires the disabled package: haskoin-node
6059− - 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
60606063 - hasmin < 0 # tried hasmin-1.0.3, but its *executable* does not support: optparse-applicative-0.16.1.0
6061− - 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
60626065 - haxl-amazonka < 0 # tried haxl-amazonka-0.1.1, but its *library* requires the disabled package: haxl
60636066 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: aeson-1.5.6.0
6064− - 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
60656068 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: base-4.15.1.0
60666069 - heist < 0 # tried heist-1.1.0.1, but its *library* does not support: dlist-1.0
60676070 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: ansi-terminal-0.11.1
6068− - 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
60696072 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: optparse-applicative-0.16.1.0
60706073 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: semigroups-0.19.2
60716074 - herms < 0 # tried herms-1.9.0.4, but its *executable* does not support: vty-5.33
@@ -6092,7 +6095,7 @@ packages:
60926095 - hpio < 0 # tried hpio-0.9.0.7, but its *library* does not support: protolude-0.3.0
60936096 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: containers-0.6.4.1
60946097 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: hmatrix-0.20.2
6095− - 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
60966099 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: time-1.9.3
60976100 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* does not support: vector-algorithms-0.8.0.4
60986101 - hquantlib < 0 # tried hquantlib-0.0.5.0, but its *library* requires the disabled package: hmatrix-special
@@ -6101,11 +6104,11 @@ packages:
61016104 - hschema-aeson < 0 # tried hschema-aeson-0.0.1.1, but its *library* requires the disabled package: hschema
61026105 - hschema-prettyprinter < 0 # tried hschema-prettyprinter-0.0.1.1, but its *library* requires the disabled package: hschema
61036106 - hschema-quickcheck < 0 # tried hschema-quickcheck-0.0.1.1, but its *library* requires the disabled package: hschema
6104− - 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
61056108 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-boot-9.0.2
61066109 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
61076110 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: hlint-3.3.6
6108− - 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
61096112 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: lens-5.0.1
61106113 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: optparse-applicative-0.16.1.0
61116114 - hsdev < 0 # tried hsdev-0.3.4.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6118,7 +6121,7 @@ packages:
61186121 - hw-hspec-hedgehog < 0 # tried hw-hspec-hedgehog-0.1.1.0, but its *library* does not support: hspec-2.8.5
61196122 - hyraxAbif < 0 # tried hyraxAbif-0.2.3.27, but its *library* does not support: text-1.2.5.0
61206123 - idris < 0 # tried idris-1.3.4, but its *library* does not support: Cabal-3.4.1.0
6121− - 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
61226125 - importify < 0 # tried importify-1.0.1, but its *library* requires the disabled package: hse-cpp
61236126 - indentation-core < 0 # tried indentation-core-0.0.0.2, but its *library* does not support: base-4.15.1.0
61246127 - indentation-parsec < 0 # tried indentation-parsec-0.0.0.2, but its *library* does not support: base-4.15.1.0
@@ -6126,10 +6129,11 @@ packages:
61266129 - inline-java < 0 # tried inline-java-0.10.0, but its *library* requires the disabled package: jni
61276130 - inline-r < 0 # tried inline-r-0.10.5, but its *library* does not support: singletons-3.0.1
61286131 - interpolatedstring-qq2 < 0 # tried interpolatedstring-qq2-0.1.0.0, but its *library* does not support: template-haskell-2.17.0.0
6129− - 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
61306133 - io-streams-haproxy < 0 # tried io-streams-haproxy-1.0.1.0, but its *library* does not support: base-4.15.1.0
6131− - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: attoparsec-0.14.3
6132− - 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
61336137 - irc-dcc < 0 # tried irc-dcc-2.0.1, but its *library* does not support: path-0.9.2
61346138 - it-has < 0 # tried it-has-0.2.0.0, but its *library* does not support: generic-lens-2.2.0.0
61356139 - ixset < 0 # tried ixset-1.1.1.1, but its *library* requires the disabled package: syb-with-class
@@ -6138,7 +6142,7 @@ packages:
61386142 - ixset-typed-conversions < 0 # tried ixset-typed-conversions-0.1.2.0, but its *library* requires the disabled package: ixset-typed
61396143 - ixset-typed-hashable-instance < 0 # tried ixset-typed-hashable-instance-0.1.0.2, but its *library* requires the disabled package: ixset-typed
61406144 - jmacro-rpc-snap < 0 # tried jmacro-rpc-snap-0.3, but its *library* requires the disabled package: snap-core
6141− - 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
61426146 - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: base64-bytestring-1.2.1.0
61436147 - jsaddle < 0 # tried jsaddle-0.9.8.1, but its *library* does not support: ref-tf-0.5.0.1
61446148 - json-alt < 0 # tried json-alt-1.0.0, but its *library* does not support: aeson-1.5.6.0
@@ -6194,7 +6198,6 @@ packages:
61946198 - list-witnesses < 0 # tried list-witnesses-0.1.3.2, but its *library* requires the disabled package: functor-products
61956199 - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log
61966200 - little-logger < 0 # tried little-logger-0.3.2, but its *library* requires the disabled package: co-log-core
6197− - loc < 0 # tried loc-0.1.3.10, but its *library* does not support: base-4.15.1.0
61986201 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: aeson-1.5.6.0
61996202 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: o-clock-1.2.1
62006203 - log-warper < 0 # tried log-warper-1.9.0, but its *library* does not support: universum-1.7.2
@@ -6209,43 +6212,40 @@ packages:
62096212 - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* does not support: prettyprinter-1.7.1
62106213 - logging-effect-extra-handler < 0 # tried logging-effect-extra-handler-2.0.1, but its *library* requires the disabled package: logging-effect
62116214 - loopbreaker < 0 # tried loopbreaker-0.1.1.1, but its *library* does not support: ghc-9.0.2
6212− - 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
62136216 - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-0.18.3
62146217 - lxd-client < 0 # tried lxd-client-0.1.0.6, but its *library* does not support: servant-client-0.18.3
62156218 - machines-directory < 0 # tried machines-directory-7.0.0.0, but its *library* requires the disabled package: machines-io
62166219 - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-core
62176220 - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: ekg-wai
6218− - magicbane < 0 # tried magicbane-0.5.1, but its *library* requires the disabled package: refined
6219− - 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
62206222 - mallard < 0 # tried mallard-0.6.1.1, but its *library* does not support: megaparsec-9.2.0
62216223 - mallard < 0 # tried mallard-0.6.1.1, but its *library* requires the disabled package: Interpolation
62226224 - map-syntax < 0 # tried map-syntax-0.3, but its *library* does not support: base-4.15.1.0
62236225 - markup < 0 # tried markup-4.2.0, but its *library* requires the disabled package: attoparsec-uri
62246226 - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: aeson-1.5.6.0
6225− - 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
62266228 - marvin < 0 # tried marvin-0.2.5, but its *library* does not support: lens-5.0.1
62276229 - marvin < 0 # tried marvin-0.2.5, but its *library* requires the disabled package: marvin-interpolate
6228− - matrix-static < 0 # tried matrix-static-0.3, but its *library* requires the disabled package: ghc-typelits-natnormalise
62296230 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: extra-1.7.10
62306231 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: formatting-7.1.3
6231− - 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
62326233 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: optparse-applicative-0.16.1.0
62336234 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: scalpel-core-0.6.2
62346235 - mbug < 0 # tried mbug-1.3.2, but its *library* does not support: time-1.9.3
6235− - mega-sdist < 0 # tried mega-sdist-0.4.1.0, but its *executable* requires the disabled package: pantry
62366236 - menshen < 0 # tried menshen-0.0.3, but its *library* does not support: regex-tdfa-1.3.1.1
62376237 - merkle-tree < 0 # tried merkle-tree-0.1.1, but its *library* requires the disabled package: protolude
62386238 - messagepack-rpc < 0 # tried messagepack-rpc-0.5.1, but its *library* does not support: containers-0.6.4.1
62396239 - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *executable* requires the disabled package: aws-lambda-haskell-runtime-wai
62406240 - microformats2-parser < 0 # tried microformats2-parser-1.0.2.0, but its *library* requires the disabled package: xml-lens
6241− - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.9
6241+ - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-client-0.7.10
62426242 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: http-media-0.8.0.0
62436243 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-0.18.3
62446244 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: servant-client-0.18.3
62456245 - microsoft-translator < 0 # tried microsoft-translator-0.1.2, but its *library* does not support: time-1.9.3
62466246 - midi-music-box < 0 # tried midi-music-box-0.0.1.2, but its *executable* requires the disabled package: diagrams-postscript
62476247 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: lens-5.0.1
6248− - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.5
6248+ - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: network-3.1.2.7
62496249 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: random-1.2.1
62506250 - milena < 0 # tried milena-0.5.4.0, but its *library* does not support: semigroups-0.19.2
62516251 - mini-egison < 0 # tried mini-egison-1.0.0, but its *library* requires the disabled package: egison-pattern-src
@@ -6255,11 +6255,11 @@ packages:
62556255 - misfortune < 0 # tried misfortune-0.1.1.2, but its *library* requires the disabled package: random-fu
62566256 - miso < 0 # tried miso-1.8.1.0, but its *library* requires the disabled package: jsaddle
62576257 - modify-fasta < 0 # tried modify-fasta-0.8.3.0, but its *executable* requires the disabled package: pipes-text
6258− - modular < 0 # tried modular-0.1.0.8, but its *library* requires the disabled package: ghc-typelits-knownnat
62596258 - mole < 0 # tried mole-0.0.7, but its *executable* does not support: base-4.15.1.0
62606259 - mole < 0 # tried mole-0.0.7, but its *executable* requires the disabled package: snap-server
62616260 - monad-bayes < 0 # tried monad-bayes-0.1.1.0, but its *library* does not support: base-4.15.1.0
62626261 - 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
62636263 - monad-metrics < 0 # tried monad-metrics-0.2.2.0, but its *library* requires the disabled package: ekg-core
62646264 - monad-mock < 0 # tried monad-mock-0.2.0.0, but its *library* does not support: template-haskell-2.17.0.0
62656265 - monad-unlift-ref < 0 # tried monad-unlift-ref-0.2.1, but its *library* requires the disabled package: monad-unlift
@@ -6275,7 +6275,7 @@ packages:
62756275 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: binary-conduit-1.3.1
62766276 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-1.3.4.2
62776277 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: conduit-extra-1.3.5
6278− - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.5
6278+ - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: network-3.1.2.7
62796279 - msgpack-rpc < 0 # tried msgpack-rpc-1.0.0, but its *library* does not support: random-1.2.1
62806280 - multistate < 0 # tried multistate-0.8.0.3, but its *library* does not support: base-4.15.1.0
62816281 - mwc-random-accelerate < 0 # tried mwc-random-accelerate-0.2.0.0, but its *library* requires the disabled package: accelerate
@@ -6289,12 +6289,12 @@ packages:
62896289 - n2o-web < 0 # tried n2o-web-0.11.2, but its *library* requires the disabled package: n2o-protocols
62906290 - nakadi-client < 0 # tried nakadi-client-0.7.0.0, but its *library* requires the disabled package: async-timer
62916291 - 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
62926293 - net-mqtt-lens < 0 # tried net-mqtt-lens-0.1.1.0, but its *library* requires the disabled package: net-mqtt
62936294 - netrc < 0 # tried netrc-0.2.0.0, but its *library* does not support: base-4.15.1.0
62946295 - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: hexstring
62956296 - network-anonymous-tor < 0 # tried network-anonymous-tor-0.11.0, but its *library* requires the disabled package: network-attoparsec
6296− - network-msgpack-rpc < 0 # tried network-msgpack-rpc-0.0.6, but its *library* does not support: network-3.1.2.5
6297− - 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
62986298 - network-transport-inmemory < 0 # tried network-transport-inmemory-0.5.2, but its *library* does not support: containers-0.6.4.1
62996299 - nri-test-encoding < 0 # tried nri-test-encoding-0.1.1.1, but its *library* requires the disabled package: servant-auth-server
63006300 - numhask-prelude < 0 # tried numhask-prelude-0.5.0, but its *library* does not support: numhask-0.8.1.0
@@ -6303,14 +6303,12 @@ packages:
63036303 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: Cabal-3.4.1.0
63046304 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: base-4.15.1.0
63056305 - om-elm < 0 # tried om-elm-2.0.0.0, but its *library* does not support: template-haskell-2.17.0.0
6306− - opml-conduit < 0 # tried opml-conduit-0.9.0.0, but its *library* requires the disabled package: refined
63076306 - oset < 0 # tried oset-0.4.0.1, but its *library* does not support: base-4.15.1.0
63086307 - packdeps < 0 # tried packdeps-0.6.0.0, but its *library* does not support: Cabal-3.4.1.0
63096308 - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: groups-0.5.3
63106309 - pairing < 0 # tried pairing-1.1.0, but its *library* does not support: protolude-0.3.0
63116310 - pairing < 0 # tried pairing-1.1.0, but its *library* requires the disabled package: elliptic-curve
63126311 - pango < 0 # tried pango-0.13.8.1, but its *library* does not support: Cabal-3.4.1.0
6313− - pantry < 0 # tried pantry-0.5.3, but its *library* requires the disabled package: hackage-security
63146312 - papillon < 0 # tried papillon-0.1.1.1, but its *library* does not support: template-haskell-2.17.0.0
63156313 - paripari < 0 # tried paripari-0.7.0.0, but its *library* does not support: parser-combinators-1.3.0
63166314 - path-text-utf8 < 0 # tried path-text-utf8-0.0.1.8, but its *library* does not support: path-0.9.2
@@ -6320,7 +6318,7 @@ packages:
63206318 - persistable-record < 0 # tried persistable-record-0.6.0.5, but its *library* requires the disabled package: th-data-compat
63216319 - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: persistable-record
63226320 - persistable-types-HDBC-pg < 0 # tried persistable-types-HDBC-pg-0.0.3.5, but its *library* requires the disabled package: relational-query-HDBC
6323− - 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
63246322 - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: random-1.2.1
63256323 - pg-harness-server < 0 # tried pg-harness-server-0.6.2, but its *executable* does not support: scotty-0.12
63266324 - picedit < 0 # tried picedit-0.2.3.0, but its *executable* requires the disabled package: cli
@@ -6333,15 +6331,15 @@ packages:
63336331 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: containers-0.6.4.1
63346332 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: hashable-1.3.5.0
63356333 - pier < 0 # tried pier-0.3.0.0, but its *executable* does not support: shake-0.19.6
6336− - 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
63376335 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: Cabal-3.4.1.0
63386336 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base-4.15.1.0
63396337 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
63406338 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: containers-0.6.4.1
63416339 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: hashable-1.3.5.0
6342− - 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
63436341 - pier-core < 0 # tried pier-core-0.3.0.0, but its *library* does not support: shake-0.19.6
6344− - 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
63456343 - pipes-category < 0 # tried pipes-category-0.3.0.0, but its *library* does not support: lens-5.0.1
63466344 - pipes-misc < 0 # tried pipes-misc-0.5.0.0, but its *library* requires the disabled package: pipes-category
63476345 - pipes-network-tls < 0 # tried pipes-network-tls-0.4, but its *library* requires the disabled package: pipes-network
@@ -6379,23 +6377,21 @@ packages:
63796377 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: connection-0.3.1
63806378 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: constraints-0.13.2
63816379 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: http-api-data-0.4.3
6382− - 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
63836381 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: lens-5.0.1
63846382 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* does not support: req-3.9.2
63856383 - rakuten < 0 # tried rakuten-0.1.1.5, but its *library* requires the disabled package: extensible
63866384 - ranged-list < 0 # tried ranged-list-0.1.0.0, but its *library* requires the disabled package: typecheck-plugin-nat-simple
63876385 - rank-product < 0 # tried rank-product-0.2.2.0, but its *library* requires the disabled package: random-fu
6388− - 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
63896387 - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry
63906388 - reanimate < 0 # tried reanimate-1.1.4.0, but its *library* requires the disabled package: hgeometry-combinatorial
6391− - refined < 0 # tried refined-0.6.2, but its *library* does not support: base-4.15.1.0
6392− - refined < 0 # tried refined-0.6.2, but its *library* does not support: template-haskell-2.17.0.0
63936389 - reform-hsp < 0 # tried reform-hsp-0.2.7.2, but its *library* requires the disabled package: hsx2hs
63946390 - regex-pcre-text < 0 # tried regex-pcre-text-0.94.0.1, but its *library* does not support: regex-base-0.94.0.2
63956391 - 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
63966392 - regex-tdfa-text < 0 # tried regex-tdfa-text-1.0.0.3, but its *library* does not support: regex-base-0.94.0.2
63976393 - registry < 0 # tried registry-0.2.1.0, but its *library* requires the disabled package: protolude
6398− - 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
63996395 - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: persistable-record
64006396 - relational-query < 0 # tried relational-query-0.12.3.0, but its *library* requires the disabled package: product-isomorphic
64016397 - relational-query-HDBC < 0 # tried relational-query-HDBC-0.7.2.0, but its *library* requires the disabled package: th-data-compat
@@ -6409,13 +6405,12 @@ packages:
64096405 - req-url-extra < 0 # tried req-url-extra-0.1.1.0, but its *library* does not support: req-3.9.2
64106406 - rethinkdb-client-driver < 0 # tried rethinkdb-client-driver-0.0.25, but its *library* does not support: base-4.15.1.0
64116407 - rhine-gloss < 0 # tried rhine-gloss-0.7.0, but its *library* requires the disabled package: rhine
6412− - riak < 0 # tried riak-1.2.0.0, but its *library* does not support: attoparsec-0.14.3
6413− - 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
64146410 - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: aeson-1.5.6.0
6415− - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: http-client-0.7.9
6416− - 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
64176413 - rollbar-hs < 0 # tried rollbar-hs-0.3.1.0, but its *library* does not support: time-1.9.3
6418− - rss-conduit < 0 # tried rss-conduit-0.6.0.1, but its *library* requires the disabled package: atom-conduit
64196414 - safe-tensor < 0 # tried safe-tensor-0.2.1.1, but its *library* does not support: singletons-3.0.1
64206415 - salak-toml < 0 # tried salak-toml-0.3.5.3, but its *library* requires the disabled package: tomland
64216416 - sandwich-webdriver < 0 # tried sandwich-webdriver-0.1.0.6, but its *library* requires the disabled package: webdriver
@@ -6426,7 +6421,7 @@ packages:
64266421 - sendgrid-v3 < 0 # tried sendgrid-v3-0.3.0.0, but its *library* does not support: base-4.15.1.0
64276422 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: aeson-1.5.6.0
64286423 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: base-4.15.1.0
6429− - 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
64306425 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: lens-5.0.1
64316426 - sensu-run < 0 # tried sensu-run-0.7.0.5, but its *executable* does not support: optparse-applicative-0.16.1.0
64326427 - seqloc < 0 # tried seqloc-0.6.1.1, but its *library* requires the disabled package: biocore
@@ -6487,20 +6482,17 @@ packages:
64876482 - shower < 0 # tried shower-0.2.0.2, but its *library* does not support: base-4.15.1.0
64886483 - simplest-sqlite < 0 # tried simplest-sqlite-0.1.0.2, but its *library* does not support: template-haskell-2.17.0.0
64896484 - size-based < 0 # tried size-based-0.1.2.0, but its *library* does not support: template-haskell-2.17.0.0
6490− - sized < 0 # tried sized-1.0.0.0, but its *library* requires the disabled package: ghc-typelits-knownnat
6491− - sized < 0 # tried sized-1.0.0.0, but its *library* requires the disabled package: type-natural
64926485 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: aeson-1.5.6.0
64936486 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: base-4.15.1.0
64946487 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: constraints-0.13.2
64956488 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: lens-5.0.1
64966489 - sized-grid < 0 # tried sized-grid-0.2.0.1, but its *library* does not support: random-1.2.1
64976490 - skeletons < 0 # tried skeletons-0.4.0, but its *executable* requires the disabled package: tinytemplate
6498− - slack-web < 0 # tried slack-web-0.3.0.1, but its *library* does not support: base-4.15.1.0
6499− - 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
65006492 - smallcheck-series < 0 # tried smallcheck-series-0.7.1.0, but its *library* does not support: base-4.15.1.0
65016493 - smash-lens < 0 # tried smash-lens-0.1.0.1, but its *library* does not support: lens-5.0.1
65026494 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: aeson-1.5.6.0
6503− - 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
65046496 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: base-4.15.1.0
65056497 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: dlist-1.0
65066498 - snap < 0 # tried snap-1.1.3.1, but its *library* does not support: lens-5.0.1
@@ -6508,8 +6500,8 @@ packages:
65086500 - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: pwstore-fast
65096501 - snap < 0 # tried snap-1.1.3.1, but its *library* requires the disabled package: snap-server
65106502 - snap-blaze < 0 # tried snap-blaze-0.2.1.5, but its *library* requires the disabled package: snap-core
6511− - snap-core < 0 # tried snap-core-1.0.4.2, but its *library* does not support: attoparsec-0.14.3
6512− - 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
65136505 - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: inline-java-0.10.0
65146506 - sparkle < 0 # tried sparkle-0.7.4, but its *library* does not support: jvm-0.6.0
65156507 - sparkle < 0 # tried sparkle-0.7.4, but its *library* requires the disabled package: distributed-closure
@@ -6517,39 +6509,34 @@ packages:
65176509 - sparse-tensor < 0 # tried sparse-tensor-0.2.1.5, but its *library* does not support: ad-4.5
65186510 - speculation < 0 # tried speculation-1.5.0.3, but its *library* does not support: stm-2.5.0.0
65196511 - sqlite-simple-errors < 0 # tried sqlite-simple-errors-0.6.1.0, but its *library* does not support: text-1.2.5.0
6520− - stack < 0 # tried stack-2.7.3, but its *library* requires the disabled package: hackage-security
65216512 - streamproc < 0 # tried streamproc-1.6.2, but its *library* does not support: base-4.15.1.0
65226513 - strict-base-types < 0 # tried strict-base-types-0.7, but its *library* requires the disabled package: strict-lens
6523− - strict-tuple < 0 # tried strict-tuple-0.1.4, but its *library* does not support: base-4.15.1.0
6524− - strict-tuple-lens < 0 # tried strict-tuple-lens-0.2, but its *library* requires the disabled package: strict-tuple
65256514 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-2.8.5
65266515 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: hspec-core-2.8.5
65276516 - stripe-tests < 0 # tried stripe-tests-2.6.2, but its *library* does not support: random-1.2.1
65286517 - structured-haskell-mode < 0 # tried structured-haskell-mode-1.1.0, but its *executable* does not support: haskell-src-exts-1.23.1
65296518 - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: Cabal-3.4.1.0
65306519 - stylish-haskell < 0 # tried stylish-haskell-0.13.0.0, but its *library* does not support: ghc-lib-parser-9.0.2.20211226
6531− - 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
65326521 - sv < 0 # tried sv-1.4.0.1, but its *library* does not support: base-4.15.1.0
6533− - sv-cassava < 0 # tried sv-cassava-0.3, but its *library* does not support: attoparsec-0.14.3
6534− - 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
65356524 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: base-4.15.1.0
65366525 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: lens-5.0.1
65376526 - sv-core < 0 # tried sv-core-0.5, but its *library* does not support: profunctors-5.6.2
65386527 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: containers-0.6.4.1
65396528 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-api-data-0.4.3
6540− - 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
65416530 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: http-media-0.8.0.0
65426531 - swagger-petstore < 0 # tried swagger-petstore-0.0.2.0, but its *library* does not support: katip-0.8.7.0
6543− - 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
65446533 - swagger2 < 0 # tried swagger2-2.7, but its *library* does not support: aeson-1.5.6.0
65456534 - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src
65466535 - sweet-egison < 0 # tried sweet-egison-0.1.1.3, but its *library* requires the disabled package: egison-pattern-src-th-mode
6547− - taffybar < 0 # tried taffybar-3.3.0, but its *library* requires the disabled package: broadcast-chan
65486536 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: containers-0.6.4.1
65496537 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: tasty-1.4.2.1
65506538 - tasty-stats < 0 # tried tasty-stats-0.2.0.4, but its *library* does not support: time-1.9.3
6551− - tcp-streams-openssl < 0 # tried tcp-streams-openssl-1.0.1.0, but its *library* does not support: network-3.1.2.5
6552− - 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
65536540 - termcolor < 0 # tried termcolor-0.2.0.0, but its *executable* requires the disabled package: cli
65546541 - termonad < 0 # tried termonad-4.2.0.0, but its *library* requires the disabled package: xml-html-qq
65556542 - test-fixture < 0 # tried test-fixture-0.5.1.0, but its *library* does not support: template-haskell-2.17.0.0
@@ -6558,9 +6545,8 @@ packages:
65586545 - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-1.2.5.0
65596546 - text-all < 0 # tried text-all-0.4.2, but its *library* does not support: text-format-0.3.2
65606547 - text-format < 0 # tried text-format-0.3.2, but its *library* does not support: base-4.15.1.0
6561− - 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
65626549 - th-to-exp < 0 # tried th-to-exp-0.0.1.1, but its *library* does not support: template-haskell-2.17.0.0
6563− - these-skinny < 0 # tried these-skinny-0.7.4, but its *library* does not support: base-4.15.1.0
65646550 - threepenny-gui < 0 # tried threepenny-gui-0.9.1.0, but its *library* requires the disabled package: snap-server
65656551 - threepenny-gui-flexbox < 0 # tried threepenny-gui-flexbox-0.4.2, but its *library* requires the disabled package: threepenny-gui
65666552 - thumbnail-plus < 0 # tried thumbnail-plus-1.0.5, but its *library* does not support: either-5.0.1.1
@@ -6570,25 +6556,23 @@ packages:
65706556 - tonatona < 0 # tried tonatona-0.1.2.1, but its *library* does not support: base-4.15.1.0
65716557 - tonatona-logger < 0 # tried tonatona-logger-0.2.0.2, but its *library* does not support: base-4.15.1.0
65726558 - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: base-4.15.1.0
6573− - tonatona-persistent-postgresql < 0 # tried tonatona-persistent-postgresql-0.1.0.2, but its *library* does not support: persistent-2.13.2.1
6574− - 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
65756561 - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: base-4.15.1.0
6576− - tonatona-persistent-sqlite < 0 # tried tonatona-persistent-sqlite-0.1.0.2, but its *library* does not support: persistent-2.13.2.1
6577− - 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
65786564 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: base-4.15.1.0
65796565 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-0.18.3
65806566 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: servant-server-0.18.3
65816567 - tonatona-servant < 0 # tried tonatona-servant-0.1.0.4, but its *library* does not support: wai-extra-3.1.8
65826568 - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: base-4.15.1.0
65836569 - transformers-lift < 0 # tried transformers-lift-0.2.0.2, but its *library* does not support: writer-cps-transformers-0.5.6.1
6584− - 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
65856571 - tries < 0 # tried tries-0.0.6.1, but its *library* requires the disabled package: rose-trees
65866572 - true-name < 0 # tried true-name-0.1.0.3, but its *library* does not support: template-haskell-2.17.0.0
65876573 - type-combinators-singletons < 0 # tried type-combinators-singletons-0.2.1.0, but its *library* requires the disabled package: type-combinators
6588− - type-natural < 0 # tried type-natural-1.1.0.1, but its *library* requires the disabled package: ghc-typelits-natnormalise
6589− - tz < 0 # tried tz-0.1.3.5, but its *library* does not support: template-haskell-2.17.0.0
65906574 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: aeson-1.5.6.0
6591− - 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
65926576 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: base-4.15.1.0
65936577 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: cryptonite-0.29
65946578 - ucam-webauth < 0 # tried ucam-webauth-0.1.0.0, but its *library* does not support: parser-combinators-1.3.0
@@ -6596,40 +6580,40 @@ packages:
65966580 - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base-4.15.1.0
65976581 - ucam-webauth-types < 0 # tried ucam-webauth-types-0.1.0.0, but its *library* does not support: base64-bytestring-1.2.1.0
65986582 - unfoldable-restricted < 0 # tried unfoldable-restricted-0.0.3, but its *library* requires the disabled package: unfoldable
6599− - 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
66006584 - uri-templater < 0 # tried uri-templater-0.3.1.0, but its *library* does not support: trifecta-2.1.2
66016585 - urlpath < 0 # tried urlpath-9.0.1, but its *library* requires the disabled package: attoparsec-uri
66026586 - userid < 0 # tried userid-0.1.3.6, but its *library* does not support: base-4.15.1.0
66036587 - utf8-conversions < 0 # tried utf8-conversions-0.1.0.4, but its *library* does not support: text-short-0.1.5
6604− - 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
66056589 - vado < 0 # tried vado-0.0.13, but its *library* does not support: base-4.15.1.0
66066590 - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: base-4.15.1.0
66076591 - vcswrapper < 0 # tried vcswrapper-0.1.6, but its *library* does not support: containers-0.6.4.1
66086592 - vector-circular < 0 # tried vector-circular-0.1.3, but its *library* does not support: template-haskell-2.17.0.0
66096593 - vector-fftw < 0 # tried vector-fftw-0.1.4.0, but its *library* does not support: base-4.15.1.0
66106594 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: base-4.15.1.0
6611− - 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
66126596 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: lens-5.0.1
66136597 - viewprof < 0 # tried viewprof-0.0.0.33, but its *executable* does not support: vty-5.33
66146598 - wai-middleware-crowd < 0 # tried wai-middleware-crowd-0.1.4.2, but its *executable* does not support: optparse-applicative-0.16.1.0
66156599 - wai-middleware-metrics < 0 # tried wai-middleware-metrics-0.2.4, but its *library* requires the disabled package: ekg-core
66166600 - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: aeson-1.5.6.0
6617− - 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
66186602 - wai-middleware-rollbar < 0 # tried wai-middleware-rollbar-0.11.0, but its *library* does not support: time-1.9.3
66196603 - wai-middleware-throttle < 0 # tried wai-middleware-throttle-0.3.0.1, but its *library* requires the disabled package: token-bucket
66206604 - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-predicates
66216605 - wai-routing < 0 # tried wai-routing-0.13.0, but its *library* requires the disabled package: wai-route
6622− - 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
66236607 - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: base-4.15.1.0
66246608 - wavefront < 0 # tried wavefront-0.7.1.4, but its *library* does not support: dlist-1.0
66256609 - web-routes-th < 0 # tried web-routes-th-0.22.6.6, but its *library* does not support: template-haskell-2.17.0.0
66266610 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: OneTuple-0.3.1
66276611 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: aeson-1.5.6.0
6628− - 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
66296613 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: base-4.15.1.0
66306614 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: cryptonite-0.29
66316615 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: hspec-2.8.5
6632− - 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
66336617 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: memory-0.16.0
66346618 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-0.18.3
66356619 - web3 < 0 # tried web3-0.9.1.0, but its *library* does not support: servant-client-0.18.3
@@ -6651,7 +6635,7 @@ packages:
66516635 - xml-isogen < 0 # tried xml-isogen-0.3.0, but its *library* requires the disabled package: dom-parser
66526636 - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* does not support: yeshql-core-4.2.0.0
66536637 - yeshql < 0 # tried yeshql-4.2.0.0, but its *library* requires the disabled package: yeshql-hdbc
6654− - 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
66556639 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-auth-1.6.10.5
66566640 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-core-1.6.21.0
66576641 - yesod-auth-bcryptdb < 0 # tried yesod-auth-bcryptdb-0.3.0.1, but its *library* does not support: yesod-form-1.7.0
@@ -6690,6 +6674,9 @@ packages:
66906674
66916675 # aeson-2
66926676 # 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
66936680 - aeson < 2.0.0.0
66946681 - aura < 3.2.6
66956682 - avro < 0.6.0.0
@@ -6697,6 +6684,7 @@ packages:
66976684 - core-data < 0.3.0.0
66986685 - eventstore < 1.4.2
66996686 - faktory < 1.1.2.1
6687+ - flow < 2.0.0.0
67006688 - forma < 1.2.0
67016689 - geojson < 4.1.0
67026690 - greskell < 2.0.0.0
@@ -6704,24 +6692,20 @@ packages:
67046692 - greskell-websocket < 1.0.0.0
67056693 - hruby < 0.4.0.0
67066694 - hspec-expectations-json < 1.0.0.5
6695+ - http2 < 3.0.3
6696+ - jose < 0.9
6697+ - jsonpath < 0.2.1.0
67076698 - kanji < 3.5
67086699 - microlens-aeson < 2.4
67096700 - mmark-cli < 0.0.5.1
6701+ - pandoc-plot < 1.4.0
67106702 - postgresql-binary < 0.12.4.2
67116703 - servant-tracing < 0.2.0.0
67126704 - shikensu < 0.4.0
67136705 - stache < 2.3.1
67146706 - stripe-scotty < 1.1.0.1
67156707 - stripe-wreq < 1.0.1.12
6716−
6717− # happy-1.21.0 is deprecated an unbuildable
6718− # https://github.com/commercialhaskell/stackage/issues/6294
6719− # see also https://github.com/commercialhaskell/stackage/issues/6242
6720− - happy < 1.21
6721−
6722− # https://github.com/commercialhaskell/stackage/issues/6243
6723− # lift together with https://github.com/commercialhaskell/stackage/issues/6217
6724− - jose < 0.9
6708+ - yaml < 0.11.7
67256709
67266710 # https://github.com/commercialhaskell/stackage/issues/6264
67276711 # Requires GHC 9.2
@@ -6738,6 +6722,7 @@ packages:
67386722 - singletons-base < 3.1
67396723 - singletons-th < 3.1
67406724 - th-desugar < 1.13
6725+ - fourmolu < 0.5.0.0
67416726
67426727 # https://github.com/commercialhaskell/stackage/issues/6268
67436728 - hashable < 1.4.0.0
@@ -6778,13 +6763,22 @@ packages:
67786763 - selective < 0.5
67796764 - yaml-unscrambler < 0.1.0.5
67806765
6781− # https://github.com/commercialhaskell/stackage/issues/6382
6782− - unicode-data < 0.3
6783−
67846766 # https://github.com/commercialhaskell/stackage/issues/6388
67856767 # issue is for 5.0, but 4.0.4 is deprecated.
67866768 - hw-kafka-client < 4.0.4
67876769
6770+ # https://github.com/commercialhaskell/stackage/issues/6395
6771+ - wuss < 2.0
6772+
6773+ # https://github.com/haskell-game/sdl2/issues/240 (need newer Ubuntu)
6774+ - sdl2 < 2.5.3.1
6775+
6776+ # https://github.com/commercialhaskell/stack/issues/5670 (fails with Cabal-3.4)
6777+ - stack < 0
6778+
6779+ # https://github.com/commercialhaskell/stackage/issues/6401
6780+ - rope-utf16-splay < 0.4
6781+
67886782# end of packages
67896783
67906784# Package flags are applied to individual packages, and override the values of
@@ -6927,6 +6921,7 @@ skipped-builds:
69276921# Otherwise place them in expected-test-failures.
69286922skipped-tests:
69296923 # aeson-2
6924+ # https://github.com/commercialhaskell/stackage/issues/6217
69306925 - jsonifier
69316926 - req
69326927
@@ -7058,7 +7053,7 @@ skipped-tests:
70587053 # Test bounds issues
70597054 - ENIG # tried ENIG-0.0.1.0, but its *test-suite* requires the disabled package: test-framework-th
70607055 - IPv6DB # tried IPv6DB-0.3.2, but its *test-suite* does not support: hspec-2.8.5
7061− - 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
70627057 - MissingH # tried MissingH-1.4.3.0, but its *test-suite* requires the disabled package: errorcall-eq-instance
70637058 - aeson # tried aeson-1.5.6.0, but its *test-suite* does not support: hashable-time-0.3
70647059 - airship # tried airship-0.9.4, but its *test-suite* does not support: tasty-1.4.2.1
@@ -7117,9 +7112,8 @@ skipped-tests:
71177112 - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: semirings-0.6
71187113 - galois-field # tried galois-field-1.0.2, but its *test-suite* does not support: tasty-1.4.2.1
71197114 - generic-xmlpickler # tried generic-xmlpickler-0.1.0.6, but its *test-suite* does not support: tasty-1.4.2.1
7120− - 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
71217116 - gitlib-libgit2 # tried gitlib-libgit2-3.1.2.1, but its *test-suite* requires the disabled package: gitlib-test
7122− - hackage-security # tried hackage-security-0.6.0.1, but its *test-suite* does not support: tasty-1.4.2.1
71237117 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-2.8.5
71247118 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: hspec-discover-2.8.5
71257119 - haddock-library # tried haddock-library-1.10.0, but its *test-suite* does not support: optparse-applicative-0.16.1.0
@@ -7129,7 +7123,7 @@ skipped-tests:
71297123 - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *test-suite* requires the disabled package: knob
71307124 - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: Glob-0.10.2
71317125 - haskell-tools-daemon # tried haskell-tools-daemon-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
7132− - 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
71337127 - haskell-tools-demo # tried haskell-tools-demo-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
71347128 - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: polyparse-1.13
71357129 - haskell-tools-refactor # tried haskell-tools-refactor-1.1.1.0, but its *test-suite* does not support: tasty-1.4.2.1
@@ -7139,7 +7133,6 @@ skipped-tests:
71397133 - hasmin # tried hasmin-1.0.3, but its *test-suite* does not support: doctest-0.18.2
71407134 - heist # tried heist-1.1.0.1, but its *test-suite* does not support: lens-5.0.1
71417135 - hidden-char # tried hidden-char-0.1.0.2, but its *test-suite* does not support: hspec-2.8.5
7142− - hmatrix-vector-sized # tried hmatrix-vector-sized-0.1.3.0, but its *test-suite* requires the disabled package: ghc-typelits-knownnat
71437136 - hspec-tables # tried hspec-tables-0.0.1, but its *test-suite* does not support: hspec-2.8.5
71447137 - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
71457138 - http-media # tried http-media-0.8.0.0, but its *test-suite* does not support: base-4.15.1.0
@@ -7198,7 +7191,7 @@ skipped-tests:
71987191 - options # tried options-1.2.1.1, but its *test-suite* requires the disabled package: chell-quickcheck
71997192 - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-2.8.5
72007193 - oset # tried oset-0.4.0.1, but its *test-suite* does not support: hspec-discover-2.8.5
7201− - 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
72027195 - pipes-fluid # tried pipes-fluid-0.6.0.1, but its *test-suite* requires the disabled package: pipes-misc
72037196 - postgrest # tried postgrest-8.0.0, but its *test-suite* does not support: hspec-2.8.5
72047197 - printcess # tried printcess-0.1.0.3, but its *test-suite* does not support: HUnit-1.6.2.0
@@ -7242,7 +7235,7 @@ skipped-tests:
72427235 - simple-log # tried simple-log-0.9.12, but its *test-suite* does not support: hspec-2.8.5
72437236 - sized-grid # tried sized-grid-0.2.0.1, but its *test-suite* does not support: ansi-terminal-0.11.1
72447237 - snap # tried snap-1.1.3.1, but its *test-suite* does not support: QuickCheck-2.14.2
7245− - 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
72467239 - stm-supply # tried stm-supply-0.2.0.0, but its *test-suite* requires the disabled package: Unique
72477240 - streaming-cassava # tried streaming-cassava-0.2.0.0, but its *test-suite* does not support: hspec-2.8.5
72487241 - stripe-http-client # tried stripe-http-client-2.6.2, but its *test-suite* does not support: hspec-2.8.5
@@ -7260,8 +7253,6 @@ skipped-tests:
72607253 - temporary-resourcet # tried temporary-resourcet-0.1.0.1, but its *test-suite* does not support: tasty-1.4.2.1
72617254 - test-framework # tried test-framework-0.8.2.0, but its *test-suite* requires the disabled package: libxml
72627255 - transient # tried transient-0.7.0.0, but its *test-suite* does not support: random-1.2.1
7263− - typerep-map # tried typerep-map-0.4.0.0, but its *test-suite* requires the disabled package: ghc-typelits-knownnat
7264− - tzdata # tried tzdata-0.2.20201021.0, but its *test-suite* requires the disabled package: test-framework-th
72657256 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: QuickCheck-2.14.2
72667257 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: generic-random-1.5.0.1
72677258 - ucam-webauth # tried ucam-webauth-0.1.0.0, but its *test-suite* does not support: hspec-2.8.5
@@ -7286,6 +7277,8 @@ skipped-tests:
72867277 # https://github.com/commercialhaskell/stackage/issues/6363
72877278 - amqp
72887279
7280+ - c2hs # https://github.com/commercialhaskell/stackage/issues/6420
7281+
72897282# end of skipped-tests
72907283
72917284# Tests listed in expected-test-failures configure correctly but may fail to run
@@ -7308,7 +7301,7 @@ expected-test-failures:
73087301 - capataz # https://github.com/roman/Haskell-capataz/issues/6
73097302 - concurrent-extra # https://github.com/basvandijk/concurrent-extra/issues/12
73107303 - crypto-numbers
7311− - 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
73127305 - distributed-process
73137306 - distributed-process-execution # https://github.com/haskell-distributed/distributed-process-execution/issues/2
73147307 - distributed-process-task
@@ -7456,8 +7449,7 @@ expected-test-failures:
74567449 - bugsnag-haskell # https://github.com/commercialhaskell/stackage/issues/6372
74577450 - cpio-conduit # Test file not in tarball https://github.com/da-x/cpio-conduit/issues/1
74587451 - crypto-pubkey # https://github.com/vincenthz/hs-crypto-pubkey/issues/23
7459− - doctest
7460− - 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
74617453 - ghc-events # https://github.com/haskell/ghc-events/issues/70
74627454 - gitlab-haskell # https://github.com/commercialhaskell/stackage/issues/6088
74637455 - hspec-core # https://github.com/commercialhaskell/stackage/issues/6291
@@ -7542,6 +7534,7 @@ expected-test-failures:
75427534 - safe-decimal
75437535 - simple-affine-space
75447536 - simple-vec3 # https://github.com/commercialhaskell/stackage/pull/5410
7537+ - singletons-base
75457538 - sized
75467539 - spatial-math
75477540 - subcategories
@@ -7554,12 +7547,14 @@ expected-test-failures:
75547547 - universum
75557548 - utf8-conversions
75567549 - varying
7550+ - vector-algorithms
75577551 - vivid-osc
75587552 - wakame
75597553 - world-peace
75607554 - xml-picklers # https://github.com/Philonous/xml-picklers/issues/5
75617555 - xmlbf
75627556 - yesod-gitrev # needs a git repo https://github.com/commercialhaskell/stackage/issues/6132
7557+ - yesod-markdown # https://github.com/pbrisbin/yesod-markdown/issues/77
75637558
75647559 # Assertion failures due to module name ambiguity.
75657560 # These _should_ be fixed by using the `hide` section of this file
@@ -7581,7 +7576,6 @@ expected-test-failures:
75817576 - easy-logger # https://github.com/commercialhaskell/stackage/issues/6384
75827577 - flat # 0.4.4
75837578 - flay # 0.4
7584− - focuslist # 0.1.0.2
75857579 - functor-combinators # https://github.com/commercialhaskell/stackage/issues/6376
75867580 - generic-lens # https://github.com/commercialhaskell/stackage/issues/6377
75877581 - geojson # 4.0.2
@@ -7712,7 +7706,6 @@ expected-benchmark-failures:
77127706 # Compilation failures
77137707 - OrderedBits # 0.0.2.0
77147708 - aeson-combinators # 0.0.5.0
7715− - cipher-blowfish # 0.0.11 https://github.com/vincenthz/hs-crypto-cipher/issues/46
77167709 - cmark-gfm # https://github.com/kivikakk/cmark-gfm-hs/issues/5
77177710 - cryptohash # 0.11.9 https://github.com/vincenthz/hs-cryptohash/pull/43
77187711 - incremental-parser # 0.5.0.2
@@ -7735,6 +7728,7 @@ expected-benchmark-failures:
77357728# Otherwise place them in expected-benchmark-failures.
77367729skipped-benchmarks:
77377730 # aeson-2
7731+ # https://github.com/commercialhaskell/stackage/issues/6217
77387732 - jsonifier
77397733
77407734 # Cyclic dependencies
@@ -7816,10 +7810,10 @@ skipped-benchmarks:
78167810 - extensible-effects # tried extensible-effects-5.0.0.1, but its *benchmarks* requires the disabled package: test-framework-th
78177811 - haskell-tools-cli # tried haskell-tools-cli-1.1.1.0, but its *benchmarks* does not support: aeson-1.5.6.0
78187812 - 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
78197814 - hip # tried hip-1.5.6.0, but its *benchmarks* requires the disabled package: repa-algorithms
78207815 - hw-eliasfano # tried hw-eliasfano-0.1.2.0, but its *benchmarks* requires the disabled package: hw-hspec-hedgehog
78217816 - o-clock # tried o-clock-1.2.1, but its *benchmarks* requires the disabled package: tiempo
7822− - polysemy # tried polysemy-1.6.0.0, but its *benchmarks* requires the disabled package: freer-simple
78237817 - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: PSQueue
78247818 - psqueues # tried psqueues-0.2.7.3, but its *benchmarks* requires the disabled package: fingertree-psqueue
78257819 - regex-applicative # tried regex-applicative-0.3.4, but its *benchmarks* requires the disabled package: parsers-megaparsec
@@ -7828,7 +7822,6 @@ skipped-benchmarks:
78287822 - superbuffer # tried superbuffer-0.3.1.1, but its *benchmarks* does not support: criterion-1.5.12.0
78297823 - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: criterion-plus
78307824 - ttrie # tried ttrie-0.1.2.2, but its *benchmarks* requires the disabled package: stm-stats
7831− - typerep-map # tried typerep-map-0.4.0.0, but its *benchmarks* requires the disabled package: ghc-typelits-knownnat
78327825 - tz # tried tz-0.1.3.5, but its *benchmarks* requires the disabled package: thyme
78337826 - unicode-transforms # tried unicode-transforms-0.4.0, but its *benchmarks* does not support: path-0.9.2
78347827 - xxhash-ffi # tried xxhash-ffi-0.2.0.0, but its *benchmarks* requires the disabled package: xxhash
@@ -8042,6 +8035,7 @@ no-revisions:
80428035- hi-file-parser
80438036
80448037
8038+# Note, this no longer actually does anything with curator2 unfortunately:
80458039# Do not build these packages in parallel with others. Useful for high memory
80468040# usage.
80478041non-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}",