monad-logger 0.3.4.0 → 0.3.4.1
raw patch · 2 files changed
+50/−30 lines, 2 filesdep ~conduitdep ~resourcet
Dependency ranges changed: conduit, resourcet
Files
- Control/Monad/Logger.hs +47/−27
- monad-logger.cabal +3/−3
Control/Monad/Logger.hs view
@@ -83,7 +83,10 @@ import qualified Control.Monad.Trans.Class as Trans import Control.Monad.IO.Class (MonadIO (liftIO))-import Control.Monad.Trans.Resource (MonadResource (liftResourceT), MonadThrow (monadThrow))+import Control.Monad.Trans.Resource (MonadResource (liftResourceT), MonadThrow, monadThrow)+#if MIN_VERSION_resourcet(1,1,0)+import Control.Monad.Trans.Resource (throwM)+#endif import Control.Monad.Trans.Identity ( IdentityT) import Control.Monad.Trans.List ( ListT )@@ -132,8 +135,8 @@ instance Lift LogLevel where lift LevelDebug = [|LevelDebug|]- lift LevelInfo = [|LevelInfo|]- lift LevelWarn = [|LevelWarn|]+ lift LevelInfo = [|LevelInfo|]+ lift LevelWarn = [|LevelWarn|] lift LevelError = [|LevelError|] lift (LevelOther x) = [|LevelOther $ pack $(lift $ unpack x)|] @@ -259,8 +262,13 @@ instance MonadIO m => MonadIO (NoLoggingT m) where liftIO = Trans.lift . liftIO +#if MIN_VERSION_resourcet(1,1,0) instance MonadThrow m => MonadThrow (NoLoggingT m) where+ throwM = Trans.lift . throwM+#else+instance MonadThrow m => MonadThrow (NoLoggingT m) where monadThrow = Trans.lift . monadThrow+#endif instance MonadResource m => MonadResource (NoLoggingT m) where liftResourceT = Trans.lift . liftResourceT@@ -310,8 +318,13 @@ instance MonadIO m => MonadIO (LoggingT m) where liftIO = Trans.lift . liftIO +#if MIN_VERSION_resourcet(1,1,0) instance MonadThrow m => MonadThrow (LoggingT m) where+ throwM = Trans.lift . throwM+#else+instance MonadThrow m => MonadThrow (LoggingT m) where monadThrow = Trans.lift . monadThrow+#endif instance MonadResource m => MonadResource (LoggingT m) where liftResourceT = Trans.lift . liftResourceT@@ -365,6 +378,11 @@ toBS = toByteString . logStrBuilder #endif +defaultLogLevelStr :: LogLevel -> LogStr+defaultLogLevelStr level = case level of+ LevelOther t -> toLogStr t+ _ -> toLogStr $ S8.pack $ drop 5 $ show level+ defaultLogStr :: Loc -> LogSource -> LogLevel@@ -376,10 +394,7 @@ #endif defaultLogStr loc src level msg = #if MIN_VERSION_fast_logger(0, 2, 0)- "[" `mappend`- (case level of- LevelOther t -> toLogStr t- _ -> toLogStr $ S8.pack $ drop 5 $ show level) `mappend`+ "[" `mappend` defaultLogLevelStr level `mappend` (if T.null src then mempty else "#" `mappend` toLogStr src) `mappend`@@ -415,7 +430,19 @@ where line = show . fst . loc_start char = show . snd . loc_start+{-+defaultLogStrWithoutLoc ::+ LogSource -> LogLevel -> LogStr -> LogStr+defaultLogStrWithoutLoc loc src level msg =+ "[" `mappend` defaultLogLevelStr level `mappend`+ (if T.null src+ then mempty+ else "#" `mappend` toLogStr src) `mappend`+ "] " `mappend`+ msg `mappend` "\n"+-} + -- | Run a block using a @MonadLogger@ instance which prints to stderr. -- -- Since 0.2.2@@ -477,42 +504,35 @@ defaultLoc :: Loc defaultLoc = Loc "<unknown>" "<unknown>" "<unknown>" (0,0) (0,0) +logWithoutLoc :: (MonadLogger m, ToLogStr msg) => LogSource -> LogLevel -> msg -> m ()+logWithoutLoc = monadLoggerLog defaultLoc+ logDebugN :: MonadLogger m => Text -> m ()-logDebugN msg =- monadLoggerLog defaultLoc "" LevelDebug msg+logDebugN = logWithoutLoc "" LevelDebug logInfoN :: MonadLogger m => Text -> m ()-logInfoN msg =- monadLoggerLog defaultLoc "" LevelInfo msg+logInfoN = logWithoutLoc "" LevelInfo logWarnN :: MonadLogger m => Text -> m ()-logWarnN msg =- monadLoggerLog defaultLoc "" LevelWarn msg+logWarnN = logWithoutLoc "" LevelWarn logErrorN :: MonadLogger m => Text -> m ()-logErrorN msg =- monadLoggerLog defaultLoc "" LevelError msg+logErrorN = logWithoutLoc "" LevelError logOtherN :: MonadLogger m => LogLevel -> Text -> m ()-logOtherN level msg =- monadLoggerLog defaultLoc "" level msg+logOtherN = logWithoutLoc "" logDebugNS :: MonadLogger m => Text -> Text -> m ()-logDebugNS src msg =- monadLoggerLog defaultLoc src LevelDebug msg+logDebugNS src = logWithoutLoc src LevelDebug logInfoNS :: MonadLogger m => Text -> Text -> m ()-logInfoNS src msg =- monadLoggerLog defaultLoc src LevelInfo msg+logInfoNS src = logWithoutLoc src LevelInfo logWarnNS :: MonadLogger m => Text -> Text -> m ()-logWarnNS src msg =- monadLoggerLog defaultLoc src LevelWarn msg+logWarnNS src = logWithoutLoc src LevelWarn logErrorNS :: MonadLogger m => Text -> Text -> m ()-logErrorNS src msg =- monadLoggerLog defaultLoc src LevelError msg+logErrorNS src = logWithoutLoc src LevelError logOtherNS :: MonadLogger m => Text -> LogLevel -> Text -> m ()-logOtherNS src level msg =- monadLoggerLog defaultLoc src level msg+logOtherNS = logWithoutLoc
monad-logger.cabal view
@@ -1,5 +1,5 @@ name: monad-logger-version: 0.3.4.0+version: 0.3.4.1 synopsis: A class of monads which can log messages. description: This package uses template-haskell for determining source code locations of messages. homepage: https://github.com/kazu-yamamoto/logger@@ -26,8 +26,8 @@ , stm , stm-chans , lifted-base- , resourcet >= 0.4 && < 0.5- , conduit >= 1.0 && < 1.1+ , resourcet >= 0.4 && < 1.2+ , conduit >= 1.0 && < 1.2 , fast-logger >= 2.0 && < 2.2 , transformers-base , monad-control