Merge pull request #981 from phadej/travis-update

Regenerate .travis.yml
This commit is contained in:
Oleg Grenrus 2018-06-18 21:23:14 +03:00 committed by GitHub
commit 0e2a523da1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 211 additions and 108 deletions

View file

@ -65,7 +65,8 @@ install:
- BENCH=${BENCH---enable-benchmarks} - BENCH=${BENCH---enable-benchmarks}
- TEST=${TEST---enable-tests} - TEST=${TEST---enable-tests}
- HADDOCK=${HADDOCK-true} - HADDOCK=${HADDOCK-true}
- INSTALLED=${INSTALLED-true} - UNCONSTRAINED=${UNCONSTRAINED-true}
- NOINSTALLEDCONSTRAINTS=${NOINSTALLEDCONSTRAINTS-false}
- GHCHEAD=${GHCHEAD-false} - GHCHEAD=${GHCHEAD-false}
- travis_retry cabal update -v - travis_retry cabal update -v
- "sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config" - "sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config"
@ -75,7 +76,10 @@ install:
- "printf 'packages: \"servant\" \"servant-client\" \"servant-client-core\" \"servant-docs\" \"servant-foreign\" \"servant-server\" \"doc/tutorial\" \"doc/cookbook/basic-auth\" \"doc/cookbook/db-postgres-pool\" \"doc/cookbook/db-sqlite-simple\" \"doc/cookbook/https\" \"doc/cookbook/pagination\" \"doc/cookbook/structuring-apis\" \"doc/cookbook/using-custom-monad\"\\n' > cabal.project" - "printf 'packages: \"servant\" \"servant-client\" \"servant-client-core\" \"servant-docs\" \"servant-foreign\" \"servant-server\" \"doc/tutorial\" \"doc/cookbook/basic-auth\" \"doc/cookbook/db-postgres-pool\" \"doc/cookbook/db-sqlite-simple\" \"doc/cookbook/https\" \"doc/cookbook/pagination\" \"doc/cookbook/structuring-apis\" \"doc/cookbook/using-custom-monad\"\\n' > cabal.project"
- "echo 'constraints: foundation >=0.0.14,memory <0.14.12 || >0.14.12' >> cabal.project" - "echo 'constraints: foundation >=0.0.14,memory <0.14.12 || >0.14.12' >> cabal.project"
- "echo 'allow-newer: servant-auth-server:http-types,servant-auth-server:servant-server, http-media:base, servant-js:servant,servant-pagination:servant,servant-pagination:servant-server' >> cabal.project" - "echo 'allow-newer: servant-auth-server:http-types,servant-auth-server:servant-server, http-media:base, servant-js:servant,servant-pagination:servant,servant-pagination:servant-server' >> cabal.project"
- cat cabal.project - touch cabal.project.local
- "if ! $NOINSTALLEDCONSTRAINTS; then for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/^/constraints: /' | sed 's/-[^-]*$/ installed/' >> cabal.project.local; done; fi"
- cat cabal.project || true
- cat cabal.project.local || true
- if [ -f "servant/configure.ac" ]; then - if [ -f "servant/configure.ac" ]; then
(cd "servant" && autoreconf -i); (cd "servant" && autoreconf -i);
fi fi
@ -149,10 +153,12 @@ script:
- "printf 'packages: servant-*/*.cabal servant-client-*/*.cabal servant-client-core-*/*.cabal servant-docs-*/*.cabal servant-foreign-*/*.cabal servant-server-*/*.cabal tutorial-*/*.cabal cookbook-basic-auth-*/*.cabal cookbook-db-postgres-pool-*/*.cabal cookbook-db-sqlite-simple-*/*.cabal cookbook-https-*/*.cabal cookbook-pagination-*/*.cabal cookbook-structuring-apis-*/*.cabal cookbook-using-custom-monad-*/*.cabal\\n' > cabal.project" - "printf 'packages: servant-*/*.cabal servant-client-*/*.cabal servant-client-core-*/*.cabal servant-docs-*/*.cabal servant-foreign-*/*.cabal servant-server-*/*.cabal tutorial-*/*.cabal cookbook-basic-auth-*/*.cabal cookbook-db-postgres-pool-*/*.cabal cookbook-db-sqlite-simple-*/*.cabal cookbook-https-*/*.cabal cookbook-pagination-*/*.cabal cookbook-structuring-apis-*/*.cabal cookbook-using-custom-monad-*/*.cabal\\n' > cabal.project"
- "echo 'constraints: foundation >=0.0.14,memory <0.14.12 || >0.14.12' >> cabal.project" - "echo 'constraints: foundation >=0.0.14,memory <0.14.12 || >0.14.12' >> cabal.project"
- "echo 'allow-newer: servant-auth-server:http-types,servant-auth-server:servant-server, http-media:base, servant-js:servant,servant-pagination:servant,servant-pagination:servant-server' >> cabal.project" - "echo 'allow-newer: servant-auth-server:http-types,servant-auth-server:servant-server, http-media:base, servant-js:servant,servant-pagination:servant,servant-pagination:servant-server' >> cabal.project"
- cat cabal.project - touch cabal.project.local
- "if ! $NOINSTALLEDCONSTRAINTS; then for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/^/constraints: /' | sed 's/-[^-]*$/ installed/' >> cabal.project.local; done; fi"
- cat cabal.project || true
- cat cabal.project.local || true
- echo -en 'travis_fold:end:unpack\\r' - echo -en 'travis_fold:end:unpack\\r'
- echo Building with tests and benchmarks... && echo -en 'travis_fold:start:build-everything\\r' - echo Building with tests and benchmarks... && echo -en 'travis_fold:start:build-everything\\r'
# build & run tests, build benchmarks # build & run tests, build benchmarks
- cabal new-build -w ${HC} ${TEST} ${BENCH} all - cabal new-build -w ${HC} ${TEST} ${BENCH} all
@ -165,5 +171,10 @@ script:
- if $HADDOCK; then cabal new-haddock -w ${HC} ${TEST} ${BENCH} all; else echo "Skipping haddock generation";fi - if $HADDOCK; then cabal new-haddock -w ${HC} ${TEST} ${BENCH} all; else echo "Skipping haddock generation";fi
- echo -en 'travis_fold:end:haddock\\r' - echo -en 'travis_fold:end:haddock\\r'
- echo Building without installed constraints for packages in global-db... && echo -en 'travis_fold:start:build-installed\\r'
# Build without installed constraints for packages in global-db
- if $UNCONSTRAINED; then rm -f cabal.project.local; echo cabal new-build -w ${HC} --disable-tests --disable-benchmarks all; else echo "Not building without installed constraints"; fi
- echo -en 'travis_fold:end:build-installed\\r'
# REGENDATA ["--config=cabal.make-travis-yml","--output=.travis.yml","cabal.project"] # REGENDATA ["--config=cabal.make-travis-yml","--output=.travis.yml","cabal.project"]
# EOF # EOF

View file

@ -4,10 +4,50 @@
0.14 0.14
---- ----
- Add a `hoistClientMonad` method to the `HasClient` typeclass, for - `Stream` takes a status code argument
changing the monad in which client functions run.
```diff
-Stream method framing ctype a
+Stream method status framing ctype a
```
([#966](https://github.com/haskell-servant/servant/pull/966)
[#972](https://github.com/haskell-servant/servant/pull/972))
- `ToStreamGenerator` definition changed, so it's possible to write an instance
for conduits.
```diff
-class ToStreamGenerator f a where
- toStreamGenerator :: f a -> StreamGenerator a
+class ToStreamGenerator a b | a -> b where
+ toStreamGenerator :: a -> StreamGenerator b
```
([#959](https://github.com/haskell-servant/servant/pull/959))
- Added `NoFraming` streaming strategy
([#959](https://github.com/haskell-servant/servant/pull/959))
- *servant-client-core* Free `Client` implementation.
Useful for testing `HasClient` instances.
([#920](https://github.com/haskell-servant/servant/pull/920))
- *servant-client-core* Add `hoistClient` to `HasClient`.
Just like `hoistServer` allows us to change the monad in which request handlers
of a web application live in, we also have `hoistClient` for changing the monad
in which *client functions* live.
Read [tutorial section for more information](https://haskell-servant.readthedocs.io/en/release-0.14/tutorial/Client.html#changing-the-monad-the-client-functions-live-in).
([#936](https://github.com/haskell-servant/servant/pull/936)) ([#936](https://github.com/haskell-servant/servant/pull/936))
iF you have own combinators, you'll need to define a new method of
`HasClient` class, for example:
```haskell
type Client m (MyCombinator :> api) = MyValue :> Client m api
hoistClientMonad pm _ nt cl = hoistClientMonad pm (Proxy :: Proxy api) nt . cl
```
0.13.0.1 0.13.0.1
-------- --------

View file

@ -51,12 +51,11 @@ library
base >= 4.7 && < 4.12 base >= 4.7 && < 4.12
, bytestring >= 0.10.4.0 && < 0.11 , bytestring >= 0.10.4.0 && < 0.11
, containers >= 0.5.5.1 && < 0.6 , containers >= 0.5.5.1 && < 0.6
, mtl >= 2.1 && < 2.3
, text >= 1.2.3.0 && < 1.3 , text >= 1.2.3.0 && < 1.3
if !impl(ghc >= 8.0) if !impl(ghc >= 8.0)
build-depends: build-depends:
semigroups >=0.18.3 && <0.19 semigroups >=0.18.4 && <0.19
-- Servant dependencies -- Servant dependencies
build-depends: build-depends:
@ -65,16 +64,16 @@ library
-- Other dependencies: Lower bound around what is in the latest Stackage LTS. -- 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. -- Here can be exceptions if we really need features from the newer versions.
build-depends: build-depends:
base-compat >= 0.9.3 && < 0.11 base-compat >= 0.10.1 && < 0.11
, base64-bytestring >= 1.0.0.1 && < 1.1 , base64-bytestring >= 1.0.0.1 && < 1.1
, exceptions >= 0.8.3 && < 0.11 , exceptions >= 0.10.0 && < 0.11
, free >= 5.0.1 && < 5.1 , free >= 5.0.2 && < 5.1
, generics-sop >= 0.3.1.0 && < 0.4 , generics-sop >= 0.3.2.0 && < 0.4
, http-api-data >= 0.3.7.1 && < 0.4 , http-api-data >= 0.3.8.1 && < 0.4
, http-media >= 0.7.1.1 && < 0.8 , http-media >= 0.7.1.2 && < 0.8
, http-types >= 0.12 && < 0.13 , http-types >= 0.12.1 && < 0.13
, network-uri >= 2.6.1.0 && < 2.7 , network-uri >= 2.6.1.0 && < 2.7
, safe >= 0.3.15 && < 0.4 , safe >= 0.3.17 && < 0.4
hs-source-dirs: src hs-source-dirs: src
default-language: Haskell2010 default-language: Haskell2010
@ -99,8 +98,8 @@ test-suite spec
-- Additonal dependencies -- Additonal dependencies
build-depends: build-depends:
deepseq >= 1.3.0.2 && <1.5 deepseq >= 1.3.0.2 && <1.5
, hspec >= 2.4.4 && <2.6 , hspec >= 2.4.1 && <2.6
, QuickCheck >= 2.10.1 && < 2.12 , QuickCheck >= 2.11.3 && < 2.12
build-tool-depends: build-tool-depends:
hspec-discover:hspec-discover >= 2.4.4 && <2.6 hspec-discover:hspec-discover >= 2.5.1 && <2.6

View file

@ -4,10 +4,45 @@
0.14 0.14
---- ----
- Add `hoistClient` for changing the monad in which - `Stream` takes a status code argument
client functions run.
```diff
-Stream method framing ctype a
+Stream method status framing ctype a
```
([#966](https://github.com/haskell-servant/servant/pull/966)
[#972](https://github.com/haskell-servant/servant/pull/972))
- `ToStreamGenerator` definition changed, so it's possible to write an instance
for conduits.
```diff
-class ToStreamGenerator f a where
- toStreamGenerator :: f a -> StreamGenerator a
+class ToStreamGenerator a b | a -> b where
+ toStreamGenerator :: a -> StreamGenerator b
```
([#959](https://github.com/haskell-servant/servant/pull/959))
- Added `NoFraming` streaming strategy
([#959](https://github.com/haskell-servant/servant/pull/959))
- *servant-client-core* Add `hoistClient` to `HasClient`.
Just like `hoistServer` allows us to change the monad in which request handlers
of a web application live in, we also have `hoistClient` for changing the monad
in which *client functions* live.
Read [tutorial section for more information](https://haskell-servant.readthedocs.io/en/release-0.14/tutorial/Client.html#changing-the-monad-the-client-functions-live-in).
([#936](https://github.com/haskell-servant/servant/pull/936)) ([#936](https://github.com/haskell-servant/servant/pull/936))
- *servant-client* Add more constructors to `RequestBody`, including
`RequestBodyStream`.
*Note:* we are looking for http-library agnostic API,
so the might change again soon.
Tell us which constructors are useful for you!
([#913](https://github.com/haskell-servant/servant/pull/913))
0.13.0.1 0.13.0.1
-------- --------

View file

@ -51,7 +51,7 @@ library
, transformers >= 0.3.0.0 && < 0.6 , transformers >= 0.3.0.0 && < 0.6
if !impl(ghc >= 8.0) if !impl(ghc >= 8.0)
build-depends: semigroups >=0.18.3 && <0.19 build-depends: semigroups >=0.18.4 && <0.19
-- Servant dependencies -- Servant dependencies
build-depends: build-depends:
@ -60,19 +60,16 @@ library
-- Other dependencies: Lower bound around what is in the latest Stackage LTS. -- 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. -- Here can be exceptions if we really need features from the newer versions.
build-depends: build-depends:
aeson >= 1.2.3.0 && < 1.5 base-compat >= 0.10.1 && < 0.11
, base-compat >= 0.9.3 && < 0.11 , http-client >= 0.5.12 && < 0.6
, attoparsec >= 0.13.2.0 && < 0.14 , http-media >= 0.7.1.2 && < 0.8
, http-client >= 0.5.7.1 && < 0.6 , http-types >= 0.12.1 && < 0.13
, http-client-tls >= 0.3.5.1 && < 0.4 , exceptions >= 0.10.0 && < 0.11
, http-media >= 0.7.1.1 && < 0.8 , monad-control >= 1.0.2.3 && < 1.1
, http-types >= 0.12 && < 0.13 , semigroupoids >= 5.2.2 && < 5.3
, exceptions >= 0.8.3 && < 0.11 , stm >= 2.4.5.0 && < 2.5
, monad-control >= 1.0.0.4 && < 1.1 , transformers-base >= 0.4.5.2 && < 0.5
, semigroupoids >= 5.2.1 && < 5.3 , transformers-compat >= 0.6.2 && < 0.7
, stm >= 2.4.4.1 && < 2.5
, transformers-base >= 0.4.4 && < 0.5
, transformers-compat >= 0.5.1 && < 0.7
hs-source-dirs: src hs-source-dirs: src
default-language: Haskell2010 default-language: Haskell2010
@ -97,10 +94,8 @@ test-suite spec
, aeson , aeson
, base-compat , base-compat
, bytestring , bytestring
, containers
, http-api-data , http-api-data
, http-client , http-client
, http-media
, http-types , http-types
, mtl , mtl
, servant-client , servant-client
@ -117,18 +112,16 @@ test-suite spec
-- Additonal dependencies -- Additonal dependencies
build-depends: build-depends:
deepseq >= 1.3.0.2 && < 1.5 generics-sop >= 0.3.2.0 && < 0.4
, generics-sop >= 0.3.1.0 && < 0.4 , hspec >= 2.5.1 && < 2.6
, hspec >= 2.4.4 && < 2.6
, HUnit >= 1.6 && < 1.7 , HUnit >= 1.6 && < 1.7
, random-bytestring >= 0.1 && < 0.2
, network >= 2.6.3.2 && < 2.8 , network >= 2.6.3.2 && < 2.8
, QuickCheck >= 2.10.1 && < 2.12 , QuickCheck >= 2.10.1 && < 2.12
, servant == 0.14.* , servant == 0.14.*
, servant-server == 0.14.* , servant-server == 0.14.*
build-tool-depends: build-tool-depends:
hspec-discover:hspec-discover >= 2.4.4 && < 2.6 hspec-discover:hspec-discover >= 2.5.1 && < 2.6
test-suite readme test-suite readme
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0

View file

@ -1,5 +1,6 @@
name: servant-foreign name: servant-foreign
version: 0.11.1 version: 0.11.1
x-revision: 1
synopsis: Helpers for generating clients for servant APIs in any programming language synopsis: Helpers for generating clients for servant APIs in any programming language
description: description:
Helper types and functions for generating client functions for servant APIs in any programming language Helper types and functions for generating client functions for servant APIs in any programming language

View file

@ -1,6 +1,52 @@
[The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md) [The latest version of this document is on GitHub.](https://github.com/haskell-servant/servant/blob/master/servant-server/CHANGELOG.md)
[Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md) [Changelog for `servant` package contains significant entries for all core packages.](https://github.com/haskell-servant/servant/blob/master/servant/CHANGELOG.md)
0.14
----
- `Stream` takes a status code argument
```diff
-Stream method framing ctype a
+Stream method status framing ctype a
```
([#966](https://github.com/haskell-servant/servant/pull/966)
[#972](https://github.com/haskell-servant/servant/pull/972))
- `ToStreamGenerator` definition changed, so it's possible to write an instance
for conduits.
```diff
-class ToStreamGenerator f a where
- toStreamGenerator :: f a -> StreamGenerator a
+class ToStreamGenerator a b | a -> b where
+ toStreamGenerator :: a -> StreamGenerator b
```
([#959](https://github.com/haskell-servant/servant/pull/959))
- Added `NoFraming` streaming strategy
([#959](https://github.com/haskell-servant/servant/pull/959))
- *servant-server* File serving in polymorphic monad.
i.e. Generalised types of `serveDirectoryFileServer` etc functions in
`Servant.Utils.StaticFiles`
([#953](https://github.com/haskell-servant/servant/pull/953))
- *servant-server* `ReqBody` content type check is recoverable.
This allows writing APIs like:
```haskell
ReqBody '[JSON] Int :> Post '[PlainText] Int
:<|> ReqBody '[PlainText] Int :> Post '[PlainText] Int
```
which is useful when handlers are subtly different,
for example may do less work.
([#937](https://github.com/haskell-servant/servant/pull/937))
0.13.0.1 0.13.0.1
-------- --------

View file

@ -40,7 +40,7 @@ custom-setup
setup-depends: setup-depends:
base >= 4 && <5, base >= 4 && <5,
Cabal, Cabal,
cabal-doctest >= 1.0.1 && <1.1 cabal-doctest >= 1.0.6 && <1.1
library library
exposed-modules: exposed-modules:
@ -71,7 +71,7 @@ library
if !impl(ghc >= 8.0) if !impl(ghc >= 8.0)
build-depends: build-depends:
semigroups >= 0.18.3 && < 0.19 semigroups >= 0.18.4 && < 0.19
-- Servant dependencies -- Servant dependencies
build-depends: build-depends:
@ -80,28 +80,22 @@ library
-- Other dependencies: Lower bound around what is in the latest Stackage LTS. -- 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. -- Here can be exceptions if we really need features from the newer versions.
build-depends: build-depends:
aeson >= 1.2.3.0 && < 1.5 base-compat >= 0.10.1 && < 0.11
, base-compat >= 0.9.3 && < 0.11
, attoparsec >= 0.13.2.0 && < 0.14
, base64-bytestring >= 1.0.0.1 && < 1.1 , base64-bytestring >= 1.0.0.1 && < 1.1
, exceptions >= 0.8.3 && < 0.11 , exceptions >= 0.10.0 && < 0.11
, http-api-data >= 0.3.7.1 && < 0.4 , http-api-data >= 0.3.8.1 && < 0.4
, http-media >= 0.7.1.1 && < 0.8 , http-media >= 0.7.1.2 && < 0.8
, http-types >= 0.12 && < 0.13 , http-types >= 0.12.1 && < 0.13
, network-uri >= 2.6.1.0 && < 2.7 , network-uri >= 2.6.1.0 && < 2.7
, monad-control >= 1.0.0.4 && < 1.1 , monad-control >= 1.0.2.3 && < 1.1
, network >= 2.6.3.2 && < 2.8 , network >= 2.6.3.5 && < 2.8
, safe >= 0.3.15 && < 0.4
, split >= 0.2.3.2 && < 0.3
, string-conversions >= 0.4.0.1 && < 0.5 , string-conversions >= 0.4.0.1 && < 0.5
, system-filepath >= 0.4 && < 0.5 , resourcet >= 1.1.11 && < 1.3
, resourcet >= 1.1.9 && < 1.3
, tagged >= 0.8.5 && < 0.9 , tagged >= 0.8.5 && < 0.9
, transformers-base >= 0.4.4 && < 0.5 , transformers-base >= 0.4.4 && < 0.5
, transformers-compat >= 0.5.1 && < 0.7 , transformers-compat >= 0.6.2 && < 0.7
, wai >= 3.2.1.1 && < 3.3 , wai >= 3.2.1.1 && < 3.3
, wai-app-static >= 3.1.6.1 && < 3.2 , wai-app-static >= 3.1.6.1 && < 3.2
, warp >= 3.2.13 && < 3.3
, word8 >= 0.1.3 && < 0.2 , word8 >= 0.1.3 && < 0.2
hs-source-dirs: src hs-source-dirs: src
@ -120,11 +114,13 @@ executable greet
base base
, servant , servant
, servant-server , servant-server
, aeson
, warp
, wai , wai
, text , text
build-depends:
aeson >= 1.3.1.1 && < 1.5
, warp >= 3.2.13 && < 3.3
test-suite spec test-suite spec
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
ghc-options: -Wall ghc-options: -Wall
@ -148,13 +144,10 @@ test-suite spec
build-depends: build-depends:
base base
, base-compat , base-compat
, aeson
, base64-bytestring , base64-bytestring
, bytestring , bytestring
, exceptions
, http-types , http-types
, mtl , mtl
, network
, resourcet , resourcet
, safe , safe
, servant , servant
@ -164,27 +157,26 @@ test-suite spec
, transformers , transformers
, transformers-compat , transformers-compat
, wai , wai
, warp
-- Additonal dependencies -- Additonal dependencies
build-depends: build-depends:
directory >= 1.2.1.0 && < 1.4 aeson >= 1.3.1.1 && < 1.5
, hspec >= 2.4.4 && < 2.6 , directory >= 1.2.1.0 && < 1.4
, hspec-wai >= 0.9 && < 0.10 , hspec >= 2.5.1 && < 2.6
, hspec-wai >= 0.9.0 && < 0.10
, QuickCheck >= 2.11.3 && < 2.12
, should-not-typecheck >= 2.1.0 && < 2.2 , should-not-typecheck >= 2.1.0 && < 2.2
, parsec >= 3.1.11 && < 3.2 , temporary >= 1.3 && < 1.4
, QuickCheck >= 2.10.1 && < 2.12
, wai-extra >= 3.0.21.0 && < 3.1 , wai-extra >= 3.0.21.0 && < 3.1
, temporary >= 1.2.0.3 && < 1.4
build-tool-depends: build-tool-depends:
hspec-discover:hspec-discover >=2.4.4 && <2.6 hspec-discover:hspec-discover >= 2.5.1 && <2.6
test-suite doctests test-suite doctests
build-depends: build-depends:
base base
, servant-server , servant-server
, doctest >= 0.13.0 && <0.16 , doctest >= 0.15.0 && <0.16
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
main-is: test/doctests.hs main-is: test/doctests.hs
buildable: True buildable: True

View file

@ -30,11 +30,11 @@
- Added `NoFraming` streaming strategy - Added `NoFraming` streaming strategy
([#959](https://github.com/haskell-servant/servant/pull/959)) ([#959](https://github.com/haskell-servant/servant/pull/959))
- *servant-client* Free `Client` implementation. - *servant-client-core* Free `Client` implementation.
Useful for testing `HasClient` instances. Useful for testing `HasClient` instances.
([#920](https://github.com/haskell-servant/servant/pull/920)) ([#920](https://github.com/haskell-servant/servant/pull/920))
- *servant-client* Add `hoistClient` to `HasClient`. - *servant-client-core* Add `hoistClient` to `HasClient`.
Just like `hoistServer` allows us to change the monad in which request handlers Just like `hoistServer` allows us to change the monad in which request handlers
of a web application live in, we also have `hoistClient` for changing the monad of a web application live in, we also have `hoistClient` for changing the monad
in which *client functions* live. in which *client functions* live.

View file

@ -34,7 +34,7 @@ custom-setup
setup-depends: setup-depends:
base >= 4 && <5, base >= 4 && <5,
Cabal, Cabal,
cabal-doctest >= 1.0.2 && <1.1 cabal-doctest >= 1.0.6 && <1.1
library library
exposed-modules: exposed-modules:
@ -77,25 +77,25 @@ library
if !impl(ghc >= 8.0) if !impl(ghc >= 8.0)
build-depends: build-depends:
semigroups >= 0.18.3 && < 0.19 semigroups >= 0.18.4 && < 0.19
-- Other dependencies: Lower bound around what is in the latest Stackage LTS. -- 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. -- Here can be exceptions if we really need features from the newer versions.
build-depends: build-depends:
base-compat >= 0.9.3 && < 0.11 base-compat >= 0.10.1 && < 0.11
, aeson >= 1.2.3.0 && < 1.5 , aeson >= 1.3.1.1 && < 1.5
, attoparsec >= 0.13.2.0 && < 0.14 , attoparsec >= 0.13.2.2 && < 0.14
, case-insensitive >= 1.2.0.10 && < 1.3 , case-insensitive >= 1.2.0.10 && < 1.3
, http-api-data >= 0.3.7.1 && < 0.4 , http-api-data >= 0.3.8.1 && < 0.4
, http-media >= 0.7.1.1 && < 0.8 , http-media >= 0.7.1.2 && < 0.8
, http-types >= 0.12 && < 0.13 , http-types >= 0.12.1 && < 0.13
, natural-transformation >= 0.4 && < 0.5 , natural-transformation >= 0.4 && < 0.5
, mmorph >= 1.1.0 && < 1.2 , mmorph >= 1.1.2 && < 1.2
, tagged >= 0.8.5 && < 0.9 , tagged >= 0.8.5 && < 0.9
, singleton-bool >= 0.1.2.0 && < 0.2 , singleton-bool >= 0.1.4 && < 0.2
, string-conversions >= 0.4.0.1 && < 0.5 , string-conversions >= 0.4.0.1 && < 0.5
, network-uri >= 2.6.1.0 && < 2.7 , network-uri >= 2.6.1.0 && < 2.7
, vault >= 0.3.0.7 && < 0.4 , vault >= 0.3.1.1 && < 0.4
hs-source-dirs: src hs-source-dirs: src
default-language: Haskell2010 default-language: Haskell2010
@ -141,7 +141,6 @@ test-suite spec
base base
, base-compat , base-compat
, aeson , aeson
, attoparsec
, bytestring , bytestring
, servant , servant
, string-conversions , string-conversions
@ -153,23 +152,23 @@ test-suite spec
-- Additonal dependencies -- Additonal dependencies
build-depends: build-depends:
aeson-compat >= 0.3.3 && < 0.4 aeson-compat >= 0.3.7.1 && < 0.4
, hspec >= 2.4.4 && < 2.6 , hspec >= 2.5.1 && < 2.6
, QuickCheck >= 2.10.1 && < 2.12 , QuickCheck >= 2.11.3 && < 2.12
, quickcheck-instances >= 0.3.16 && < 0.4 , quickcheck-instances >= 0.3.18 && < 0.4
build-tool-depends: build-tool-depends:
hspec-discover:hspec-discover >= 2.4.4 && < 2.6 hspec-discover:hspec-discover >= 2.5.1 && < 2.6
test-suite doctests test-suite doctests
build-depends: build-depends:
base base
, servant , servant
, doctest >= 0.13.0 && <0.16 , doctest >= 0.15.0 && <0.16
-- We test Links failure with doctest, so we need extra dependencies -- We test Links failure with doctest, so we need extra dependencies
build-depends: build-depends:
hspec >= 2.4.4 && < 2.6 hspec >= 2.5.1 && < 2.6
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
main-is: test/doctests.hs main-is: test/doctests.hs

View file

@ -1,5 +1,5 @@
# Let's try to keep resolver at the first day of the month # Let's try to keep resolver at the first day of the month
resolver: nightly-2018-03-01 resolver: nightly-2018-06-01
packages: packages:
- servant-client/ - servant-client/
- servant-client-core/ - servant-client-core/
@ -8,18 +8,5 @@ packages:
- servant-server/ - servant-server/
- servant/ - servant/
extra-deps:
- cabal-doctest-1.0.6
- http-api-data-0.3.7.2
- http-types-0.12
- text-1.2.3.0
- aeson-1.3.0.0
- exceptions-0.10.0
- aeson-compat-0.3.7.1
- free-5.0.1
- lens-4.16
- random-bytestring-0.1.3
- pcg-random-0.1.3.5
# allow-newer: true # ignores all bounds, that's a sledgehammer # allow-newer: true # ignores all bounds, that's a sledgehammer
# - doc/tutorial/ # - doc/tutorial/