fast-logger 3.1.0 → 3.1.1
raw patch · 4 files changed
+35/−4 lines, 4 filesdep ~directorydep ~filepathPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: directory, filepath
API changes (from Hackage documentation)
+ System.Log.FastLogger.LoggerSet: newFDLoggerSet :: BufSize -> Maybe Int -> Maybe FilePath -> FD -> IO LoggerSet
+ System.Log.FastLogger.LoggerSet: newStderrLoggerSetN :: BufSize -> Maybe Int -> IO LoggerSet
+ System.Log.FastLogger.LoggerSet: newStdoutLoggerSetN :: BufSize -> Maybe Int -> IO LoggerSet
Files
- ChangeLog.md +5/−0
- System/Log/FastLogger.hs +9/−2
- System/Log/FastLogger/LoggerSet.hs +20/−1
- fast-logger.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,8 @@+## 3.1.1++* More time-ordered logging functions+ [#199](https://github.com/kazu-yamamoto/logger/pull/199+ ## 3.1.0 * Having a single Buffer in LoggerSet for locking [#197](https://github.com/kazu-yamamoto/logger/pull/197.
System/Log/FastLogger.hs view
@@ -101,17 +101,24 @@ -- This type signature should be read as: -- -- > newFastLogger :: LogType -> IO (FastLogger, IO ())+--+-- This logger uses `numCapabilities` many buffers, and thus+-- does not provide time-ordered output.+-- For time-ordered output, use `newFastLogger1`. newFastLogger :: LogType' v -> IO (v -> IO (), IO ()) newFastLogger typ = newFastLoggerCore Nothing typ +-- | Like `newFastLogger`, but creating a logger that uses only 1+-- capability. This scales less well on multi-core machines,+-- but provides time-ordered output. newFastLogger1 :: LogType' v -> IO (v -> IO (), IO ()) newFastLogger1 typ = newFastLoggerCore (Just 1) typ newFastLoggerCore :: Maybe Int -> LogType' v -> IO (v -> IO (), IO ()) newFastLoggerCore mn typ = case typ of LogNone -> return (const noOp, noOp)- LogStdout bsize -> newStdoutLoggerSet bsize >>= stdLoggerInit- LogStderr bsize -> newStderrLoggerSet bsize >>= stdLoggerInit+ LogStdout bsize -> newStdoutLoggerSetN bsize mn >>= stdLoggerInit+ LogStderr bsize -> newStderrLoggerSetN bsize mn >>= stdLoggerInit LogFileNoRotate fp bsize -> newFileLoggerSetN bsize mn fp >>= fileLoggerInit LogFile fspec bsize -> rotateLoggerInit fspec bsize LogFileTimedRotate fspec bsize -> timedRotateLoggerInit fspec bsize
System/Log/FastLogger/LoggerSet.hs view
@@ -6,8 +6,11 @@ , newFileLoggerSet , newFileLoggerSetN , newStdoutLoggerSet+ , newStdoutLoggerSetN , newStderrLoggerSet+ , newStderrLoggerSetN , newLoggerSet+ , newFDLoggerSet -- * Renewing and removing a logger set , renewLoggerSet , rmLoggerSet@@ -42,10 +45,16 @@ (IO ()) -- | Creating a new 'LoggerSet' using a file.+--+-- Uses `numCapabilties` many buffers, which will result in log+-- output that is not ordered by time (see `newFileLoggerSetN`). newFileLoggerSet :: BufSize -> FilePath -> IO LoggerSet newFileLoggerSet size file = openFileFD file >>= newFDLoggerSet size Nothing (Just file) --- | Creating a new 'LoggerSet' using a file.+-- | Creating a new 'LoggerSet' using a file, using only the given number of capabilites.+--+-- Giving @mn = Just 1@ scales less well on multi-core machines,+-- but provides time-ordered output. newFileLoggerSetN :: BufSize -> Maybe Int -> FilePath -> IO LoggerSet newFileLoggerSetN size mn file = openFileFD file >>= newFDLoggerSet size mn (Just file) @@ -53,9 +62,19 @@ newStdoutLoggerSet :: BufSize -> IO LoggerSet newStdoutLoggerSet size = getStdoutFD >>= newFDLoggerSet size Nothing Nothing +-- | Creating a new 'LoggerSet' using stdout, with the given number of buffers+-- (see `newFileLoggerSetN`).+newStdoutLoggerSetN :: BufSize -> Maybe Int -> IO LoggerSet+newStdoutLoggerSetN size mn = getStdoutFD >>= newFDLoggerSet size mn Nothing+ -- | Creating a new 'LoggerSet' using stderr. newStderrLoggerSet :: BufSize -> IO LoggerSet newStderrLoggerSet size = getStderrFD >>= newFDLoggerSet size Nothing Nothing++-- | Creating a new 'LoggerSet' using stderr, with the given number of buffers+-- (see `newFileLoggerSetN`).+newStderrLoggerSetN :: BufSize -> Maybe Int -> IO LoggerSet+newStderrLoggerSetN size mn = getStderrFD >>= newFDLoggerSet size mn Nothing {-# DEPRECATED newLoggerSet "Use newFileLoggerSet etc instead" #-} -- | Creating a new 'LoggerSet'.
fast-logger.cabal view
@@ -1,5 +1,5 @@ Name: fast-logger-Version: 3.1.0+Version: 3.1.1 Author: Kazu Yamamoto <kazu@iij.ad.jp> Maintainer: Kazu Yamamoto <kazu@iij.ad.jp> License: BSD3