packages feed

essence-of-live-coding-warp 0.2.3 → 0.2.4

raw patch · 3 files changed

+12/−4 lines, 3 filesdep ~essence-of-live-codingPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: essence-of-live-coding

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # Revision history for essence-of-live-coding-warp +## 0.2.4++* Tweak performance+ ## 0.2.2  * Made backend nonblocking
essence-of-live-coding-warp.cabal view
@@ -1,5 +1,5 @@ name:                essence-of-live-coding-warp-version:             0.2.3+version:             0.2.4 synopsis: General purpose live coding framework description:   essence-of-live-coding is a general purpose and type safe live coding framework.@@ -44,7 +44,7 @@     , http-types >= 0.12.3     , wai >= 3.2.2.1     , warp >= 3.3.13-    , essence-of-live-coding >= 0.2.3+    , essence-of-live-coding >= 0.2.4   hs-source-dirs:      src   default-language:    Haskell2010   default-extensions:  StrictData@@ -56,6 +56,6 @@   build-depends:       base >= 4.11 && < 5     , http-client >= 0.7.1-    , essence-of-live-coding >= 0.2.3+    , essence-of-live-coding >= 0.2.4     , essence-of-live-coding-warp   default-language:    Haskell2010
src/LiveCoding/Warp.hs view
@@ -29,6 +29,8 @@   , appThread   :: ThreadId   } +-- I believe there is a bug here where a request is missed if the app blocks because the requestVar isn't emptied, or the response not filled.+ waiHandle :: Port -> Handle IO WaiHandle waiHandle port = Handle   { create = do@@ -63,7 +65,9 @@       (b, response) <- liftCell cell  -< (a, request)       arrM $ liftIO . uncurry putMVar -< (responseVar, response)       returnA                         -< Just b-    Nothing -> returnA -< Nothing+    Nothing -> do+      arrM $ liftIO . threadDelay     -< 1000 -- Prevent too much CPU load+      returnA                         -< Nothing  runWarpC_   :: Port