packages feed

wuss 1.1.0 → 1.1.1

raw patch · 3 files changed

+19/−8 lines, 3 files

Files

Wuss.hs view
@@ -47,6 +47,7 @@     ) where  import qualified Control.Applicative as Applicative+import qualified Control.Exception as Exception import qualified Data.Bool as Bool import qualified Data.ByteString as StrictBytes import qualified Data.ByteString.Lazy as LazyBytes@@ -57,6 +58,7 @@ import qualified Network.WebSockets as WebSockets import qualified Network.WebSockets.Stream as Stream import qualified System.IO as IO+import qualified System.IO.Error as IO.Error   {- |@@ -158,9 +160,13 @@     -> IO.IO a runSecureClientWithConfig host port path config options headers app = do     context <- Connection.initConnectionContext-    connection <- Connection.connectTo context (connectionParams host port)-    stream <- Stream.makeStream (reader config connection) (writer connection)-    WebSockets.runClientWithStream stream host path options headers app+    Exception.bracket+        (Connection.connectTo context (connectionParams host port))+        Connection.connectionClose+        (\connection -> do+            stream <-+                Stream.makeStream (reader config connection) (writer connection)+            WebSockets.runClientWithStream stream host path options headers app)   connectionParams@@ -190,9 +196,14 @@     :: Config     -> Connection.Connection     -> IO.IO (Maybe.Maybe StrictBytes.ByteString)-reader config connection = do-    chunk <- (connectionGet config) connection-    Applicative.pure (Maybe.Just chunk)+reader config connection =+    IO.Error.catchIOError (do+        chunk <- (connectionGet config) connection+        Applicative.pure (Maybe.Just chunk))+    (\e ->+        if IO.Error.isEOFError e+            then Applicative.pure Maybe.Nothing+            else Exception.throwIO e)   writer
package.yaml view
@@ -25,4 +25,4 @@ maintainer: Taylor Fausak name: wuss synopsis: Secure WebSocket (WSS) clients-version: '1.1.0'+version: '1.1.1'
wuss.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           wuss-version:        1.1.0+version:        1.1.1 synopsis:       Secure WebSocket (WSS) clients description:    Wuss is a library that lets you easily create secure WebSocket clients over the WSS protocol. It is a small addition to <https://hackage.haskell.org/package/websockets the websockets package> and is adapted from existing solutions by <https://gist.github.com/jaspervdj/7198388 @jaspervdj>, <https://gist.github.com/mpickering/f1b7ba3190a4bb5884f3 @mpickering>, and <https://gist.github.com/elfenlaid/7b5c28065e67e4cf0767 @elfenlaid>. category:       Network