packages feed

dep-t-advice-0.4.7.0: dep-t-advice.cabal

cabal-version:       3.0

name:                dep-t-advice
version:             0.4.7.0
synopsis:            Giving good advice to functions in a DepT environment.
description:         Companion to the dep-t package. Easily add behaviour to functions living in a DepT environment, 
                     whatever the number of arguments they might have.
                     
                     In other words: something like the "advices" of
                     aspect-oriented programming.
-- 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.4.6.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:     Control.Monad.Dep.Advice
                       Control.Monad.Dep.Advice.Basic
  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 tests-has-conversion
  import:              common-tasty
  type:                exitcode-stdio-1.0
  main-is:             tests-has-conversion.hs
  build-depends:       aeson,
                       containers

-- 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.18 
                       
 -- 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,