Blob Blame History Raw
name:                servant
version:             0.13.0.1
x-revision:          1
synopsis:            A family of combinators for defining webservices APIs
description:
  A family of combinators for defining webservices APIs and serving them
  .
  You can learn about the basics in the <http://haskell-servant.readthedocs.org/en/stable/tutorial/index.html tutorial>.
  .
  <https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md CHANGELOG>
homepage:            http://haskell-servant.readthedocs.org/
Bug-reports:         http://github.com/haskell-servant/servant/issues
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:          Custom
cabal-version:       >=1.10
tested-with:
  GHC==7.8.4,
  GHC==7.10.3,
  GHC==8.0.2,
  GHC==8.2.2,
  GHC==8.4.1
extra-source-files:
  include/*.h
  CHANGELOG.md
source-repository head
  type: git
  location: http://github.com/haskell-servant/servant.git

custom-setup
  setup-depends:
    base >= 4 && <5,
    Cabal,
    cabal-doctest >= 1.0.2 && <1.1

library
  exposed-modules:
    Servant.API
    Servant.API.Alternative
    Servant.API.BasicAuth
    Servant.API.Capture
    Servant.API.ContentTypes
    Servant.API.Description
    Servant.API.Empty
    Servant.API.Experimental.Auth
    Servant.API.Header
    Servant.API.HttpVersion
    Servant.API.Internal.Test.ComprehensiveAPI
    Servant.API.IsSecure
    Servant.API.Modifiers
    Servant.API.QueryParam
    Servant.API.Raw
    Servant.API.RemoteHost
    Servant.API.ReqBody
    Servant.API.ResponseHeaders
    Servant.API.Stream
    Servant.API.Sub
    Servant.API.TypeLevel
    Servant.API.Vault
    Servant.API.Verbs
    Servant.API.WithNamedContext
    Servant.Utils.Links
    Servant.Utils.Enter

  -- 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.12
    , bytestring            >= 0.10.4.0 && < 0.11
    , mtl                   >= 2.1      && < 2.3
    , text                  >= 1.2.3.0  && < 1.3

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

  -- 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:
      base-compat            >= 0.9.3    && < 0.11
    , aeson                  >= 1.2.3.0  && < 1.5
    , attoparsec             >= 0.13.2.0 && < 0.14
    , case-insensitive       >= 1.2.0.10 && < 1.3
    , http-api-data          >= 0.3.7.1  && < 0.4
    , http-media             >= 0.7.0    && < 0.8
    , http-types             >= 0.12     && < 0.13
    , natural-transformation >= 0.4      && < 0.5
    , mmorph                 >= 1.1.0    && < 1.2
    , tagged                 >= 0.8.5    && < 0.9
    , singleton-bool         >= 0.1.2.0  && < 0.2
    , string-conversions     >= 0.4.0.1  && < 0.5
    , network-uri            >= 2.6.1.0  && < 2.7
    , vault                  >= 0.3.0.7  && < 0.4

  hs-source-dirs: src
  default-language: Haskell2010
  other-extensions: CPP
                  , ConstraintKinds
                  , DataKinds
                  , DeriveDataTypeable
                  , FlexibleInstances
                  , FunctionalDependencies
                  , GADTs
                  , KindSignatures
                  , MultiParamTypeClasses
                  , OverlappingInstances
                  , OverloadedStrings
                  , PolyKinds
                  , QuasiQuotes
                  , RecordWildCards
                  , ScopedTypeVariables
                  , TemplateHaskell
                  , TypeFamilies
                  , TypeOperators
                  , TypeSynonymInstances
                  , UndecidableInstances
  ghc-options: -Wall
  if impl(ghc >= 8.0)
    ghc-options: -Wno-redundant-constraints
  include-dirs: include

test-suite spec
  type: exitcode-stdio-1.0
  ghc-options: -Wall
  default-language: Haskell2010
  hs-source-dirs: test
  main-is: Spec.hs
  other-modules:
      Servant.API.ContentTypesSpec
      Servant.API.ResponseHeadersSpec
      Servant.Utils.LinksSpec
      Servant.Utils.EnterSpec

  -- Dependencies inherited from the library. No need to specify bounds.
  build-depends:
      base
    , base-compat
    , aeson
    , attoparsec
    , bytestring
    , servant
    , string-conversions
    , text

  if !impl(ghc >= 8.0)
    build-depends:
      semigroups

  -- Additonal dependencies
  build-depends:
      aeson-compat         >= 0.3.3  && < 0.4
    , hspec                >= 2.4.4  && < 2.6
    , QuickCheck           >= 2.10.1 && < 2.12
    , quickcheck-instances >= 0.3.16 && < 0.4

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

test-suite doctests
  build-depends:
      base
    , servant
    , doctest >= 0.13.0 && <0.16

  -- We test Links failure with doctest, so we need extra dependencies
  build-depends:
      hspec                >= 2.4.4  && < 2.6

  type: exitcode-stdio-1.0
  main-is: test/doctests.hs
  buildable: True
  default-language: Haskell2010
  ghc-options: -Wall -threaded
  if impl(ghc >= 8.2)
    x-doctest-options: -fdiagnostics-color=never
  include-dirs: include
  x-doctest-source-dirs: test
  x-doctest-modules: Servant.Utils.LinksSpec