git.iko.soy/typeable/servant-reflex
on master help sign in
Fix types for jsaddle, bump deps
7acb477Greg Hale
deps/servant-snap+1−1

Submodule changed.

exec/Example.hs+1−1
@@ -19,7 +19,7 @@ import Servant.API
19import API
19import API
20import Data.Proxy
20import Data.Proxy
21import Text.Read (readMaybe)
21import Text.Read (readMaybe)
22−import Reflex.Dom
22+import Reflex.Dom hiding (run)
23------------------------------------------------------------------------------
23------------------------------------------------------------------------------
24import Servant.Reflex
24import Servant.Reflex
25import Servant.Reflex.Multi
25import Servant.Reflex.Multi
overrides.nix−23
@@ -8,28 +8,5 @@ let
8in
8in
9reflex-platform.ghcjs.override {
9reflex-platform.ghcjs.override {
10 overrides = self: super: {
10 overrides = self: super: {
11− servant = dontCheck (self.callPackage (cabal2nixResult deps/servant/servant) {});
12− http-api-data = dontCheck (self.callPackage (cabal2nixResult deps/http-api-data) {});
13− natural-transformation = self.callPackage (
14− { mkDerivation, base, containers, fetchgit, quickcheck-instances
15− , stdenv, tasty, tasty-quickcheck
16− }:
17− mkDerivation {
18− pname = "natural-transformation";
19− version = "0.4";
20− src = fetchgit {
21− url = "https://github.com/ku-fpg/natural-transformation";
22− sha256 = "0xbnnxbf5ydszbhf7h5ra3mrqy4mcyqc3zb2k8bwm1zyqrz6v0fs";
23− rev = "b1200c09dcafd034e32846413913b74735c8ba56";
24− };
25− libraryHaskellDepends = [ base ];
26− testHaskellDepends = [
27− base containers quickcheck-instances tasty tasty-quickcheck
28− ];
29− homepage = "https://github.com/ku-fpg/natural-transformation";
30− description = "A natural transformation package";
31− license = stdenv.lib.licenses.bsd3;
32− }
33− ) {};
34 };
11 };
35}
12}
servant-reflex.cabal+2−1
@@ -32,9 +32,10 @@ library
32 containers >= 0.5.6 && < 0.6,
32 containers >= 0.5.6 && < 0.6,
33 data-default >= 0.5 && < 0.8,
33 data-default >= 0.5 && < 0.8,
34 exceptions >= 0.8 && < 0.9,
34 exceptions >= 0.8 && < 0.9,
35− ghcjs-dom >= 0.2 && < 0.3,
35+ ghcjs-dom >= 0.2 && < 0.8,
36 http-api-data >= 0.2 && < 0.4,
36 http-api-data >= 0.2 && < 0.4,
37 http-media >= 0.6 && < 0.7,
37 http-media >= 0.6 && < 0.7,
38+ jsaddle >= 0.8.1 && < 0.9,
38 mtl >= 2.2.1 && < 2.3,
39 mtl >= 2.2.1 && < 2.3,
39 network-uri >= 2.6 && < 2.7,
40 network-uri >= 2.6 && < 2.7,
40 reflex >= 0.5 && < 0.6,
41 reflex >= 0.5 && < 0.6,
src/Servant/Common/BaseUrl.hs+3−2
@@ -20,18 +20,19 @@ module Servant.Common.BaseUrl (
20) where
20) where
21
21
22import Control.Monad (join)
22import Control.Monad (join)
23−import Control.Monad.IO.Class (MonadIO)
23+-- import Control.Monad.IO.Class (MonadIO)
24import Control.Monad.Fix (MonadFix)
24import Control.Monad.Fix (MonadFix)
25import Data.Monoid ((<>))
25import Data.Monoid ((<>))
26import Data.Text (Text)
26import Data.Text (Text)
27import qualified Data.Text as T
27import qualified Data.Text as T
28import GHC.Generics
28import GHC.Generics
29+import Language.Javascript.JSaddle.Monad (MonadJSM)
29import Reflex
30import Reflex
30import Reflex.Dom
31import Reflex.Dom
31import Text.Read
32import Text.Read
32
33
33
34
34−type SupportsServantReflex t m = (Reflex t, TriggerEvent t m, PerformEvent t m, HasWebView (Performable m), MonadIO (Performable m))
35+type SupportsServantReflex t m = (Reflex t, TriggerEvent t m, PerformEvent t m, HasWebView (Performable m), MonadJSM (Performable m))
35
36
36-- | URI scheme to use
37-- | URI scheme to use
37data Scheme =
38data Scheme =
src/Servant/Common/Req.hs+3−1
@@ -25,6 +25,7 @@ import Data.Text (Text)
25import qualified Data.Text as T
25import qualified Data.Text as T
26import qualified Data.Text.Encoding as TE
26import qualified Data.Text.Encoding as TE
27import Data.Traversable (forM)
27import Data.Traversable (forM)
28+import Language.Javascript.JSaddle.Monad (JSM, MonadJSM)
28import Reflex.Dom hiding (tag)
29import Reflex.Dom hiding (tag)
29import Servant.Common.BaseUrl (BaseUrl, showBaseUrl,
30import Servant.Common.BaseUrl (BaseUrl, showBaseUrl,
30 SupportsServantReflex)
31 SupportsServantReflex)
@@ -255,6 +256,7 @@ performRequests reqMeth rs reqHost trigger = do
255-- | Issues a collection of requests when the supplied Event fires. When ALL requests from a given firing complete, the results are collected and returned via the return Event.
256-- | Issues a collection of requests when the supplied Event fires. When ALL requests from a given firing complete, the results are collected and returned via the return Event.
256performSomeRequestsAsync
257performSomeRequestsAsync
257 :: (MonadIO (Performable m),
258 :: (MonadIO (Performable m),
259+ MonadJSM (Performable m),
258 HasWebView (Performable m),
260 HasWebView (Performable m),
259 PerformEvent t m,
261 PerformEvent t m,
260 TriggerEvent t m,
262 TriggerEvent t m,
@@ -270,7 +272,7 @@ performSomeRequestsAsync = performSomeRequestsAsync' newXMLHttpRequest . fmap re
270-- that accepts 'f (Either e (XhrRequestb))' events
272-- that accepts 'f (Either e (XhrRequestb))' events
271performSomeRequestsAsync'
273performSomeRequestsAsync'
272 :: (MonadIO (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f)
274 :: (MonadIO (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f)
273− => (XhrRequest b -> (a -> IO ()) -> Performable m XMLHttpRequest)
275+ => (XhrRequest b -> (a -> JSM ()) -> Performable m XMLHttpRequest)
274 -> Event t (Performable m (f (Either Text (XhrRequest b)))) -> m (Event t (f (Either Text a)))
276 -> Event t (Performable m (f (Either Text (XhrRequest b)))) -> m (Event t (f (Either Text a)))
275performSomeRequestsAsync' newXhr req = performEventAsync $ ffor req $ \hrs cb -> do
277performSomeRequestsAsync' newXhr req = performEventAsync $ ffor req $ \hrs cb -> do
276 rs <- hrs
278 rs <- hrs