name:                servant-docs
version:             0.11.2
x-revision:          2
synopsis:            generate API docs for your servant webservice
description:
  Library for generating API docs from a servant API definition.
  .
  Runnable example <https://github.com/haskell-servant/servant/blob/master/servant-docs/example/greet.hs here>.
  .
  <https://github.com/haskell-servant/servant/blob/master/servant-docs/CHANGELOG.md CHANGELOG>
license:             BSD3
license-file:        LICENSE
author:              Servant Contributors
maintainer:          haskell-servant-maintainers@googlegroups.com
copyright:           2014-2016 Zalora South East Asia Pte Ltd, Servant Contributors
category:            Servant, Web
build-type:          Simple
cabal-version:       >=1.10
tested-with:
  GHC==7.8.4
  GHC==7.10.3
  GHC==8.0.2
  GHC==8.2.2
homepage:            http://haskell-servant.readthedocs.org/
Bug-reports:         http://github.com/haskell-servant/servant/issues
extra-source-files:
  include/*.h
  CHANGELOG.md
  README.md
source-repository head
  type: git
  location: http://github.com/haskell-servant/servant.git

library
  exposed-modules:
      Servant.Docs
    , Servant.Docs.Internal
    , Servant.Docs.Internal.Pretty

  -- Bundled with GHC: Lower bound to not force re-installs
  -- text and mtl are bundled starting with GHC-8.4
  --
  -- note: mtl lower bound is so low because of GHC-7.8
  build-depends:
      base       >= 4.7      && < 4.11
    , bytestring >= 0.10.4.0 && < 0.11
    , text       >= 1.2.3.0  && < 1.3

  if !impl(ghc >= 8.0)
    build-depends:
      semigroups          >=0.18.3 && <0.19

  -- Servant dependencies
  build-depends:
      servant            == 0.13.*

  -- Other dependencies: Lower bound around what is in the latest Stackage LTS.
  -- Here can be exceptions if we really need features from the newer versions.
  build-depends:
      aeson                >= 1.2.3.0  && < 1.4
    , aeson-pretty         >= 0.8.5    && < 0.9
    , base-compat          >= 0.9.3    && < 0.11
    , case-insensitive     >= 1.2.0.10 && < 1.3
    , control-monad-omega  >= 0.3.1    && < 0.4
    , hashable             >= 1.2.6.1  && < 1.3
    , http-media           >= 0.7.1.1  && < 0.8
    , http-types           >= 0.12     && < 0.13
    , lens                 >= 4.15.4   && < 4.17
    , string-conversions   >= 0.4.0.1  && < 0.5
    , unordered-containers >= 0.2.8.0  && < 0.3

  hs-source-dirs: src
  default-language: Haskell2010
  ghc-options: -Wall
  if impl(ghc >= 8.0)
    ghc-options: -Wno-redundant-constraints
  include-dirs: include

executable greet-docs
  main-is: greet.hs
  hs-source-dirs: example
  ghc-options: -Wall
  build-depends:
      base
    , aeson
    , lens
    , servant
    , servant-docs
    , string-conversions
    , text
  default-language: Haskell2010

test-suite spec
  default-language: Haskell2010
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules: Servant.DocsSpec
  hs-source-dirs: test
  ghc-options: -Wall

  -- Dependencies inherited from the library. No need to specify bounds.
  build-depends:
      base
    , aeson
    , lens
    , servant
    , servant-docs
    , string-conversions

  -- Additonal dependencies
  build-depends:
      hspec                >= 2.4.4    && < 2.6

  build-tool-depends:
    hspec-discover:hspec-discover >=2.4.4 && <2.6