Arnaud Bailly
5e2c48b08f
expose client runner as a typeclass with base implementation #798
...
* defined a typeclass abstracting the execution of a query
* provide ClientM-based instances for this typeclass
* changed signature of client and clientWithRoute to add proxy for
context
* updated tests
2017-09-14 09:54:13 -04:00
Arnaud Bailly
175c9532f1
[wip] expose client runner as a typeclass
2017-09-14 09:54:13 -04:00
Arnaud Bailly
2665693529
extract module for http-client
2017-09-14 09:54:13 -04:00
Oleg Grenrus
50be3a263b
Merge pull request #767 from fierce-katie/docs-combinators
...
Description and Summary combinators
2017-08-16 15:31:12 +03:00
Oleg Grenrus
213620e56a
Fix cabal category
2017-07-25 10:46:57 +03:00
Oleg Grenrus
70aae4c5c0
Relax bound for http-media in servant-client
2017-06-27 21:59:01 +03:00
Catherine Galkina
ec0431d930
Add instances for new combinators
2017-06-08 18:27:36 +03:00
Oleg Grenrus
8959d61173
GHC-8.2.1 stack.yaml
2017-06-07 17:29:15 +03:00
Oleg Grenrus
ec930ac9a8
Release 0.11
2017-05-24 08:02:56 +03:00
David Turner
0bbc4f98a4
Rename EmptyAPIClient to EmptyClient
2017-05-16 16:00:15 +00:00
David Turner
f5d9983381
Rename emptyAPIServer to emptyServer
2017-05-16 15:59:41 +00:00
David Turner
178f05595a
Better docs for EmptyAPIClient
2017-05-16 11:06:37 +00:00
David Turner
e60bdadead
Demonstrate that a client for EmptyAPI pattern-matches EmptyAPIClient
2017-05-16 10:21:37 +00:00
David Turner
4c64c13af0
Add EmptyAPIClient and instance HasClient EmptyAPI
2017-05-16 10:06:48 +00:00
Alexander Vieth
6389134423
Change to ServerT Raw m = Tagged m Application
...
For uniformity of Enter.
Previously, `ServerT Raw m ~ Application`. Seems reasonable, but has the
unfortunate consequence of making `Enter` useless for `Raw` routes.
With this change `Tagged m Application` is retagged by `Enter`.
2017-05-15 19:54:43 +03:00
Oleg Grenrus
acbcebc1d3
Fix Show UrlReq
2017-05-15 19:06:06 +03:00
Oleg Grenrus
4ae8b1898f
Merge pull request #740 from stevana/client/include-request-in-failure-response
...
Include the request that failed in FailureResponse.
2017-05-15 12:32:45 +03:00
Oleg Grenrus
018a38cc93
Merge pull request #696 from edsko/pr/escape-capture
...
Make sure path components get escaped
2017-05-14 21:01:53 +03:00
Oleg Grenrus
590c4cb25c
Bump lower bound for http-api-data
2017-05-14 20:16:38 +03:00
Oleg Grenrus
27facba0e8
Trim trailing whitespace
2017-05-14 19:26:25 +03:00
Stevan Andjelkovic
29c9d85ade
Use BaseUrl and Req instead of Request.
2017-05-05 17:05:55 +02:00
Stevan Andjelkovic
bf9c84eccb
Two failed responses can be equal even though they don't come from
...
the same request.
2017-05-05 15:55:21 +02:00
Stevan Andjelkovic
b8de9c8527
Include the request that failed in FailureResponse.
2017-05-05 15:31:38 +02:00
Oleg Grenrus
f4b6144a11
Allow generics-sop-0.3
2017-04-29 15:39:25 +03:00
Oleg Grenrus
c5cd6a2172
Allow semigroupoids-5.2
2017-04-23 21:02:51 +03:00
Oleg Grenrus
e49d491164
Allow aeson-1.2
2017-04-17 21:35:20 +03:00
Edsko de Vries
507f021919
Make sure path components get escaped
...
The derived client for an API containing `Capture` has a bug: it does not
escape characters, so that if the string is "a/b", the URL becomes
`".../a/b/..."` instead of `".../a%2Fb/..."`, causing the corresponding servant
server to return a 404.
This relies on https://github.com/fizruk/http-api-data/pull/47
2017-02-07 16:51:56 +01:00
Oleg Grenrus
8a3ecb2ebc
Classify changelog into breaking and other changes
2017-02-01 09:06:30 +02:00
Oleg Grenrus
736918a694
Tweaks for 0.10 ( #694 )
...
* Add Servant category to in-repo packages
* Add version table
2017-01-30 19:12:39 +02:00
Oleg Grenrus
2fd97570f0
Update changelog for 0.10 ( #691 )
2017-01-30 08:45:58 +02:00
Oleg Grenrus
93df8d22df
Bump version to 0.10
2017-01-26 20:10:01 +02:00
Oleg Grenrus
6fafaec51a
Change Semigroup (ClientM a) to Alt ClientM
2017-01-20 14:26:26 +02:00
Oleg Grenrus
fdf86b0e15
Add Semigroup instances
2017-01-19 20:11:54 +02:00
Catherine Galkina
af1b267726
Fix servant-client tests after rebase
2017-01-17 16:34:30 +03:00
Catherine Galkina
aa4b10c9ca
Add comments for GClientLikeP and GClientLikeL classes
2017-01-17 16:29:24 +03:00
Catherine Galkina
9d52cff1bb
Fix ghc-7.8.4 build
2017-01-17 16:29:24 +03:00
Catherine Galkina
01324754da
Update comment in Servant.Client.Generic
2017-01-17 16:29:24 +03:00
Catherine Galkina
5fa99bee93
Expand left-nested APIs by default
2017-01-17 16:29:24 +03:00
Catherine Galkina
d128faee4d
Update CHANGELOG
2017-01-17 16:29:24 +03:00
Catherine Galkina
06217ace66
Fix typos in examples
2017-01-17 16:29:24 +03:00
Catherine Galkina
682d7ead5c
Update example in Servant.Client.Generic
2017-01-17 16:29:24 +03:00
Catherine Galkina
3cc667892c
Add tests for Servant.Client.Generic
2017-01-17 16:29:24 +03:00
Catherine Galkina
31e1ceb6d0
Add Servant.Client.Generic module
2017-01-17 16:29:24 +03:00
Oleg Grenrus
5168157757
Make Handler a newtype
2017-01-16 12:18:49 +02:00
Oleg Grenrus
cfaa7a06be
Merge pull request #665 from phadej/client-monad-control
...
Add MonadBaseControl IO ClientM instance
2017-01-16 10:25:35 +02:00
Oleg Grenrus
e6206cc51e
Add more changelog entries
2017-01-16 10:11:38 +02:00
Oleg Grenrus
6faa742c4a
Update changelog
2017-01-16 10:02:54 +02:00
Oleg Grenrus
b548f8df86
Add MonadBaseControl IO ClientM instance
2017-01-16 09:51:39 +02:00
Andres Loeh
bc04d120ec
Allow more flexbility in setting the request body.
...
Rather than hard-coding the `RequestBodyLBS` constructor and be
limited to lazy bytestrings, the new function `setReqBody` just
takes any value of type `RequestBody`.
The old function `setRQBody` has been renamed to `setReqBodyLBS`.
The old name is still available, but deprecated.
The change has the advantage the we can define new servant API
combinators that use streaming request bodies such as for example
constructed by the `streamFile` function in http-client.
The behaviour for the existing `ReqBody` API combinator is
unaffected by this change.
2017-01-12 14:08:50 +01:00
Oleg Grenrus
1f00a68937
Support aeson-1.1
2017-01-01 20:02:56 +02:00