jsaddle 0.9.6.0 → 0.9.7.0
raw patch · 7 files changed
+15/−12 lines, 7 filesdep +base-compatdep ~lensdep ~primitivedep ~time
Dependencies added: base-compat
Dependency ranges changed: lens, primitive, time
Files
- jsaddle.cabal +5/−4
- src-ghc/JavaScript/Array.hs +2/−2
- src/Language/Javascript/JSaddle/Evaluate.hs +1/−1
- src/Language/Javascript/JSaddle/Object.hs +2/−2
- src/Language/Javascript/JSaddle/Run.hs +2/−1
- src/Language/Javascript/JSaddle/Run/Files.hs +2/−1
- src/Language/Javascript/JSaddle/Types.hs +1/−1
jsaddle.cabal view
@@ -1,5 +1,5 @@ name: jsaddle-version: 0.9.6.0+version: 0.9.7.0 cabal-version: >=1.10 build-type: Simple license: MIT@@ -46,7 +46,7 @@ ref-tf >=0.4.0.1 && <0.5, scientific >=0.3 && <0.4, stm >=2.4.4 && <2.6,- time >=1.5.0.1 && <1.9,+ time >=1.5.0.1 && <1.10, unordered-containers >=0.2 && <0.3, vector >=0.10 && <0.13, unliftio-core >=0.1 && < 0.2@@ -109,11 +109,12 @@ build-depends: aeson >=0.8.0.2 && <1.5, base >=4.9 && <5,+ base-compat >=0.9.0 && <0.12, base64-bytestring >=1.0.0.1 && <1.1, bytestring >=0.10.6.0 && <0.11, exceptions >=0.8 && <0.11,- lens >=3.8.5 && <4.18,- primitive >=0.6.1.0 && <0.7,+ lens >=3.8.5 && <4.19,+ primitive >=0.6.1.0 && <0.8, text >=1.2.1.3 && <1.3, transformers >=0.4.2.0 && <0.6 default-language: Haskell2010
src-ghc/JavaScript/Array.hs view
@@ -48,7 +48,7 @@ (JSM, JSVal, SomeJSArray(..), JSArray, MutableJSArray, GHCJSPure(..)) import Control.Lens.Operators ((^.))-import Language.Javascript.JSaddle.Object (js2, js0, (##), js1, js)+import Language.Javascript.JSaddle.Object (js2, js0, (<##), js1, js) import Language.Javascript.JSaddle.Value (valToNumber) import JavaScript.Array.Internal (create, fromList, fromListIO, toList, toListIO, index, read, push) @@ -69,7 +69,7 @@ {-# INLINE append #-} write :: Int -> JSVal -> MutableJSArray -> JSM ()-write n e (SomeJSArray x) = void $ (x ## n) e+write n e (SomeJSArray x) = void $ (x <## n) e {-# INLINE write #-} pop :: MutableJSArray -> JSM JSVal
src/Language/Javascript/JSaddle/Evaluate.hs view
@@ -50,7 +50,7 @@ -> JSM JSVal #ifdef ghcjs_HOST_OS eval script = liftIO $ js_eval (toJSString script)-foreign import javascript unsafe "$r = eval($1);"+foreign import javascript safe "$r = eval($1);" js_eval :: JSString -> IO JSVal #else eval = evaluateScript . toJSString
src/Language/Javascript/JSaddle/Object.hs view
@@ -557,7 +557,7 @@ objCallAsFunction f this args = do rargs <- makeArgs args >>= liftIO . Array.fromListIO liftIO $ js_apply f this rargs-foreign import javascript unsafe "$r = $1.apply($2, $3)"+foreign import javascript safe "$r = $1.apply($2, $3)" js_apply :: Object -> Object -> MutableJSArray -> IO JSVal #else objCallAsFunction f this args = do@@ -577,7 +577,7 @@ objCallAsConstructor f args = do rargs <- makeArgs args >>= liftIO . Array.fromListIO liftIO $ js_new f rargs-foreign import javascript unsafe "\+foreign import javascript safe "\ switch($2.length) {\ case 0 : $r = new $1(); break;\ case 1 : $r = new $1($2[0]); break;\
src/Language/Javascript/JSaddle/Run.hs view
@@ -227,10 +227,11 @@ zipWithM_ putMVar resultMVars results forM_ callbacksToFree $ \(JSValueReceived val) -> atomically (modifyTVar' callbacks (M.delete val))- (_, Failure callbacksToFree results exception) -> do+ (_, Failure callbacksToFree results exception err) -> do -- The exception will only be rethrown in Haskell if/when one of the -- missing results (if any) is evaluated. putStrLn "A JavaScript exception was thrown! (may not reach Haskell code)"+ putStrLn err zipWithM_ putMVar resultMVars $ results <> repeat (ThrowJSValue exception) forM_ callbacksToFree $ \(JSValueReceived val) -> atomically (modifyTVar' callbacks (M.delete val))
src/Language/Javascript/JSaddle/Run/Files.hs view
@@ -315,7 +315,8 @@ \ catch (err) {\n\ \ var n = ++jsaddle_index;\n\ \ jsaddle_values.set(n, err);\n\- \ " <> send "{\"tag\": \"BatchResults\", \"contents\": [batch[2], {\"tag\": \"Failure\", \"contents\": [callbacksToFree, results, n]}]}" <> "\n\+ \ console.log(err);\n\+ \ " <> send "{\"tag\": \"BatchResults\", \"contents\": [batch[2], {\"tag\": \"Failure\", \"contents\": [callbacksToFree, results, n, String(err)]}]}" <> "\n\ \ }\n\ \ if(inCallback == 1) {\n\ \ while(asyncBatch !== null) {\n\
src/Language/Javascript/JSaddle/Types.hs view
@@ -504,7 +504,7 @@ instance FromJSON Result data BatchResults = Success [JSValueReceived] [Result]- | Failure [JSValueReceived] [Result] JSValueReceived+ | Failure [JSValueReceived] [Result] JSValueReceived String deriving (Show, Generic) instance ToJSON BatchResults where