packages feed

retry-io-classes-0.1.0.0: retry-io-classes.cabal

cabal-version:       3.4
name:                retry-io-classes

description:

        This is a port of original [retry](https://hackage.haskell.org/package/retry)
        package compatible with [io-classes](https://hackage.haskell.org/package/io-classes).

        This package exposes combinators that can wrap arbitrary
        monadic actions. They run the action and potentially retry
        running it with some configurable delay for a configurable
        number of times.

        The purpose is to make it easier to work with IO and
        especially network IO actions that often experience temporary
        failure and warrant retrying of the original action. For
        example, a database query may time out for a while, in which
        case we should hang back for a bit and retry the query instead
        of simply raising an exception.

version:             0.1.0.0
synopsis:            Retry combinators for monadic actions that may fail (io-classes port)
license:             BSD-3-Clause
license-file:        LICENSE
author:              Ozgun Ataman
maintainer:          srk@48.io
copyright:           Ozgun Ataman, Soostone Inc
category:            Control
build-type:          Simple
homepage:            http://github.com/sorki/retry-io-classes
extra-source-files:
  LICENSE
  README.md

extra-doc-files:
  CHANGELOG.md

flag lib-Werror
  default: False
  manual: True

library
  exposed-modules:     Control.Retry
  build-depends:
      base                 >= 4.8 && < 5
    , io-classes           >= 1.10
    , ghc-prim
    , random               >= 1
    , transformers
    , mtl
  hs-source-dirs:      src
  default-language:    Haskell2010

  if flag(lib-Werror)
    ghc-options: -Werror

  ghc-options: -Wall -Wunused-packages

test-suite test
    type:           exitcode-stdio-1.0
    main-is:        Main.hs
    hs-source-dirs: test,src
    ghc-options:    -threaded
    other-modules:  Control.Retry
                    Tests.Control.Retry
    build-depends:
        base              ==4.*
      , io-classes
      , io-classes:mtl
      , transformers
      , random
      , time
      , tasty
      , tasty-hunit
      , tasty-hedgehog
      , hedgehog          >= 1.0
      , stm
      , ghc-prim
      , mtl
    default-language: Haskell2010

    if flag(lib-Werror)
      ghc-options: -Werror

    ghc-options: -Wall -Wunused-packages

source-repository head
  type:     git
  location: https://github.com/sorki/retry-io-classes.git