diff --git a/Control/Monad/IO/Peel.hs b/Control/Monad/IO/Peel.hs
--- a/Control/Monad/IO/Peel.hs
+++ b/Control/Monad/IO/Peel.hs
@@ -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
diff --git a/Control/Monad/Trans/Peel.hs b/Control/Monad/Trans/Peel.hs
--- a/Control/Monad/Trans/Peel.hs
+++ b/Control/Monad/Trans/Peel.hs
@@ -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
diff --git a/monad-peel.cabal b/monad-peel.cabal
--- a/monad-peel.cabal
+++ b/monad-peel.cabal
@@ -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
