packages feed

glue-core-0.7.0: glue-core.cabal

cabal-version:      3.0
name:               glue-core
version:            0.7.0
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.16 && < 5
    , glue-common           ^>= 0.7.0
    , hashable
    , time
    , unliftio              >= 0.2
    , unordered-containers

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
    -O2
  build-depends:
    , async
    , base                  >= 4.16 && < 5
    , glue-common
    , glue-core
    , hashable
    , hspec
    , QuickCheck
    , quickcheck-instances
    , time
    , unliftio              >= 0.2
    , unordered-containers