dep-t-advice-0.6.2.0: dep-t-advice.cabal
cabal-version: 3.0
name: dep-t-advice
version: 0.6.2.0
synopsis: Giving good advice to functions in records-of-functions.
description:
Companion to the dep-t package. Easily add behaviour to
functions living in a record-of-functions, whatever the
number of arguments they might have.
In other words: something like the "advices" of
aspect-oriented programming.
Various flavors of advice are provided: one for
environments parameterized by the DepT monad, and others
for environments parameterized by ReaderT, IO and generic
monads.
-- bug-reports:
license: BSD-3-Clause
license-file: LICENSE
author: Daniel Diaz
maintainer: diaz_carrete@yahoo.com
category: Control
extra-source-files: CHANGELOG.md, README.md
source-repository head
type: git
location: https://github.com/danidiaz/dep-t-advice.git
common common
build-depends: base >=4.10.0.0 && < 5,
sop-core ^>= 0.5.0.0,
transformers >= 0.5.0.0,
dep-t ^>= 0.6.1,
mtl >= 2.2,
unliftio-core >= 0.2.0.0,
default-language: Haskell2010
common common-tests
import: common
build-depends:
dep-t-advice,
rank2classes ^>= 1.4.1,
-- transformers ^>= 0.5.0.0,
-- mtl ^>= 2.2,
template-haskell,
text,
common common-tasty
import: common-tests
hs-source-dirs: test
build-depends:
tasty >= 1.3.1,
tasty-hunit >= 0.10.0.2,
library
import: common
exposed-modules: Dep.Advice
Dep.Advice.Basic
Dep.SimpleAdvice
Dep.SimpleAdvice.Basic
Dep.ReaderAdvice
Dep.ReaderAdvice.Basic
Dep.IOAdvice
Dep.IOAdvice.Basic
other-modules: Dep.SimpleAdvice.Internal
hs-source-dirs: lib
test-suite tests
import: common-tasty
type: exitcode-stdio-1.0
main-is: tests.hs
test-suite weird-advice-tests
import: common-tasty
type: exitcode-stdio-1.0
main-is: weird-advice-tests.hs
build-depends:
barbies ^>= 2.0.2.0
test-suite simple-advice-tests
import: common-tasty
type: exitcode-stdio-1.0
main-is: simple-advice-tests.hs
build-depends:
barbies ^>= 2.0.2.0
test-suite tests-has-conversion
import: common-tasty
type: exitcode-stdio-1.0
main-is: tests-has-conversion.hs
build-depends: aeson,
containers
test-suite synthetic-callstack-tests
import: common-tasty
type: exitcode-stdio-1.0
main-is: synthetic-callstack-tests.hs
build-depends: aeson,
containers,
microlens ^>= 0.4.12.0
-- VERY IMPORTANT for doctests to work: https://stackoverflow.com/a/58027909/1364288
-- http://hackage.haskell.org/package/cabal-doctest
test-suite doctests
import: common-tests
ghc-options: -threaded
type: exitcode-stdio-1.0
hs-source-dirs: test
main-is: doctests.hs
build-depends:
doctest ^>= 0.20
-- https://cabal.readthedocs.io/en/3.4/cabal-package.html#benchmarks
benchmark benchmark
import: common-tests,
type: exitcode-stdio-1.0
ghc-options: -O2
hs-source-dirs: benchmark
main-is: benchmarks.hs
build-depends:
criterion ^>= 1.5,