diff --git a/enumerator.cabal b/enumerator.cabal
--- a/enumerator.cabal
+++ b/enumerator.cabal
@@ -1,5 +1,5 @@
 name: enumerator
-version: 0.4.1
+version: 0.4.2
 synopsis: Implementation of Oleg Kiselyov's left-fold enumerators
 license: MIT
 license-file: license.txt
@@ -22,18 +22,17 @@
   readme.txt
 
 source-repository head
-  type: darcs
+  type: bazaar
   location: http://john-millikin.com/software/enumerator/
 
 library
-  ghc-options: -Wall -fno-warn-unused-do-bind
+  ghc-options: -Wall
   hs-source-dirs: hs
 
   build-depends:
       transformers >= 0.2 && < 0.3
     , bytestring >= 0.9 && < 0.10
-    , text >= 0.7 && < 0.10
-    , MonadCatchIO-transformers >= 0.0 && < 0.3
+    , text >= 0.7 && < 0.11
 
   if impl(ghc >= 6.10)
     build-depends:
diff --git a/hs/Data/Enumerator.hs b/hs/Data/Enumerator.hs
--- a/hs/Data/Enumerator.hs
+++ b/hs/Data/Enumerator.hs
@@ -72,7 +72,6 @@
 import Control.Monad (liftM, ap)
 import qualified Control.Monad.IO.Class as MIO
 import qualified Control.Monad.Trans.Class as MT
-import qualified Control.Monad.CatchIO as CatchIO
 import qualified Data.List as DataList
 import Control.Monad (foldM)
 import Prelude hiding (span)
@@ -175,16 +174,6 @@
 instance MIO.MonadIO m => MIO.MonadIO (Iteratee a m) where
 	liftIO = MT.lift . MIO.liftIO
 	{-# INLINE liftIO #-}
-
-instance CatchIO.MonadCatchIO m => CatchIO.MonadCatchIO (Iteratee a m) where
-	catch m f = Iteratee (CatchIO.catch (runIteratee m) (runIteratee . f))
-	{-# INLINE catch #-}
-	
-	block = Iteratee . CatchIO.block . runIteratee
-	{-# INLINE block #-}
-	
-	unblock = Iteratee . CatchIO.unblock . runIteratee
-	{-# INLINE unblock #-}
 -- | Lift an 'Iteratee' onto a monad transformer, re-wrapping the
 -- 'Iteratee'&#x2019;s inner monadic values.
 liftTrans :: (Monad m, MT.MonadTrans t, Monad (t m)) =>
