packages feed

uni-events 2.2.0.0 → 2.2.1.0

raw patch · 3 files changed

+16/−12 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)

- Events.EqGuard: instance (Ord key) => Guard (EqMatch key)
- Events.EqGuard: instance (Ord key) => HasAdd (EqGuardQueue key) (EqMatch key)
- Events.EqGuard: instance (Ord key) => HasAdd (EqValueQueue key value) (key, value)
- Events.EqGuard: instance (Ord key) => HasEmpty (EqGuardQueue key)
- Events.EqGuard: instance (Ord key) => HasEmpty (EqValueQueue key value)
- Events.EqGuard: instance (Ord key) => HasRemove (EqGuardQueue key) (key, value) (EqMatch key)
- Events.EqGuard: instance (Ord key) => HasRemove (EqValueQueue key value) (EqMatch key) (key, value)
- Events.GuardedChannels: instance (Guard guard) => HasReceive (GuardedChannel guard)
- Events.GuardedEvents: instance (Guard guard) => HasEvent (GuardedEvent guard)
- Events.GuardedEvents: instance (Guard guard) => HasGuard (GuardedEvent guard) guard
+ Events.EqGuard: instance Ord key => Guard (EqMatch key)
+ Events.EqGuard: instance Ord key => HasAdd (EqGuardQueue key) (EqMatch key)
+ Events.EqGuard: instance Ord key => HasAdd (EqValueQueue key value) (key, value)
+ Events.EqGuard: instance Ord key => HasEmpty (EqGuardQueue key)
+ Events.EqGuard: instance Ord key => HasEmpty (EqValueQueue key value)
+ Events.EqGuard: instance Ord key => HasRemove (EqGuardQueue key) (key, value) (EqMatch key)
+ Events.EqGuard: instance Ord key => HasRemove (EqValueQueue key value) (EqMatch key) (key, value)
+ Events.GuardedChannels: instance Guard guard => HasReceive (GuardedChannel guard)
+ Events.GuardedEvents: instance Guard guard => HasEvent (GuardedEvent guard)
+ Events.GuardedEvents: instance Guard guard => HasGuard (GuardedEvent guard) guard
- Events.Destructible: class (Destroyable o) => Destructible o
+ Events.Destructible: class Destroyable o => Destructible o
- Events.Destructible: destroy :: (Destroyable o) => o -> IO ()
+ Events.Destructible: destroy :: Destroyable o => o -> IO ()
- Events.Destructible: destroyed :: (Destructible o) => o -> Event ()
+ Events.Destructible: destroyed :: Destructible o => o -> Event ()
- Events.EqGuard: newEqGuardedChannel :: (Ord key) => IO (EqGuardedChannel key value)
+ Events.EqGuard: newEqGuardedChannel :: Ord key => IO (EqGuardedChannel key value)
- Events.Events: receive :: (HasReceive chan) => chan a -> Event a
+ Events.Events: receive :: HasReceive chan => chan a -> Event a
- Events.Events: receiveIO :: (HasReceive chan) => chan a -> IO a
+ Events.Events: receiveIO :: HasReceive chan => chan a -> IO a
- Events.Events: send :: (HasSend chan) => chan a -> a -> Event ()
+ Events.Events: send :: HasSend chan => chan a -> a -> Event ()
- Events.Events: sendIO :: (HasSend chan) => chan a -> a -> IO ()
+ Events.Events: sendIO :: HasSend chan => chan a -> a -> IO ()
- Events.Events: toEvent :: (HasEvent eventType) => eventType a -> Event a
+ Events.Events: toEvent :: HasEvent eventType => eventType a -> Event a
- Events.Events: tryEV :: Event a -> Event (Either Exception a)
+ Events.Events: tryEV :: Event a -> Event (Either SomeException a)
- Events.FMQueue: addFMQueue :: (Ord key) => FMQueue key contents -> key -> contents -> IO (FMQueue key contents, IO ())
+ Events.FMQueue: addFMQueue :: Ord key => FMQueue key contents -> key -> contents -> IO (FMQueue key contents, IO ())
- Events.FMQueue: data (Ord key) => FMQueue key contents
+ Events.FMQueue: data Ord key => FMQueue key contents
- Events.FMQueue: emptyFMQueue :: (Ord key) => FMQueue key contents
+ Events.FMQueue: emptyFMQueue :: Ord key => FMQueue key contents
- Events.FMQueue: removeFMQueue :: (Ord key) => FMQueue key contents -> key -> IO (Maybe (contents, FMQueue key contents), FMQueue key contents)
+ Events.FMQueue: removeFMQueue :: Ord key => FMQueue key contents -> key -> IO (Maybe (contents, FMQueue key contents), FMQueue key contents)
- Events.FMQueue: removeFMQueueAny :: (Ord key) => FMQueue key contents -> IO (Maybe (key, contents, FMQueue key contents), FMQueue key contents)
+ Events.FMQueue: removeFMQueueAny :: Ord key => FMQueue key contents -> IO (Maybe (key, contents, FMQueue key contents), FMQueue key contents)
- Events.GuardedChannels: add :: (HasAdd xQueue x) => xQueue xData -> x -> xData -> IO (xQueue xData, IO ())
+ Events.GuardedChannels: add :: HasAdd xQueue x => xQueue xData -> x -> xData -> IO (xQueue xData, IO ())
- Events.GuardedChannels: newEmpty :: (HasEmpty xQueue) => IO (xQueue xData)
+ Events.GuardedChannels: newEmpty :: HasEmpty xQueue => IO (xQueue xData)
- Events.GuardedChannels: newGuardedChannel :: (HasGuardedChannel guardQueue valueQueue guard value) => GQ guardQueue value -> VQ valueQueue -> IO (GuardedChannel guard value)
+ Events.GuardedChannels: newGuardedChannel :: HasGuardedChannel guardQueue valueQueue guard value => GQ guardQueue value -> VQ valueQueue -> IO (GuardedChannel guard value)
- Events.GuardedChannels: remove :: (HasRemove yQueue x y) => yQueue yData -> x -> IO (Maybe (y, yData, IO (yQueue yData)), yQueue yData)
+ Events.GuardedChannels: remove :: HasRemove yQueue x y => yQueue yData -> x -> IO (Maybe (y, yData, IO (yQueue yData)), yQueue yData)
- Events.GuardedChannels: replace :: (Guard guard) => GuardedChannel guard value -> value -> GuardedEvent guard (Maybe value)
+ Events.GuardedChannels: replace :: Guard guard => GuardedChannel guard value -> value -> GuardedEvent guard (Maybe value)
- Events.GuardedChannels: sneak :: (Guard guard) => GuardedChannel guard value -> GuardedEvent guard (Maybe value)
+ Events.GuardedChannels: sneak :: Guard guard => GuardedChannel guard value -> GuardedEvent guard (Maybe value)
- Events.GuardedEvents: (|>) :: (HasGuard eventType guard) => eventType a -> guard -> eventType a
+ Events.GuardedEvents: (|>) :: HasGuard eventType guard => eventType a -> guard -> eventType a
- Events.GuardedEvents: andGuard :: (Guard guard) => guard -> guard -> guard
+ Events.GuardedEvents: andGuard :: Guard guard => guard -> guard -> guard
- Events.GuardedEvents: class (Guard guard) => HasGuard eventType guard
+ Events.GuardedEvents: class Guard guard => HasGuard eventType guard
- Events.GuardedEvents: data (Guard guard) => GuardedEvent guard a
+ Events.GuardedEvents: data Guard guard => GuardedEvent guard a
- Events.GuardedEvents: nullGuard :: (Guard guard) => guard
+ Events.GuardedEvents: nullGuard :: Guard guard => guard
- Events.Synchronized: synchronize :: (Synchronized a) => a -> IO b -> IO b
+ Events.Synchronized: synchronize :: Synchronized a => a -> IO b -> IO b

Files

Events/Events.hs view
@@ -192,7 +192,7 @@ -- ----------------------------------------------------------------------  -- | Catch an error if it occurs during an action attached to an event.-tryEV :: Event a -> Event (Either Exception a)+tryEV :: Event a -> Event (Either SomeException a) tryEV (Event registerFn) = Event (    \ toggle errorOraSink ->       registerFn toggle (\ aAct ->
Events/Spawn.hs view
@@ -1,3 +1,5 @@+{-# LANGUAGE CPP #-}+ -- | Spawn provides an interface to Concurrent.forkIO which is supposed -- to be implementable for both Hugs and GHC. --@@ -28,10 +30,15 @@    do       result <-          tryJust-            (\ exception -> case exception of-               AsyncException ThreadKilled -> Just ()-               BlockedOnDeadMVar -> Just ()-               _ -> Nothing+            (\ exception -> case fromException exception of+               Just ThreadKilled -> Just ()+               _ -> case fromException exception of+#if __GLASGOW_HASKELL__ >= 612+                 Just BlockedIndefinitelyOnMVar -> Just ()+#else+                 Just BlockedOnDeadMVar -> Just ()+#endif+                 _ -> Nothing                )             action       case result of
uni-events.cabal view
@@ -1,5 +1,5 @@ name:           uni-events-version:        2.2.0.0+version:        2.2.1.0 build-type:     Simple license:        LGPL license-file:   LICENSE@@ -10,7 +10,7 @@ synopsis:       Event handling for the uniform workbench description:    uni events cabal-version:  >= 1.4-Tested-With:    GHC==6.8.3, GHC==6.10.4, GHC==6.12.3+Tested-With:    GHC==6.10.4, GHC==6.12.3  library   exposed-modules:@@ -30,9 +30,6 @@     Events.RefQueue,     Events.Synchronized -  build-depends: base >=3 && < 4, containers, uni-util+  build-depends: base >=4 && < 5, containers, uni-util -  if impl(ghc < 6.10)-    extensions: PatternSignatures-  else-    ghc-options: -fwarn-unused-imports -fno-warn-warnings-deprecations+  ghc-options: -fwarn-unused-imports -fno-warn-warnings-deprecations