From a9b4ce3a92e5b30d3d8a2e16fc73c3c9cdf621d4 Mon Sep 17 00:00:00 2001 From: Rhys Date: Fri, 31 Jul 2015 13:32:15 +1000 Subject: [PATCH 1/3] Mark Control.Monad.Logger as Trustworthy --- monad-logger/Control/Monad/Logger.hs | 1 + 1 file changed, 1 insertion(+) diff --git a/monad-logger/Control/Monad/Logger.hs b/monad-logger/Control/Monad/Logger.hs index ed56598..3d04a0a 100644 --- a/monad-logger/Control/Monad/Logger.hs +++ b/monad-logger/Control/Monad/Logger.hs @@ -9,6 +9,7 @@ {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE UndecidableInstances #-} +{-# LANGUAGE Trustworthy #-} -- | This module provides the facilities needed for a decoupled logging system. -- -- The 'MonadLogger' class is implemented by monads that give access to a From 2fe941ba9aea1d445e52f58fdc7dc07fb5433537 Mon Sep 17 00:00:00 2001 From: Rhys Date: Fri, 31 Jul 2015 13:32:37 +1000 Subject: [PATCH 2/3] Only import Blaze if required --- monad-logger/Control/Monad/Logger.hs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/monad-logger/Control/Monad/Logger.hs b/monad-logger/Control/Monad/Logger.hs index 3d04a0a..c6a2696 100644 --- a/monad-logger/Control/Monad/Logger.hs +++ b/monad-logger/Control/Monad/Logger.hs @@ -133,13 +133,15 @@ import Control.Monad.Reader.Class ( MonadReader (..) ) import Control.Monad.State.Class ( MonadState (..) ) import Control.Monad.Writer.Class ( MonadWriter (..) ) -import Blaze.ByteString.Builder (toByteString) - import Prelude hiding (catch) -#if !MIN_VERSION_fast_logger(2, 1, 0) && MIN_VERSION_bytestring(0, 10, 2) +#if MIN_VERSION_fast_logger(2, 1, 0) +-- Using System.Log.FastLogger +#elif MIN_VERSION_bytestring(0, 10, 2) import qualified Data.ByteString.Lazy as L import Data.ByteString.Builder (toLazyByteString) +#else +import Blaze.ByteString.Builder (toByteString) #endif #if MIN_VERSION_conduit_extra(1,1,0) From a20789cd94d14a0a5a18efe39e66a55d3c8fb8b4 Mon Sep 17 00:00:00 2001 From: Rhys Date: Fri, 31 Jul 2015 13:38:21 +1000 Subject: [PATCH 3/3] Mark fast-logger modules as Safe/Trustworthy --- fast-logger/System/Log/FastLogger.hs | 1 + fast-logger/System/Log/FastLogger/File.hs | 2 ++ fast-logger/System/Log/FastLogger/IO.hs | 1 + fast-logger/System/Log/FastLogger/IORef.hs | 1 + fast-logger/System/Log/FastLogger/LogStr.hs | 3 ++- fast-logger/System/Log/FastLogger/Logger.hs | 1 + 6 files changed, 8 insertions(+), 1 deletion(-) diff --git a/fast-logger/System/Log/FastLogger.hs b/fast-logger/System/Log/FastLogger.hs index ad11675..700becf 100644 --- a/fast-logger/System/Log/FastLogger.hs +++ b/fast-logger/System/Log/FastLogger.hs @@ -1,6 +1,7 @@ -- | This module provides a fast logging system which -- scales on multicore environments (i.e. +RTS -N\). {-# LANGUAGE BangPatterns, CPP #-} +{-# LANGUAGE Safe #-} module System.Log.FastLogger ( -- * Creating a logger set diff --git a/fast-logger/System/Log/FastLogger/File.hs b/fast-logger/System/Log/FastLogger/File.hs index 0001b34..1858f66 100644 --- a/fast-logger/System/Log/FastLogger/File.hs +++ b/fast-logger/System/Log/FastLogger/File.hs @@ -1,3 +1,5 @@ +{-# LANGUAGE Safe #-} + module System.Log.FastLogger.File where import Control.Monad (unless, when) diff --git a/fast-logger/System/Log/FastLogger/IO.hs b/fast-logger/System/Log/FastLogger/IO.hs index 977f9f8..45fec5b 100644 --- a/fast-logger/System/Log/FastLogger/IO.hs +++ b/fast-logger/System/Log/FastLogger/IO.hs @@ -1,4 +1,5 @@ {-# LANGUAGE BangPatterns #-} +{-# LANGUAGE Trustworthy #-} module System.Log.FastLogger.IO where diff --git a/fast-logger/System/Log/FastLogger/IORef.hs b/fast-logger/System/Log/FastLogger/IORef.hs index 867f484..a3261b8 100644 --- a/fast-logger/System/Log/FastLogger/IORef.hs +++ b/fast-logger/System/Log/FastLogger/IORef.hs @@ -1,4 +1,5 @@ {-# LANGUAGE CPP #-} +{-# LANGUAGE Safe #-} module System.Log.FastLogger.IORef ( IORef diff --git a/fast-logger/System/Log/FastLogger/LogStr.hs b/fast-logger/System/Log/FastLogger/LogStr.hs index 128436e..284843b 100644 --- a/fast-logger/System/Log/FastLogger/LogStr.hs +++ b/fast-logger/System/Log/FastLogger/LogStr.hs @@ -1,5 +1,6 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE Safe #-} module System.Log.FastLogger.LogStr ( Builder @@ -13,9 +14,9 @@ module System.Log.FastLogger.LogStr ( import Data.ByteString.Builder (Builder) import qualified Data.ByteString.Builder as B +import Data.ByteString (ByteString) import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as S8 -import Data.ByteString.Internal (ByteString(..)) import qualified Data.ByteString.Lazy as BL #if __GLASGOW_HASKELL__ < 709 import Data.Monoid (Monoid, mempty, mappend) diff --git a/fast-logger/System/Log/FastLogger/Logger.hs b/fast-logger/System/Log/FastLogger/Logger.hs index db0bb5d..30f79b5 100644 --- a/fast-logger/System/Log/FastLogger/Logger.hs +++ b/fast-logger/System/Log/FastLogger/Logger.hs @@ -1,4 +1,5 @@ {-# LANGUAGE BangPatterns, CPP #-} +{-# LANGUAGE Safe #-} module System.Log.FastLogger.Logger ( Logger(..)