packages feed

ngx-export-tools-extra-0.7.0.0: ngx-export-tools-extra.cabal

name:                       ngx-export-tools-extra
version:                    0.7.0.0
synopsis:                   More extra tools for Nginx haskell module
description:                More extra tools for
        <https://github.com/lyokha/nginx-haskell-module Nginx haskell module>.
homepage:                   https://github.com/lyokha/ngx-export-tools-extra
license:                    BSD3
license-file:               LICENSE
extra-source-files:         Changelog.md
author:                     Alexey Radkov <alexey.radkov@gmail.com>
maintainer:                 Alexey Radkov <alexey.radkov@gmail.com>
stability:                  experimental
copyright:                  2019-2021 Alexey Radkov
category:                   Network
build-type:                 Simple
cabal-version:              1.20

source-repository head
  type:                     git
  location:                 https://github.com/lyokha/ngx-export-tools-extra

flag Aggregate
  description:              Build Aggregate module.

flag EDE
  description:              Build EDE module.

flag EDEUsePrettyprinter
  description:              Build EDE module migrated
                            from [ansi-wl-pprint](https://hackage.haskell.org/package/ansi-wl-pprint)
                            to [prettyprinter](https://hackage.haskell.org/package/prettyprinter).

library
  default-language:         Haskell2010
  build-depends:            base >= 4.8 && < 5
                          , template-haskell >= 2.11.0.0
                          , bytestring >= 0.10.0.0
                          , base64 >= 0.3.0.0
                          , ngx-export
                          , ngx-export-tools >= 0.4.8.0
                          , aeson >= 1.0.0.0
                          , http-types >= 0.7.0
                          , http-client >= 0.5.3
                          , network >= 2.4.0.0
                          , binary
                          , case-insensitive
                          , containers
                          , unordered-containers
                          , array
                          , text
                          , safe

  if flag(Aggregate)
    build-depends:          snap-core
                          , snap-server
                          , enclosed-exceptions
                          , time

  if flag(EDE)
    if flag(EDEUsePrettyprinter)
      build-depends:        ede >= 0.3.0.0
                          , prettyprinter
                          , trifecta >= 2.1
      cpp-options:         -DEDE_USE_PRETTYPRINTER
    else
      build-depends:        ede
                          , ansi-wl-pprint >= 0.6.3
                          , trifecta <= 2

  exposed-modules:          NgxExport.Tools.Prometheus
                          , NgxExport.Tools.Subrequest
                          , NgxExport.Tools.ServiceHookAdaptor

  if flag(Aggregate)
    exposed-modules:        NgxExport.Tools.Aggregate

  if flag(EDE)
    exposed-modules:        NgxExport.Tools.EDE

  ghc-options:             -Wall