@@ -46,7 +46,9 @@ import Control.Monad.IO.Class
46import Control.Monad.Reader
46import Control.Monad.Reader
47import Control.Monad.State
47import Control.Monad.State
48import Control.Monad.Trans.Control
48import Control.Monad.Trans.Control
49+#if !MIN_VERSION_either(4, 5, 0)
49import Control.Monad.Trans.Either (EitherT, mapEitherT)
50import Control.Monad.Trans.Either (EitherT, mapEitherT)
50import Control.Monad.Trans.Except (ExceptT, mapExceptT)
52import Control.Monad.Trans.Except (ExceptT, mapExceptT)
51import Control.Monad.Trans.Identity (IdentityT, mapIdentityT)
53import Control.Monad.Trans.Identity (IdentityT, mapIdentityT)
52import Control.Monad.Trans.List (ListT, mapListT)
54import Control.Monad.Trans.List (ListT, mapListT)
@@ -152,11 +154,13 @@ instance (KatipContext m, Katip (MaybeT m)) => KatipContext (MaybeT m) where
152 localKatipNamespace = mapMaybeT . localKatipNamespace
154 localKatipNamespace = mapMaybeT . localKatipNamespace
157+#if !MIN_VERSION_either(4, 5, 0)
155instance (KatipContext m, Katip (EitherT e m)) => KatipContext (EitherT e m) where
158instance (KatipContext m, Katip (EitherT e m)) => KatipContext (EitherT e m) where
156 getKatipContext = lift getKatipContext
159 getKatipContext = lift getKatipContext
157 localKatipContext = mapEitherT . localKatipContext
160 localKatipContext = mapEitherT . localKatipContext
158 getKatipNamespace = lift getKatipNamespace
161 getKatipNamespace = lift getKatipNamespace
159 localKatipNamespace = mapEitherT . localKatipNamespace
162 localKatipNamespace = mapEitherT . localKatipNamespace
162instance (KatipContext m, Katip (ListT m)) => KatipContext (ListT m) where
166instance (KatipContext m, Katip (ListT m)) => KatipContext (ListT m) where