packages feed

DAV 1.3 → 1.3.1

raw patch · 2 files changed

+25/−3 lines, 2 filesdep ~http-clientPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: http-client

API changes (from Hackage documentation)

Files

DAV.cabal view
@@ -1,5 +1,5 @@ name:                DAV-version:             1.3+version:             1.3.1 synopsis:            RFC 4918 WebDAV support description:    This is a library for the Web Distributed Authoring and Versioning@@ -93,4 +93,4 @@ source-repository this   type:     git   location: git://anonscm.debian.org/users/clint/DAV.git-  tag:      DAV/1.3+  tag:      DAV/1.3.1
Network/Protocol/HTTP/DAV.hs view
@@ -77,7 +77,12 @@  import Data.Maybe (catMaybes, fromMaybe) -import Network.HTTP.Client (RequestBody(..), httpLbs, parseUrl, applyBasicAuth, Request(..), Response(..), newManager, HttpException(..), BodyReader, withResponse, path)+#if MIN_VERSION_http_client(0,5,0)+import Network.HTTP.Client (defaultRequest, HttpExceptionContent(StatusCodeException), parseUrlThrow, responseTimeoutDefault, responseTimeoutMicro)+#else+import Network.HTTP.Client (parseUrl)+#endif+import Network.HTTP.Client (RequestBody(..), httpLbs, applyBasicAuth, Request(..), Response(..), newManager, HttpException(..), BodyReader, withResponse, path) import Network.HTTP.Client.TLS (tlsManagerSettings) import Network.HTTP.Types (hContentType, Method, Status, RequestHeaders, conflict409) @@ -88,7 +93,11 @@ import Data.CaseInsensitive (mk)  instance Default DAVContext where+#if MIN_VERSION_http_client(0,5,0)+    def = DAVContext [] defaultRequest B.empty B.empty [] Nothing def Nothing "hDav-using application"+#else     def = DAVContext [] def B.empty B.empty [] Nothing def Nothing "hDav-using application"+#endif  newtype DAVT m a = DAVT { runDAVT :: ExceptT String (StateT DAVContext m) a }     deriving (Alternative, Applicative, Functor, Monad, MonadBase b, MonadError String, MonadFix, MonadIO, MonadPlus, MonadState DAVContext)@@ -114,7 +123,11 @@ mkDAVContext :: MonadIO m => DAVURL -> m DAVContext mkDAVContext u = liftIO $ do     mgr <- liftIO $ newManager tlsManagerSettings+#if MIN_VERSION_http_client(0,5,0)+    req <- liftIO $ parseUrlThrow u+#else     req <- liftIO $ parseUrl u+#endif     return $ def { _baseRequest = req, _httpManager = Just mgr }  {-# DEPRECATED closeDAVContext "deprecated because http-client deprecated closeManager" #-}@@ -137,7 +150,11 @@ setUserAgent ua = userAgent .= ua  setResponseTimeout :: MonadIO m => Maybe Int -> DAVT m ()+#if MIN_VERSION_http_client(0,5,0)+setResponseTimeout rt = baseRequest %= \x -> x { responseTimeout = maybe responseTimeoutDefault responseTimeoutMicro rt }+#else setResponseTimeout rt = baseRequest %= \x -> x { responseTimeout = rt }+#endif  mkDavRequest :: MonadIO m => Method -> RequestHeaders -> RequestBody -> DAVT m Request mkDavRequest meth addlhdrs rbody = do@@ -160,8 +177,13 @@       maybe (DAVT $ throwE "Can't perform request without manager") (liftIO . httpLbs req) (ctx ^. httpManager)  matchStatusCodeException :: Status -> HttpException -> Maybe ()+#if MIN_VERSION_http_client(0,5,0)+matchStatusCodeException want (HttpExceptionRequest _ (StatusCodeException resp _))+    | responseStatus resp == want = Just ()+#else matchStatusCodeException want (StatusCodeException s _ _)     | s == want = Just ()+#endif     | otherwise = Nothing matchStatusCodeException _ _ = Nothing