packages feed

tower-hs-0.2.0.0: tower-hs.cabal

cabal-version: 1.18

-- This file has been generated from package.yaml by hpack version 0.38.1.
--
-- see: https://github.com/sol/hpack

name:           tower-hs
version:        0.2.0.0
synopsis:       Composable service middleware for Haskell, inspired by Rust's Tower
description:    tower-hs provides a composable middleware abstraction for any service type.
                Build middleware stacks with retry, timeout, circuit breaker, and more — all with
                pure error handling via Either (no exceptions).
category:       Control
homepage:       https://github.com/jarlah/tower-hs#readme
bug-reports:    https://github.com/jarlah/tower-hs/issues
author:         Jarl André Hübenthal
maintainer:     jarlah@protonmail.com
copyright:      2026 Jarl André Hübenthal
license:        MIT
license-file:   LICENSE
build-type:     Simple
tested-with:
    GHC == 9.6.6, GHC == 9.8.4, GHC == 9.10.1
extra-doc-files:
    README.md
    CHANGELOG.md

source-repository head
  type: git
  location: https://github.com/jarlah/tower-hs

library
  exposed-modules:
      Tower
      Tower.Service
      Tower.Error
      Tower.Error.Testing
      Tower.Middleware.Retry
      Tower.Middleware.Timeout
      Tower.Middleware.CircuitBreaker
      Tower.Middleware.Filter
      Tower.Middleware.Hedge
      Tower.Middleware.Logging
      Tower.Middleware.Transform
      Tower.Middleware.Tracing
      Tower.Middleware.Validate
      Tower.Middleware.TestDouble
  other-modules:
      Paths_tower_hs
  hs-source-dirs:
      src
  build-depends:
      async ==2.2.*
    , base >=4.14 && <5
    , hs-opentelemetry-api ==0.3.*
    , profunctors ==5.6.*
    , stm ==2.5.*
    , text >=2.0 && <2.2
    , time >=1.11 && <1.15
  default-language: Haskell2010

test-suite tower-hs-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      Tower.Middleware.CircuitBreakerSpec
      Tower.Middleware.FilterSpec
      Tower.Middleware.HedgeSpec
      Tower.Middleware.LoggingSpec
      Tower.Middleware.RedisDockerSpec
      Tower.Middleware.RetrySpec
      Tower.Middleware.TimeoutSpec
      Tower.Middleware.TracingSpec
      Tower.Middleware.TransformSpec
      Tower.Middleware.ValidateSpec
      Tower.ServiceSpec
      Paths_tower_hs
  hs-source-dirs:
      test
  ghc-options: -threaded -rtsopts -with-rtsopts=-N
  build-tool-depends:
      hspec-discover:hspec-discover
  build-depends:
      QuickCheck ==2.14.*
    , async ==2.2.*
    , base >=4.14 && <5
    , bytestring >=0.11 && <0.13
    , hedis ==0.15.*
    , hs-opentelemetry-api ==0.3.*
    , hspec ==2.11.*
    , hspec-discover ==2.11.*
    , process ==1.6.*
    , stm ==2.5.*
    , testcontainers ==0.5.*
    , text >=2.0 && <2.2
    , time >=1.11 && <1.15
    , tower-hs
  default-language: Haskell2010