Commit Graph

271 Commits

Author SHA1 Message Date
Oleg Grenrus
0ae673583b Bump lower bounds in servant
- `text` is already 1.2.3.0 as https://github.com/fpco/stackage/issues/3147
  is resolved AFAICS

- `http-types` bound is surprisingly low due:
  https://github.com/fpco/stackage/issues/2976
2018-01-25 15:06:14 +02:00
Oleg Grenrus
bc3f61d615 Add Servant.API.Modifiers to servant
Changes Header, ReqBody and QueryParam to take a modifier list.

Resolves https://github.com/haskell-servant/servant/issues/856

ResponseHeader story turns to be somewhat ugly, but it can be made
elegant when https://github.com/haskell-servant/servant/issues/841 is
implemnted, then we can omit HList aka Header Heterogenous List
implementation.

- servant-server changes:

  Writing server side intepretations is quite simple using
  `unfoldRequestArgument`, which makes Header and QueryParam look quite
  the same.

  `ReqBody` cannot be easily made optional with current design (what that
  would mean: No Content-Type Header?), so that dimensions isn't used
  there.

- Add HasLink for all the rest ComprehensiveAPI combinators
- Add 'tricky' Header', QueryParam' endpoints to ComprehensiveAPI
- servant-docs: Quick'n'dirty implementation. Don't use modifiers information (yet).
2018-01-25 09:10:11 +02:00
Michael Sloan
7e0ad51b62 Use (a :: *) on phantom type variables for kinder type checking #887 2018-01-17 21:16:21 -08:00
Oleg Grenrus
cded17e079 Update changelog 2017-12-18 19:55:36 +02:00
Oleg Grenrus
71425ab23c Fix #835. Use Escaped to prevent double-escaping 2017-12-18 19:23:31 +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
25d0aa219f Fix typo in changelog 2017-11-08 12:49:47 +02:00
Oleg Grenrus
0813957b43 Open up significant changes in 0.12 [ci skip] 2017-11-08 10:18:16 +02:00
Oleg Grenrus
2779f523ca Add doctests (and changelog) 2017-11-07 19:08:10 +02:00
Robert Hensing
7410b4faa8 Links: add allLinks function and MkLink instance for (:<|>)
This lets you generate all links at once, which is useful in
conjunction with servant-generic.
2017-11-07 18:39:02 +02:00
Gershom
db13077ccb wall clean and compat 2017-11-06 11:55:27 -05:00
Oleg Grenrus
bba98a3755 Update changelogs 2017-11-06 12:35:43 +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
Gershom
0c77a2b4b0 make client endpoint give polymorphic result 2017-10-24 17:26:18 -07:00
Gershom
e75a3cc37b streaming client actually streams 2017-10-24 17:12:21 -07: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
Gershom
9a2ac6f4dd HasClient instance for Stream 2017-10-20 15:09:11 -04:00
Gershom
9132a5bb84 fix indentation 2017-10-19 17:43:01 -04:00
Gershom
d4168aa3ae first round of changes 2017-10-19 17:41:49 -04:00
Gershom
c5e04514f9 initial checkin 2017-10-18 18:43:43 -04:00
Oleg Grenrus
15cc4f55dd Update docs related to hoistServer 2017-10-01 20:24:22 +03: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
Felix Yan
51610fab60 Allow http-media 0.7 2017-06-27 23:16:10 +08:00
Catherine Galkina
262453b0d1 Add multiline Description example 2017-06-19 16:39:05 +03:00
Catherine Galkina
2e59a82d01 Add Description and Summary combinators 2017-06-08 17:35:24 +03:00
Oleg Grenrus
8959d61173 GHC-8.2.1 stack.yaml 2017-06-07 17:29:15 +03:00
Catherine Galkina
e413310d0a Update changelog 2017-06-02 18:18:42 +03:00
Catherine Galkina
505ca457cc Lower Sub and Alternative infix precedence to 4 and 3 respectively 2017-06-02 18:11:05 +03:00
Oleg Grenrus
cc13d62c8c Use #warning in Setup.lhs 2017-05-24 10:22:01 +03:00
Oleg Grenrus
b6cfd64b5a GHC-8.2 readyness 2017-05-24 08:02:57 +03:00
Oleg Grenrus
ec930ac9a8 Release 0.11 2017-05-24 08:02:56 +03:00
Oleg Grenrus
f6c30b2892 Allow mmorph-1.2 2017-05-24 07:51:07 +03:00
David Turner
7d07db7ed3 Add test for safeLink applied to an EmptyAPI type 2017-05-16 16:25:01 +00:00
David Turner
249a8386a5 Derive Enum on EmptyAPI 2017-05-16 16:04:25 +00:00
David Turner
021bcd9e23 Document that EmptyAPI is, morally speaking, the unit of :<|> 2017-05-16 16:03:25 +00:00
David Turner
2c6aca0fc6 Add to ComprehensiveAPI 2017-05-16 10:26:06 +00:00
David Turner
5a65563d9a Re-export EmptyAPI(..) from Servant.API 2017-05-16 10:05:58 +00:00
David Turner
d02c7668ee Add EmptyAPI type 2017-05-16 10:05:24 +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
301515210b Merge pull request #751 from phadej/regression-734
Add regression test for #734
2017-05-15 19:52:49 +03:00
Oleg Grenrus
6fff76e304 Add regression test for #734 2017-05-15 19:45:14 +03:00
Oleg Grenrus
d4cffe6591 Add functional dependency back to Enter 2017-05-15 19:26:03 +03:00
Oleg Grenrus
54c3053342 Escape segments in linkURI 2017-05-14 20:42:10 +03:00