!j      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None>SX  http-conduitConduit powered version of . Differences are:"Response body is represented as a Producer.Generalized to any instance of  MonadUnliftIO , not just IO.The Manager is contained by a  MonadReader context. Since 2.1.0 http-conduitAn Acquire for getting a Response. Since 2.1.0 http-conduitTLS-powered manager settings. Since 2.1.0 http-conduitGet a new manager using . Since 2.1.0 http-conduit+Get a new manager using the given settings. Since 2.1.0 http-conduitConduit-powered version of .See  for the differences with . Since 2.1.0 http-conduitGeneralized version of . Since 2.1.0 http-conduitSame as , except it uses the Manager in the reader environment. Since 2.1.1 http-conduitSame as , except it uses the Manager in the reader environment.'This can be more convenient that using !H as it avoids the need to specify the base monad for the response body. Since 2.1.2   !$%'()*+,-.03456789:;<=>A@?XPTWVUSRQONMLKJIHGFEDCBedcba`_^]\[ZYfjihgqponmlkrstz~}yxwvu   !$%'()*+,-.03456789:;<=>A@?XPTWVUSRQONMLKJIHGFEDCBedcba`_^]\[ZYfjihgqponmlkrstz~}yxwvuNone>8c http-conduitDownload the specified , returning the results as a . This is a simplified version of  for the common case where you simply want the response data as a simple datatype. If you want more power, such as interleaved actions on the response body during download, you'll need to use ' directly. This function is defined as:  httpLbs =  <=< Even though the 1 contains a lazy bytestring, this function does not utilize lazy I/O, and therefore the entire response body will live in memory. If you want constant memory usage, you'll need to use conduit packages's  returned by .This function will throwIO an A for any response with a non-2xx status code (besides 3xx redirects up to a limit of 10 redirects). This behavior can be modified by changing the  checkStatus field of your request.[Note: Unlike previous versions, this function will perform redirects, as specified by the y setting. http-conduitSDownload the specified URL, following any redirects, and return the response body.This function will throwIO an An for any response with a non-2xx status code (besides 3xx redirects up to a limit of 10 redirects). It uses :6 to parse the input. This function essentially wraps .DNote: Even though this function returns a lazy bytestring, it does not utilize lazy I/O, and therefore the entire response body will live in memory. If you want constant memory usage, you'll need to use the conduit package and  directly."Note: This function creates a new +. It should be avoided in production code.n"#&*-/012378:;A@?XPTWVUSRQONMLKJIHGFEDCBedcba`_^]\[ZYfjihgqponmlkuvwxyz{|}~njihgqponmlk~}|{zyxwvu*#"edcba`_^]\[ZYf;:8730/&21-A@?XPTWVUSRQONMLKJIHGFEDCBNone2PSX&  http-conduit-An exception that can occur when parsing JSON http-conduit1Perform an HTTP request and return the body as a  ByteString.  http-conduit7Perform an HTTP request and return the body as a lazy  ByteStringy. Note that the entire value will be read into memory at once (no lazy I/O will be performed). The advantage of a lazy  ByteString here (versus using 4) is--if needed--a better in-memory representation. http-conduit5Perform an HTTP request and ignore the response body.  http-conduit]Perform an HTTP request and parse the body as JSON. In the event of an JSON parse errors, a " runtime exception will be thrown.  http-conduit]Perform an HTTP request and parse the body as JSON. In the event of an JSON parse errors, a Left value will be returned.  http-conduit<Perform an HTTP request and consume the body with the given  http-conduit?Perform an HTTP request, and get the response body as a Source.The second argument to this function tells us how to make the Source from the Response itself. This allows you to perform actions with the status or headers, for example, in addition to the raw bytes themselves. If you just care about the response body, you can use  as the second argument here. {-# LANGUAGE OverloadedStrings #-} import Control.Monad.IO.Class (liftIO) import Control.Monad.Trans.Resource (runResourceT) import Data.Conduit (($$)) import qualified Data.Conduit.Binary as CB import qualified Data.Conduit.List as CL import Network.HTTP.Simple import System.IO (stdout) main :: IO () main = runResourceT $ httpSource " http://httpbin.org/robots.txt" getSrc $$ CB.sinkHandle stdout where getSrc res = do liftIO $ print (getResponseStatus res, getResponseHeaders res) getResponseBody res  http-conduitMPerform an action with the given request. This employes the bracket pattern.This is similar to , but does not require ( and allows the result to not contain a  value. http-conduitSame as  parseRequest, except will throw an  HttpException0 in the event of a non-2XX response. This uses throwErrorStatusCodes to implement  checkResponse.Exactly the same as  parseUrlThrowP, but has a name that is more consistent with the other parseRequest functions. http-conduitSame as {, but parse errors cause an impure exception. Mostly useful for static strings which are known to be correctly formatted.  http-conduitAlternate spelling of   http-conduitSet the request method  http-conduitSet whether this is a secureHTTPS (True ) or insecureHTTP (False ) request  http-conduit'Set the destination host of the request  http-conduit'Set the destination port of the request  http-conduit/Lens for the requested path info of the request  http-conduit+Add a request header name/value combination  http-conduit0Get all request header values for the given name  http-conduitwSet the given request header to the given list of values. Removes any previously set header values with the same name.  http-conduit$Set the request headers, wiping out all0 previously set headers. This means if you use N to set some headers and also use one of the other setters that modifies the  content-type header (such as ), be sure that  is evaluated first.  http-conduitGet the query string parameters  http-conduitSet the query string parameters http-conduit,Add to the existing query string parameters.  http-conduit"Set the request body to the given qY. You may want to consider using one of the convenience functions in the modules, e.g. requestBodyJSON.NoteA: This will not modify the request method. For that, please use  requestMethod'. You likely don't want the default of GET.  http-conduit$Set the request body as a JSON valueNoteA: This will not modify the request method. For that, please use  requestMethod'. You likely don't want the default of GET.This also sets the  Content-Type to application/json; charset=utf-8  http-conduitSet the request body as a lazy  ByteStringNoteA: This will not modify the request method. For that, please use  requestMethod'. You likely don't want the default of GET.  http-conduitSet the request body as a NoteA: This will not modify the request method. For that, please use  requestMethod'. You likely don't want the default of GET.  http-conduitSet the request body as a fileNoteA: This will not modify the request method. For that, please use  requestMethod'. You likely don't want the default of GET.  http-conduit(Set the request body as URL encoded dataNote): This will change the request method to POST and set the  content-type to !application/x-www-form-urlencoded  http-conduit3Set basic auth with the given username and password  http-conduit$Instead of using the default global , use the supplied Manager.  http-conduit*Override the default proxy server settings  http-conduitGet the status of the response  http-conduit,Get the integral status code of the response  http-conduit2Get all response header values with the given name  http-conduitGet all response headers  http-conduitGet the response body http-conduitlength of source http-conduitusername http-conduitpassword;+,378A@?jihg;A@?jihg387,+      !"#$%&%'%(%)%*%+%,%-%.%/%0123435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3HIJKLKMNONPNQNRNSNTNUNVNWNXNYNZN[N\N]N^N_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNtNuNvNwNxNxNyNzN{N|N}N~NNNNNNNNNNNNNNNNNNNNNNNdNNNNNNNNNNNNNNNNNNNNNNNNN.)http-conduit-2.3.5-IkdTYhDSUZBBBWrmFZ9DR5Network.HTTP.Client.ConduitNetwork.HTTP.ConduitNetwork.HTTP.SimpleCSource(http-client-0.6.1-GdlRiOSnzRXAAPBYUwroh3Network.HTTP.ClientresponseTimeoutDefaultresponseTimeoutNoneresponseTimeoutMicromanagerSetProxymanagerSetSecureProxymanagerSetInsecureProxywithResponseHistoryresponseOpenHistoryhrFinalResponsehrFinalRequest hrRedirectsHistoriedResponseNetwork.HTTP.Client.CorewithConnectionNetwork.HTTP.Client.CookiesgenerateCookieinsertCheckedCookiereceiveSetCookieupdateCookieJarcomputeCookieStringinsertCookiesIntoRequestevictExpiredCookies!removeExistingCookieFromCookieJardestroyCookieJarcreateCookieJar pathMatches defaultPath domainMatches isIpAddressNetwork.HTTP.Client.Manager defaultProxyproxyEnvironmentNamedproxyEnvironmentuseProxynoProxyproxyFromRequest withManager closeManager newManagerrawConnectionModifySocketSizerawConnectionModifySocketNetwork.HTTP.Client.ResponsegetRedirectedRequestNetwork.HTTP.Client.RequestobservedStreamFile streamFilesetQueryStringPartialEscapesetQueryStringsetRequestCheckStatussetRequestIgnoreStatusurlEncodedBodyapplyBasicProxyAuthaddProxyapplyBasicAuthbrowserDecompressalwaysDecompressdefaultRequestgetUrirequestFromURI_requestFromURI parseRequest_ parseRequestthrowErrorStatusCodes parseUrlThrowparseUrlNetwork.HTTP.Client.Body brReadSomeNetwork.HTTP.Client.ConnectionsocketConnectionmakeConnectionNetwork.HTTP.Client.TypesInvalidUrlExceptionHttpExceptionRequest HttpExceptionInvalidProxySettingsConnectionClosedInvalidProxyEnvironmentVariableHttpZlibExceptionInvalidDestinationHostIncompleteHeadersInvalidChunkHeadersResponseBodyTooShortWrongRequestBodyStreamSizeTlsNotSupportedNoResponseDataReceivedProxyConnectExceptionInternalExceptionInvalidRequestHeader InvalidHeaderInvalidStatusLineConnectionFailureConnectionTimeoutResponseTimeoutOverlongHeadersTooManyRedirectsStatusCodeExceptionHttpExceptionContentcookie_http_onlycookie_secure_onlycookie_host_onlycookie_persistentcookie_last_access_timecookie_creation_time cookie_path cookie_domaincookie_expiry_time cookie_value cookie_nameCookie CookieJar proxyPort proxyHostProxy RequestBodyIORequestBodyStreamChunkedRequestBodyStreamRequestBodyBuilder RequestBodyBSRequestBodyLBS RequestBodyPopper NeedsPopper GivesPopperrequestVersion cookieJarresponseTimeout checkResponse redirectCount decompressrawBody hostAddressproxy requestBodyrequestHeaders queryStringpathporthostsecuremethodRequestresponseCookieJar responseBodyresponseHeadersresponseVersionresponseStatusResponsemanagerModifyResponsemanagerModifyRequestmanagerIdleConnectionCountmanagerWrapExceptionmanagerRetryableExceptionmanagerResponseTimeoutmanagerTlsConnectionmanagerRawConnectionmanagerConnCountManagerSettings ProxyOverrideManagergetHttpManagerHasHttpManager thisChunkSize readSoFarfileSizeStreamFileStatus.http-client-tls-0.3.5.3-FNDDJhdYYuT1fXIf1LWzz9Network.HTTP.Client.TLStlsManagerSettingsmkManagerSettings(http-types-0.12.2-JKkfxO2E01jGz1Dpb9VxuiNetwork.HTTP.Types.URI QueryItemQueryNetwork.HTTP.Types.HeaderHeaderRequestHeadersResponseHeaders withResponseacquireResponsedefaultManagerSettingsnewManagerSettings responseOpen responseClosebodyReaderSourcerequestBodySourcerequestBodySourceChunkedhttpLbs httpNoBody simpleHttp lbsResponsehttprequestBodySourceIOrequestBodySourceChunkedIO JSONExceptionJSONParseExceptionJSONConversionExceptionhttpBShttpLBShttpJSONhttpJSONEitherhttpSink httpSourceparseRequestThrowparseRequestThrow_setRequestMethodsetRequestSecuresetRequestHostsetRequestPortsetRequestPathaddRequestHeadergetRequestHeadersetRequestHeadersetRequestHeadersgetRequestQueryStringsetRequestQueryStringaddToRequestQueryStringsetRequestBodysetRequestBodyJSONsetRequestBodyLBSsetRequestBodySourcesetRequestBodyFilesetRequestBodyURLEncodedsetRequestBasicAuthsetRequestManagersetRequestProxygetResponseStatusgetResponseStatusCodegetResponseHeadergetResponseHeadersgetResponseBody$fExceptionJSONException$fShowJSONException$conduit-1.3.1-Hhy0fecVGxeAht5tU3tNGMData.Conduit.Internal.ConduitSink&resourcet-1.2.2-6aHFYK7cYsT6IDIL0wEb5U%Control.Monad.Trans.Resource.Internal MonadResourceConduitM