on master help sign in
cabal.project+2−6
since splitsnapshots
unifiedsplit
@@ -2,13 +2,9 @@ packages:
2 jsaddle/
2 jsaddle/
3 jsaddle-warp/
3 jsaddle-warp/
4 jsaddle-wkwebview/
4 jsaddle-wkwebview/
5−-- jsaddle-webkitgtk/
6 jsaddle-webkit2gtk/
5 jsaddle-webkit2gtk/
7 jsaddle-clib/
6 jsaddle-clib/
8
7
9−constraints: haskell-gi-overloading == 0.0, random >=1.2, time >=1.10, process >=1.6.10.0
8+constraints: haskell-gi-overloading == 0.0
10
9
11−package jsaddle-warp
12− tests: False
13−
14−allow-newer: websockets:random splitmix:time *:time *:unix *:process
10+allow-newer: websockets:random, splitmix:time, *:time, *:unix, *:process, stm:base
jsaddle-clib/jsaddle-clib.cabal+1−1
@@ -1,5 +1,5 @@
1name: jsaddle-clib
1name: jsaddle-clib
2−version: 0.9.7.1
2+version: 0.9.8.0
3cabal-version: >=1.10
3cabal-version: >=1.10
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
jsaddle-warp/jsaddle-warp.cabal+2−2
@@ -1,5 +1,5 @@
1name: jsaddle-warp
1name: jsaddle-warp
2−version: 0.9.7.1
2+version: 0.9.8.0
3cabal-version: >=1.10
3cabal-version: >=1.10
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
@@ -59,7 +59,7 @@ test-suite test-tool
59 bytestring -any,
59 bytestring -any,
60 containers -any,
60 containers -any,
61 deepseq -any,
61 deepseq -any,
62− doctest >=0.10.1 && <0.18,
62+ doctest >=0.10.1 && <0.19,
63 exceptions -any,
63 exceptions -any,
64 filepath >=1.4.0.0 && <1.5,
64 filepath >=1.4.0.0 && <1.5,
65 foreign-store -any,
65 foreign-store -any,
jsaddle-webkit2gtk/jsaddle-webkit2gtk.cabal+2−2
@@ -1,5 +1,5 @@
1name: jsaddle-webkit2gtk
1name: jsaddle-webkit2gtk
2−version: 0.9.7.1
2+version: 0.9.8.0
3cabal-version: >=1.10
3cabal-version: >=1.10
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
@@ -35,7 +35,7 @@ library
35 gi-gtk >=3.0.17 && <3.1,
35 gi-gtk >=3.0.17 && <3.1,
36 gi-webkit2 >=4.0.14 && <4.1,
36 gi-webkit2 >=4.0.14 && <4.1,
37 gi-javascriptcore >=4.0.14 && <4.1,
37 gi-javascriptcore >=4.0.14 && <4.1,
38− haskell-gi-base >=0.20 && <0.24,
38+ haskell-gi-base >=0.20 && <0.26,
39 haskell-gi-overloading >=0.0 && < 2.0,
39 haskell-gi-overloading >=0.0 && < 2.0,
40 jsaddle >=0.9.4.0 && <0.10,
40 jsaddle >=0.9.4.0 && <0.10,
41 text >=1.2.1.3 && <1.3,
41 text >=1.2.1.3 && <1.3,
jsaddle-webkit2gtk/src/Language/Javascript/JSaddle/WebKitGTK.hs+8−2
@@ -55,11 +55,11 @@ import GI.GLib (timeoutAdd, idleAdd, pattern PRIORITY_HIGH, pattern PRIORITY_DEF
55import qualified GI.Gtk as Gtk (main, init)
55import qualified GI.Gtk as Gtk (main, init)
56import GI.Gtk
56import GI.Gtk
57 (windowSetPosition, windowSetDefaultSize, windowNew,
57 (windowSetPosition, windowSetDefaultSize, windowNew,
58− scrolledWindowNew, noAdjustment, containerAdd,
58+ scrolledWindowNew, Adjustment, containerAdd,
59 WindowType(..), WindowPosition(..), widgetDestroy,
59 WindowType(..), WindowPosition(..), widgetDestroy,
60 widgetGetToplevel, widgetShowAll, onWidgetDestroy,
60 widgetGetToplevel, widgetShowAll, onWidgetDestroy,
61 mainQuit)
61 mainQuit)
62−import GI.Gio (noCancellable)
62+import GI.Gio (Cancellable)
63import GI.JavaScriptCore (valueToString)
63import GI.JavaScriptCore (valueToString)
64import GI.WebKit2
64import GI.WebKit2
65 (scriptDialogPromptSetText, scriptDialogPromptGetDefaultText,
65 (scriptDialogPromptSetText, scriptDialogPromptGetDefaultText,
@@ -82,6 +82,12 @@ import Language.Javascript.JSaddle (JSM, Results, Batch)
82import Language.Javascript.JSaddle.Run (runJavaScript)
82import Language.Javascript.JSaddle.Run (runJavaScript)
83import Language.Javascript.JSaddle.Run.Files (initState, runBatch, ghcjsHelpers)
83import Language.Javascript.JSaddle.Run.Files (initState, runBatch, ghcjsHelpers)
84
84
85+noAdjustment :: Maybe Adjustment
86+noAdjustment = Nothing
87+
88+noCancellable :: Maybe Cancellable
89+noCancellable = Nothing
90+
85quitWebView :: WebView -> IO ()
91quitWebView :: WebView -> IO ()
86quitWebView wv = postGUIAsync $ do w <- widgetGetToplevel wv --TODO: Shouldn't this be postGUISync?
92quitWebView wv = postGUIAsync $ do w <- widgetGetToplevel wv --TODO: Shouldn't this be postGUISync?
87 widgetDestroy w
93 widgetDestroy w
jsaddle-wkwebview/jsaddle-wkwebview.cabal+4−2
@@ -1,5 +1,5 @@
1name: jsaddle-wkwebview
1name: jsaddle-wkwebview
2−version: 0.9.7.1
2+version: 0.9.8.0
3cabal-version: >=1.10
3cabal-version: >=1.10
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
@@ -29,11 +29,13 @@ library
29 base <5
29 base <5
30 default-language: Haskell2010
30 default-language: Haskell2010
31 hs-source-dirs: src
31 hs-source-dirs: src
32− frameworks: Foundation, WebKit
33 ghc-options: -ferror-spans -Wall
32 ghc-options: -ferror-spans -Wall
33+ if os(linux)
34+ buildable: False
34 if impl(ghcjs)
35 if impl(ghcjs)
35 hs-source-dirs: src-ghcjs
36 hs-source-dirs: src-ghcjs
36 else
37 else
38+ frameworks: Foundation, WebKit
37 build-depends:
39 build-depends:
38 aeson >=0.8.0.2 && <1.6,
40 aeson >=0.8.0.2 && <1.6,
39 bytestring >=0.10.6.0 && <0.11,
41 bytestring >=0.10.6.0 && <0.11,
jsaddle/jsaddle.cabal+4−4
@@ -1,5 +1,5 @@
1name: jsaddle
1name: jsaddle
2−version: 0.9.7.1
2+version: 0.9.8.0
3cabal-version: >=1.10
3cabal-version: >=1.10
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
@@ -10,7 +10,7 @@ description:
10 This package provides an EDSL for calling JavaScript that
10 This package provides an EDSL for calling JavaScript that
11 can be used both from GHCJS and GHC. When using GHC
11 can be used both from GHCJS and GHC. When using GHC
12 the application is run using Warp and WebSockets to
12 the application is run using Warp and WebSockets to
13− drive a small JavaScipt helper.
13+ drive a small JavaScript helper.
14category: Web, Javascript
14category: Web, Javascript
15author: Hamish Mackenzie
15author: Hamish Mackenzie
16
16
@@ -107,13 +107,13 @@ library
107 Language.Javascript.JSaddle.Value
107 Language.Javascript.JSaddle.Value
108 Language.Javascript.JSaddle.Types
108 Language.Javascript.JSaddle.Types
109 build-depends:
109 build-depends:
110− aeson >=0.8.0.2 && <1.6,
110+ aeson >=0.11.3.0 && <1.6,
111 base >=4.9 && <5,
111 base >=4.9 && <5,
112 base-compat >=0.9.0 && <0.12,
112 base-compat >=0.9.0 && <0.12,
113 base64-bytestring >=1.0.0.1 && <1.2,
113 base64-bytestring >=1.0.0.1 && <1.2,
114 bytestring >=0.10.6.0 && <0.11,
114 bytestring >=0.10.6.0 && <0.11,
115 exceptions >=0.8 && <0.11,
115 exceptions >=0.8 && <0.11,
116− lens >=3.8.5 && <4.20,
116+ lens >=3.8.5 && <5.1,
117 primitive >=0.6.1.0 && <0.8,
117 primitive >=0.6.1.0 && <0.8,
118 text >=1.2.1.3 && <1.3,
118 text >=1.2.1.3 && <1.3,
119 transformers >=0.4.2.0 && <0.6
119 transformers >=0.4.2.0 && <0.6
jsaddle/src/Language/Javascript/JSaddle/Object.hs+3−4
@@ -526,12 +526,11 @@ array args = do
526 Object . coerce <$> fromListIO rargs
526 Object . coerce <$> fromListIO rargs
527
527
528-- | JavaScript's global object
528-- | JavaScript's global object
529−global :: Object
530#ifdef ghcjs_HOST_OS
529#ifdef ghcjs_HOST_OS
531−global = js_window
532−foreign import javascript unsafe "$r = window"
530+foreign import javascript unsafe "$r = globalThis"
533− js_window :: Object
531+ global :: Object
534#else
532#else
533+global :: Object
535global = Object . JSVal . unsafePerformIO $ newIORef 4
534global = Object . JSVal . unsafePerformIO $ newIORef 4
536#endif
535#endif
537
536
jsaddle/src/Language/Javascript/JSaddle/Run/Files.hs+1−1
@@ -41,7 +41,7 @@ initState = "\
41 \ jsaddle_values.set(1, undefined);\n\
41 \ jsaddle_values.set(1, undefined);\n\
42 \ jsaddle_values.set(2, false);\n\
42 \ jsaddle_values.set(2, false);\n\
43 \ jsaddle_values.set(3, true);\n\
43 \ jsaddle_values.set(3, true);\n\
44− \ jsaddle_values.set(4, window);\n\
44+ \ jsaddle_values.set(4, globalThis);\n\
45 \ var jsaddle_index = 100;\n\
45 \ var jsaddle_index = 100;\n\
46 \ var expectedBatch = 1;\n\
46 \ var expectedBatch = 1;\n\
47 \ var lastResults = [0, {\"tag\": \"Success\", \"contents\": [[], []]}];\n\
47 \ var lastResults = [0, {\"tag\": \"Success\", \"contents\": [[], []]}];\n\
nix/hix.nix+3−3
@@ -1,8 +1,8 @@
1+{pkgs, ...}:
1{ modules = [({pkgs, ...}: {
2{ modules = [({pkgs, ...}: {
2− reinstallableLibGhc = !pkgs.stdenv.hostPlatform.isGhcjs;
3+ packages.webkit2gtk3-javascriptcore.components.library.doHaddock = false;
3− packages.jsaddle-warp.components.tests.test-tool.buildable = pkgs.lib.mkForce false;
4− packages.jsaddle-webkit2gtk.components.library.buildable = pkgs.lib.mkForce pkgs.stdenv.hostPlatform.isLinux;
5 })];
4 })];
5+ shell.buildInputs = [ pkgs.nodejs ];
6 shell.tools.cabal = {};
6 shell.tools.cabal = {};
7 shell.crossPlatforms = p: [ p.ghcjs ];
7 shell.crossPlatforms = p: [ p.ghcjs ];
8}
8}