packages feed

glue-core-0.7.0.1: glue-core.cabal

cabal-version:      3.0
name:               glue-core
version:            0.7.0.1
synopsis:           Make better services and clients.
description:        Combinator library to enhance the general functionality of services and clients.
license:            BSD-3-Clause
license-file:       LICENSE
author:             Sean Parsons
maintainer:         github@futurenotfound.com
category:           Network
build-type:         Simple
tested-with:        GHC == 9.6.7, GHC == 9.8.4, GHC == 9.10.3, GHC == 9.12.3

source-repository head
  type:     git
  location: https://github.com/seanparsons/glue.git

common common-options
  default-language: Haskell2010
  ghc-options:
    -Wall
    -Wcompat
    -Widentities
    -Wincomplete-record-updates
    -Wincomplete-uni-patterns
    -Wmissing-home-modules
    -Wpartial-fields
    -Wredundant-constraints

library
  import:         common-options
  hs-source-dirs: src
  exposed-modules:
    Glue.Batcher
    Glue.Caching
    Glue.CircuitBreaker
    Glue.ConcurrencyLimit
    Glue.DogpileProtection
    Glue.Failover
    Glue.Hedging
    Glue.LoadBalancer
    Glue.Preload
    Glue.Retry
    Glue.Shutdown
    Glue.Switching
    Glue.Timeout
  build-depends:
    , base                  >= 4.14 && < 5
    , glue-common           ^>= 0.7.0
    , hashable              >= 1.3  && < 1.6
    , time                  >= 1.9  && < 1.15
    , unliftio              >= 0.2  && < 0.3
    , unordered-containers  >= 0.2  && < 0.3

test-suite glue-core-tests
  import:             common-options
  type:               exitcode-stdio-1.0
  hs-source-dirs:     test
  main-is:            Main.hs
  other-modules:
    Glue.BatcherSpec
    Glue.CachingSpec
    Glue.CircuitBreakerSpec
    Glue.ConcurrencyLimitSpec
    Glue.DogpileProtectionSpec
    Glue.FailoverSpec
    Glue.HedgingSpec
    Glue.LoadBalancerSpec
    Glue.PreloadSpec
    Glue.RetrySpec
    Glue.ShutdownSpec
    Glue.SwitchingSpec
    Glue.TimeoutSpec
    Spec
  build-tool-depends: hspec-discover:hspec-discover
  ghc-options:
    -threaded
    -rtsopts
    -with-rtsopts=-N
  build-depends:
    , async                 >= 2.2  && < 2.3
    , base                  >= 4.14 && < 5
    , glue-common           ^>= 0.7.0
    , glue-core
    , hashable              >= 1.3  && < 1.6
    , hspec                 >= 2.7  && < 2.12
    , QuickCheck            >= 2.14 && < 2.16
    , quickcheck-instances  >= 0.3  && < 0.4
    , time                  >= 1.9  && < 1.15
    , unliftio              >= 0.2  && < 0.3
    , unordered-containers  >= 0.2  && < 0.3