Commit Graph

101 Commits

Author SHA1 Message Date
Sönke Hahn
0e9d075ab4 add Show, Eq and Ord for BaseUrl 2014-11-05 20:10:46 +08:00
Sönke Hahn
f0bca3852c implement BaseUrl to allow https for Clients 2014-11-05 20:03:57 +08:00
Julian K. Arni
11f82633da Type safe links. 2014-11-04 12:24:52 +01:00
Alp Mestanogullari
c4807709c4 add a lot of FromText/ToText instances 2014-10-31 15:40:56 +01:00
Sönke Hahn
16dbf9b188 Allow arbitrary JSON values (not only arrays and objects)
And added tests for QueryFlag.
2014-10-31 20:29:00 +08:00
Sönke Hahn
c2be4f3377 client tests: QueryParams 2014-10-31 20:18:31 +08:00
Alp Mestanogullari
0802221789 make QueryFlag more permissive 2014-10-31 13:01:12 +01:00
Sönke Hahn
a9eeff14bd client: correctly handle exceptions on error status codes 2014-10-31 18:01:00 +08:00
Sönke Hahn
f058a3051a HasClient: changing URI to URIAuth (and adding the first client test
case)
2014-10-31 18:01:00 +08:00
Alp Mestanogullari
df12f9b9bd add doc generation support for QueryParams and QueryFlag 2014-10-30 12:34:16 +01:00
Alp Mestanogullari
bab2bc7edf server and client support for QueryParams (list of values in query string) and QueryFlag (value-less query string argument) 2014-10-30 12:34:16 +01:00
Sönke Hahn
08e2a6a895 renamed Union -> Alternative 2014-10-30 18:37:58 +08:00
Julian K. Arni
99e790492a QQ more tests and cleanup. 2014-10-29 14:54:13 +01:00
Julian K. Arni
c6264dd202 Add queryParam.
And update names.
2014-10-29 13:10:04 +01:00
Julian K. Arni
1f6c3c4009 Add new request -> response syntax 2014-10-29 12:16:02 +01:00
Julian K. Arni
21c8fcbea2 Flip fixity of TH sub.
And do some general cleanup.
2014-10-29 12:16:02 +01:00
Julian K. Arni
e6be95fb9e Basic QQ data types and parsing. 2014-10-29 12:15:08 +01:00
Alp Mestanogullari
90ea56534b add a testcase to very that we reject invalid json bodies with HTTP status 400 2014-10-28 16:58:46 +01:00
Alp Mestanogullari
7ca6b26b78 raise InvalidBody when failing to decode the request body 2014-10-28 16:52:30 +01:00
Alp Mestanogullari
9ade9a43f3 introduce InvalidBody as the 'stickiest' route mismatch reason. code review changes too, to close #14 close #11 close #10 2014-10-28 16:50:42 +01:00
Alp Mestanogullari
82a7428507 rename JsonBody to ReqBody 2014-10-28 16:29:04 +01:00
Alp Mestanogullari
9b375b137f rename RQBody to JsonBody everywhere 2014-10-28 15:29:07 +01:00
Alp Mestanogullari
fc67c3b7aa rename GetParam to QueryParam everywhere 2014-10-28 15:06:47 +01:00
Alp Mestanogullari
641ee69eba improve the routing mechanism by augmenting the routing error type with some information and a sound monoid instance. this addresses #10 2014-10-28 14:34:28 +01:00
Sönke Hahn
71de673df2 refactoring: move Servant.Text to Servant.Utils.Text 2014-10-28 12:39:50 +01:00
Alp Mestanogullari
e7711a3c17 small haddocks changes 2014-10-28 12:36:32 +01:00
Sönke Hahn
c98c7db0df Routing strips path snippets (and Raw receives modified Requests) 2014-10-28 17:42:49 +08:00
Sönke Hahn
a7c1ec1ad4 Merge remote-tracking branch 'origin/new-impl' into misc
Conflicts:
	servant/src/Servant.hs
	servant/src/Servant/API.hs
2014-10-28 17:23:52 +08:00
Sönke Hahn
e255b1fa5a added documentation 2014-10-28 17:12:25 +08:00
Alp Mestanogullari
1181eb8d5e add client, server and docs support for PUT 2014-10-28 09:17:28 +01:00
Alp Mestanogullari
97d4133eb1 add client, server and docs support for the DELETE HTTP method 2014-10-28 09:14:10 +01:00
Alp Mestanogullari
4ebc4944c2 Add automatic doc generation support, including instances for all our API combinators so far 2014-10-28 09:04:27 +01:00
Sönke Hahn
f37e39bb4d Tweaked comment in Servant.API.Post 2014-10-28 14:25:08 +08:00
Sönke Hahn
c08ca320a9 test suite: Capture 2014-10-28 14:00:01 +08:00
Sönke Hahn
b749f7fbc6 added Servant.API.Raw (only with HasServer) 2014-10-28 13:42:37 +08:00
Sönke Hahn
207f398572 test suite: GetParam 2014-10-28 13:15:29 +08:00
Sönke Hahn
d0782db08b test suite: Post 2014-10-27 15:40:29 +08:00
Alp Mestanogullari
d838191ec8 reorganize everything into a sane(r) module structure 2014-10-25 01:27:39 +02:00
Alp Mestanogullari
50f5c36727 revamp a lot of the HasClient code to thread a Req object around instead of just the path. allows for a cleaner way to handle path, query string and request body modification. add support for GET params too 2014-10-24 19:39:03 +02:00
Alp Mestanogullari
35c9078fcb get rid of some more proxies, client-side capture support, client and server side request body support 2014-10-24 13:37:37 +02:00
Alp Mestanogullari
8c8bc15ea9 get rid of a lot of useless proxies and implement POST requests support on server and client side 2014-10-24 13:36:19 +02:00
Alp Mestanogullari
8c260f5127 make error messages for the GET client more general 2014-10-23 14:36:40 +02:00
Alp Mestanogullari
c1a5a3a09f add request body support, works very much like captures 2014-10-23 14:16:00 +02:00
Alp Mestanogullari
3a32bd4162 rename the 'Captured' class to 'FromText' 2014-10-22 12:56:46 +02:00
Alp Mestanogullari
1a105448f0 simplify the example a bit 2014-10-21 17:09:06 +02:00
Alp Mestanogullari
dfc2676c25 fixed the bug i mentionned in a note, so removed that part of the note 2014-10-21 16:37:51 +02:00
Alp Mestanogullari
85f883f4de make sure the path matches exactly in GET, and check that the client actually made a GET request 2014-10-21 16:31:22 +02:00
Alp Mestanogullari
45a625c72c add a comment about the Server instance for Capture 2014-10-21 16:18:18 +02:00
Alp Mestanogullari
a650b97378 extend the note about a potentially buggy behavior 2014-10-21 15:46:20 +02:00
Alp Mestanogullari
3050d6dcbf add a note about a potential buggy behavior 2014-10-21 15:38:26 +02:00
Alp Mestanogullari
c35a510f12 beginning of a new implementation, using Soenke's typed rest 2014-10-21 15:25:34 +02:00