http-conduit 2.3.5 → 2.3.6
raw patch · 5 files changed
+28/−4 lines, 5 filesdep ~basedep ~http-client
Dependency ranges changed: base, http-client
Files
- ChangeLog.md +4/−0
- Network/HTTP/Client/Conduit.hs +21/−3
- Network/HTTP/Conduit.hs +1/−0
- Network/HTTP/Simple.hs +1/−0
- http-conduit.cabal +1/−1
ChangeLog.md view
@@ -1,3 +1,7 @@+## 2.3.6++* Add `httpSource` to `Network.HTTP.Client.Conduit` [#390](https://github.com/snoyberg/http-client/pull/390).+ ## 2.3.5 * Adds `addToRequestQueryString` helper function
Network/HTTP/Client/Conduit.hs view
@@ -15,6 +15,7 @@ , responseOpen , responseClose , acquireResponse+ , httpSource -- * Manager helpers , defaultManagerSettings , newManager@@ -31,13 +32,14 @@ import Control.Monad (unless) import Control.Monad.IO.Unlift (MonadIO, liftIO, MonadUnliftIO, withRunInIO)-import Control.Monad.Reader (MonadReader (..))+import Control.Monad.Reader (MonadReader (..), runReaderT)+import Control.Monad.Trans.Resource (MonadResource) import Data.Acquire (Acquire, mkAcquire, with) import Data.ByteString (ByteString) import qualified Data.ByteString as S import qualified Data.ByteString.Lazy as L-import Data.Conduit (ConduitM, ($$+),- await, yield, ($$++))+import Data.Conduit (ConduitM, ($$+), ($$++),+ await, yield, bracketP) import Data.Int (Int64) import Data.IORef (newIORef, readIORef, writeIORef) import Network.HTTP.Client hiding (closeManager,@@ -172,3 +174,19 @@ env <- ask let man = getHttpManager env liftIO $ H.httpNoBody req man++-- | Same as 'Network.HTTP.Simple.httpSource', but uses 'Manager'+-- from Reader environment instead of the global one.+--+-- Since 2.3.6+httpSource+ :: (MonadResource m, MonadIO n, MonadReader env m, HasHttpManager env)+ => Request+ -> (Response (ConduitM () ByteString n ()) -> ConduitM () r m ())+ -> ConduitM () r m ()+httpSource request withRes = do+ env <- ask+ bracketP+ (runReaderT (responseOpen request) env)+ responseClose+ withRes
Network/HTTP/Conduit.hs view
@@ -158,6 +158,7 @@ , rawBody , decompress , redirectCount+ , shouldStripHeaderOnRedirect , checkResponse , responseTimeout , cookieJar
Network/HTTP/Simple.hs view
@@ -95,6 +95,7 @@ import qualified Data.Aeson as A import qualified Data.Traversable as T import Control.Exception (throw, throwIO, Exception)+import Data.Monoid import Data.Typeable (Typeable) import qualified Data.Conduit as C import Data.Conduit (runConduit, (.|), ConduitM)
http-conduit.cabal view
@@ -1,5 +1,5 @@ name: http-conduit-version: 2.3.5+version: 2.3.6 license: BSD3 license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>