packages feed

greskell-websocket 1.0.0.3 → 1.0.0.4

raw patch · 3 files changed

+14/−5 lines, 3 filesdep ~basePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: base

API changes (from Hackage documentation)

- Network.Greskell.WebSocket.Request: [$sel:args:RequestMessage] :: RequestMessage -> !Object
- Network.Greskell.WebSocket.Request: [$sel:op:RequestMessage] :: RequestMessage -> !Text
- Network.Greskell.WebSocket.Request: [$sel:processor:RequestMessage] :: RequestMessage -> !Text
- Network.Greskell.WebSocket.Request: [$sel:requestId:RequestMessage] :: RequestMessage -> !UUID
- Network.Greskell.WebSocket.Request.Session: [$sel:aliases:OpEval] :: OpEval -> !Maybe (HashMap Text Text)
- Network.Greskell.WebSocket.Request.Session: [$sel:batchSize:OpAuthentication] :: OpAuthentication -> !Maybe Int
- Network.Greskell.WebSocket.Request.Session: [$sel:batchSize:OpClose] :: OpClose -> !Maybe Int
- Network.Greskell.WebSocket.Request.Session: [$sel:batchSize:OpEval] :: OpEval -> !Maybe Int
- Network.Greskell.WebSocket.Request.Session: [$sel:bindings:OpEval] :: OpEval -> !Maybe Object
- Network.Greskell.WebSocket.Request.Session: [$sel:force:OpClose] :: OpClose -> !Maybe Bool
- Network.Greskell.WebSocket.Request.Session: [$sel:gremlin:OpEval] :: OpEval -> !Text
- Network.Greskell.WebSocket.Request.Session: [$sel:language:OpEval] :: OpEval -> !Maybe Text
- Network.Greskell.WebSocket.Request.Session: [$sel:manageTransaction:OpEval] :: OpEval -> !Maybe Bool
- Network.Greskell.WebSocket.Request.Session: [$sel:sasl:OpAuthentication] :: OpAuthentication -> !Base64
- Network.Greskell.WebSocket.Request.Session: [$sel:saslMechanism:OpAuthentication] :: OpAuthentication -> !SASLMechanism
- Network.Greskell.WebSocket.Request.Session: [$sel:scriptEvaluationTimeout:OpEval] :: OpEval -> !Maybe Int
- Network.Greskell.WebSocket.Request.Session: [$sel:session:OpClose] :: OpClose -> !SessionID
- Network.Greskell.WebSocket.Request.Session: [$sel:session:OpEval] :: OpEval -> !SessionID
- Network.Greskell.WebSocket.Request.Standard: [$sel:aliases:OpEval] :: OpEval -> !Maybe (HashMap Text Text)
- Network.Greskell.WebSocket.Request.Standard: [$sel:batchSize:OpAuthentication] :: OpAuthentication -> !Maybe Int
- Network.Greskell.WebSocket.Request.Standard: [$sel:batchSize:OpEval] :: OpEval -> !Maybe Int
- Network.Greskell.WebSocket.Request.Standard: [$sel:bindings:OpEval] :: OpEval -> !Maybe Object
- Network.Greskell.WebSocket.Request.Standard: [$sel:gremlin:OpEval] :: OpEval -> !Text
- Network.Greskell.WebSocket.Request.Standard: [$sel:language:OpEval] :: OpEval -> !Maybe Text
- Network.Greskell.WebSocket.Request.Standard: [$sel:sasl:OpAuthentication] :: OpAuthentication -> !Base64
- Network.Greskell.WebSocket.Request.Standard: [$sel:saslMechanism:OpAuthentication] :: OpAuthentication -> !SASLMechanism
- Network.Greskell.WebSocket.Request.Standard: [$sel:scriptEvaluationTimeout:OpEval] :: OpEval -> !Maybe Int
+ Network.Greskell.WebSocket.Request: [args] :: RequestMessage -> !Object
+ Network.Greskell.WebSocket.Request: [op] :: RequestMessage -> !Text
+ Network.Greskell.WebSocket.Request: [processor] :: RequestMessage -> !Text
+ Network.Greskell.WebSocket.Request: [requestId] :: RequestMessage -> !UUID
+ Network.Greskell.WebSocket.Request.Session: [aliases] :: OpEval -> !Maybe (HashMap Text Text)
+ Network.Greskell.WebSocket.Request.Session: [batchSize] :: OpClose -> !Maybe Int
+ Network.Greskell.WebSocket.Request.Session: [bindings] :: OpEval -> !Maybe Object
+ Network.Greskell.WebSocket.Request.Session: [force] :: OpClose -> !Maybe Bool
+ Network.Greskell.WebSocket.Request.Session: [gremlin] :: OpEval -> !Text
+ Network.Greskell.WebSocket.Request.Session: [language] :: OpEval -> !Maybe Text
+ Network.Greskell.WebSocket.Request.Session: [manageTransaction] :: OpEval -> !Maybe Bool
+ Network.Greskell.WebSocket.Request.Session: [saslMechanism] :: OpAuthentication -> !SASLMechanism
+ Network.Greskell.WebSocket.Request.Session: [sasl] :: OpAuthentication -> !Base64
+ Network.Greskell.WebSocket.Request.Session: [scriptEvaluationTimeout] :: OpEval -> !Maybe Int
+ Network.Greskell.WebSocket.Request.Session: [session] :: OpClose -> !SessionID
+ Network.Greskell.WebSocket.Request.Standard: [aliases] :: OpEval -> !Maybe (HashMap Text Text)
+ Network.Greskell.WebSocket.Request.Standard: [batchSize] :: OpEval -> !Maybe Int
+ Network.Greskell.WebSocket.Request.Standard: [bindings] :: OpEval -> !Maybe Object
+ Network.Greskell.WebSocket.Request.Standard: [gremlin] :: OpEval -> !Text
+ Network.Greskell.WebSocket.Request.Standard: [language] :: OpEval -> !Maybe Text
+ Network.Greskell.WebSocket.Request.Standard: [saslMechanism] :: OpAuthentication -> !SASLMechanism
+ Network.Greskell.WebSocket.Request.Standard: [sasl] :: OpAuthentication -> !Base64
+ Network.Greskell.WebSocket.Request.Standard: [scriptEvaluationTimeout] :: OpEval -> !Maybe Int

Files

ChangeLog.md view
@@ -1,5 +1,10 @@ # Revision history for greskell-websocket +## 1.0.0.4  -- 2025-01-30++* Fix the bug where greskell-websocket didn't work at all with `async-2.2.5`. (see https://github.com/debug-ito/greskell/pull/17 )+* Support ghc-9.12 (base-4.21).+ ## 1.0.0.3  -- 2024-11-21  * Confirm test with `hashtable-1.4`.
greskell-websocket.cabal view
@@ -1,5 +1,5 @@ name:                   greskell-websocket-version:                1.0.0.3+version:                1.0.0.4 author:                 Toshio Ito <debug.ito@gmail.com> maintainer:             Toshio Ito <debug.ito@gmail.com> license:                BSD3@@ -43,7 +43,7 @@                         Network.Greskell.WebSocket.Connection.Type,                         Network.Greskell.WebSocket.Client.Impl,                         Network.Greskell.WebSocket.Util-  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,+  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0 || ^>=4.21.0,                         greskell-core ^>=1.0.0,                         bytestring ^>=0.10.9 || ^>=0.11.3 || ^>=0.12.0,                         base64-bytestring ^>=1.2.1,@@ -80,7 +80,7 @@   other-modules:        Network.Greskell.WebSocket.Codec.JSONSpec,                         Network.Greskell.WebSocket.ResponseSpec   build-tool-depends:   hspec-discover:hspec-discover-  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,+  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0 || ^>=4.21.0,                         greskell-websocket,                         aeson ^>=2.0.2 || ^>=2.1.0 || ^>=2.2.3,                         uuid ^>=1.3.15,@@ -110,7 +110,7 @@                         ServerTest.Connection,                         ServerTest.Client   if flag(server-test)-    build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,+    build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0 || ^>=4.21.0,                           greskell-websocket,                           greskell-core ^>=1.0.0,                           aeson ^>=2.0.2 || ^>=2.1.0 || ^>=2.2.3,
src/Network/Greskell/WebSocket/Connection/Impl.hs view
@@ -262,7 +262,7 @@                              <|> (EvRes <$> readTQueue qres)                              <|> makeEvActiveClose                              <|> (rxResultToEvent <$> waitCatchSTM rx_thread)-                             <|> (timeoutToEvent <$> waitAnySTM res_timers)+                             <|> waitResponseTimeout res_timers         where           max_concurrency = Settings.concurrency settings           cur_concurrency = length res_timers@@ -278,6 +278,10 @@               else do                 conn_state <- readConnState                 if conn_state == ConnOpen then empty else return EvActiveClose+          waitResponseTimeout timers =+            if null timers+            then empty+            else timeoutToEvent <$> waitAnySTM timers     handleReq req = do       insert_ok <- tryInsertToReqPool req_pool rid makeNewEntry       if insert_ok