diff --git a/src/Control/Monad/Trans/Abort.hs b/src/Control/Monad/Trans/Abort.hs
--- a/src/Control/Monad/Trans/Abort.hs
+++ b/src/Control/Monad/Trans/Abort.hs
@@ -18,7 +18,7 @@
 import Data.Functor.Plus
 import Data.Functor.Bind
 import Data.Functor.Bind.Trans
-import Data.Default
+import Data.Default.Class
 import Control.Applicative
 import Control.Monad (liftM, ap, MonadPlus(..))
 import Control.Monad.Base
@@ -26,7 +26,6 @@
 import Control.Monad.Trans.Class
 import Control.Monad.Trans.Control
 import Control.Monad.IO.Class
-import Control.Failure
 
 newtype AbortT e μ α = AbortT { runAbortT ∷ μ (Either e α) }
 
@@ -96,9 +95,6 @@
     StMAbort { unStMAbort ∷ ComposeSt (AbortT e) μ α }
   liftBaseWith = defaultLiftBaseWith StMAbort
   restoreM     = defaultRestoreM unStMAbort
-
-instance Monad μ ⇒ Failure e (AbortT e μ) where
-  failure = abort
 
 abort ∷ Monad μ ⇒ e → AbortT e μ α
 abort = AbortT . return . Left
diff --git a/transformers-abort.cabal b/transformers-abort.cabal
--- a/transformers-abort.cabal
+++ b/transformers-abort.cabal
@@ -1,5 +1,5 @@
 Name: transformers-abort
-Version: 0.4
+Version: 0.5
 Category: Control
 Stability: experimental
 Synopsis: A better error monad transformer
@@ -25,17 +25,15 @@
 
 Library
   Build-Depends:
-    base              >= 4 && < 5,
-    transformers      >= 0.2,
-    transformers-base >= 0.4,
-    semigroupoids     >= 1.2,
-    pointed           >= 2.0.1,
-    data-default      >= 0.2,
-    failure           >= 0.1,
-    monad-control     >= 0.3
+    base               >= 4 && < 5,
+    transformers       >= 0.2,
+    transformers-base  >= 0.4,
+    semigroupoids      >= 1.2,
+    pointed            >= 2.0.1,
+    data-default-class >= 0.0.1,
+    monad-control      >= 0.3
   Hs-Source-Dirs: src
   GHC-Options: -Wall
   Exposed-Modules:
     Control.Monad.Trans.Abort
     Control.Monad.Trans.Finish
-
