packages feed

monad-peel 0.2.1.2 → 0.3

raw patch · 3 files changed

+7/−26 lines, 3 filesdep ~transformersPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: transformers

API changes (from Hackage documentation)

- Control.Monad.IO.Peel: instance (Control.Monad.Trans.Error.Error e, Control.Monad.IO.Peel.MonadPeelIO m) => Control.Monad.IO.Peel.MonadPeelIO (Control.Monad.Trans.Error.ErrorT e m)
- Control.Monad.IO.Peel: instance Control.Monad.IO.Peel.MonadPeelIO m => Control.Monad.IO.Peel.MonadPeelIO (Control.Monad.Trans.List.ListT m)
- Control.Monad.Trans.Peel: instance Control.Monad.Trans.Error.Error e => Control.Monad.Trans.Peel.MonadTransPeel (Control.Monad.Trans.Error.ErrorT e)
- Control.Monad.Trans.Peel: instance Control.Monad.Trans.Peel.MonadTransPeel Control.Monad.Trans.List.ListT
+ Control.Exception.Peel: AllocationLimitExceeded :: AllocationLimitExceeded
+ Control.Exception.Peel: AssertionFailed :: String -> AssertionFailed
+ Control.Exception.Peel: BlockedIndefinitelyOnMVar :: BlockedIndefinitelyOnMVar
+ Control.Exception.Peel: BlockedIndefinitelyOnSTM :: BlockedIndefinitelyOnSTM
+ Control.Exception.Peel: CompactionFailed :: String -> CompactionFailed
+ Control.Exception.Peel: Deadlock :: Deadlock
+ Control.Exception.Peel: Denormal :: ArithException
+ Control.Exception.Peel: DivideByZero :: ArithException
+ Control.Exception.Peel: ErrorCallWithLocation :: String -> String -> ErrorCall
+ Control.Exception.Peel: HeapOverflow :: AsyncException
+ Control.Exception.Peel: IndexOutOfBounds :: String -> ArrayException
+ Control.Exception.Peel: LossOfPrecision :: ArithException
+ Control.Exception.Peel: MaskedInterruptible :: MaskingState
+ Control.Exception.Peel: MaskedUninterruptible :: MaskingState
+ Control.Exception.Peel: NestedAtomically :: NestedAtomically
+ Control.Exception.Peel: NoMethodError :: String -> NoMethodError
+ Control.Exception.Peel: NonTermination :: NonTermination
+ Control.Exception.Peel: Overflow :: ArithException
+ Control.Exception.Peel: PatternMatchFail :: String -> PatternMatchFail
+ Control.Exception.Peel: RatioZeroDenominator :: ArithException
+ Control.Exception.Peel: RecConError :: String -> RecConError
+ Control.Exception.Peel: RecSelError :: String -> RecSelError
+ Control.Exception.Peel: RecUpdError :: String -> RecUpdError
+ Control.Exception.Peel: SomeAsyncException :: e -> SomeAsyncException
+ Control.Exception.Peel: SomeException :: e -> SomeException
+ Control.Exception.Peel: StackOverflow :: AsyncException
+ Control.Exception.Peel: ThreadKilled :: AsyncException
+ Control.Exception.Peel: TypeError :: String -> TypeError
+ Control.Exception.Peel: UndefinedElement :: String -> ArrayException
+ Control.Exception.Peel: Underflow :: ArithException
+ Control.Exception.Peel: Unmasked :: MaskingState
+ Control.Exception.Peel: UserInterrupt :: AsyncException
+ Control.Exception.Peel: allowInterrupt :: IO ()
+ Control.Exception.Peel: assert :: Bool -> a -> a
+ Control.Exception.Peel: asyncExceptionFromException :: Exception e => SomeException -> Maybe e
+ Control.Exception.Peel: asyncExceptionToException :: Exception e => e -> SomeException
+ Control.Exception.Peel: class (Typeable e, Show e) => Exception e
+ Control.Exception.Peel: data AllocationLimitExceeded
+ Control.Exception.Peel: data ArithException
+ Control.Exception.Peel: data ArrayException
+ Control.Exception.Peel: data AsyncException
+ Control.Exception.Peel: data BlockedIndefinitelyOnMVar
+ Control.Exception.Peel: data BlockedIndefinitelyOnSTM
+ Control.Exception.Peel: data Deadlock
+ Control.Exception.Peel: data ErrorCall
+ Control.Exception.Peel: data IOException
+ Control.Exception.Peel: data MaskingState
+ Control.Exception.Peel: data NestedAtomically
+ Control.Exception.Peel: data NonTermination
+ Control.Exception.Peel: data SomeAsyncException
+ Control.Exception.Peel: data SomeException
+ Control.Exception.Peel: displayException :: Exception e => e -> String
+ Control.Exception.Peel: fromException :: Exception e => SomeException -> Maybe e
+ Control.Exception.Peel: getMaskingState :: IO MaskingState
+ Control.Exception.Peel: interruptible :: IO a -> IO a
+ Control.Exception.Peel: mapException :: (Exception e1, Exception e2) => (e1 -> e2) -> a -> a
+ Control.Exception.Peel: mask :: ((forall a. () => IO a -> IO a) -> IO b) -> IO b
+ Control.Exception.Peel: mask_ :: IO a -> IO a
+ Control.Exception.Peel: newtype AssertionFailed
+ Control.Exception.Peel: newtype CompactionFailed
+ Control.Exception.Peel: newtype NoMethodError
+ Control.Exception.Peel: newtype PatternMatchFail
+ Control.Exception.Peel: newtype RecConError
+ Control.Exception.Peel: newtype RecSelError
+ Control.Exception.Peel: newtype RecUpdError
+ Control.Exception.Peel: newtype TypeError
+ Control.Exception.Peel: pattern ErrorCall :: String -> ErrorCall
+ Control.Exception.Peel: throw :: forall (r :: RuntimeRep) (a :: TYPE r) e. Exception e => e -> a
+ Control.Exception.Peel: throwTo :: Exception e => ThreadId -> e -> IO ()
+ Control.Exception.Peel: toException :: Exception e => e -> SomeException
+ Control.Exception.Peel: uninterruptibleMask :: ((forall a. () => IO a -> IO a) -> IO b) -> IO b
+ Control.Exception.Peel: uninterruptibleMask_ :: IO a -> IO a

Files

Control/Monad/IO/Peel.hs view
@@ -26,9 +26,7 @@ import Control.Monad.IO.Class import Control.Monad.Trans.Peel import Control.Monad.Trans.Identity-import Control.Monad.Trans.List import Control.Monad.Trans.Maybe-import Control.Monad.Trans.Error #if MIN_VERSION_transformers(0,4,0) import qualified Control.Monad.Trans.Except as Except #endif@@ -70,11 +68,7 @@  instance MonadPeelIO m => MonadPeelIO (IdentityT m) where   peelIO = liftPeel peelIO-instance MonadPeelIO m => MonadPeelIO (ListT m) where-  peelIO = liftPeel peelIO instance MonadPeelIO m => MonadPeelIO (MaybeT m) where-  peelIO = liftPeel peelIO-instance (Error e, MonadPeelIO m) => MonadPeelIO (ErrorT e m) where   peelIO = liftPeel peelIO #if MIN_VERSION_transformers(0,4,0) instance MonadPeelIO m => MonadPeelIO (Except.ExceptT e m) where
Control/Monad/Trans/Peel.hs view
@@ -33,9 +33,7 @@ import Control.Monad import Control.Monad.Trans.Class import Control.Monad.Trans.Identity-import Control.Monad.Trans.List import Control.Monad.Trans.Maybe-import Control.Monad.Trans.Error #if MIN_VERSION_transformers(0,4,0) import qualified Control.Monad.Trans.Except as Except #endif@@ -88,23 +86,10 @@     x <- runIdentityT m     return $ return x -liftList :: Monad m => [a] -> ListT m a-liftList = ListT . return--instance MonadTransPeel ListT where-  peel = return $ \m -> do-    xs <- runListT m-    return $ liftList xs- instance MonadTransPeel MaybeT where   peel = return $ \m -> do     xm <- runMaybeT m     return $ maybe mzero return xm--instance Error e => MonadTransPeel (ErrorT e) where-  peel = return $ \m -> do-    xe <- runErrorT m-    return $ either throwError return xe  #if MIN_VERSION_transformers(0,4,0) instance MonadTransPeel (Except.ExceptT e) where
monad-peel.cabal view
@@ -1,5 +1,5 @@ Name:                monad-peel-Version:             0.2.1.2+Version:             0.3 Synopsis:            Lift control operations like exception catching through monad transformers Description:   This package defines @MonadPeelIO@, a subset of @MonadIO@ into which@@ -17,8 +17,8 @@ Copyright:           (c) 2010 Anders Kaseorg, 2015 Sergey Alirzaev Category:            Control Build-type:          Simple-Cabal-version:       >= 1.8-Tested-With:         GHC == 8.0.2+Cabal-version:       >= 1.10+Tested-With:         GHC == 8.0.2, GHC == 8.4.3  Source-repository head   type:              git@@ -27,9 +27,10 @@ Source-repository this   type:              git   location:          https://github.com/l29ah/monad-peel.git-  tag:               0.2.1.2+  tag:               0.3  Library+  default-language:    Haskell2010   Exposed-modules:     Control.Monad.Trans.Peel     Control.Monad.IO.Peel@@ -38,9 +39,10 @@   Build-depends:     base >= 3 && < 5,     extensible-exceptions,-    transformers >= 0.2 && < 0.6+    transformers >= 0.2 && < 0.7  test-suite test+  default-language:    Haskell2010   ghc-options: -Wall   type: exitcode-stdio-1.0   main-is: test.hs