packages feed

hworker 0.1.0.0 → 0.1.0.1

raw patch · 3 files changed

+30/−2 lines, 3 filesdep ~aesondep ~attoparsecdep ~bytestringPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: aeson, attoparsec, bytestring, hedis, text, time

API changes (from Hackage documentation)

- System.Hworker: instance Data.Aeson.Types.Class.FromJSON System.Hworker.Result
- System.Hworker: instance Data.Aeson.Types.Class.ToJSON System.Hworker.Result
- System.Hworker: instance GHC.Generics.Constructor System.Hworker.C1_0Result
- System.Hworker: instance GHC.Generics.Constructor System.Hworker.C1_1Result
- System.Hworker: instance GHC.Generics.Constructor System.Hworker.C1_2Result
- System.Hworker: instance GHC.Generics.Datatype System.Hworker.D1Result
+ System.Hworker: instance Data.Aeson.Types.FromJSON.FromJSON System.Hworker.Result
+ System.Hworker: instance Data.Aeson.Types.ToJSON.ToJSON System.Hworker.Result

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+* 0.1.0.1 Daniel Pattersion <dbp@dbpmail.net> 2015-11-1++  Add example in haddocks.+ * 0.1.0.0 Daniel Patterson <dbp@dbpmail.net> 2015-10-25    Initial release.
hworker.cabal view
@@ -1,5 +1,5 @@ name:                hworker-version:             0.1.0.0+version:             0.1.0.1 synopsis:            A reliable at-least-once job queue built on top of redis. description:         See README. homepage:            http://github.com/dbp/hworker
src/System/Hworker.hs view
@@ -6,7 +6,6 @@ {-# LANGUAGE RankNTypes                #-} {-# LANGUAGE RecordWildCards           #-} {-# LANGUAGE ScopedTypeVariables       #-}-{-# LANGUAGE StandaloneDeriving        #-}  {-| @@ -16,6 +15,31 @@ commands like EVAL (ie, that if you do several things within an EVAL, they will all happen or none will happen). Nothing has been tested with Redis clusters (and it likely will not work).++An example use is the following (see the repository for a+slightly expanded version; also, the test cases in the repository are+also good examples):+++> data PrintJob = Print deriving (Generic, Show)+> data State = State (MVar Int)+> instance ToJSON PrintJob+> instance FromJSON PrintJob+>+> instance Job State PrintJob where+>   job (State mvar) Print =+>     do v <- takeMVar mvar+>        putMVar mvar (v + 1)+>        putStrLn $ "A(" ++ show v ++ ")"+>        return Success+>+> main = do mvar <- newMVar 0+>           hworker <- create "printer" (State mvar)+>           forkIO (worker hworker)+>           forkIO (monitor hworker)+>           forkIO (forever $ queue hworker Print >> threadDelay 1000000)+>           forever (threadDelay 1000000)+  -}