hw-polysemy-0.2.5.0: hw-polysemy.cabal
cabal-version: 3.4
name: hw-polysemy
version: 0.2.5.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.18 && < 5 }
common aeson { build-depends: aeson < 2.3 }
common async { build-depends: async < 2.3 }
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.5 }
common network { build-depends: network < 3.3 }
common lens { build-depends: lens < 5.4 }
common polysemy { build-depends: polysemy < 2 }
common polysemy-log { build-depends: polysemy-log < 0.11 }
common polysemy-plugin { build-depends: polysemy-plugin < 0.5 }
common polysemy-time { build-depends: polysemy-time < 0.7 }
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-hedgehog { build-depends: tasty-hedgehog < 1.5 }
common temporary { build-depends: temporary < 1.4 }
common text { build-depends: text < 3 }
common time { build-depends: time < 2 }
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
common hw-polysemy { build-depends: hw-polysemy }
common hw-polysemy-core { build-depends: hw-polysemy:core }
common hw-polysemy-hedgehog { build-depends: hw-polysemy:hedgehog }
flag werror
description: Enable -Werror
manual: True
default: False
common project-config
import: polysemy,
polysemy-plugin,
default-extensions: BlockArguments
DataKinds
DuplicateRecordFields
FlexibleContexts
FlexibleInstances
LambdaCase
NoImplicitPrelude
OverloadedStrings
TypeApplications
ghc-options: -Wall
-fplugin=Polysemy.Plugin
if flag(werror)
ghc-options: -Werror
library core
import: base, project-config,
aeson,
async,
bytestring,
contravariant,
directory,
filepath,
generic-lens,
ghc-prim,
hedgehog,
lens,
network,
polysemy,
polysemy-log,
polysemy-time,
process,
resourcet,
stm,
text,
temporary,
time,
unliftio,
Win32,
yaml,
visibility: public
if os(windows)
exposed-modules: HaskellWorks.IO.Win32.NamedPipe
exposed-modules: HaskellWorks.Error
HaskellWorks.Error.Types
HaskellWorks.IO.Network
HaskellWorks.IO.Network.NamedPipe
HaskellWorks.IO.Network.Port
HaskellWorks.IO.Network.Socket
HaskellWorks.IO.Process
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.File
HaskellWorks.Polysemy.FilePath
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
HaskellWorks.Prelude
hs-source-dirs: core
default-language: GHC2021
library hedgehog
import: base, project-config,
aeson,
async,
bytestring,
contravariant,
Diff,
exceptions,
filepath,
generic-lens,
ghc-prim,
hedgehog,
hw-polysemy-core,
lens,
polysemy-log,
polysemy-time,
polysemy,
process,
text,
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.Workspace
HaskellWorks.Polysemy.Hedgehog.Workspace.Types
hs-source-dirs: hedgehog
default-language: GHC2021
library
import: base, project-config,
hw-polysemy-core,
hw-polysemy-hedgehog,
reexported-modules: HaskellWorks.IO.Network,
HaskellWorks.IO.Network.NamedPipe,
HaskellWorks.IO.Network.Port,
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: GHC2021
test-suite hw-polysemy-test
import: base, project-config,
filepath,
hw-polysemy,
polysemy,
polysemy-log,
tasty-hedgehog,
tasty,
text,
default-language: GHC2021
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
ghc-options: -threaded -rtsopts -with-rtsopts=-N -with-rtsopts=-T