9.10.1 and stuff for debugging

This commit is contained in:
Brandon Simmons 2024-07-10 11:22:03 -04:00
parent caa79315f2
commit 1b7cef50e6
51 changed files with 413 additions and 268 deletions

View File

@ -16,7 +16,7 @@
--
-- See: https://www.haskell.org/cabal/users-guide/nix-local-build.html#configuring-builds-with-cabal-project
with-compiler: ghc-9.6.5
with-compiler: ghc-9.10.1
-- package-level parallelism:
jobs: $ncpus
@ -28,14 +28,20 @@ packages: server/forks/*/*.cabal
-- TODO remove these when we are able:
allow-newer: req:template-haskell
allow-newer: ekg-core:base
allow-newer: ekg-core:primitive
allow-newer: ekg-core:ghc-prim
allow-newer: ekg-core:containers
allow-newer: ekg-core:inspection-testing
allow-newer: ekg-core:text
allow-newer: ekg-json:base
allow-newer: ekg-json:text
allow-newer: ekg-json:aeson
allow-newer: ekg-json:vector
allow-newer: ekg-prometheus:base
allow-newer: ekg-prometheus:text
allow-newer: ekg-prometheus:bytestring
allow-newer: ekg-prometheus:primitive
allow-newer: ekg-prometheus:containers
-- Migrating to 0.25+ looks like it will be a real pain... :(
-- https://github.com/morpheusgraphql/morpheus-graphql/pull/766
allow-newer: relude:base
@ -58,6 +64,7 @@ allow-newer: morpheus-graphql-server:transformers
allow-newer: morpheus-graphql-server:vector
allow-newer: morpheus-graphql-client:text
allow-newer: morpheus-graphql-client:req
allow-newer: req:containers
allow-newer: morpheus-graphql-client:transformers
allow-newer: morpheus-graphql-client:vector
allow-newer: morpheus-graphql-subscriptions:text
@ -65,13 +72,19 @@ allow-newer: morpheus-graphql-subscriptions:transformers
allow-newer: servant-openapi3:base
allow-newer: openapi3:base
allow-newer: servant-client:base
allow-newer: servant-client:containers
allow-newer: servant-client:transformers
allow-newer: servant-client:mtl
allow-newer: servant-client-core:base
allow-newer: servant-client-core:containers
allow-newer: servant-client-core:free
allow-newer: servant-client-core:template-haskell
allow-newer: servant-client-core:transformers
allow-newer: servant-server:base
allow-newer: servant-server:containers
allow-newer: servant-server:either
allow-newer: servant-server:bytestring
allow-newer: servant-server:filepath
allow-newer: servant-server:template-haskell
allow-newer: servant-server:transformers
allow-newer: servant-server:mtl
@ -87,9 +100,46 @@ allow-newer: validation:assoc
allow-newer: aeson:th-abstraction
allow-newer: optics-th:th-abstraction
allow-newer: generics-sop:th-abstraction
allow-newer: insert-ordered-containers:base
allow-newer: lucid2:base
allow-newer: insert-ordered-containers:lens
allow-newer: uuid-types:text
allow-newer: uuid-types:template-haskell
allow-newer: string-interpolate:template-haskell
allow-newer: postgresql-simple:time
allow-newer: postgresql-simple:base
allow-newer: postgresql-simple:template-haskell
allow-newer: postgresql-simple:bytestring
allow-newer: postgresql-simple:text
allow-newer: postgresql-simple:containers
allow-newer: postgresql-simple:postgresql-libpq
allow-newer: openapi3:template-haskell
allow-newer: superbuffer:bytestring
allow-newer: websockets:containers
allow-newer: http-api-data:containers
allow-newer: stm-hamt:primitive
allow-newer: stm-hamt:primitive-extras
allow-newer: quickcheck-instances:base
allow-newer: quickcheck-instances:bytestring
allow-newer: uuid:uuid-types
allow-newer: connection:tls
allow-newer: proto-lens:base
allow-newer: proto-lens-runtime:base
allow-newer: launchdarkly-server-sdk:lens
allow-newer: launchdarkly-server-sdk:bytestring
allow-newer: launchdarkly-server-sdk:text
allow-newer: launchdarkly-server-sdk:containers
allow-newer: lrucache:containers
allow-newer: kriti-lang:aeson
allow-newer: generic-monoid:base
allow-newer: aeson-optics:base
allow-newer: testcontainers:bytestring
allow-newer: postgresql-libpq:base
allow-newer: xml-lens:text
allow-newer: xml-lens:containers
allow-newer: config-ini:text
allow-newer: hsc2hs:base
-- https://gitlab.haskell.org/ghc/ghc-debug/-/merge_requests/27
allow-newer: ghc-debug-stub:ghc-prim
-- https://github.com/mokus0/th-extras/pull/20
allow-newer: th-extras:template-haskell
@ -174,15 +224,21 @@ source-repository-package
location: https://github.com/hasura/ekg-core.git
tag: df610859603b504494ad770bdbb7053a7f0b9a6c
-- because we need 27d87f01, not yet released
source-repository-package
type: git
location: https://github.com/snoyberg/yaml.git
tag: c1aa7b3991e669e4c6a977712b495d40a54cf819
subdir: yaml
source-repository-package
type: git
location: https://github.com/hasura/libdeflate-hs.git
tag: e6f020a1a24d07516d753fbb6f30758774f76372
-- waiting on release:
source-repository-package
type: git
location: https://github.com/testcontainers/testcontainers-hs
tag: fe0d6bbce6ce74d5843a964ac231929ea37025e8
-- while we wait for 9.10 support to be released, see:
-- https://gitlab.haskell.org/ghc/ghc-debug/-/merge_requests/60
source-repository-package
type: git
location: https://gitlab.haskell.org/ghc/ghc-debug.git
tag: 2541e77d2687b8b3b0c1a52bb4790a602ce17d7d
subdir: stub

View File

@ -1,92 +1,87 @@
active-repositories: hackage.haskell.org:merge
constraints: any.Cabal ==3.10.1.0,
any.Cabal-syntax ==3.10.1.0,
any.Diff ==0.4.1,
constraints: any.Diff ==0.4.1,
any.Glob ==0.10.2,
any.HTTP ==4000.4.1,
any.HUnit ==1.6.2.0,
any.OneTuple ==0.4.1.1,
any.OneTuple ==0.4.2,
any.Only ==0.1,
any.QuickCheck ==2.14.2,
any.QuickCheck ==2.14.3,
any.RSA ==2.4.1,
any.SHA ==1.6.4.4,
any.Spock ==0.14.0.0,
any.Spock-core ==0.14.0.1,
any.StateVar ==1.2.2,
any.adjunctions ==4.4.2,
any.aeson ==2.1.2.1,
any.aeson ==2.2.3.0,
any.aeson-casing ==0.2.0.0,
any.aeson-optics ==1.2.0.1,
any.aeson-pretty ==0.8.9,
any.aeson-optics ==1.2.1,
any.aeson-pretty ==0.8.10,
any.aeson-qq ==0.8.4,
any.alex ==3.3.0.0,
any.ansi-terminal ==0.11.5,
any.ansi-terminal-types ==0.11.5,
any.ansi-wl-pprint ==1.0.2,
any.appar ==0.1.8,
any.array ==0.5.6.0,
any.array ==0.5.7.0,
any.asn1-encoding ==0.9.6,
any.asn1-parse ==0.9.5,
any.asn1-types ==0.3.4,
any.assoc ==1.1,
any.async ==2.2.4,
any.atomic-primops ==0.8.4,
any.assoc ==1.1.1,
any.async ==2.2.5,
any.atomic-primops ==0.8.8,
any.attoparsec ==0.14.4,
any.attoparsec-iso8601 ==1.1.0.0,
any.attoparsec-aeson ==2.2.2.0,
any.attoparsec-iso8601 ==1.1.1.0,
any.authenticate-oauth ==1.7,
any.auto-update ==0.1.6,
any.autodocodec ==0.2.0.3,
any.autodocodec ==0.2.3.0,
any.autodocodec-openapi3 ==0.2.1.1,
any.barbies ==2.0.4.0,
any.base ==4.18.2.1,
any.base ==4.20.0.0,
any.base-compat ==0.12.2,
any.base-compat-batteries ==0.12.2,
any.base-orphans ==0.9.0,
any.base-prelude ==1.6.1,
any.base-orphans ==0.9.2,
any.base16-bytestring ==1.0.2.0,
any.base64-bytestring ==1.2.1.0,
any.basement ==0.0.15,
any.bifunctors ==5.6.1,
any.bifunctors ==5.6.2,
any.bimap ==0.5.0,
any.binary ==0.8.9.1,
any.binary-orphans ==1.0.4.1,
any.binary-parser ==0.5.7.3,
any.bitvec ==1.1.4.0,
any.blaze-builder ==0.4.2.2,
any.binary ==0.8.9.2,
any.binary-orphans ==1.0.5,
any.binary-parser ==0.5.7.6,
any.bitvec ==1.1.5.0,
any.blaze-builder ==0.4.2.3,
any.blaze-html ==0.9.1.2,
any.blaze-markup ==0.8.2.8,
any.boring ==0.2.1,
any.brick ==1.9,
any.blaze-markup ==0.8.3.0,
any.boring ==0.2.2,
any.brick ==2.3.2,
any.bsb-http-chunked ==0.0.0.4,
any.byteable ==0.1.1,
any.byteorder ==1.0.4,
any.bytestring ==0.11.5.3,
any.bytestring ==0.12.1.0,
any.bytestring-builder ==0.10.8.2.0,
any.bytestring-lexing ==0.5.0.10,
any.bytestring-strict-builder ==0.4.5.6,
any.bytestring-tree-builder ==0.2.7.10,
any.bytestring-lexing ==0.5.0.12,
any.bytestring-strict-builder ==0.4.5.7,
any.cabal-doctest ==1.0.9,
any.call-stack ==0.4.0,
any.case-insensitive ==1.2.1.0,
any.cassava ==0.5.3.0,
any.cereal ==0.5.8.3,
any.charset ==0.3.9,
any.character-ps ==0.1,
any.clock ==0.8.3,
any.cmdargs ==0.10.22,
any.code-page ==0.2.1,
any.colour ==2.3.6,
any.comonad ==5.0.8,
any.concise ==0.1.0.1,
any.concurrent-output ==1.10.18,
any.concurrent-output ==1.10.21,
any.conduit ==1.3.5,
any.conduit-extra ==1.3.6,
any.config-ini ==0.2.5.0,
any.connection ==0.3.1,
any.constraints ==0.13.4,
any.constraints-extras ==0.4.0.0,
any.containers ==0.6.7,
any.config-ini ==0.2.7.0,
any.constraints ==0.14.2,
any.constraints-extras ==0.4.0.1,
any.containers ==0.6.8 || ==0.7,
any.contravariant ==1.5.5,
any.contravariant-extras ==0.3.5.3,
any.cookie ==0.4.6,
any.criterion ==1.6.3.0,
any.criterion-measurement ==0.2.1.0,
@ -97,34 +92,31 @@ constraints: any.Cabal ==3.10.1.0,
any.cryptohash-md5 ==0.11.101.0,
any.cryptohash-sha1 ==0.11.101.0,
any.crypton ==0.33,
any.crypton-connection ==0.4.1,
any.crypton-x509 ==1.7.6,
any.crypton-x509-store ==1.6.9,
any.crypton-x509-system ==1.6.7,
any.crypton-x509-validation ==1.6.12,
any.cryptonite ==0.30,
any.cryptostore ==0.3.0.0,
any.data-bword ==0.1.0.2,
any.data-checked ==0.3,
any.data-clist ==0.2,
any.data-default ==0.7.1.1,
any.data-default-class ==0.1.2.0,
any.data-default-instances-containers ==0.0.1,
any.data-default-instances-dlist ==0.0.1,
any.data-default-instances-old-locale ==0.0.1,
any.data-dword ==0.3.2.1,
any.data-endian ==0.1.1,
any.data-fix ==0.3.2,
any.data-fix ==0.3.3,
any.data-has ==0.4.0.0,
any.data-serializer ==0.3.5,
any.data-textual ==0.3.0.3,
any.dec ==0.0.5,
any.deepseq ==1.4.8.1,
any.deferred-folds ==0.9.18.3,
any.dec ==0.0.6,
any.deepseq ==1.5.0.0,
any.deferred-folds ==0.9.18.6,
any.dense-linear-algebra ==0.1.0.0,
any.dependent-map ==0.4.0.0,
any.dependent-sum ==0.7.2.0,
any.dependent-sum-template ==0.2.0.0,
any.directory ==1.3.8.4,
any.directory ==1.3.8.3 || ==1.3.8.5,
any.distributive ==0.6.2.1,
any.dlist ==1.0,
any.doctest ==0.21.1,
any.doctest ==0.22.2,
any.double-conversion ==2.0.4.2,
any.easy-file ==0.2.5,
any.either ==5.0.2,
@ -134,47 +126,46 @@ constraints: any.Cabal ==3.10.1.0,
any.errors ==2.3.0,
any.exceptions ==0.10.7,
any.extensible-exceptions ==0.1.1.4,
any.extra ==1.7.13,
any.extra ==1.7.16,
any.fail ==4.9.0.0,
any.fast-logger ==3.2.1,
any.file-embed ==0.0.15.0,
any.filepath ==1.4.300.1,
any.filepath ==1.4.300.2 || ==1.5.2.0,
any.flush-queue ==1.0.0,
any.focus ==1.0.3.1,
any.focus ==1.0.3.2,
any.fold-debounce ==0.2.0.11,
any.foldl ==1.4.14,
any.foldl ==1.4.16,
any.formatting ==7.2.0,
any.free ==5.2,
any.generic-lens ==2.2.2.0,
any.generic-lens-core ==2.2.1.0,
any.generic-monoid ==0.1.0.1,
any.generically ==0.1.1,
any.generics-sop ==0.5.1.3,
any.ghc ==9.6.5,
any.generics-sop ==0.5.1.4,
any.ghc ==9.10.1,
any.ghc-bignum ==1.3,
any.ghc-boot ==9.6.5,
any.ghc-boot-th ==9.6.5,
any.ghc-debug-convention ==0.4.0.0,
any.ghc-debug-stub ==0.4.0.0,
any.ghc-heap ==9.6.5,
any.ghc-boot ==9.10.1,
any.ghc-boot-th ==9.10.1,
any.ghc-debug-convention ==0.6.0.0,
any.ghc-debug-stub ==0.6.0.0,
any.ghc-heap ==9.10.1,
any.ghc-heap-view ==0.6.4,
any.ghc-internal ==9.1001.0,
any.ghc-paths ==0.1.0.12,
any.ghc-prim ==0.10.0,
any.ghci ==9.6.5,
any.ghc-platform ==0.1.0.0,
any.ghc-prim ==0.11.0,
any.ghci ==9.10.1,
any.happy ==1.20.1.1,
any.hashable ==1.4.2.0,
any.hashable ==1.4.7.0,
any.hashtables ==1.3.1,
any.haskell-lexer ==1.1.1,
any.haskell-src-exts ==1.23.1,
any.haskell-src-meta ==0.8.12,
any.hasql ==1.5.0.5,
any.hasql-pool ==0.5.2.2,
any.hasql-transaction ==1.0.1.1,
any.hedgehog ==1.2,
any.haskell-src-meta ==0.8.14,
any.hedgehog ==1.4,
any.hedgehog-generic ==0.1,
any.hostname ==1.0,
any.hourglass ==0.2.12,
any.hpc ==0.6.2.0,
any.hpc ==0.7.0.1,
any.hs-opentelemetry-otlp ==0.0.1.0,
any.hsc2hs ==0.68.9,
any.hspec ==2.11.1,
@ -185,73 +176,74 @@ constraints: any.Cabal ==3.10.1.0,
any.hspec-expectations-lifted ==0.10.0,
any.hspec-hedgehog ==0.0.1.2,
any.hspec-smallcheck ==0.5.3,
any.http-api-data ==0.5,
any.http-client ==0.7.13.1,
any.http-client-tls ==0.3.6.1,
any.http-conduit ==2.3.8,
any.http-api-data ==0.6,
any.http-client ==0.7.17,
any.http-client-tls ==0.3.6.3,
any.http-conduit ==2.3.8.3,
any.http-date ==0.0.11,
any.http-media ==0.8.0.0,
any.http-media ==0.8.1.1,
any.http-types ==0.12.3,
any.http2 ==4.1.2,
any.http2 ==4.2.2,
any.hvect ==0.4.0.1,
any.immortal ==0.2.2.1,
any.indexed-profunctors ==0.1.1,
any.indexed-traversable ==0.1.2.1,
any.indexed-traversable-instances ==0.1.1.2,
any.insert-ordered-containers ==0.2.5.2,
any.inspection-testing ==0.5.0.1,
any.indexed-traversable ==0.1.4,
any.indexed-traversable-instances ==0.1.2,
any.insert-ordered-containers ==0.2.5.3,
any.inspection-testing ==0.5.0.3,
any.integer-conversion ==0.1.1,
any.integer-gmp ==1.1,
any.integer-logarithms ==1.0.3.1,
any.invariant ==0.6.2,
any.invariant ==0.6.3,
any.iproute ==1.7.12,
any.iso8601-time ==0.1.5,
any.isomorphism-class ==0.1.0.9,
any.jose ==0.10,
any.isomorphism-class ==0.1.0.12,
any.jose ==0.11,
any.jose-jwt ==0.9.5,
any.js-chart ==2.9.4.1,
any.jwt ==0.11.0,
any.kan-extensions ==5.2.5,
any.kan-extensions ==5.2.6,
any.keys ==3.12.3,
any.kriti-lang ==0.3.3,
any.launchdarkly-server-sdk ==4.0.0,
any.lens ==5.2.3,
any.lens-aeson ==1.2.2,
any.lens-family ==2.1.2,
any.lens-family-core ==2.1.2,
any.launchdarkly-server-sdk ==4.1.0,
any.lens ==5.3.2,
any.lens-aeson ==1.2.3,
any.lens-family ==2.1.3,
any.lens-family-core ==2.1.3,
any.libdeflate-hs ==0.1.0.0,
any.libyaml ==0.1.2,
any.lifted-async ==0.10.2.4,
any.lifted-async ==0.10.2.5,
any.lifted-base ==0.2.3.12,
any.list-t ==1.0.5.6,
any.list-t ==1.0.5.7,
any.logict ==0.8.1.0,
any.lrucache ==1.2.0.1,
any.lucid2 ==0.0.20221012,
any.lucid2 ==0.0.20240424,
any.managed ==1.0.10,
any.markdown-unlit ==0.6.0,
any.math-functions ==0.3.4.2,
any.megaparsec ==9.3.1,
any.math-functions ==0.3.4.4,
any.megaparsec ==9.6.1,
any.memory ==0.18.0,
any.microlens ==0.4.13.1,
any.microlens-mtl ==0.2.0.3,
any.microlens-th ==0.4.3.14,
any.microstache ==1.0.2.3,
any.microlens-th ==0.4.3.15,
any.microstache ==1.0.3,
any.mime-types ==0.1.1.0,
any.mmorph ==1.2.0,
any.modern-uri ==0.3.6.0,
any.modern-uri ==0.3.6.1,
any.monad-control ==1.0.3.1,
any.monad-logger ==0.3.39,
any.monad-loops ==0.4.3,
any.monad-time ==0.4.0.0,
any.monad-validate ==1.3.0.0,
any.mono-traversable ==1.0.15.3,
any.morpheus-graphql ==0.24.3,
any.morpheus-graphql-app ==0.24.3,
any.morpheus-graphql-client ==0.24.3,
any.morpheus-graphql-code-gen ==0.24.3,
any.morpheus-graphql-code-gen-utils ==0.24.3,
any.morpheus-graphql-core ==0.24.3,
any.morpheus-graphql-server ==0.24.3,
any.morpheus-graphql-subscriptions ==0.24.3,
any.morpheus-graphql ==0.28.1,
any.morpheus-graphql-app ==0.28.1,
any.morpheus-graphql-client ==0.28.1,
any.morpheus-graphql-code-gen ==0.28.1,
any.morpheus-graphql-code-gen-utils ==0.28.1,
any.morpheus-graphql-core ==0.28.1,
any.morpheus-graphql-server ==0.28.1,
any.morpheus-graphql-subscriptions ==0.28.1,
any.mtl ==2.3.1,
any.mtl-compat ==0.2.2,
any.mustache ==2.4.2,
@ -261,182 +253,180 @@ constraints: any.Cabal ==3.10.1.0,
any.network-bsd ==2.8.1.0,
any.network-byte-order ==0.1.6,
any.network-info ==0.2.1,
any.network-ip ==0.3.0.3,
any.network-uri ==2.6.4.2,
any.nonempty-containers ==0.3.4.4,
any.nonempty-vector ==0.2.2.0,
any.nonempty-containers ==0.3.4.5,
any.nonempty-vector ==0.2.3,
any.odbc ==0.2.7,
any.old-locale ==1.0.0.7,
any.old-time ==1.1.0.3,
any.openapi3 ==3.2.3,
any.optics-core ==0.4.1,
any.openapi3 ==3.2.4,
any.optics-core ==0.4.1.1,
any.optics-extra ==0.4.2.1,
any.optics-th ==0.4.1,
any.optparse-applicative ==0.18.1.0,
any.optparse-generic ==1.5.1,
any.optparse-generic ==1.5.2,
any.os-string ==2.0.2,
any.parallel ==3.2.2.0,
any.parsec ==3.1.16.1,
any.parsec ==3.1.17.0,
any.parser-combinators ==1.3.0,
any.parsers ==0.12.11,
any.pcre-light ==0.4.1.0,
any.pem ==0.2.4,
any.pointed ==5.0.4,
any.postgres-options ==0.2.0.0,
any.postgresql-binary ==0.12.5,
any.postgresql-libpq ==0.9.5.0,
any.postgresql-simple ==0.6.5,
any.postgresql-binary ==0.14,
any.postgresql-libpq ==0.10.1.0,
any.postgresql-simple ==0.6.5.1,
any.pretty ==1.1.3.6,
any.pretty-show ==1.10,
any.pretty-simple ==4.1.2.0,
any.prettyprinter ==1.7.1,
any.prettyprinter-ansi-terminal ==1.1.3,
any.prettyprinter-compat-ansi-wl-pprint ==1.0.2,
any.primitive ==0.7.4.0,
any.primitive-extras ==0.10.1.6,
any.primitive-unlifted ==0.1.3.1,
any.primitive ==0.9.0.0,
any.primitive-extras ==0.10.2,
any.primitive-unlifted ==2.1.0.0,
any.process ==1.6.19.0,
any.profunctors ==5.6.2,
any.proto-lens ==0.7.1.3,
any.proto-lens-runtime ==0.7.0.4,
any.psqueues ==0.2.7.3,
any.quickcheck-instances ==0.3.29.1,
any.proto-lens ==0.7.1.5,
any.proto-lens-runtime ==0.7.0.6,
any.psqueues ==0.2.8.0,
any.quickcheck-instances ==0.3.31,
any.quickcheck-io ==0.2.0,
any.random ==1.2.1.1,
any.random ==1.2.1.2,
any.raw-strings-qq ==1.1,
any.recv ==0.1.0,
any.refined ==0.8.1,
any.refined ==0.8.2,
any.reflection ==2.1.7,
any.regex-base ==0.94.0.2,
any.regex-posix ==0.96.0.1,
any.regex-tdfa ==1.3.2.1,
any.relude ==1.2.0.0,
any.req ==3.13.0,
any.regex-tdfa ==1.3.2.2,
any.relude ==1.2.1.0,
any.req ==3.13.3,
any.reroute ==0.7.0.0,
any.resourcet ==1.2.6,
any.retry ==0.9.3.1,
any.rts ==1.0.2,
any.safe ==0.3.19,
any.safe-exceptions ==0.1.7.3,
any.sandwich ==0.1.5.1,
any.safe-exceptions ==0.1.7.4,
any.sandwich ==0.2.2.0,
any.scanner ==0.3.1,
any.scientific ==0.3.7.0,
any.semialign ==1.3,
any.semigroupoids ==5.3.7,
any.scientific ==0.3.8.0,
any.semaphore-compat ==1.0.0,
any.semialign ==1.3.1,
any.semigroupoids ==6.0.1,
any.semigroups ==0.20,
any.semver ==0.4.0.1,
any.servant ==0.20,
any.servant ==0.20.1,
any.servant-client ==0.20,
any.servant-client-core ==0.20,
any.servant-openapi3 ==2.0.1.6,
any.servant-server ==0.20,
any.shakespeare ==2.1.0,
any.shakespeare ==2.1.0.1,
any.simple-sendfile ==0.2.31,
any.singleton-bool ==0.1.6,
any.singleton-bool ==0.1.8,
any.smallcheck ==1.2.1.1,
any.socks ==0.6.1,
any.some ==1.0.5,
any.some ==1.0.6,
any.sop-core ==0.5.0.2,
any.split ==0.2.3.5,
any.splitmix ==0.1.0.4,
any.splitmix ==0.1.0.5,
any.statistics ==0.16.2.0,
any.stm ==2.5.1.0,
any.stm ==2.5.3.1,
any.stm-chans ==3.0.0.9,
any.stm-containers ==1.2.0.2,
any.stm-containers ==1.2.1,
any.stm-delay ==0.1.1.1,
any.stm-hamt ==1.2.0.11,
any.stm-hamt ==1.2.1,
any.streaming-commons ==0.2.2.6,
any.strict ==0.5,
any.string-conversions ==0.4.0.1,
any.string-interpolate ==0.3.2.1,
any.string-interpolate ==0.3.3.0,
any.superbuffer ==0.3.1.2,
any.syb ==0.7.2.3,
any.system-cxx-std-lib ==1.0,
any.tagged ==0.8.7,
any.tagged ==0.8.8,
any.tasty ==1.4.3,
any.tasty-bench ==0.3.4,
any.template-haskell ==2.20.0.0,
any.template-haskell-compat-v0208 ==0.1.9.2,
any.tasty-bench ==0.3.5,
any.template-haskell ==2.22.0.0,
any.temporary ==1.3,
any.terminal-size ==0.3.4,
any.terminfo ==0.4.1.6,
any.test-framework ==0.8.2.0,
any.test-framework-hunit ==0.3.0.2,
any.testcontainers ==0.5.0.0,
any.text ==2.0.2,
any.text-builder ==0.6.7,
any.text-builder-dev ==0.3.3.2,
any.text ==2.1.1,
any.text-builder ==0.6.7.2,
any.text-builder-dev ==0.3.4.4,
any.text-conversions ==0.3.1.1,
any.text-latin1 ==0.3.1,
any.text-printer ==0.5.0.2,
any.text-short ==0.1.5,
any.text-iso8601 ==0.1.1,
any.text-short ==0.1.6,
any.text-zipper ==0.13,
any.tf-random ==0.5,
any.th-abstraction ==0.6.0.0,
any.th-compat ==0.1.4,
any.th-compat ==0.1.5,
any.th-expand-syns ==0.4.11.0,
any.th-lift ==0.8.4,
any.th-lift-instances ==0.1.20,
any.th-orphans ==0.13.14,
any.th-reify-many ==0.1.10,
any.these ==1.2,
any.these ==1.2.1,
any.these-skinny ==0.7.5,
any.time ==1.12.2,
any.time-compat ==1.9.6.1,
any.time-compat ==1.9.7,
any.time-locale-compat ==0.1.1.5,
any.time-manager ==0.0.0,
any.tls ==1.6.0,
any.transformers ==0.6.1.0,
any.tls ==1.9.0,
any.transformers ==0.6.1.1,
any.transformers-base ==0.4.6,
any.transformers-compat ==0.7.2,
any.type-equality ==1,
any.type-hint ==0.1,
any.typed-process ==0.2.11.0,
any.typed-process ==0.2.11.1,
any.unagi-chan ==0.4.1.4,
any.unix ==2.8.4.0,
any.unix-compat ==0.7,
any.unix-time ==0.4.9,
any.unliftio ==0.2.24.0,
any.unix ==2.8.5.1,
any.unix-compat ==0.7.2,
any.unix-time ==0.4.15,
any.unliftio ==0.2.25.0,
any.unliftio-core ==0.2.1.0,
any.unordered-containers ==0.2.19.1,
any.unordered-containers ==0.2.20,
any.uri-bytestring ==0.3.3.1,
any.uri-encode ==1.5.0.7,
any.url ==2.1.3,
any.utf8-string ==1.0.2,
any.uuid ==1.3.15,
any.uuid-types ==1.0.5,
any.validation ==1.1.2,
any.validity ==0.12.0.1,
any.uuid-types ==1.0.6,
any.validation ==1.1.3,
any.validity ==0.12.0.2,
any.validity-scientific ==0.2.0.3,
any.vault ==0.3.1.5,
any.vector ==0.12.3.1,
any.vector-algorithms ==0.9.0.1,
any.vector ==0.13.1.0,
any.vector-algorithms ==0.9.0.2,
any.vector-binary-instances ==0.2.5.2,
any.vector-instances ==3.4.2,
any.vector-stream ==0.1.0.1,
any.vector-th-unbox ==0.2.2,
any.void ==0.7.3,
any.vty ==5.38,
any.wai ==3.2.3,
any.wai-app-static ==3.1.7.4,
any.wai-extra ==3.1.13.0,
any.vty ==6.2,
any.vty-crossplatform ==0.4.0.0,
any.vty-unix ==0.2.0.0,
any.wai ==3.2.4,
any.wai-app-static ==3.1.9,
any.wai-extra ==3.1.15,
any.wai-logger ==2.4.0,
any.warp ==3.3.29,
any.websockets ==0.12.7.3,
any.wide-word ==0.1.5.0,
any.witch ==1.2.0.2,
any.witherable ==0.4.2,
any.warp ==3.3.30,
any.websockets ==0.13.0.0,
any.wide-word ==0.1.6.0,
any.witch ==1.2.1.1,
any.witherable ==0.5,
any.wl-pprint-annotated ==0.1.0.1,
any.word-wrap ==0.5,
any.word8 ==0.1.3,
any.wreq ==0.5.3.3,
any.wuss ==2.0.1.3,
any.wreq ==0.5.4.3,
any.wuss ==2.0.1.9,
any.x509 ==1.7.7,
any.x509-store ==1.6.9,
any.x509-system ==1.6.7,
any.x509-validation ==1.6.12,
any.xml ==1.3.14,
any.xml-conduit ==1.9.1.2,
any.xml-conduit ==1.9.1.3,
any.xml-lens ==0.3.1,
any.xml-types ==0.3.8,
any.yaml ==0.11.10.0,
any.zlib ==0.6.3.0,
index-state: hackage.haskell.org 2023-09-27T18:59:39Z
any.yaml ==0.11.11.2,
any.zlib ==0.7.1.0,
index-state: hackage.haskell.org 2024-07-03T14:44:16Z

View File

@ -561,7 +561,7 @@ if [ "$MODE" = "graphql-engine" ] || [ "$MODE" = "graphql-engine-pro" ]; then
echo_pretty ""
RUN_INVOCATION=(cabal new-run --project-file="$CABAL_PROJECT_FILE" --RTS --
"exe:$EDITION_NAME" +RTS -N -T -s -RTS serve
"exe:$EDITION_NAME" +RTS -N -T -S --nonmoving-gc --nonmoving-dense-allocator-count=16 -A64M -RTS serve
--enable-console --console-assets-dir "$PROJECT_ROOT/frontend/dist/apps/server-assets-console-$EDITION_ABBREV"
"${GRAPHQL_ENGINE_EXTRA_ARGS[@]}"
)

View File

@ -0,0 +1 @@
{"type":"replace_metadata", "args": {"version":2,"tables":[],"functions":[],"configuration":{"connection_info":{"database_url":{"from_env":"HASURA_GRAPHQL_DATABASE_URL"},"pool_settings":{"retries":1,"idle_timeout":180,"max_connections":50}}}}}

View File

@ -62,7 +62,9 @@ library
hs-source-dirs: src
ghc-options: -Wall -fwarn-tabs
if impl(ghc >= 8.6.0)
-- NOTE: many uses of head and tail here
ghc-options: -Wno-warnings-deprecations
-Wno-x-partial
if flag(dev)
ghc-options: -Werror
if flag(dev)

View File

@ -30,7 +30,6 @@ import Control.Exception (throwIO)
import Control.Monad
import Control.Monad.State
import Data.ByteString.Char8 (ByteString)
import Data.List (foldl')
import Data.Maybe (isJust)
import Data.Pool
#if __GLASGOW_HASKELL__ < 808

View File

@ -161,6 +161,9 @@ common common-all
-fmax-simplifier-iterations=2
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
@ -285,7 +288,6 @@ common lib-depends
, deepseq
, dependent-map >=0.4 && <0.5
, dependent-sum
, dependent-sum-template
, either
, extra
, hasura-error-message
@ -368,12 +370,12 @@ common lib-depends
, byteorder
-- for parsing RSA keys
, cryptonite
, crypton
-- for jwt verification
, jose
, pem
, x509
, crypton-x509
, asn1-encoding
, asn1-types
@ -475,12 +477,12 @@ common lib-depends
-- bigquery support
, memory
, x509-store
, connection
, crypton-x509-store
, crypton-connection
, tls
, x509-validation
, crypton-x509-validation
, data-default-class
, x509-system
, crypton-x509-system
, tagged
-- dependency of vendored 'ip':
, wide-word

View File

@ -43,6 +43,9 @@ library
-foptimal-applicative-do
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
@ -60,6 +63,7 @@ library
build-depends:
aeson
, attoparsec
, attoparsec-aeson
, base
, bytestring
, hashable

View File

@ -49,7 +49,6 @@ import Data.Functor (($>))
import Data.HashMap.Strict.InsOrd (InsOrdHashMap)
import Data.HashMap.Strict.InsOrd qualified as InsOrdHashMap
import Data.Hashable (Hashable (..))
import Data.List (foldl')
import Data.Scientific (Scientific)
import Data.String (IsString)
import Data.Text (Text)

View File

@ -9,6 +9,9 @@ common common-all
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missed-specialisations
-Wno-missing-import-lists
@ -290,6 +293,7 @@ library feature-matrix
build-depends:
, aeson
, attoparsec
, attoparsec-aeson
, base
, bytestring
, containers

View File

@ -1,3 +1,4 @@
{-# OPTIONS_GHC -Wno-x-partial #-}
module Hasura.FeatureMatrix (render, parseLogs, extractFeatures, renderFeatureMatrix) where
import Control.Applicative
@ -5,6 +6,7 @@ import Control.Monad (unless, void)
import Control.Monad.Except
import Control.Monad.State
import Data.Aeson
import Data.Aeson.Parser
import Data.Aeson.Types
import Data.Attoparsec.ByteString as Atto
import Data.ByteString (ByteString)

View File

@ -22,9 +22,16 @@ library
-Wno-monomorphism-restriction
-Wno-missing-kind-signatures
-Wno-missing-safe-haskell-mode
-Wno-missing-role-annotations
-Wno-missing-poly-kind-signatures
-Wno-term-variable-capture
-- We want these warnings, but the code doesn't satisfy them yet:
-Wno-missing-deriving-strategies
-Wno-unused-packages
-- TODO should we review the warnings from these?
-Wno-missing-role-annotations
-Wno-missing-poly-kind-signatures
build-depends:
, base

View File

@ -2,6 +2,7 @@
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE ViewPatterns #-}
{-# OPTIONS_GHC -Wno-term-variable-capture #-}
module Control.Arrow.Trans
( ArrowTrans (..),

View File

@ -29,6 +29,9 @@ library
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -42,6 +42,9 @@ common common-all
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -1,4 +1,5 @@
{-# LANGUAGE DeriveAnyClass #-}
{-# OPTIONS_GHC -Wno-x-partial #-}
{-# LANGUAGE TemplateHaskell #-}
module Test.Data

View File

@ -9,7 +9,6 @@ module System.Metrics.Prometheus.Internal.Map2
)
where
import Data.List (foldl')
import qualified Data.Map.Strict as M
import Prelude hiding (lookup)

View File

@ -10,7 +10,6 @@ module System.Metrics.Prometheus.Internal.Sample
)
where
import Data.List (foldl')
import qualified Data.Map.Strict as M
import Data.Maybe (isJust)
import Prelude hiding (lookup)

View File

@ -58,7 +58,7 @@ where
import Data.Bifunctor (second)
import qualified Data.HashMap.Strict as HashMap
import Data.List (foldl', mapAccumL)
import Data.List (mapAccumL)
import qualified Data.Map.Merge.Strict as Merge
import qualified Data.Map.Strict as M
import qualified Data.Set as S

View File

@ -87,7 +87,6 @@ import Data.Foldable (for_, traverse_)
import Data.Functor (void)
import qualified Data.HashMap.Strict as HashMap
import Data.IORef (IORef, atomicModifyIORef', newIORef, readIORef)
import Data.List (foldl')
import qualified Data.Map.Strict as M
import Data.Maybe (maybeToList)
import Data.Text (Text)

View File

@ -1,6 +1,7 @@
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -Wno-x-partial #-}
module State
( tests,
@ -9,7 +10,6 @@ where
import Control.Applicative
import Control.Arrow ((&&&))
import Data.Foldable (foldl')
import qualified Data.HashMap.Strict as HashMap
import qualified Data.Map.Strict as M
import Data.Maybe (fromJust)

View File

@ -20,6 +20,9 @@ common common-all
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
@ -69,6 +72,7 @@ library
build-depends:
, aeson >=1.5
, attoparsec >=0.14
, attoparsec-aeson
, autodocodec
, base >=4.7
, bytestring >=0.10

View File

@ -307,7 +307,7 @@ dispatchStringPrinter t =
hasWhitespaceEnd = T.all isWhitespace $ T.takeWhileEnd (/= '\n') t
-- Condition 4: if none of the remaining lines (i.e. not the first line)
-- contains nonzero indentation, we can't print it as a block string
hasZeroIndentation = any lineZeroIndentation $ tail $ T.lines t
hasZeroIndentation = any lineZeroIndentation $ drop 1 $ T.lines t
where
lineZeroIndentation line = case T.uncons line of
Nothing -> False -- empty lines don't count

View File

@ -14,6 +14,9 @@ library
-fmax-simplifier-iterations=2
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -10,7 +10,6 @@ import Control.Monad.Fail
import Control.Monad.Fix
import Data.Aeson qualified as J
import Data.ByteString (ByteString)
import Data.Fixed (Fixed (..))
import Data.OpenApi.Declare as D
import Data.Text qualified as T
import Data.Text.Encoding (decodeUtf8With, encodeUtf8)
@ -81,8 +80,6 @@ deriving instance TH.Lift TDFA.Pattern
deriving instance TH.Lift TDFA.PatternSet
deriving instance TH.Lift (Fixed a)
deriving instance TH.Lift TDFA.PatternSetCharacterClass
deriving instance TH.Lift TDFA.PatternSetCollatingElement

View File

@ -30,6 +30,9 @@ common common-all
-foptimal-applicative-do
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -19,6 +19,9 @@ library
-fmax-simplifier-iterations=2
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
@ -61,7 +64,7 @@ library
, byteorder
, bytestring
, case-insensitive
, connection
, crypton-connection
, containers
, data-default
, data-default-class
@ -101,10 +104,10 @@ library
, websockets
, wide-word
, witherable
, x509
, x509-store
, x509-system
, x509-validation
, crypton-x509
, crypton-x509-store
, crypton-x509-system
, crypton-x509-validation
, vector
, extra

View File

@ -16,7 +16,6 @@ module Autodocodec.Extended
integralWithBoundsCodec,
integralWithLowerBoundCodec,
integralWithUpperBoundCodec,
integerCodec,
optionalFieldOrIncludedNull,
optionalFieldOrIncludedNull',
optionalFieldOrIncludedNullWith,
@ -121,7 +120,7 @@ graphQLValueCodec varCodec =
$ matchChoicesCodec
[ (isVVariable, dimapCodec G.VVariable fromVVariable varCodec), -- The VVariable case must be first in case its codec overlaps with other cases
(isVNull, dimapCodec (const G.VNull) (const ()) nullCodec),
(isVInt, dimapCodec (G.VInt . toInteger) fromVInt integerCodec), -- It's important to try VInt first because the Scientific codec will match integers
(isVInt, dimapCodec (G.VInt . toInteger) fromVInt ourIntegerCodec), -- It's important to try VInt first because the Scientific codec will match integers
(isVFloat, dimapCodec G.VFloat fromVFloat codec),
(isVString, dimapCodec G.VString fromVString codec),
(isVBoolean, dimapCodec G.VBoolean fromVBoolean codec),
@ -198,8 +197,11 @@ integralWithUpperBoundCodec maxInt =
-- | Codec for integer with a generous bounds check that matches the behavior of
-- aeson integer deserialization.
integerCodec :: JSONCodec Integer
integerCodec = bimapCodec dec enc $ codec @Scientific
--
-- TODO: consider using instead the new exported:
-- https://hackage.haskell.org/package/autodocodec-0.2.3.0/docs/src/Autodocodec.Codec.html#integerCodec
ourIntegerCodec :: JSONCodec Integer
ourIntegerCodec = bimapCodec dec enc $ codec @Scientific
where
dec scientific =
if exp10 > 1024

View File

@ -51,7 +51,7 @@ class FromJSONWithContext ctx a | a -> ctx where
-- @
-- object $ ["foo" .= 0] <> catMaybes [ "bar" .=? Nothing, "baz" .=? 2 ]
-- @
(.=?) :: (ToJSON v, KeyValue kv) => Key -> Maybe v -> Maybe kv
(.=?) :: (ToJSON v, KeyValue e kv) => Key -> Maybe v -> Maybe kv
(.=?) k = fmap (k .=)
{-# INLINE (.=?) #-}

View File

@ -5,25 +5,26 @@ module Network.URI.Extended
)
where
import Control.Monad
import Data.Aeson
import Data.Aeson.Types
import Data.Hashable
import Data.Text qualified as T
import Hasura.Prelude
import Network.URI
instance FromJSON URI where
parseJSON (String uri) = do
let mUrl = parseURI $ T.unpack uri
onNothing mUrl (fail "not a valid URI")
parseJSON _ = fail "not a valid URI"
-- -- NOTE: in aeson 2.2.0.0 instances are defined. They seem largely compatible,
-- -- but because the instances here are undocumented we can't know whether any
-- -- differences (e.g. the error string here) are significant, intended, or
-- -- merely incidental.
--
-- instance FromJSON URI where
-- parseJSON (String uri) = do
-- let mUrl = parseURI $ T.unpack uri
-- onNothing mUrl (fail "not a valid URI")
-- parseJSON _ = fail "not a valid URI"
instance ToJSON URI where
toJSON = String . tshow
-- instance ToJSON URI where
-- toJSON = String . tshow
instance ToJSONKey URI where
toJSONKey = toJSONKeyText tshow
-- instance ToJSONKey URI where
-- toJSONKey = toJSONKeyText tshow
instance Hashable URI where
hashWithSalt i = hashWithSalt i . tshow

View File

@ -14,6 +14,9 @@ library
-fmax-simplifier-iterations=2
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -32,6 +32,9 @@ library
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -12,6 +12,9 @@ library
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -24,6 +24,9 @@ common common-all
-fmax-simplifier-iterations=2
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations
@ -113,20 +116,21 @@ test-suite pg-client-tests
, time
, transformers
benchmark pg-client-bench
import: common-all
type: exitcode-stdio-1.0
hs-source-dirs: bench
main-is: Main.hs
build-depends:
, aeson
, base
, bytestring
, file-embed
, hasql
, hasql-pool
, hasql-transaction
, pg-client
, tasty-bench
, text
, transformers
-- TODO fix these up for 9.10 someday, maybe
-- benchmark pg-client-bench
-- import: common-all
-- type: exitcode-stdio-1.0
-- hs-source-dirs: bench
-- main-is: Main.hs
-- build-depends:
-- , aeson
-- , base
-- , bytestring
-- , file-embed
-- , hasql
-- , hasql-pool
-- , hasql-transaction
-- , pg-client
-- , tasty-bench
-- , text
-- , transformers

View File

@ -29,6 +29,9 @@ common common-all
ghc-options:
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -32,6 +32,9 @@ common common-all
-foptimal-applicative-do
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -1,3 +1,4 @@
{-# OPTIONS_GHC -Wno-x-partial #-}
module Hasura.GraphQL.Parser.DirectivesSpec (spec) where
import Control.Monad.Identity (Identity (..))

View File

@ -27,6 +27,7 @@ import Control.Concurrent.MVar
import Control.Lens
import Control.Monad.Managed
import Data.Aeson qualified as J
import Data.Aeson.Parser qualified as J
import Data.Attoparsec.ByteString as Atto
import Data.ByteString qualified as BS
import Data.Has

View File

@ -106,6 +106,9 @@ library
-Werror
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -31,6 +31,9 @@ common common-all
-Werror
-- Taken from https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
-Weverything
-Wno-missing-role-annotations
-Wno-term-variable-capture
-Wno-missing-poly-kind-signatures
-Wno-missing-exported-signatures
-Wno-missing-import-lists
-Wno-missed-specialisations

View File

@ -61,7 +61,7 @@ import Hasura.NativeQuery.Validation
import Hasura.Prelude
import Hasura.RQL.DDL.Relationship (defaultBuildArrayRelationshipInfo, defaultBuildObjectRelationshipInfo)
import Hasura.RQL.IR.BoolExp (ComparisonNullability (..), OpExpG (..), PartialSQLExp (..), RootOrCurrent (..), RootOrCurrentColumn (..))
import Hasura.RQL.Types.Backend (FunctionReturnType (..), functionGraphQLName)
import Hasura.RQL.Types.Backend (FunctionReturnType, functionGraphQLName)
import Hasura.RQL.Types.BackendType (BackendSourceKind (..), BackendType (..))
import Hasura.RQL.Types.Column qualified as RQL.T.C
import Hasura.RQL.Types.Common (JsonAggSelect (JASMultipleRows, JASSingleObject), OID (..), SourceName, SystemDefined)

View File

@ -1,3 +1,4 @@
{-# OPTIONS_GHC -Wno-x-partial #-} -- for tail below; might be worth refactoring
-- | Postgres DDL ComputedField
--
-- How to build the 'ComputedFieldInfo' for a field.

View File

@ -7,6 +7,7 @@ where
import Control.Lens ((^?))
import Data.HashMap.Strict.InsOrd qualified as InsOrdHashMap
import Data.List.NonEmpty qualified as NE
import Data.Functor qualified as Functor
import Hasura.Backends.Postgres.SQL.DML qualified as S
import Hasura.Backends.Postgres.SQL.Types
( IsIdentifier (toIdentifier),
@ -232,7 +233,7 @@ processOrderByItems userInfo sourcePrefix' selectSourceQual fieldAlias' similarA
in S.OrderByItem (S.SEIdentifier $ toIdentifier expAlias) obTyM obNullsM
orderByExp = S.OrderByExp $ toOrderByExp <$> orderByExps
distinctOnExps <- traverse (applyDistinctOnAtNode sourcePrefix' userInfo) distOnCols
let (maybeDistOn, distOnExtrs) = NE.unzip $ distinctOnExps
let (maybeDistOn, distOnExtrs) = Functor.unzip $ distinctOnExps
pure (orderByExp, maybeDistOn, fromMaybe [] distOnExtrs)
let sortOnlyAtNode =
(Sorting $ ASorting (nodeOrderBy, nodeDistinctOn) Nothing, nodeDistinctOnExtractors)

View File

@ -1,5 +1,3 @@
{-# LANGUAGE TemplateHaskell #-}
module Hasura.RQL.Types.BackendTag
( BackendTag (..),
HasTag (..),
@ -8,11 +6,12 @@ module Hasura.RQL.Types.BackendTag
)
where
import Data.GADT.Compare.TH
import Data.Text qualified as T
import Data.Text.Extended qualified as T (toTxt)
import Data.Type.Equality ((:~:) (..))
import Hasura.Prelude
import Hasura.RQL.Types.BackendType
import "some" Data.GADT.Compare
-- | A singleton-like GADT that associates a tag to each backend.
data BackendTag (b :: BackendType) where
@ -25,8 +24,39 @@ data BackendTag (b :: BackendType) where
-- Derive GEq and GCompare instances for BackendTag.
-- These are used to write a Select instance for BackendMap.
$(deriveGEq ''BackendTag)
$(deriveGCompare ''BackendTag)
--
-- ---- NOTE: these two instances are copied from -ddump-splices of
-- ---- $(deriveGEq ''BackendTag)
-- ---- $(deriveGCompare ''BackendTag)
-- ---- ...so that we could remove the dependent-sum-template dependency
-- ---- holding up a ghc upgrade
--
instance GEq BackendTag where
geq PostgresVanillaTag PostgresVanillaTag = return Refl
geq PostgresCitusTag PostgresCitusTag = return Refl
geq PostgresCockroachTag PostgresCockroachTag = return Refl
geq MSSQLTag MSSQLTag = return Refl
geq BigQueryTag BigQueryTag = return Refl
geq DataConnectorTag DataConnectorTag = return Refl
geq _ _ = Nothing
instance GCompare BackendTag where
gcompare PostgresVanillaTag PostgresVanillaTag = GEQ
gcompare PostgresVanillaTag _ = GLT
gcompare _ PostgresVanillaTag = GGT
gcompare PostgresCitusTag PostgresCitusTag = GEQ
gcompare PostgresCitusTag _ = GLT
gcompare _ PostgresCitusTag = GGT
gcompare PostgresCockroachTag PostgresCockroachTag = GEQ
gcompare PostgresCockroachTag _ = GLT
gcompare _ PostgresCockroachTag = GGT
gcompare MSSQLTag MSSQLTag = GEQ
gcompare MSSQLTag _ = GLT
gcompare _ MSSQLTag = GGT
gcompare BigQueryTag BigQueryTag = GEQ
gcompare BigQueryTag _ = GLT
gcompare _ BigQueryTag = GGT
gcompare DataConnectorTag DataConnectorTag = GEQ
-- | This class describes how to get a tag for a given type.
-- We use it in AnyBackend: `case backendTag @b of`...

View File

@ -1,5 +1,6 @@
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE QuasiQuotes #-}
{-# OPTIONS_GHC -Wno-x-partial #-} -- for head/tail below
module Hasura.RQL.Types.BackendType
( PostgresKind (..),

View File

@ -229,7 +229,7 @@ instance HasCodec FieldName where
type Fields a = [(FieldName, a)]
class ToAesonPairs a where
toAesonPairs :: (KeyValue v) => a -> [v]
toAesonPairs :: (KeyValue e v) => a -> [v]
data SourceName
= SNDefault

View File

@ -33,7 +33,7 @@ import Control.Exception.Lifted (ErrorCall (..), catch)
import Control.Monad.Morph (hoist)
import Control.Monad.Stateless
import Control.Monad.Trans.Control (MonadBaseControl)
import Data.Aeson hiding (json)
import Data.Aeson
import Data.Aeson qualified as J
import Data.Aeson.Encoding qualified as J
import Data.Aeson.Key qualified as K

View File

@ -5,7 +5,7 @@ module Hasura.Server.Rest
where
import Control.Monad.Trans.Control (MonadBaseControl)
import Data.Aeson hiding (json)
import Data.Aeson
import Data.Aeson qualified as J
import Data.Align qualified as Align
import Data.Environment qualified as Env

View File

@ -1,4 +1,5 @@
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE DuplicateRecordFields #-}
-- | Telemetry types
--

View File

@ -38,7 +38,7 @@ module Hasura.Server.Types
where
import Control.Lens qualified as Lens
import Data.Aeson hiding (json)
import Data.Aeson
import Data.Aeson.Casing qualified as J
import Data.Aeson.Lens
import Data.Aeson.TH qualified as J

View File

@ -1126,7 +1126,7 @@ instance (Backend b) => FromJSON (ForeignKeyMetadata b) where
instance (Backend b) => ToJSON (ForeignKeyMetadata b) where
toJSON (ForeignKeyMetadata (ForeignKey constraint foreignTable columnMapping)) =
let (columns, foreignColumns) = NE.unzip $ NEHashMap.toList columnMapping
let (columns, foreignColumns) = unzip $ NEHashMap.toList columnMapping
in object
[ "constraint" .= constraint,
"foreign_table" .= foreignTable,