summaryrefslogtreecommitdiff
path: root/servant-client.cabal
blob: bdbecc0cdebcd48c6ba0b3fd8c83a691718102e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
cabal-version:       >=1.10
name:                servant-client
version:             0.17

synopsis:            Automatic derivation of querying functions for servant
category:            Servant, Web
description:
  This library lets you derive automatically Haskell functions that
  let you query each endpoint of a <http://hackage.haskell.org/package/servant servant> webservice.
  .
  See <http://docs.servant.dev/en/stable/tutorial/Client.html the client section of the tutorial>.
  .
  <https://github.com/haskell-servant/servant/blob/master/servant-client/CHANGELOG.md CHANGELOG>

homepage:            http://docs.servant.dev/
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, 2016-2019 Servant Contributors
build-type:          Simple
tested-with:
  GHC ==8.0.2
   || ==8.2.2
   || ==8.4.4
   || ==8.6.5
   || ==8.8.2

extra-source-files:
  CHANGELOG.md
  README.md

source-repository head
  type: git
  location: http://github.com/haskell-servant/servant.git

library
  exposed-modules:
    Servant.Client
    Servant.Client.Streaming
    Servant.Client.Internal.HttpClient
    Servant.Client.Internal.HttpClient.Streaming

  -- Bundled with GHC: Lower bound to not force re-installs
  -- text and mtl are bundled starting with GHC-8.4
  build-depends:
      base                  >= 4.9      && < 4.14
    , bytestring            >= 0.10.8.1 && < 0.11
    , containers            >= 0.5.7.1  && < 0.7
    , deepseq               >= 1.4.2.0  && < 1.5
    , mtl                   >= 2.2.2    && < 2.3
    , stm                   >= 2.4.5.1  && < 2.6
    , text                  >= 1.2.3.0  && < 1.3
    , time                  >= 1.6.0.1  && < 1.10
    , transformers          >= 0.5.2.0  && < 0.6

  if !impl(ghc >= 8.2)
    build-depends:
      bifunctors >= 5.5.3 && < 5.6

  -- Servant dependencies.
  -- Strict dependency on `servant-client-core` as we re-export things.
  build-depends:
      servant               == 0.17.*
    , servant-client-core   >= 0.17 && <0.17.1

  -- 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.10.5   && < 0.12
    , http-client           >= 0.5.13.1 && < 0.7
    , http-media            >= 0.7.1.3  && < 0.9
    , http-types            >= 0.12.2   && < 0.13
    , exceptions            >= 0.10.0   && < 0.11
    , kan-extensions        >= 5.2      && < 5.3
    , monad-control         >= 1.0.2.3  && < 1.1
    , semigroupoids         >= 5.3.1    && < 5.4
    , transformers-base     >= 0.4.5.2  && < 0.5
    , transformers-compat   >= 0.6.2    && < 0.7

  hs-source-dirs: src
  default-language: Haskell2010
  ghc-options: -Wall -Wno-redundant-constraints

test-suite spec
  type: exitcode-stdio-1.0
  ghc-options: -Wall -rtsopts -threaded "-with-rtsopts=-T -N2"
  default-language: Haskell2010
  hs-source-dirs: test
  main-is: Spec.hs
  other-modules:
      Servant.BasicAuthSpec
      Servant.ClientTestUtils
      Servant.ConnectionErrorSpec
      Servant.FailSpec
      Servant.GenAuthSpec
      Servant.HoistClientSpec
      Servant.StreamSpec
      Servant.SuccessSpec
      Servant.WrappedApiSpec

  -- Dependencies inherited from the library. No need to specify bounds.
  build-depends:
      base
    , aeson
    , base-compat
    , bytestring
    , http-api-data
    , http-client
    , http-types
    , mtl
    , kan-extensions
    , servant-client
    , servant-client-core
    , stm
    , text
    , transformers
    , transformers-compat
    , wai
    , warp

  -- Additonal dependencies
  build-depends:
      entropy           >= 0.4.1.3  && < 0.5
    , hspec             >= 2.6.0    && < 2.8
    , HUnit             >= 1.6.0.0  && < 1.7
    , network           >= 2.8.0.0  && < 3.2
    , QuickCheck        >= 2.12.6.1 && < 2.14
    , servant           == 0.17.*
    , servant-server    == 0.17.*
    , tdigest           >= 0.2     && < 0.3

  build-tool-depends:
    hspec-discover:hspec-discover >= 2.6.0 && < 2.8

test-suite readme
  type:           exitcode-stdio-1.0
  main-is:        README.lhs
  build-depends:  base, servant, http-client, text, servant-client, markdown-unlit
  build-tool-depends: markdown-unlit:markdown-unlit
  ghc-options:    -pgmL markdown-unlit
  default-language: Haskell2010