From 57bab040edbad11689740487eb68de865862361b Mon Sep 17 00:00:00 2001 From: Profpatsch Date: Sun, 16 Jul 2023 22:10:48 +0200 Subject: chore(users/Profpatsch): move utils to my-prelude I want to use these in multiple projects. Change-Id: I5dfdad8614bc5835e59df06f724de78acae78d42 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8971 Reviewed-by: Profpatsch Tested-by: BuildkiteCI --- users/Profpatsch/my-prelude/my-prelude.cabal | 82 ++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 11 deletions(-) (limited to 'users/Profpatsch/my-prelude/my-prelude.cabal') diff --git a/users/Profpatsch/my-prelude/my-prelude.cabal b/users/Profpatsch/my-prelude/my-prelude.cabal index fad13300a29a..3a4a06d165b1 100644 --- a/users/Profpatsch/my-prelude/my-prelude.cabal +++ b/users/Profpatsch/my-prelude/my-prelude.cabal @@ -4,13 +4,66 @@ version: 0.0.1.0 author: Profpatsch maintainer: mail@profpatsch.de +common common-options + ghc-options: + -Wall + -Wno-type-defaults + -Wunused-packages + -Wredundant-constraints + -fwarn-missing-deriving-strategies + + -- See https://downloads.haskell.org/ghc/latest/docs/users_guide/exts.html + -- for a description of all these extensions + default-extensions: + -- Infer Applicative instead of Monad where possible + ApplicativeDo + + -- Allow literal strings to be Text + OverloadedStrings + + -- Syntactic sugar improvements + LambdaCase + MultiWayIf + + -- Makes the (deprecated) usage of * instead of Data.Kind.Type an error + NoStarIsType + + -- Convenient and crucial to deal with ambiguous field names, commonly + -- known as RecordDotSyntax + OverloadedRecordDot + + -- does not export record fields as functions, use OverloadedRecordDot to access instead + NoFieldSelectors + + -- Record punning + RecordWildCards + + -- Improved Deriving + DerivingStrategies + DerivingVia + + -- Type-level strings + DataKinds + + -- to enable the `type` keyword in import lists (ormolu uses this automatically) + ExplicitNamespaces + + default-language: GHC2021 + + library + import: common-options + hs-source-dirs: src exposed-modules: MyPrelude Pretty Aeson RunCommand Test + Postgres.Decoder + Postgres.MonadPostgres + ValidationParseT + Tool -- Modules included in this executable, other than Main. -- other-modules: @@ -19,26 +72,33 @@ library -- other-extensions: build-depends: base >=4.15 && <5 + , pa-prelude , pa-label , pa-error-tree + , pa-json , aeson , aeson-better-errors - , PyF - , validation-selective - , these - , text - , semigroupoids - , profunctors + , ansi-terminal + , bytestring , containers , error , exceptions - , bytestring - , mtl + , filepath + , hscolour , hspec , hspec-expectations-pretty-diff - , hscolour + , monad-logger + , mtl , nicify-lib + , postgresql-simple + , profunctors + , PyF + , semigroupoids + , selective + , text + , these , typed-process - , ansi-terminal + , unix + , unliftio + , validation-selective , vector - default-language: GHC2021 -- cgit 1.4.1