cabal-version: 3.0
name: my-prelude
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
-- allows defining pattern synonyms, but also the `import Foo (pattern FooPattern)` import syntax
PatternSynonyms
default-language: GHC2021
library
import: common-options
hs-source-dirs: src
exposed-modules:
MyPrelude
Aeson
Arg
AtLeast
Json
Json.Enc
Test
Postgres.Decoder
Postgres.MonadPostgres
ValidationParseT
Parse
Pretty
Seconds
Tool
-- Modules included in this executable, other than Main.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
build-depends:
base >=4.15 && <5
, pa-prelude
, pa-label
, pa-error-tree
, pa-json
, pa-pretty
, pa-field-parser
, aeson
, aeson-better-errors
, base64-bytestring
, bytestring
, containers
, foldl
, unordered-containers
, resource-pool
, resourcet
, scientific
, time
, error
, exceptions
, filepath
, hspec
, hspec-expectations-pretty-diff
, hs-opentelemetry-api
, monad-logger
, mtl
, postgresql-simple
, profunctors
, PyF
, semigroupoids
, selective
, template-haskell
, text
, these
, unix
, unliftio
, validation-selective
, vector
, ghc-boot
-- for Pretty
, aeson-pretty
, hscolour
, ansi-terminal
, nicify-lib