packages feed

http-client 0.4.18.1 → 0.4.19

raw patch · 6 files changed

+27/−9 lines, 6 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Network.HTTP.Client: class HasHttpManager a
+ Network.HTTP.Client: getHttpManager :: HasHttpManager a => a -> Manager
+ Network.HTTP.Client.Internal: class HasHttpManager a
+ Network.HTTP.Client.Internal: getHttpManager :: HasHttpManager a => a -> Manager

Files

ChangeLog.md view
@@ -1,3 +1,8 @@+## 0.4.19++* Move HasHttpManager from http-conduit to http-client [#147](https://github.com/snoyberg/http-client/pull/147)+* Chunked request bodies use less TCP packets [#149](https://github.com/snoyberg/http-client/issues/149)+ ## 0.4.18  * Deprecate closeManager [#136](https://github.com/snoyberg/http-client/issues/136) [#137](https://github.com/snoyberg/http-client/issues/137)
Network/HTTP/Client.hs view
@@ -87,6 +87,7 @@     , newManager     , closeManager     , withManager+    , HasHttpManager(..)       -- ** Connection manager settings     , ManagerSettings     , defaultManagerSettings
Network/HTTP/Client/Request.hs view
@@ -373,12 +373,18 @@       where         loop stream = do             bs <- stream-            when isChunked $-                connectionWrite $ S8.pack $ showHex (S.length bs) (if S.null bs then "\r\n\r\n" else "\r\n")-            unless (S.null bs) $ do-                connectionWrite bs-                when isChunked $ connectionWrite "\r\n"-                loop stream+            if S.null bs+                then when isChunked $ connectionWrite "0\r\n\r\n"+                else do+                    connectionWrite $+                        if isChunked+                            then S.concat+                                [ S8.pack $ showHex (S.length bs) "\r\n"+                                , bs+                                , "\r\n"+                                ]+                            else bs+                    loop stream       hh
Network/HTTP/Client/Types.hs view
@@ -22,6 +22,7 @@     , Response (..)     , ResponseClose (..)     , Manager (..)+    , HasHttpManager (..)     , ConnsMap (..)     , ManagerSettings (..)     , NonEmptyList (..)@@ -594,6 +595,11 @@     -- ^ See 'managerProxy'     }     deriving T.Typeable++class HasHttpManager a where+    getHttpManager :: a -> Manager+instance HasHttpManager Manager where+    getHttpManager = id  data ConnsMap     = ManagerClosed
http-client.cabal view
@@ -1,5 +1,5 @@ name:                http-client-version:             0.4.18.1+version:             0.4.19 synopsis:            An HTTP client engine, intended as a base layer for more user-friendly packages. description:         Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/http-client>. homepage:            https://github.com/snoyberg/http-client
test-nonet/Network/HTTP/Client/RequestSpec.hs view
@@ -99,14 +99,14 @@                , [nonChunked <> "\r\ndata"]                , [nonChunked <> "\r\ndata"]                , [nonChunked <> "\r\n", "", "data"]-               , [chunked <> "\r\n", "", "4\r\n","data","\r\n","0\r\n\r\n"]+               , [chunked <> "\r\n", "", "4\r\ndata\r\n","0\r\n\r\n"]                ]          out2 = [ (nonChunked <> "Expect: 100-continue\r\n\r\n", ["data"])                , (nonChunked <> "Expect: 100-continue\r\n\r\n", ["data"])                , (nonChunked <> "Expect: 100-continue\r\n\r\n", ["data"])                , (nonChunked <> "Expect: 100-continue\r\n\r\n", ["data"])-               , (chunked    <> "Expect: 100-continue\r\n\r\n", ["4\r\n","data","\r\n","0\r\n\r\n"])+               , (chunked    <> "Expect: 100-continue\r\n\r\n", ["4\r\ndata\r\n","0\r\n\r\n"])                ]          nonChunked = "PUT /foo HTTP/1.1\r\nHost: localhost\r\nAccept-Encoding: gzip\r\nContent-Length: 4\r\n"