packages feed

network-run 0.4.4 → 0.5.0

raw patch · 3 files changed

+15/−9 lines, 3 filesdep ~time-manager

Dependency ranges changed: time-manager

Files

CHANGELOG.md view
@@ -1,5 +1,11 @@ # Revision history for network-run +## 0.5.0++* Fixing a bug that TimeoutServer is not killed.+* Breaking change: the signatures of Timeout.runTCPServer and +  Timeout.runTCPServerWithSocket are changed.+ ## 0.4.3  * Using time-manager >= 0.2.
Network/Run/TCP/Timeout.hs view
@@ -37,8 +37,8 @@     -- ^ Timeout in second.     -> Maybe HostName     -> ServiceName-    -> TimeoutServer a-    -> IO a+    -> TimeoutServer ()+    -> IO () runTCPServer tm mhost port server = do     addr <- resolve Stream mhost port [AI_PASSIVE] NE.head     E.bracket (openTCPServerSocket addr) close $ \sock ->@@ -50,13 +50,13 @@     :: Int     -- ^ Timeout in second.     -> Socket-    -> TimeoutServer a-    -> IO a+    -> TimeoutServer ()+    -> IO () runTCPServerWithSocket tm sock server = do     T.withManager (tm * 1000000) $ \mgr -> forever $         E.bracketOnError (accept sock) (close . fst) $ \(conn, _peer) ->-            void $ forkFinally (server' mgr conn) (const $ gclose conn)+            void $ forkFinally (runServer mgr conn) (const $ gclose conn)   where-    server' mgr conn = do+    runServer mgr conn = do         labelMe "TCP timeout server"-        T.withHandle mgr (return ()) $ \th -> server mgr th conn+        T.withHandleKillThread mgr (return ()) $ \th -> server mgr th conn
network-run.cabal view
@@ -1,6 +1,6 @@ cabal-version:      >=1.10 name:               network-run-version:            0.4.4+version:            0.5.0 license:            BSD3 license-file:       LICENSE maintainer:         kazu@iij.ad.jp@@ -27,4 +27,4 @@         base >=4 && <5,         bytestring,         network >=3.2.4,-        time-manager >=0.2 && <0.3+        time-manager >=0.2 && <0.4