summaryrefslogtreecommitdiff
path: root/servant-server.cabal
blob: a49ffd845db95db0a945621e8893bc5dde31e926 (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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
cabal-version:       2.2
name:                servant-server
version:             0.19.2
x-revision: 2

synopsis:            A family of combinators for defining webservices APIs and serving them
category:            Servant, Web
description:
  A family of combinators for defining webservices APIs and serving them
  .
  You can learn about the basics in the <http://docs.servant.dev/en/stable/tutorial/index.html tutorial>.
  .
  <https://github.com/haskell-servant/servant/blob/master/servant-server/example/greet.hs Here>
  is a runnable example, with comments, that defines a dummy API and implements
  a webserver that serves this API, using this package.
  .
  <https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md CHANGELOG>

homepage:            http://docs.servant.dev/
bug-reports:         http://github.com/haskell-servant/servant/issues
license:             BSD-3-Clause
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.6.5 || ==8.8.4 || ==8.10.2 || ==9.0.1

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

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

library
  exposed-modules:
    Servant
    Servant.Server
    Servant.Server.Experimental.Auth
    Servant.Server.Generic
    Servant.Server.Internal
    Servant.Server.Internal.BasicAuth
    Servant.Server.Internal.Context
    Servant.Server.Internal.Delayed
    Servant.Server.Internal.DelayedIO
    Servant.Server.Internal.ErrorFormatter
    Servant.Server.Internal.Handler
    Servant.Server.Internal.RouteResult
    Servant.Server.Internal.Router
    Servant.Server.Internal.RoutingApplication
    Servant.Server.Internal.ServerError
    Servant.Server.StaticFiles
    Servant.Server.UVerb

  -- deprecated
  exposed-modules:
    Servant.Utils.StaticFiles

  -- 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.18
    , bytestring          >= 0.10.8.1 && < 0.12
    , constraints         >= 0.2      && < 0.14
    , containers          >= 0.5.7.1  && < 0.7
    , mtl                 >= 2.2.2    && < 2.3
    , text                >= 1.2.3.0  && < 2.1
    , transformers        >= 0.5.2.0  && < 0.6
    , filepath            >= 1.4.1.1  && < 1.5

  -- Servant dependencies
  -- strict dependency as we re-export 'servant' things.
  build-depends:
      servant             >= 0.19     && < 0.20
    , http-api-data       >= 0.4.1    && < 0.5.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.14
    , base64-bytestring   >= 1.0.0.1  && < 1.3
    , exceptions          >= 0.10.0   && < 0.11
    , http-media          >= 0.7.1.3  && < 0.9
    , http-types          >= 0.12.2   && < 0.13
    , network-uri         >= 2.6.1.0  && < 2.8
    , monad-control       >= 1.0.2.3  && < 1.1
    , network             >= 2.8      && < 3.2
    , sop-core            >= 0.4.0.0  && < 0.6
    , string-conversions  >= 0.4.0.1  && < 0.5
    , resourcet           >= 1.2.2    && < 1.3
    , tagged              >= 0.8.6    && < 0.9
    , transformers-base   >= 0.4.5.2  && < 0.5
    , wai                 >= 3.2.2.1  && < 3.3
    , wai-app-static      >= 3.1.6.2  && < 3.2
    , word8               >= 0.1.3    && < 0.2

  hs-source-dirs: src
  default-language: Haskell2010

  ghc-options: -Wall -Wno-redundant-constraints

executable greet
  main-is: greet.hs
  hs-source-dirs: example
  ghc-options: -Wall
  default-language: Haskell2010
  build-depends:
      base
    , base-compat
    , servant
    , servant-server
    , wai
    , text

  build-depends:
      aeson               >= 1.4.1.0  && < 3
    , warp                >= 3.2.25   && < 3.4

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.ArbitraryMonadServerSpec
      Servant.Server.ErrorSpec
      Servant.Server.Internal.ContextSpec
      Servant.Server.Internal.RoutingApplicationSpec
      Servant.Server.RouterSpec
      Servant.Server.StaticFilesSpec
      Servant.Server.StreamingSpec
      Servant.Server.UsingContextSpec
      Servant.Server.UsingContextSpec.TestCombinators
      Servant.HoistSpec
      Servant.ServerSpec

  -- Dependencies inherited from the library. No need to specify bounds.
  build-depends:
      base
    , base-compat
    , base64-bytestring
    , bytestring
    , http-types
    , mtl
    , resourcet
    , safe
    , servant
    , servant-server
    , sop-core
    , string-conversions
    , text
    , transformers
    , transformers-compat
    , wai

  -- Additional dependencies
  build-depends:
      aeson                >= 1.4.1.0  && < 3
    , directory            >= 1.3.0.0  && < 1.4
    , hspec                >= 2.6.0    && < 2.10
    , hspec-wai            >= 0.10.1   && < 0.12
    , QuickCheck           >= 2.12.6.1 && < 2.15
    , should-not-typecheck >= 2.1.0    && < 2.2
    , temporary            >= 1.3      && < 1.4
    , wai-extra            >= 3.0.24.3 && < 3.2

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