hw-polysemy-0.3.0.0: hw-polysemy.cabal
cabal-version: 3.4
name: hw-polysemy
version: 0.3.0.0
synopsis: Opinionated polysemy library
description: Opinionated polysemy library.
license: Apache-2.0
license-file: LICENSE
author: John Ky
maintainer: newhoggy@gmail.com
copyright: 2024 John Ky
category: Development
build-type: Simple
extra-doc-files: CHANGELOG.md
extra-source-files: README.md
source-repository head
type: git
location: https://github.com/haskell-works/hw-polysemy
common base { build-depends: base >= 4.13 && < 5 }
common aeson { build-depends: aeson < 2.3 }
common aeson-pretty { build-depends: aeson-pretty < 0.9 }
common async { build-depends: async < 2.3 }
common amazonka { build-depends: amazonka >= 2 && < 3 }
common amazonka-s3 { build-depends: amazonka-s3 >= 2 && < 3 }
common binary { build-depends: binary >= 0.8.9 && < 0.9 }
common bytestring { build-depends: bytestring < 0.13 }
common contravariant { build-depends: contravariant < 1.6 }
common Diff { build-depends: Diff < 0.6 }
common directory { build-depends: directory < 1.4 }
common exceptions { build-depends: exceptions < 0.11 }
common filepath { build-depends: filepath < 1.6 }
common generic-lens { build-depends: generic-lens < 2.3 }
common ghc-prim { build-depends: ghc-prim < 0.12 }
common hedgehog { build-depends: hedgehog < 1.6 }
common http-conduit { build-depends: http-conduit >= 2.3 && < 2.4 }
common hw-prelude { build-depends: hw-prelude >= 0.0.0.1 && < 0.1 }
common lens { build-depends: lens < 5.4 }
common mtl { build-depends: mtl < 2.4 }
common network { build-depends: network < 3.3 }
common polysemy { build-depends: polysemy < 2 }
common polysemy-log { build-depends: polysemy-log >= 0.11 && < 1 }
common polysemy-plugin { build-depends: polysemy-plugin < 0.5 }
common polysemy-time { build-depends: polysemy-time < 1 }
common prettyprinter { build-depends: prettyprinter < 1.8 }
common process { build-depends: process < 1.7 }
common resourcet { build-depends: resourcet < 1.4 }
common stm { build-depends: stm < 2.6 }
common tasty { build-depends: tasty < 1.6 }
common tasty-discover { build-depends: tasty-discover < 6 }
common tasty-hedgehog { build-depends: tasty-hedgehog < 1.5 }
common temporary { build-depends: temporary < 1.4 }
common testcontainers { build-depends: testcontainers < 0.6 }
common text { build-depends: text < 3 }
common time { build-depends: time < 2 }
common transformers { build-depends: transformers < 0.7 }
common ulid { build-depends: ulid < 0.4 }
common unliftio { build-depends: unliftio < 0.3 }
common yaml { build-depends: yaml < 0.12 }
common Win32
if os(windows)
build-depends: Win32 >= 2.5.4.1 && < 3
common hw-polysemy { build-depends: hw-polysemy }
common hw-polysemy-amazonka { build-depends: hw-polysemy:amazonka }
common hw-polysemy-core { build-depends: hw-polysemy:core }
common hw-polysemy-hedgehog { build-depends: hw-polysemy:hedgehog }
common hw-polysemy-testcontainers-localstack { build-depends: hw-polysemy:testcontainers-localstack }
flag werror
description: Enable -Werror
manual: True
default: False
common project-config
import: polysemy,
polysemy-plugin,
default-extensions: BlockArguments
DataKinds
DeriveGeneric
DuplicateRecordFields
FlexibleContexts
FlexibleInstances
LambdaCase
NoImplicitPrelude
OverloadedStrings
RankNTypes
ScopedTypeVariables
TypeApplications
TypeOperators
ghc-options: -Wall
-fplugin=Polysemy.Plugin
if flag(werror)
ghc-options: -Werror
library core
import: base, project-config,
aeson,
async,
bytestring,
contravariant,
exceptions,
directory,
filepath,
generic-lens,
ghc-prim,
hedgehog,
hw-prelude,
lens,
mtl,
network,
polysemy,
polysemy-log,
polysemy-time,
process,
resourcet,
stm,
text,
temporary,
time,
ulid,
unliftio,
Win32,
yaml,
visibility: public
exposed-modules: HaskellWorks.Polysemy
HaskellWorks.Polysemy.Cabal
HaskellWorks.Polysemy.Cabal.Types
HaskellWorks.Polysemy.Control.Concurrent
HaskellWorks.Polysemy.Control.Concurrent.QSem
HaskellWorks.Polysemy.Control.Concurrent.STM
HaskellWorks.Polysemy.Control.Concurrent.STM.TVar
HaskellWorks.Polysemy.Data.Aeson
HaskellWorks.Polysemy.Data.ByteString
HaskellWorks.Polysemy.Data.ByteString.Lazy
HaskellWorks.Polysemy.Data.ByteString.Strict
HaskellWorks.Polysemy.Data.Either
HaskellWorks.Polysemy.Data.Text
HaskellWorks.Polysemy.Data.Text.Lazy
HaskellWorks.Polysemy.Data.Text.Strict
HaskellWorks.Polysemy.Data.ULID
HaskellWorks.Polysemy.Error
HaskellWorks.Polysemy.Error.Types
HaskellWorks.Polysemy.Except
HaskellWorks.Polysemy.File
HaskellWorks.Polysemy.FilePath
HaskellWorks.Polysemy.Log
HaskellWorks.Polysemy.OS
HaskellWorks.Polysemy.Prelude
HaskellWorks.Polysemy.Stack
HaskellWorks.Polysemy.String
HaskellWorks.Polysemy.System.Directory
HaskellWorks.Polysemy.System.Environment
HaskellWorks.Polysemy.System.IO
HaskellWorks.Polysemy.System.IO.Temp
HaskellWorks.Polysemy.System.Process
hs-source-dirs: core
default-language: Haskell2010
library hedgehog
import: base, project-config,
aeson,
aeson-pretty,
async,
binary,
bytestring,
contravariant,
Diff,
exceptions,
filepath,
generic-lens,
ghc-prim,
hedgehog,
hw-prelude,
hw-polysemy-core,
lens,
mtl,
polysemy-log,
polysemy-time,
polysemy,
prettyprinter,
process,
resourcet,
text,
time,
transformers,
ulid,
yaml,
visibility: public
exposed-modules: HaskellWorks.Polysemy.Hedgehog
HaskellWorks.Polysemy.Hedgehog.Assert
HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog
HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog.Internal
HaskellWorks.Polysemy.Hedgehog.Effect.Log
HaskellWorks.Polysemy.Hedgehog.Eval
HaskellWorks.Polysemy.Hedgehog.Golden
HaskellWorks.Polysemy.Hedgehog.Jot
HaskellWorks.Polysemy.Hedgehog.Process
HaskellWorks.Polysemy.Hedgehog.Process.Internal
HaskellWorks.Polysemy.Hedgehog.Property
HaskellWorks.Polysemy.Hedgehog.Test
HaskellWorks.Polysemy.Hedgehog.Time
HaskellWorks.Polysemy.Hedgehog.Ulid
HaskellWorks.Polysemy.Hedgehog.Workspace
HaskellWorks.Polysemy.Hedgehog.Workspace.Types
hs-source-dirs: hedgehog
default-language: Haskell2010
library amazonka
import: base, project-config,
amazonka,
binary,
generic-lens,
hw-polysemy-core,
hw-prelude,
lens,
polysemy-log,
polysemy-time,
resourcet,
text,
stm,
visibility: public
exposed-modules: HaskellWorks.Polysemy.Amazonka
hs-source-dirs: amazonka
default-language: Haskell2010
library testcontainers-localstack
import: base, project-config,
aeson,
amazonka,
bytestring,
generic-lens,
http-conduit,
hw-polysemy-amazonka,
hw-polysemy-core,
hw-polysemy-hedgehog,
hw-prelude,
lens,
resourcet,
resourcet,
testcontainers,
text,
time,
yaml,
visibility: public
exposed-modules: HaskellWorks.Polysemy.Amazonka.LocalStack
HaskellWorks.TestContainers.LocalStack
HaskellWorks.TestContainers.LocalStack.Types
hs-source-dirs: testcontainers-localstack
default-language: Haskell2010
library
import: base, project-config,
hw-polysemy-core,
hw-polysemy-hedgehog,
reexported-modules: HaskellWorks.Polysemy,
HaskellWorks.Polysemy.Cabal,
HaskellWorks.Polysemy.Cabal.Types,
HaskellWorks.Polysemy.Control.Concurrent,
HaskellWorks.Polysemy.Control.Concurrent.QSem,
HaskellWorks.Polysemy.Control.Concurrent.STM,
HaskellWorks.Polysemy.Control.Concurrent.STM.TVar,
HaskellWorks.Polysemy.Data.ByteString,
HaskellWorks.Polysemy.Data.ByteString.Lazy,
HaskellWorks.Polysemy.Data.ByteString.Strict,
HaskellWorks.Polysemy.Data.Either,
HaskellWorks.Polysemy.Data.Text,
HaskellWorks.Polysemy.Data.Text.Lazy,
HaskellWorks.Polysemy.Data.Text.Strict,
HaskellWorks.Polysemy.Error,
HaskellWorks.Polysemy.Error.Types,
HaskellWorks.Polysemy.FilePath,
HaskellWorks.Polysemy.OS,
HaskellWorks.Polysemy.Hedgehog,
HaskellWorks.Polysemy.Hedgehog.Assert,
HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog,
HaskellWorks.Polysemy.Hedgehog.Effect.Hedgehog.Internal,
HaskellWorks.Polysemy.Hedgehog.Effect.Log,
HaskellWorks.Polysemy.Hedgehog.Eval,
HaskellWorks.Polysemy.Hedgehog.Golden,
HaskellWorks.Polysemy.Hedgehog.Jot,
HaskellWorks.Polysemy.Hedgehog.Process,
HaskellWorks.Polysemy.Hedgehog.Process.Internal,
HaskellWorks.Polysemy.Hedgehog.Property,
HaskellWorks.Polysemy.Hedgehog.Test,
HaskellWorks.Polysemy.Hedgehog.Workspace,
HaskellWorks.Polysemy.Prelude,
HaskellWorks.Polysemy.String,
HaskellWorks.Polysemy.System.Directory,
HaskellWorks.Polysemy.System.Environment,
HaskellWorks.Polysemy.System.IO,
HaskellWorks.Polysemy.System.Process,
default-language: Haskell2010
test-suite hw-polysemy-test
import: base, project-config,
amazonka,
amazonka-s3,
filepath,
generic-lens,
hw-polysemy-amazonka,
hw-polysemy-core,
hw-polysemy-testcontainers-localstack,
hw-polysemy,
hw-prelude,
lens,
polysemy-log,
polysemy,
tasty-discover,
tasty-hedgehog,
tasty,
testcontainers,
text,
default-language: Haskell2010
type: exitcode-stdio-1.0
build-tool-depends: tasty-discover:tasty-discover
hs-source-dirs: test
main-is: Main.hs
other-modules: HaskellWorks.Polysemy.HedgehogSpec
HaskellWorks.Polysemy.TestContainers.LocalStackSpec
Test.Polysemy.Env
ghc-options: -threaded -rtsopts -with-rtsopts=-N -with-rtsopts=-T