git.iko.soy/typeable/servant-reflex
on master help sign in
Merge pull request #81 from benkolera/reflex-dom-0.5
4459563Greg Hale
exec/Example.hs+1−1
@@ -21,7 +21,7 @@ import Servant.API
21import API
21import API
22import Data.Proxy
22import Data.Proxy
23import Text.Read (readMaybe)
23import Text.Read (readMaybe)
24−import Reflex.Dom hiding (run)
24+import Reflex.Dom.Core hiding (run)
25------------------------------------------------------------------------------
25------------------------------------------------------------------------------
26import Servant.Reflex
26import Servant.Reflex
27import Servant.Reflex.Multi
27import Servant.Reflex.Multi
nix/hspec-webdriver.patchdeleted−36
@@ -1,36 +0,0 @@
1−diff --git a/Test/Hspec/WebDriver.hs b/Test/Hspec/WebDriver.hs
2−index 3162656..313360c 100644
3−--- a/Test/Hspec/WebDriver.hs
4−+++ b/Test/Hspec/WebDriver.hs
5−@@ -111,7 +111,8 @@ import Data.Traversable (traverse)
6−
7− import qualified Test.Hspec as H
8− import Test.Hspec hiding (shouldReturn, shouldBe, shouldSatisfy, shouldThrow, pending, pendingWith, example)
9−-import Test.Hspec.Core.Spec (Result(..), Item(..), Example(..), SpecTree, Tree(..), fromSpecList, runSpecM)
10−+import qualified Test.Hspec.Core as H
11−+import Test.Hspec.Core.Spec (Result(..), ResultStatus(..), Item(..), Example(..), SpecTree, Tree(..), fromSpecList, runSpecM)
12−
13− import Test.WebDriver (WD, Capabilities)
14− import qualified Test.WebDriver as W
15−@@ -398,7 +399,7 @@ procTestSession cfg cap s = do
16−
17− instance Eq multi => Example (WdExample multi) where
18− type Arg (WdExample multi) = WdTestSession multi
19−- evaluateExample (WdPending msg) _ _ _ = return $ Pending msg
20−+ evaluateExample (WdPending msg) _ _ _ = return $ Result "" $ Pending Nothing msg
21− evaluateExample (WdExample multi (WdOptions {skipRemainingTestsAfterFailure}) wd) _ act _ = do
22− prevHadError <- newIORef False
23− aborted <- newIORef False
24−@@ -445,9 +446,9 @@ instance Eq multi => Example (WdExample multi) where
25− merr <- readIORef prevHadError
26− mabort <- readIORef aborted
27− return $ case (merr, mabort) of
28−- (True, _) -> Pending (Just "Previous example had an error")
29−- (_, True) -> Pending (Just "Session has been aborted")
30−- _ -> Success
31−+ (True, _) -> Result "" $ Pending Nothing (Just "Previous example had an error")
32−+ (_, True) -> Result "" $ Pending Nothing (Just "Session has been aborted")
33−+ _ -> Result "" $ Success
34−
35− --------------------------------------------------------------------------------
36− --- Utils
nix/reflex-platform.nix+2−2
@@ -1,7 +1,7 @@
1let
1let
2− rev = "3d232e2d1d8e8d10fbafc928972c901c764ae324";
2+ rev = "a15d3a2411e7ca7d4ee4853b57c72fe83faee272";
3in import (builtins.fetchTarball
3in import (builtins.fetchTarball
4 {
4 {
5 url = "https://github.com/reflex-frp/reflex-platform/archive/${rev}.tar.gz";
5 url = "https://github.com/reflex-frp/reflex-platform/archive/${rev}.tar.gz";
6− sha256 = "15ysjn0aknbl06spn4qls7xapm0d3qw2awx6k8jl28zwkaid45yg";
6+ sha256 = "1dsvw0lah7761vndip1hqal4fjpjv84ravinnfhy83jgfav5ivna";
7 }) {}
7 }) {}
nix/servant-snap.nixnew file+9
@@ -0,0 +1,9 @@
1+# Servant-snap is stuck a bit behind atm. But we have a fork that mostly works
2+# except for streaming, which is good enough for this test server. See:
3+# https://github.com/haskell-servant/servant-snap/issues/20
4+{ nixpkgs ? import <nixpkgs> {}}: self: super:
5+self.callCabal2nix "servant-snap" (nixpkgs.fetchgit {
6+ url = "https://github.com/antislava/servant-snap.git";
7+ rev = "fc9658e8f52ebce9e4f304ea0c6705d697d4fa84";
8+ sha256 = "0zlipmx1fb73mhpnndwmdmigxxrsdnsnb1157pgsrxpx89l9pjig";
9+}) {}
servant-reflex.cabal+3−3
@@ -36,8 +36,8 @@ library
36 jsaddle >= 0.8 && < 0.10,
36 jsaddle >= 0.8 && < 0.10,
37 mtl >= 2.2.1 && < 2.3,
37 mtl >= 2.2.1 && < 2.3,
38 network-uri >= 2.6 && < 2.7,
38 network-uri >= 2.6 && < 2.7,
39− reflex >= 0.5 && < 0.6,
39+ reflex >= 0.5 && < 0.7,
40− reflex-dom-core == 0.4 && < 0.5,
40+ reflex-dom-core >= 0.4 && < 0.6,
41 safe >= 0.3.9 && < 0.4,
41 safe >= 0.3.9 && < 0.4,
42 servant >= 0.8 && < 0.15,
42 servant >= 0.8 && < 0.15,
43 servant-auth >= 0.2.1 && < 0.4,
43 servant-auth >= 0.2.1 && < 0.4,
@@ -54,7 +54,7 @@ executable example
54 buildable: True
54 buildable: True
55 else
55 else
56 buildable: False
56 buildable: False
57− build-depends: aeson, reflex, servant-reflex, base, scientific, servant, reflex-dom, text
57+ build-depends: aeson, reflex, servant-reflex, base, scientific, servant, reflex-dom-core, text
58 default-language: Haskell2010
58 default-language: Haskell2010
59 main-is: Example.hs
59 main-is: Example.hs
60 other-modules: API
60 other-modules: API
travis.nix+4−13
@@ -18,26 +18,17 @@ let
18
18
19 ghcjsPkgs = with lib; reflexPlatform.${jsCompiler}.override {
19 ghcjsPkgs = with lib; reflexPlatform.${jsCompiler}.override {
20 overrides = self: super: {
20 overrides = self: super: {
21− http-media = dontCheck super.http-media;
21+ http-media = dontCheck super.http-media;
22− servant = do [ dontCheck doJailbreak ] super.servant;
22+ servant = dontCheck super.servant;
23+ lens-aeson = dontCheck super.lens-aeson;
23 servant-reflex = lib.appendConfigureFlag
24 servant-reflex = lib.appendConfigureFlag
24 (self.callPackage ./default.nix {}) "-fExample";
25 (self.callPackage ./default.nix {}) "-fExample";
25− uri-bytestring = doJailbreak super.uri-bytestring;
26− http-api-data = dontHaddock super.http-api-data;
27 };
26 };
28 };
27 };
29
28
30 ghcPkgs = with lib; reflexPlatform.${nativeCompiler}.override {
29 ghcPkgs = with lib; reflexPlatform.${nativeCompiler}.override {
31 overrides = self: super: {
30 overrides = self: super: {
32− heist = do [ doJailbreak dontCheck ] super.heist;
33− http-media = dontCheck super.http-media;
34− snap = doJailbreak (self.callHackage "snap" "1.1.1.0" {});
35− hspec-webdriver = lib.appendPatch super.hspec-webdriver
36− ./nix/hspec-webdriver.patch;
37− hspec-snap = doJailbreak super.hspec-snap;
38− snap-server = dontCheck super.snap-server;
39− servant-snap = do [ dontCheck doJailbreak ] (self.callHackage "servant-snap" "0.8.1" {});
31+ servant-snap = dontCheck ((import ./nix/servant-snap.nix {}) self super);
40− skylighting = dontCheck super.skylighting;
41 testdriver = self.callCabal2nix "testdriver" ./testdriver {};
32 testdriver = self.callCabal2nix "testdriver" ./testdriver {};
42 testserver = import nix/testserver.nix ghcjsPkgs.servant-reflex self super;
33 testserver = import nix/testserver.nix ghcjsPkgs.servant-reflex self super;
43 };
34 };