packages feed

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

name:                       ngx-export-tools-extra
version:                    1.2.13
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-doc-files:            Changelog.md
author:                     Alexey Radkov <alexey.radkov@gmail.com>
maintainer:                 Alexey Radkov <alexey.radkov@gmail.com>
stability:                  stable
copyright:                  2019-2026 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.git

flag EDE
  description:              Build EDE module.

flag PCRE
  description:              Build PCRE module.

flag SnapAggregateServer
  description:              Build Snap server for Aggregate module.

library
  default-language:         Haskell2010
  build-depends:            base >= 4.8 && < 5
                          , template-haskell >= 2.11.0.0
                          , bytestring >= 0.11.2.0
                          , base64 >= 1.0
                          , ngx-export
                          , ngx-export-tools >= 1.2.6
                          , http-types >= 0.7.0
                          , http-client >= 0.5.3
                          , http-client-tls >= 0.3.4
                          , http-client-brread-timeout >= 0.3.0.0
                          , network >= 2.4.0.0
                          , async >= 2.0.1.0
                          , aeson >= 1.0.0.0
                          , safe-exceptions
                          , resolv >= 0.2.0.1
                          , time >= 1.9.1
                          , binary
                          , case-insensitive
                          , containers
                          , unordered-containers
                          , hashable
                          , text

  if flag(SnapAggregateServer)
    build-depends:          snap-core
                          , snap-server
                          , enclosed-exceptions
    cpp-options:           -DSNAP_AGGREGATE_SERVER

  if flag(EDE)
    build-depends:          ede >= 0.3.0.0
                          , prettyprinter >= 1.7.0
                          , trifecta >= 2.1

  if flag(PCRE)
    build-depends:          pcre-light >= 0.4.1.2
                          , pcre-heavy

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

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

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

  ghc-options:             -Wall