Oleg Grenrus
8feda81fcd
Separate Servant.Client.Streaming
...
- as a bonus only `servant-client` depends on `kan-extensions`
2018-11-08 17:58:21 +02:00
Oleg Grenrus
45c1cbdfd5
Refactor Stream stuff
...
- Introduce SourceT, which is simple variant of "correct `ListT`".
There are another variants possible (like in `streaming`),
but I'm not sure there's much real difference.
- Introduce `Codensity`. There's a flag if people don't want to depend
on `kan-extensions`.
- `StreamGenerator` and `ResultStream` are both `SourceT`.
`Stream` combinator in `servant-client` uses `Codensity` for CPS.
- Add servant-machines, servant-conduit, servant-pipes
- Add streaming cookbook: just code, no explanations.
- Add a script to run streaming 'benchmarks'
2018-11-05 15:48:47 +02:00
Oleg Grenrus
f9bcc15d0b
Apply stylish-haskell on all modules
2018-06-29 23:36:39 +03:00
Alp Mestanogullari
fc3c6089b8
document hoistClient (haddocks, tutorial)
2018-04-04 01:48:48 +02:00
Alp Mestanogullari
9eb57a6119
add a test for hoistClient
2018-04-04 01:48:48 +02:00
Alp Mestanogullari
200311ee26
add hoistClient to HasClient class
2018-04-04 01:48:48 +02:00
Julian K. Arni
37482d69d7
Test that Stream combinator doesn't blow up memory.
2018-03-19 16:26:57 +01:00
Oleg Grenrus
454f53315f
Remove catchServantError
2018-03-11 16:50:14 +02:00
Oleg Grenrus
f4fc2b321f
Refactor servant-client-core Response+StreamingResponse
2018-01-31 09:26:28 +02:00
Michal Rus
e4bd07a907
Support http-client’s CookieJar in servant-client
2018-01-26 18:45:52 +02:00
Oleg Grenrus
cbd3862f24
Merge pull request #836 from gbaz/gb-streaming
...
Stream endpoint support for servant
2017-12-03 17:19:47 +02:00
Oleg Grenrus
a67cd56c1f
Send Accept header in servant-client
...
Fixes #858 . The bug was introduced in servant-client-core refactor
(servant-client-0.12).
See 8973cf56f1/servant-client/src/Servant/Common/Req.hs (L151-L179)
for the unbroken variant in servant-client-0.11
2017-11-11 00:06:25 +02:00
Gershom
90292e1f62
move statuscheck earlier on streaming response to give good error
2017-11-06 11:37:00 -05:00
Gershom
e75a3cc37b
streaming client actually streams
2017-10-24 17:12:21 -07:00
Joshua McCartney
3fedbd097a
Fix issue #821
2017-09-28 19:15:53 -04:00
Julian K. Arni
1a67d93c60
Use own throw/catch
2017-09-15 14:57:03 -04:00
Julian K. Arni
65c2cbb6a9
Fix 7.8.4 IsList Sequence issue
...
And other minor 7.8.4 issues.
2017-09-14 11:23:42 -04:00
Julian K. Arni
da8337809b
Documentation fixes
2017-09-14 09:54:13 -04:00
Julian K. Arni
e8b9814168
Documentation and Reexport module
2017-09-14 09:54:13 -04:00
Julian K. Arni
6be78e0b38
Documentation
2017-09-14 09:54:13 -04:00
Julian K. Arni
5bd9d253ce
Almost compiling test
2017-09-14 09:54:13 -04:00
Julian K. Arni
75ea91c34d
Fix some tests
2017-09-14 09:54:13 -04:00
Julian K. Arni
f44ab3d083
Cleanup
2017-09-14 09:54:13 -04:00
Julian K. Arni
05db359296
Compiling HttpClient
2017-09-14 09:54:13 -04:00
Julian K. Arni
35599d8b38
More reorganization
2017-09-14 09:54:13 -04:00
Julian K. Arni
95fac329a6
Rewrite servant-client.
...
This commit begins the reorganization of the servant-client project
so as to allow multiple backends, and also begins some much-needed
refactoring of the servant-client code.
2017-09-14 09:54:13 -04:00
Arnaud Bailly
b592b51ed8
provide convenience functions for ClientM-based clients
2017-09-14 09:54:13 -04:00
Arnaud Bailly
7480076c91
cleanup compiler's warnings
2017-09-14 09:54:13 -04:00
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
Catherine Galkina
ec0431d930
Add instances for new combinators
2017-06-08 18:27:36 +03:00
David Turner
0bbc4f98a4
Rename EmptyAPIClient to EmptyClient
2017-05-16 16:00:15 +00:00
David Turner
178f05595a
Better docs for EmptyAPIClient
2017-05-16 11:06:37 +00:00
David Turner
4c64c13af0
Add EmptyAPIClient and instance HasClient EmptyAPI
2017-05-16 10:06:48 +00: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
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
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
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
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
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
31e1ceb6d0
Add Servant.Client.Generic module
2017-01-17 16:29:24 +03:00