diff --git a/Network/HTTP/Conduit/Browser.hs b/Network/HTTP/Conduit/Browser.hs
--- a/Network/HTTP/Conduit/Browser.hs
+++ b/Network/HTTP/Conduit/Browser.hs
@@ -213,7 +213,9 @@
 import qualified Data.ByteString as BS
 import qualified Data.ByteString.Lazy as L
 
+#if !MIN_VERSION_http_client(0,5,0)
 import Data.Default
+#endif
 import Data.Function (on)
 import Data.List (partition
                  ,union
@@ -222,7 +224,13 @@
 import Control.Monad
 import Control.Monad.Trans.Class
 import Control.Monad.Trans.State
-import Control.Monad.Trans.Resource (ResourceT, liftResourceT, MonadResource)
+import Control.Monad.Trans.Resource
+    (ResourceT
+    ,liftResourceT
+#if MIN_VERSION_http_client(0,5,0)
+    ,runResourceT
+#endif
+    ,MonadResource)
 import Control.Monad.Trans.Control (MonadBaseControl)
 import Control.Monad.IO.Class
 import Control.Monad.Base
@@ -231,6 +239,9 @@
 import Control.Exception (SomeException
                          ,toException)
 import qualified Data.Map as Map
+#if MIN_VERSION_http_client(0,5,0)
+import Data.IORef
+#endif
 
 data BrowserState = BrowserState
   { currentLocation           :: Maybe URI
@@ -255,7 +266,7 @@
     , timeout                   = Nothing
     , authorities               = const Nothing
     , cookieFilter              = const $ const $ return True
-    , browserCookieJar          = def
+    , browserCookieJar          = mempty
     , currentProxy              = Nothing
     , overrideHeaders           = Map.empty
     , defaultHeaders            = Map.singleton HT.hUserAgent "http-conduit-browser"
@@ -279,10 +290,15 @@
     maybe err use =<< gets currentLocation
   where
         err = lift $ throwM $ InvalidUrlException url "Invalid URL"
-        use loc = maybe err (setUri def) $ do
+        use loc = maybe err (setUri defReq) $ do
             uri <- parseRelativeReference url
             relativeTo' uri loc
         relativeTo' x = Just . relativeTo x
+#if MIN_VERSION_http_client(0,4,30)
+        defReq = defaultRequest
+#else
+        defReq = def
+#endif
 
 -- | Make a request, using all the state in the current BrowserState
 makeRequest :: (MonadBaseControl IO m, MonadIO m, MonadResource m) => Request -> GenericBrowserAction m (Response (C.ResumableSource (ResourceT IO) BS.ByteString))
@@ -302,35 +318,71 @@
     req { redirectCount = 0
         , proxy = maybe (proxy req) Just current_proxy
         --, socksProxy = maybe (socksProxy req) Just current_socks_proxy
+#if MIN_VERSION_http_client(0,5,0)
+        , checkResponse = \ _ _ -> return ()
+        , responseTimeout = maybe (responseTimeout req) responseTimeoutMicro time_out
+#else
         , checkStatus = \ _ _ _ -> Nothing
         , responseTimeout = maybe (responseTimeout req) Just time_out
+#endif
         --, clientCertificates = fromMaybe (clientCertificates req) client_certificates
-        }) max_retry_count
-            (fromMaybe (redirectCount req) max_redirects)
-            (fromMaybe (checkStatus req) current_check_status)
-            Nothing
+        })
+    max_retry_count
+    (fromMaybe (redirectCount req) max_redirects)
+#if MIN_VERSION_http_client(0,5,0)
+    (fromMaybe (checkResponse req) $
+      fmap
+        (\check' -> (\ _ rs -> maybe (return ()) LE.throwIO $
+            check'
+                (responseStatus rs)
+                (responseHeaders rs)
+                (responseCookieJar rs)
+        ))
+        current_check_status
+    )
+#else
+    (fromMaybe (checkStatus req) current_check_status)
+#endif
+    Nothing
   where
     retryHelper
         :: (MonadBaseControl IO m, MonadIO m, MonadResource m)
         => Request
         -> Int
         -> Int
+#if MIN_VERSION_http_client(0,5,0)
+        -> (Request -> Response BodyReader -> IO ())
+#else
         -> (HT.Status -> HT.ResponseHeaders -> CookieJar -> Maybe SomeException)
+#endif
         -> Maybe SomeException
         -> GenericBrowserAction m (Response (C.ResumableSource (ResourceT IO) BS.ByteString))
     retryHelper request' retry_count max_redirects check_status e
       | retry_count < 0 = case e of
         Just e' -> LE.throwIO e'
+#if MIN_VERSION_http_client(0,5,0)
+        Nothing -> LE.throwIO $ HttpExceptionRequest request' ResponseTimeout
+#else
         Nothing -> LE.throwIO TooManyRetries
+#endif
       | otherwise = do
           res <- LE.catch
             (if max_redirects == 0
                 then performRequest request'
                 else runRedirectionChain request' max_redirects)
             (\(e'::HttpException) -> retryHelper request' (retry_count - 1) max_redirects check_status $ Just $ toException e')
+#if MIN_VERSION_http_client(0,5,0)
+          resBR <- liftIO $ backToBodyReader res
+
+          et <- LE.try (liftIO $ check_status request' resBR)
+          case et of
+            Right () -> return res
+            Left e' -> retryHelper request' (retry_count - 1) max_redirects check_status (Just e')
+#else
           case check_status (responseStatus res) (responseHeaders res) (responseCookieJar res) of
             Nothing -> return res
             Just e' -> retryHelper request' (retry_count - 1) max_redirects check_status (Just e')
+#endif
     runRedirectionChain request' redirect_count
       = httpRedirectBase
           redirect_count
@@ -352,7 +404,7 @@
         let request' = (applyAuthorities auths request'')
                 {cookieJar = Just $ createCookieJar $
                     (union `on` destroyCookieJar)
-                        (fromMaybe def $ cookieJar request'')
+                        (fromMaybe mempty $ cookieJar request'')
                         cookie_jar'
                 }
         res <- liftResourceT $ http request' manager'
@@ -363,7 +415,27 @@
                 , currentLocation = Just $ getUri request'
                 }
         return res
+#if MIN_VERSION_http_client(0,5,0)
+    backToBodyReader :: Response (C.ResumableSource (ResourceT IO) BS.ByteString) -> IO (Response BodyReader)
+    backToBodyReader res = do
+        let origsource = responseBody res
 
+        curSourceRef <- newIORef origsource
+
+        return res {responseBody = runResourceT $ do
+            bsource <- liftIO $ readIORef curSourceRef
+            (bsource', mbs) <- bsource C.$$++ C.await
+            liftIO $ writeIORef curSourceRef bsource'
+
+            case mbs of
+              Nothing -> do
+                C.closeResumableSource bsource'
+                return BS.empty
+              Just bs ->
+                return bs
+            }
+#endif
+
 httpRedirectBase
      :: (MonadBaseControl IO m, MonadIO m, MonadResource m)
      => Int -- ^ 'redirectCount'
@@ -372,7 +444,11 @@
      -> m (Response (C.ResumableSource (ResourceT IO) BS.ByteString))
 httpRedirectBase count0 http' req0 = go count0 req0 []
   where
+#if MIN_VERSION_http_client(0,5,0)
+    go count req' ress | count < 0 = LE.throwIO . HttpExceptionRequest req' .  TooManyRedirects =<< mapM (liftResourceT . lbsResponse) ress
+#else
     go count _ ress | count < 0 = LE.throwIO . TooManyRedirects =<< mapM (liftResourceT . lbsResponse) ress
+#endif
     go count req' ress = do
         (res, mreq) <- http' req'
         case mreq of
diff --git a/http-conduit-browser.cabal b/http-conduit-browser.cabal
--- a/http-conduit-browser.cabal
+++ b/http-conduit-browser.cabal
@@ -1,5 +1,5 @@
 name:            http-conduit-browser
-version:         2.0.0.0
+version:         2.0.0.1
 license:         BSD3
 license-file:    LICENSE
 author:          Myles C. Maxfield <myles.maxfield@gmail.com>
@@ -10,7 +10,7 @@
     letting you elegantly describe a browsing session. This package wraps
     the http-conduit package by Michael Snoyman.
 
-    This package is abandoned and unsupported, use http://hackage.haskell.org/package/wreq
+    This package is deprecated, use <http://hackage.haskell.org/package/wreq> instead
 category:        Web, Conduit
 stability:       Stable
 cabal-version:   >= 1.8
@@ -64,13 +64,13 @@
                  , case-insensitive
                  , containers
                  , transformers
-                 , resourcet
+                 , resourcet             >= 1    && < 2
                  , lifted-base
-                 , http-types
+                 , http-types            >= 0.7
                  , base64-bytestring
                  , cookie
                  , time
                  , warp
-                 , wai                  == 2.*
+                 , wai                  >= 2 && < 3
                  , network              >= 2.3
                  , monad-control
