Commit Graph

187 Commits

Author SHA1 Message Date
Oleg Grenrus
ec930ac9a8 Release 0.11 2017-05-24 08:02:56 +03: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
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
bc6ff20f4d Use resourcet for resource managment 2017-01-19 00:57:31 +02:00
Alp Mestanogullari
92786feead add some basic tests for the cleanup machinery in Delayed 2017-01-17 22:29:37 +02:00
Oleg Grenrus
5168157757 Make Handler a newtype 2017-01-16 12:18:49 +02:00
Oleg Grenrus
d5e73bf577 Make servant buildable with cabal new-build 2017-01-16 11:03:06 +02:00
Oleg Grenrus
85feb31cbb Fix hspec-wai issue 2017-01-01 20:52:18 +02: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
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
Oleg Grenrus
f44b336bf1 Support http-api-data-0.3 2016-09-12 18:34:00 -03:00
Julian Arni
29af0bbdf9 Merge pull request #585 from axman6/axman6/get-headers-581
Replace use of ToByteString with HttpApiData for GetHeaders
2016-09-06 20:59:46 -03:00
Julian K. Arni
bf824a3889 Bump version to 0.8.1 2016-09-02 13:09:47 -03:00
Alex Mason
5bef76ed03 Remove all use of bytestring-conversion 2016-09-02 23:27:37 +10:00
Sönke Hahn
d0a28e46b0 add missing test file to servant-server.cabal 2016-08-14 22:59:12 +02: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
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
Sönke Hahn
3c27ff5a32 added test script for stack files (and fixed stack for ghc-7.8) 2016-05-29 00:03:46 +08:00
Sönke Hahn
d8a4cce691 version bump 2016-05-11 12:09:25 +08:00
Oleg Grenrus
a5cf899eb8 Add RouterSpec and StreamingSpec to servant-server.cabal 2016-05-10 19:14:04 +03:00
Oleg Grenrus
008f2434ee Add -Wno-redundant-constraints 2016-05-10 19:09:59 +03:00
Oleg Grenrus
fd19694ed5 Make doctests accept GHC-8.0 formatted type errors 2016-05-10 19:09:59 +03:00
Amar
3f4bcf7752 Remove mmorph dependency from servant-server 2016-04-28 22:13:09 +08:00
Amar
a948639673 Move enter to servant package 2016-04-28 22:13:04 +08: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
Sönke Hahn
ab6131d733 version bump 2016-04-15 18:35:17 +08:00
Andres Löh
1807c72c8a Merge pull request #388 from bgamari/master
Compatibility with GHC 8.0
2016-04-13 15:09:16 +02:00
Sönke Hahn
c2c9bef571 version bump 2016-04-07 18:24:29 +08:00
Sönke Hahn
6df3429b68 refactored basic auth test cases 2016-04-06 16:44:40 +08:00
Sönke Hahn
14a8139cbe version bump 2016-04-04 16:22:11 +08:00
Sönke Hahn
97168459fd servant-server: add a test-case for streaming request bodies from client to server 2016-03-27 17:23:33 +08:00
Denis Redozubov
c755f47806 use base-compat in servant-server 2016-03-13 12:42:41 +03: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
0461c4642d Add gen. authentication support to servant-server 2016-03-09 22:30:28 +01:00
aaron levin
104ac29bf8 Add BasicAuth support to servant-server 2016-03-08 23:13:02 +01:00
Sönke Hahn
8ef4d4543b renaming: Config -> Context 2016-03-07 23:12:24 +08:00
Ben Gamari
3467eba44f servant-server: Bump transformers upper bound 2016-02-20 13:36:50 +01:00
Ondrej Palkovsky
2cdd6a5fea Bump aeson version. 2016-02-18 22:45:05 +01:00
Sönke Hahn
67315c4487 server: added Config machinery 2016-01-21 17:55:02 +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
Julian K. Arni
a4a0f1988b Bump wai and warp upper bound to < 3.3. 2016-01-04 17:21:14 +01: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
Julian K. Arni
9c12b7839b 7.8 routing fixes, -Wall, cleanup, changelog. 2015-10-26 16:56:46 +01:00
Andres Loeh
1398d1f5e1 More systematic approach to delayed checks.
This introduces a `Delayed` type in `RoutingApplication.hs` that
contains a handler together with delayed checks. There are several
blocks of delayed checks, so that we can ultimately execute them in the
order we desire.

The process is documented in more detail in `RoutingApplication.hs`.
2015-10-26 16:56:25 +01:00
Julian K. Arni
afc76b8f6c Remove MatrixParam.
In servant, servant-server, and servant-client.
2015-10-13 21:37:07 +02:00
Julian K. Arni
72acd1a19d Bump upper bound for http-types. 2015-10-13 20:53:56 +02:00
Nickolay Kudasov
2a7d110c17 Add version bounds for http-api-data 2015-10-08 16:21:02 +03:00
Nickolay Kudasov
40d2c68897 Use http-api-data package instead of ToText/FromText 2015-10-08 00:38:47 +03:00
Julian K. Arni
3c3efda0d5 Extra file 2015-09-23 20:18:52 +02:00
Julian K. Arni
965063171b Janitoring 2015-09-23 20:18:52 +02:00
Index Int
c5257f42ab Depend on transformers-compat 2015-09-12 16:28:20 +03:00
Index Int
f2f7b061d2 Drop EitherT in favor of ExceptT 2015-09-12 15:11:24 +03:00
AndrewRademacher
e780e445cb Bumped aeson version. 2015-08-06 13:40:18 -05:00
Julian Arni
522a7dc961 Merge pull request #165 from haskell-servant/jkarni/bump-warp
Bump warp upper bound.
2015-07-30 10:44:35 +02:00
Julian K. Arni
1c9d5baa99 Bump versions to 0.5 2015-07-27 22:26:49 +02:00
Julian K. Arni
42d73d10e6 Bump warp upper bound.
To < 3.2.
2015-07-23 13:31:37 +02:00
Alp Mestanogullari
3209f98985 Merge pull request #141 from haskell-servant/new-combinators
Add HttpVersion, IsSecure, RemoteHost and Vault combinators with inst…
2015-07-10 15:00:19 +02:00
Alp Mestanogullari
f39d57c6b3 add HttpVersion, IsSecure, RemoteHost and Vault combinators with instances for all interpretations (all but the server ones being 'ignore that combinator')
tighter version bounds for network

cleanup

document the new combinators

servant-server: add some tests for HttpVersion, IsSecure, RemoteHost and Vault

update changelogs

address Julian's feedback

remove vault test in servant-server

servant-server tests: -Werror friendly
2015-07-10 14:00:01 +02:00
Julian K. Arni
5db91c9ecb Cabal file fixes 2015-07-09 23:34:21 +02:00
Julian K. Arni
d5091a68e1 Bump string-conversions 2015-06-04 15:09:01 +02:00
Alp Mestanogullari
d654ccaf3d Merge pull request #111 from haskell-servant/improved-routing
Improved routing
2015-06-04 12:57:45 +01:00
Andres Loeh
eb86a82105 Refactoring: one module per concept.
The main `Server.Internal` module was getting a bit large for my taste.
It now contains just the instances. All the administrative utilities
are in their own dedicated modules.
2015-06-04 13:14:31 +02:00
Andres Loeh
f9b1e7fc50 Switch server interpretation to a datatype for efficiency.
Instead of directly interpreting a server as a `RoutingApplication`,
this change introduces the concept of a `Router`, which is a datatype
with several constructors.

In particular, the type of the `route` function changes from

    route :: Proxy layout -> Server layout -> RoutingApplication

to

    route :: Proxy layout -> IO (RouteResult (Server layout)) -> Router

Most important in practice is the case of the `StaticRouter` constructor
in `Router`. For choices between statically known paths, we can now use
a lookup table to dispatch requests rather than trying each request
individually.

This brings down routing complexity of a common case from
O(n) to O(log n).

Another important change is that the handler that is passed down by
`route` is no longer of type `Server layout`, but of type
`IO (RouteResult (Server layout))`. This means that API constructs
can "delay" checks and failure. For example, `ReqBody` does not have
to fetch the request body and feed it to the handler immediately; it
can instead record these actions in the handler that is passed down.
The code will only be executed at a leaf / endpoint of the API.

This is desired behaviour: We prefer to save work by doing all matching
on static path components first. Furthermore, we get better error codes
by doing so.
2015-06-04 13:07:53 +02:00
Ben Gamari
939a008b67 Bump aeson bound 2015-06-03 06:53:34 -04:00
Julian K. Arni
0b3291970f Bump to 0.4.1 2015-05-29 16:24:08 +02:00
Julian K. Arni
ce012da4ee Bump 'either' upper-bound 2015-05-29 14:37:10 +02:00
Julian K. Arni
2bff26feca Bump attoparsec 2015-05-27 15:19:30 +02:00
Ilya Smelkov
7e14eeafe9 Use filepath to add trailing path separator 2015-05-16 01:03:48 +03:00
Sönke Hahn
0d47f4527b fix doctests for cabal-install-1.18 2015-05-14 19:47:39 +08:00
Alp Mestanogullari
405d69d954 fix some links in the cabal descriptions 2015-05-11 10:43:52 +02:00
Julian K. Arni
b81ea9eee2 Bump everything to 0.4 2015-05-09 17:28:52 +02:00
Julian K. Arni
3b4b958110 Doctests for servant-server 2015-05-03 01:27:48 +02:00
Julian K. Arni
74f4d2db14 Enter via natural transformations 2015-05-03 00:15:35 +02:00
Julian K. Arni
a2b8d6ae58 Better servant-server left 2015-05-02 03:38:53 +01:00
Julian K. Arni
669fb6e371 Add link to changelogs in cabal file 2015-04-20 16:00:51 +02:00
Julian K. Arni
4ab74434b3 update cabal files for the repo merge 2015-04-20 15:55:41 +02:00
Julian K. Arni
ed502f5f21 Prepare merge 2015-04-20 11:13:18 +02:00