Commit graph

162 commits

Author SHA1 Message Date
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
a4151acf9e Enable testing recipe 2018-10-25 23:16:16 +03:00
Oleg Grenrus
788e0248f1 8.4.4 job 2018-10-15 18:15:52 +03:00
Colin Woodbury
ef573bab0e
Update tested-with fields 2018-10-07 10:44:41 -07:00
Colin Woodbury
dec0636611
Update bounds for GHC 8.6 2018-10-07 10:38:36 -07:00
Oleg Grenrus
cfade67c2f Cleanup pre-GHC-8.0 stuff 2018-07-11 01:39:38 +03:00
Oleg Grenrus
5ba0e439dc Support only GHC-8.0+
Let's bump lower bounds to whatever is in LTS close to release date.
2018-07-10 17:17:56 +03:00
Oleg Grenrus
ba3a2f7b87 Default-Language in servant-client 2018-06-19 21:23:35 +03:00
Oleg Grenrus
f75583dbf1 Bump some lower bounds
Also drop unused dependencies
2018-06-19 21:23:17 +03:00
Oleg Grenrus
b0fefac5c6 Fix travis 2018-06-12 20:46:39 +03:00
Oleg Grenrus
6a1fa67fc4 Bump up versions 2018-06-12 19:27:13 +03:00
Oleg Grenrus
cc273f2d8b Allow aeson-1.4 2018-06-12 14:04:45 +03:00
Oleg Grenrus
0b084afe62 Update .travis.yml
- Disable file-upload recipe (changed MkLink breaks released
  servant-multipart)
- GHC-8.4.2 -> GHC-8.4.3
2018-06-01 13:42:34 +03:00
Oleg Grenrus
c56fda3869 Support GHC-8.4.1 and newer deps 2018-05-26 01:06:36 +03:00
Domen Kožar
49969695df
servant-client: update README.md and test it 2018-04-18 14:18:41 +01:00
Oleg Grenrus
7d4293fb56 Bump hspec, doctest and transformers-compat 2018-04-11 11:34:16 +03:00
Oleg Grenrus
9ddaafed42 Bump servant-client version 2018-04-11 11:28:33 +03:00
Oleg Grenrus
dd7ec1dfd7 Allow base-compat-0.10.0 2018-04-11 11:26:14 +03:00
Julian K. Arni
d78543575b Review fixes 2018-03-19 18:10:46 +01:00
Julian K. Arni
37482d69d7 Test that Stream combinator doesn't blow up memory. 2018-03-19 16:26:57 +01:00
Julian K. Arni
4824fbd961 Bump exceptions upper bound. 2018-03-13 11:07:44 +01:00
Emmanuel Touzery
7423ca3924 relax the aeson constraint, allow 1.3.0.0, fixes https://github.com/fpco/stackage/issues/3337 2018-03-09 20:26:03 +01:00
Oleg Grenrus
56a72d7d48 Add changelog and bump versions 2018-02-08 15:17:48 +02:00
Oleg Grenrus
f4fc2b321f Refactor servant-client-core Response+StreamingResponse 2018-01-31 09:26:28 +02:00
Oleg Grenrus
c55b778d8e Bump lower bound of http-types >= 0.12
- WIP: pending http-api-data release
- TODO: remove MIN_VERSION_http_types
- There have been 3 major releases of http-types:
  - 0.10 change name of variable
  - 0.11 lowercase escaped URIs
  - 0.12 uppercase escaped URIs
- It's easier for us to support only latest, migration from 0.9/0.10 to 0.12
  is trivial for the downstream. 0.11 may cause semantic (non-type-error) breakage somewhere.

Also allow lens-4.16, remove MIN_VERSION_http_types conditionals, and
update `stack.yaml`
2018-01-30 11:29:25 +02:00
Michal Rus
e4bd07a907 Support http-client’s CookieJar in servant-client 2018-01-26 18:45:52 +02:00
Oleg Grenrus
f9963d32ff Bump lower bounds in rest of packages 2018-01-25 17:17:35 +02:00
Oleg Grenrus
ccf0056f64 Regenerate .travis.yml 2017-12-10 14:27:40 +02:00
Oleg Grenrus
8f62f81ed9 Allow http-types-0.11 and hspec-wai-0.9 2017-12-10 13:27:45 +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
Oleg Grenrus
018f0e082e Bump versions and update changelogs.
The changelog for `servant` contains changes across core packages,
as we release them as a suite.

Also added links to the GitHub master as we might update entries
for old versions, as changelogs are written by humans.
2017-11-06 11:24:48 +02:00
Gershom
85cf8d1c60 Merge branch 'master' into gb-streaming 2017-11-04 00:15:35 -04:00
Gershom
38e87397e7 add tests, fix to make tests work 2017-11-04 00:10:29 -04:00
Oleg Grenrus
b45e94de19 cabal new-build based .travis.yml 2017-10-25 18:15:02 +03:00
Oleg Grenrus
76616de601 Allow http-types-0.10 2017-10-25 12:56:12 +03:00
Oleg Grenrus
2d6bf5055b Improve .cabal files
- Add build-tool-depends, so new-build can use hspec-discover
- Add mtl bounds in tutorial (and dependency on mtl-compact)
- Add extra-source-files to tutorial, so it's buildable from sdist
2017-10-23 08:58:39 +03:00
Julian K. Arni
49d5067e22 Review fixes 2017-09-15 09:15:46 -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
39ad465695 Ghc 8.2 fixes 2017-09-14 09:54:46 -04:00
Julian K. Arni
e8b9814168 Documentation and Reexport module 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
05db359296 Compiling HttpClient 2017-09-14 09:54:13 -04:00
Julian K. Arni
01f344dfbb Compiling servant-client-core 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
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
2665693529 extract module for http-client 2017-09-14 09:54:13 -04: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
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
Oleg Grenrus
590c4cb25c Bump lower bound for http-api-data 2017-05-14 20:16:38 +03: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
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
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
01324754da Update comment 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
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
Julian K. Arni
4fd31a60fb Bump version.
To 0.9.1.1
2016-10-27 13:25:27 +02:00
Julian K. Arni
9e809a0756 Bump version.
To 0.9.1.
2016-10-26 17:35:57 +02:00
Sönke Hahn
79f53cef3e servant-client: use base-compat in order to use less CPP 2016-10-17 11:52:40 -04:00
Julian K. Arni
3ddf225cec Bump version.
To 0.9.0.1.
2016-10-09 22:52:49 +02:00
Sönke Hahn
bc1a3e7faa bump version 2016-09-17 11:47:57 -04:00
Julian K. Arni
501212e6b9 Review fixes 2016-09-12 20:40:03 -03:00
Julian K. Arni
0870b3b2f5 Remove FromFormUrlEncoded and ToFormUrlEncoded.
In favor of FromForm and ToForm from the new version of http-api-data.
2016-09-12 18:34:18 -03:00
Oleg Grenrus
f44b336bf1 Support http-api-data-0.3 2016-09-12 18:34:00 -03:00
Christian Klinger
7a7f7d7cf5 changed ClientM to be a Reader of ClientEnv 2016-09-08 00:17:13 +02:00
Julian K. Arni
bf824a3889 Bump version to 0.8.1 2016-09-02 13:09:47 -03:00
Oleg Grenrus
6999b00297 Support aeson-1 2016-08-07 20:12:09 +03:00
Sönke Hahn
8eb412ff23 bump version 2016-07-10 17:21:36 +02:00
Sönke Hahn
d45c7c5897 support http-client-0.5 2016-07-09 18:36:00 +02:00
Oleg Grenrus
a7a3294752 Add bounds to servant, servant-server and servant-clients
(cherry picked from commit a0d5ed9aea)
2016-07-09 18:33:19 +02:00
Oleg Grenrus
dc9afe6405 Add upper bounds http-client <0.5 2016-07-05 12:27:30 +03:00
Sönke Hahn
d8a4cce691 version bump 2016-05-11 12:09:25 +08:00
Oleg Grenrus
008f2434ee Add -Wno-redundant-constraints 2016-05-10 19:09:59 +03:00
Sönke Hahn
e0216781b0 set the homepage to readthedocs 2016-04-22 14:12:21 +08:00
Sönke Hahn
b26bbfccda travis: enable -Wall -Werror 2016-04-21 13:06:10 +08:00
Alexander Bondarenko
b13ecd6098
Add missing changelogs and readme to cabal in servant, servant-client. 2016-04-16 16:51:38 +03:00
Sönke Hahn
ab6131d733 version bump 2016-04-15 18:35:17 +08:00
Sönke Hahn
c2c9bef571 version bump 2016-04-07 18:24:29 +08:00
Sönke Hahn
14a8139cbe version bump 2016-04-04 16:22:11 +08:00
aaron levin
b3af5a8d95 Move general authentication to Experimental module
Removes the UndecidableInstances extension in the module containing the
HasServer instances.
2016-03-09 22:30:34 +01:00
aaron levin
23da4879ef Add general auth support to servant-client 2016-03-09 22:30:34 +01:00
aaron levin
d989d15e4c Add basic-auth support to servant-client 2016-03-08 23:13:05 +01:00
Julian K. Arni
be36e5b313 Change copyright to servant contributors 2016-01-20 16:58:29 +01:00
Luigy Leon
17fcc25d87 add include header files to extra-source-files 2016-01-04 23:05:05 -05:00
Julian K. Arni
79d4f944a4 less OverlappingInstances noise 2016-01-04 13:09:11 -05:00
Philipp Kant
da5c273640 Relaxed upper version bound for http-api-data ...
... in order to include http-api-data-0.2.1, which is currently in LTS
Haskell (lts-3.16).
2015-12-03 14:13:50 +01:00