diff --git a/Conduit.hs b/Conduit.hs
--- a/Conduit.hs
+++ b/Conduit.hs
@@ -1,4 +1,5 @@
 {-# LANGUAGE CPP #-}
+{-# LANGUAGE FlexibleContexts #-}
 -- | Your intended one-stop-shop for conduit functionality.
 -- This re-exports functions from many commonly used modules.
 -- When there is a conflict with standard functions, functions
@@ -12,7 +13,9 @@
 module Conduit
     ( -- * Core conduit library
       module Data.Conduit
+#if !MIN_VERSION_conduit(1,1,0)
     , module Data.Conduit.Util
+#endif
 #if MIN_VERSION_conduit(1, 0, 11)
     , module Data.Conduit.Lift
 #endif
@@ -22,17 +25,38 @@
     , MonadIO (..)
     , MonadTrans (..)
     , MonadBase (..)
+    , MonadThrow (..)
+    , MonadBaseControl
+      -- * ResourceT
+    , MonadResource
+    , runResourceT
+      -- * Acquire
+#if MIN_VERSION_resourcet(1,1,0)
+    , module Data.Acquire
+    , withAcquire
+#endif
       -- * Pure pipelines
     , Identity (..)
     ) where
 
 import Data.Conduit
+#if !MIN_VERSION_conduit(1,1,0)
 import Data.Conduit.Util hiding (zip)
+#endif
 import Control.Monad.IO.Class (MonadIO (..))
 import Control.Monad.Trans.Class (MonadTrans (..))
+import Control.Monad.Trans.Control (MonadBaseControl)
 import Control.Monad.Base (MonadBase (..))
 #if MIN_VERSION_conduit(1, 0, 11)
 import Data.Conduit.Lift
 #endif
 import Data.Conduit.Combinators.Unqualified
 import Data.Functor.Identity (Identity (..))
+import Control.Monad.Trans.Resource (MonadResource, MonadThrow (..), runResourceT)
+#if MIN_VERSION_resourcet(1,1,0)
+import Data.Acquire hiding (with)
+import qualified Data.Acquire
+
+withAcquire :: MonadBaseControl IO m => Acquire a -> (a -> m b) -> m b
+withAcquire = Data.Acquire.with
+#endif
diff --git a/Data/Conduit/Combinators.hs b/Data/Conduit/Combinators.hs
--- a/Data/Conduit/Combinators.hs
+++ b/Data/Conduit/Combinators.hs
@@ -188,6 +188,7 @@
 import           Control.Monad.IO.Class      (MonadIO (..))
 import           Control.Monad.Primitive     (PrimMonad, PrimState)
 import           Control.Monad.Trans.Class   (lift)
+import           Control.Monad.Trans.Resource (MonadResource, MonadThrow)
 import           Data.Conduit
 import qualified Data.Conduit.List           as CL
 import           Data.IOData
diff --git a/Data/Conduit/Combinators/Unqualified.hs b/Data/Conduit/Combinators/Unqualified.hs
--- a/Data/Conduit/Combinators/Unqualified.hs
+++ b/Data/Conduit/Combinators/Unqualified.hs
@@ -180,6 +180,7 @@
 import           Control.Monad.IO.Class      (MonadIO (..))
 import           Control.Monad.Primitive     (PrimMonad, PrimState)
 import           Control.Monad.Trans.Class   (lift)
+import           Control.Monad.Trans.Resource (MonadResource, MonadThrow)
 import           Data.Conduit
 import qualified Data.Conduit.List           as CL
 import           Data.IOData
diff --git a/conduit-combinators.cabal b/conduit-combinators.cabal
--- a/conduit-combinators.cabal
+++ b/conduit-combinators.cabal
@@ -1,5 +1,5 @@
 name:                conduit-combinators
-version:             0.2.3.1
+version:             0.2.4
 synopsis:            Commonly used conduit functions, for both chunked and unchunked data
 description:         Provides a replacement for Data.Conduit.List, as well as a convenient Conduit module.
 homepage:            https://github.com/fpco/conduit-combinators
@@ -20,6 +20,7 @@
   build-depends:       base >= 4 && < 5
                      , chunked-data
                      , conduit >= 1.0.12
+                     , conduit-extra
                      , transformers
                      , transformers-base
                      , primitive
@@ -34,6 +35,8 @@
                      , unix-compat
                      , base16-bytestring
                      , base64-bytestring        >= 0.1.1.1
+                     , resourcet
+                     , monad-control
   if os(windows)
       cpp-options:     -DWINDOWS
   else
