@@ -54,38 +54,50 @@ library
5454 Servant.Server.Internal.RoutingApplication
5555 Servant.Server.Internal.ServantErr
5656 Servant.Utils.StaticFiles
57+
58+ -- Bundled with GHC: Lower bound to not force re-installs
59+ -- text and mtl are bundled starting with GHC-8.4
60+ --
61+ -- note: mtl lower bound is so low because of GHC-7.8
62+ build-depends:
63+ base >= 4.7 && < 4.11
64+ , bytestring >= 0.10.4.0 && < 0.11
65+ , containers >= 0.5.5.1 && < 0.6
66+ , mtl >= 2.1 && < 2.3
67+ , text >= 1.2.3.0 && < 1.3
68+ , transformers >= 0.3.0.0 && < 0.6
69+ , filepath >= 1.3.0.2 && < 1.5
70+
71+ -- Servant dependencies
72+ build-depends:
73+ servant == 0.12.*
74+
75+ -- Other dependencies: Lower bound around what is in the latest Stackage LTS.
76+ -- Here can be exceptions if we really need features from the newer versions.
5777 build-depends:
58− base >= 4.7 && < 4.11
59− , base-compat >= 0.9 && < 0.10
60− , aeson >= 0.7 && < 1.3
61− , attoparsec >= 0.12 && < 0.14
62− , base64-bytestring >= 1.0 && < 1.1
63− , bytestring >= 0.10 && < 0.11
64− , containers >= 0.5 && < 0.6
65− , exceptions >= 0.8 && < 0.9
66− , http-api-data >= 0.3 && < 0.4
67− , http-media >= 0.4 && < 0.8
68− , http-types >= 0.8 && < 0.12
69− , network-uri >= 2.6 && < 2.7
70− , monad-control >= 1.0.0.4 && < 1.1
71− , mtl >= 2 && < 2.3
72− , network >= 2.6 && < 2.7
73− , safe >= 0.3 && < 0.4
74− , servant == 0.12.*
75− , split >= 0.2 && < 0.3
76− , string-conversions >= 0.3 && < 0.5
77− , system-filepath >= 0.4 && < 0.5
78− , filepath >= 1 && < 1.5
79− , resourcet >= 1.1.6 && <1.2
80− , tagged >= 0.7.3 && <0.9
81− , text >= 1.2 && < 1.3
82− , transformers >= 0.3 && < 0.6
83− , transformers-base >= 0.4.4 && < 0.5
84− , transformers-compat>= 0.4 && < 0.6
85− , wai >= 3.0 && < 3.3
86− , wai-app-static >= 3.1 && < 3.2
87− , warp >= 3.0 && < 3.3
88− , word8 >= 0.1 && < 0.2
78+ aeson >= 1.2.3.0 && < 1.3
79+ , base-compat >= 0.9.3 && < 0.10
80+ , attoparsec >= 0.13.2.0 && < 0.14
81+ , base64-bytestring >= 1.0.0.1 && < 1.1
82+ , exceptions >= 0.8.3 && < 0.9
83+ , http-api-data >= 0.3.7.1 && < 0.4
84+ , http-media >= 0.7.1.1 && < 0.8
85+ , http-types >= 0.9.1 && < 0.12
86+ , network-uri >= 2.6.1.0 && < 2.7
87+ , monad-control >= 1.0.0.4 && < 1.1
88+ , network >= 2.6.3.2 && < 2.7
89+ , safe >= 0.3.15 && < 0.4
90+ , split >= 0.2.3.2 && < 0.3
91+ , string-conversions >= 0.4.0.1 && < 0.5
92+ , system-filepath >= 0.4 && < 0.5
93+ , resourcet >= 1.1.10 && < 1.2
94+ , tagged >= 0.8.5 && < 0.9
95+ , transformers-base >= 0.4.4 && < 0.5
96+ , transformers-compat >= 0.5.1 && < 0.6
97+ , wai >= 3.2.1.1 && < 3.3
98+ , wai-app-static >= 3.1.6.1 && < 3.2
99+ , warp >= 3.2.13 && < 3.3
100+ , word8 >= 0.1.3 && < 0.2
89101
90102 hs-source-dirs: src
91103 default-language: Haskell2010
@@ -126,49 +138,53 @@ test-suite spec
126138 Servant.HoistSpec
127139 Servant.ServerSpec
128140 Servant.Utils.StaticFilesSpec
129− build-tool-depends:
130− hspec-discover:hspec-discover
141+
142+ -- Dependencies inherited from the library. No need to specify bounds.
131143 build-depends:
132− base == 4.*
144+ base
133145 , base-compat
134146 , aeson
135147 , base64-bytestring
136148 , bytestring
137− , directory
138149 , exceptions
139− , hspec == 2.*
140− , hspec-wai >= 0.8 && <0.10
141150 , http-types
142151 , mtl
143− , network >= 2.6
144− , parsec
145− , QuickCheck
152+ , network
146153 , resourcet
147154 , safe
148155 , servant
149156 , servant-server
150− , should-not-typecheck == 2.1.*
151157 , string-conversions
152− , temporary
153158 , text
154159 , transformers
155160 , transformers-compat
156161 , wai
157− , wai-extra
158162 , warp
159163
164+ -- Additonal dependencies
165+ build-depends:
166+ directory >= 1.2.1.0 && < 1.4
167+ , hspec >= 2.4.4 && < 2.5
168+ , hspec-wai >= 0.9 && < 0.10
169+ , should-not-typecheck >= 2.1.0 && < 2.2
170+ , parsec >= 3.1.11 && < 3.2
171+ , QuickCheck >= 2.10.1 && < 2.12
172+ , wai-extra >= 3.0.21.0 && < 3.1
173+ , temporary >= 1.2.0.3 && < 1.3
174+
175+ build-tool-depends:
176+ hspec-discover:hspec-discover >=2.4.4 && <2.5
177+
160178test-suite doctests
161− build-depends: base
162− , servant
163− , doctest
164− , filemanip
165− , directory
166− , filepath
167− type: exitcode-stdio-1.0
168− main-is: test/doctests.hs
169− buildable: True
170− default-language: Haskell2010
171− ghc-options: -Wall -threaded
172− if impl(ghc >= 8.2)
173− x-doctest-options: -fdiagnostics-color=never
174− include-dirs: include
179+ build-depends:
180+ base
181+ , servant-server
182+ , doctest >= 0.13.0 && <0.14
183+ type: exitcode-stdio-1.0
184+ main-is: test/doctests.hs
185+ buildable: True
186+ default-language: Haskell2010
187+ ghc-options: -Wall -threaded
188+ if impl(ghc >= 8.2)
189+ x-doctest-options: -fdiagnostics-color=never
190+ include-dirs: include