File 1.cabal of Package ghc-token-bucket

name:                token-bucket
version:             0.1.0.1
x-revision: 1
synopsis:            Rate limiter using lazy bucket algorithm
homepage:            https://github.com/hvr/token-bucket
bug-reports:         https://github.com/hvr/token-bucket/issues
license:             GPL-3
license-file:        LICENSE
author:              Herbert Valerio Riedel
maintainer:          hvr@gnu.org
category:            Concurrency
build-type:          Simple
cabal-version:       >=1.10
description:
  This implementation is heavily inspired by the one described in
  <http://ksdlck.com/post/17418037348/rate-limiting-at-webscale-lazy-leaky-buckets "Rate Limiting at Webscale: Lazy Leaky Buckets">

extra-source-files:    changelog.md

source-repository head
  type:     git
  location: https://github.com/hvr/token-bucket.git

flag use-cbits
  description: Use optimized getPOSIXTime implementation (faster by roughly one order of magnitude)
  manual: True
  default: True

library
  default-language:    Haskell2010
  build-depends:       base >=4.6 && <4.10
  hs-source-dirs:      src
  if flag(use-cbits)
    cpp-options:       -DUSE_CBITS
    c-sources:         cbits/get_posix_time.c
  else
    build-depends:     time >=1.4 && <1.7
  ghc-options: -Wall
  exposed-modules:     Control.Concurrent.TokenBucket

test-suite test-tb
  default-language:    Haskell2010
  type:                exitcode-stdio-1.0
  build-depends:       base >=4.6 && <4.10, time >=1.4 && <1.7, token-bucket
  main-is:             test-tb.hs
  ghc-options:         -Wall -threaded -rtsopts
openSUSE Build Service is sponsored by