diff --git a/servant-client-core/Setup.hs b/servant-client-core/Setup.hs index 9a994af6..44671092 100644 --- a/servant-client-core/Setup.hs +++ b/servant-client-core/Setup.hs @@ -1,2 +1,2 @@ -import Distribution.Simple +import Distribution.Simple main = defaultMain diff --git a/servant-client-core/src/Servant/Client/Core.hs b/servant-client-core/src/Servant/Client/Core.hs index f974b23a..9ede3e82 100644 --- a/servant-client-core/src/Servant/Client/Core.hs +++ b/servant-client-core/src/Servant/Client/Core.hs @@ -55,13 +55,11 @@ module Servant.Client.Core , setRequestBody ) where import Servant.Client.Core.Internal.Auth -import Servant.Client.Core.Internal.BaseUrl (BaseUrl (..), - InvalidBaseUrlException, - Scheme (..), - parseBaseUrl, - showBaseUrl) +import Servant.Client.Core.Internal.BaseUrl + (BaseUrl (..), InvalidBaseUrlException, Scheme (..), + parseBaseUrl, showBaseUrl) import Servant.Client.Core.Internal.BasicAuth -import Servant.Client.Core.Internal.HasClient import Servant.Client.Core.Internal.Generic +import Servant.Client.Core.Internal.HasClient import Servant.Client.Core.Internal.Request import Servant.Client.Core.Internal.RunClient diff --git a/servant-client-core/src/Servant/Client/Core/Internal/Auth.hs b/servant-client-core/src/Servant/Client/Core/Internal/Auth.hs index 7e10f054..e6f0b2f3 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/Auth.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/Auth.hs @@ -6,7 +6,8 @@ module Servant.Client.Core.Internal.Auth where -import Servant.Client.Core.Internal.Request (Request) +import Servant.Client.Core.Internal.Request + (Request) -- | For a resource protected by authentication (e.g. AuthProtect), we need -- to provide the client with some data used to add authentication data diff --git a/servant-client-core/src/Servant/Client/Core/Internal/BaseUrl.hs b/servant-client-core/src/Servant/Client/Core/Internal/BaseUrl.hs index b95f57bd..c6cf55b8 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/BaseUrl.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/BaseUrl.hs @@ -3,11 +3,13 @@ {-# LANGUAGE ViewPatterns #-} module Servant.Client.Core.Internal.BaseUrl where -import Control.Monad.Catch (Exception, MonadThrow, throwM) +import Control.Monad.Catch + (Exception, MonadThrow, throwM) import Data.List import Data.Typeable import GHC.Generics -import Network.URI hiding (path) +import Network.URI hiding + (path) import Safe import Text.Read diff --git a/servant-client-core/src/Servant/Client/Core/Internal/BasicAuth.hs b/servant-client-core/src/Servant/Client/Core/Internal/BasicAuth.hs index 64dc8433..e31c62cc 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/BasicAuth.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/BasicAuth.hs @@ -6,11 +6,16 @@ module Servant.Client.Core.Internal.BasicAuth where -import Data.ByteString.Base64 (encode) -import Data.Monoid ((<>)) -import Data.Text.Encoding (decodeUtf8) -import Servant.API.BasicAuth (BasicAuthData (BasicAuthData)) -import Servant.Client.Core.Internal.Request (Request, addHeader) +import Data.ByteString.Base64 + (encode) +import Data.Monoid + ((<>)) +import Data.Text.Encoding + (decodeUtf8) +import Servant.API.BasicAuth + (BasicAuthData (BasicAuthData)) +import Servant.Client.Core.Internal.Request + (Request, addHeader) -- | Authenticate a request using Basic Authentication basicAuthReq :: BasicAuthData -> Request -> Request diff --git a/servant-client-core/src/Servant/Client/Core/Internal/ClientF.hs b/servant-client-core/src/Servant/Client/Core/Internal/ClientF.hs index 19099e0b..20035c0b 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/ClientF.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/ClientF.hs @@ -1,7 +1,7 @@ {-# LANGUAGE DeriveFunctor #-} module Servant.Client.Core.Internal.ClientF where -import Servant.Client.Core.Internal.Request +import Servant.Client.Core.Internal.Request data ClientF a = RunRequest Request (Response -> a) diff --git a/servant-client-core/src/Servant/Client/Core/Internal/Generic.hs b/servant-client-core/src/Servant/Client/Core/Internal/Generic.hs index 4bc1bda8..28d7591a 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/Generic.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/Generic.hs @@ -1,19 +1,21 @@ -{-# LANGUAGE CPP #-} -{-# LANGUAGE DataKinds #-} -{-# LANGUAGE DefaultSignatures #-} -{-# LANGUAGE FlexibleContexts #-} -{-# LANGUAGE FlexibleInstances #-} +{-# LANGUAGE CPP #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DefaultSignatures #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} -{-# LANGUAGE TypeFamilies #-} -{-# LANGUAGE TypeOperators #-} -{-# LANGUAGE UndecidableInstances #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UndecidableInstances #-} #include "overlapping-compat.h" module Servant.Client.Core.Internal.Generic where -import Generics.SOP (Code, Generic, I(..), NP(..), NS(Z), SOP(..), to) -import Servant.API ((:<|>)(..)) +import Generics.SOP + (Code, Generic, I (..), NP (..), NS (Z), SOP (..), to) +import Servant.API + ((:<|>) (..)) -- | This class allows us to match client structure with client functions -- produced with 'client' without explicit pattern-matching. diff --git a/servant-client-core/src/Servant/Client/Core/Internal/HasClient.hs b/servant-client-core/src/Servant/Client/Core/Internal/HasClient.hs index 1a41cbb7..1a770424 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/HasClient.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/HasClient.hs @@ -15,54 +15,46 @@ #include "overlapping-compat.h" module Servant.Client.Core.Internal.HasClient where -import Prelude () +import Prelude () import Prelude.Compat -import Control.Concurrent (newMVar, modifyMVar) -import Data.Foldable (toList) +import Control.Concurrent + (modifyMVar, newMVar) +import Control.Monad.IO.Class + (MonadIO (..)) import qualified Data.ByteString.Lazy as BL -import Control.Monad.IO.Class (MonadIO (..)) -import Data.List (foldl') -import Data.Proxy (Proxy (Proxy)) -import Data.Semigroup ((<>)) -import Data.Sequence (fromList) -import Data.String (fromString) -import Data.Text (Text, pack) -import GHC.TypeLits (KnownSymbol, symbolVal) +import Data.Foldable + (toList) +import Data.List + (foldl') +import Data.Proxy + (Proxy (Proxy)) +import Data.Semigroup + ((<>)) +import Data.Sequence + (fromList) +import Data.String + (fromString) +import Data.Text + (Text, pack) +import GHC.TypeLits + (KnownSymbol, symbolVal) import qualified Network.HTTP.Types as H -import Servant.API ((:<|>) ((:<|>)), (:>), - AuthProtect, BasicAuth, - BasicAuthData, - BuildHeadersTo (..), - FromResultStream (..), - ByteStringParser (..), - Capture', CaptureAll, - Description, EmptyAPI, - FramingUnrender (..), - Header', Headers (..), - HttpVersion, IsSecure, - MimeRender (mimeRender), - MimeUnrender (mimeUnrender), - NoContent (NoContent), - QueryFlag, QueryParam', - QueryParams, Raw, - ReflectMethod (..), - RemoteHost, ReqBody', - ResultStream(..), - SBoolI, - Stream, - Summary, ToHttpApiData, - Vault, Verb, - WithNamedContext, - contentType, - getHeadersHList, - getResponse, - toQueryParam, - toUrlPiece) -import Servant.API.ContentTypes (contentTypes) -import Servant.API.Modifiers (FoldRequired, - RequiredArgument, - foldRequiredArgument) +import Servant.API + ((:<|>) ((:<|>)), (:>), AuthProtect, BasicAuth, BasicAuthData, + BuildHeadersTo (..), ByteStringParser (..), Capture', + CaptureAll, Description, EmptyAPI, FramingUnrender (..), + FromResultStream (..), Header', Headers (..), HttpVersion, + IsSecure, MimeRender (mimeRender), + MimeUnrender (mimeUnrender), NoContent (NoContent), QueryFlag, + QueryParam', QueryParams, Raw, ReflectMethod (..), RemoteHost, + ReqBody', ResultStream (..), SBoolI, Stream, Summary, + ToHttpApiData, Vault, Verb, WithNamedContext, contentType, + getHeadersHList, getResponse, toQueryParam, toUrlPiece) +import Servant.API.ContentTypes + (contentTypes) +import Servant.API.Modifiers + (FoldRequired, RequiredArgument, foldRequiredArgument) import Servant.Client.Core.Internal.Auth import Servant.Client.Core.Internal.BasicAuth diff --git a/servant-client-core/src/Servant/Client/Core/Internal/Request.hs b/servant-client-core/src/Servant/Client/Core/Internal/Request.hs index 6adb96ee..6f31bd20 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/Request.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/Request.hs @@ -12,26 +12,34 @@ module Servant.Client.Core.Internal.Request where -import Prelude () +import Prelude () import Prelude.Compat -import Control.Monad.Catch (Exception) +import Control.Monad.Catch + (Exception) import qualified Data.ByteString as BS import qualified Data.ByteString.Builder as Builder import qualified Data.ByteString.Lazy as LBS -import Data.Int (Int64) -import Data.Semigroup ((<>)) +import Data.Int + (Int64) +import Data.Semigroup + ((<>)) import qualified Data.Sequence as Seq -import Data.Text (Text) -import Data.Text.Encoding (encodeUtf8) -import Data.Typeable (Typeable) -import GHC.Generics (Generic) -import Network.HTTP.Media (MediaType) -import Network.HTTP.Types (Header, HeaderName, HttpVersion, - Method, QueryItem, Status, http11, - methodGet) -import Web.HttpApiData (ToHttpApiData, toEncodedUrlPiece, - toHeader) +import Data.Text + (Text) +import Data.Text.Encoding + (encodeUtf8) +import Data.Typeable + (Typeable) +import GHC.Generics + (Generic) +import Network.HTTP.Media + (MediaType) +import Network.HTTP.Types + (Header, HeaderName, HttpVersion, Method, QueryItem, Status, + http11, methodGet) +import Web.HttpApiData + (ToHttpApiData, toEncodedUrlPiece, toHeader) -- | A type representing possible errors in a request -- diff --git a/servant-client-core/src/Servant/Client/Core/Internal/RunClient.hs b/servant-client-core/src/Servant/Client/Core/Internal/RunClient.hs index ac6e02ac..46482174 100644 --- a/servant-client-core/src/Servant/Client/Core/Internal/RunClient.hs +++ b/servant-client-core/src/Servant/Client/Core/Internal/RunClient.hs @@ -6,24 +6,27 @@ -- | Types for possible backends to run client-side `Request` queries module Servant.Client.Core.Internal.RunClient where -import Prelude () +import Prelude () import Prelude.Compat -import Control.Monad (unless) -import Control.Monad.Free (Free (..), liftF) -import Data.Foldable (toList) -import Data.Proxy (Proxy) +import Control.Monad + (unless) +import Control.Monad.Free + (Free (..), liftF) +import Data.Foldable + (toList) +import Data.Proxy + (Proxy) import qualified Data.Text as T -import Network.HTTP.Media (MediaType, matches, - parseAccept, (//)) -import Servant.API (MimeUnrender, - contentTypes, - mimeUnrender) +import Network.HTTP.Media + (MediaType, matches, parseAccept, (//)) +import Servant.API + (MimeUnrender, contentTypes, mimeUnrender) -import Servant.Client.Core.Internal.Request (Request, Response, GenResponse (..), - StreamingResponse (..), - ServantError (..)) import Servant.Client.Core.Internal.ClientF +import Servant.Client.Core.Internal.Request + (GenResponse (..), Request, Response, ServantError (..), + StreamingResponse (..)) class Monad m => RunClient m where -- | How to make a request. diff --git a/servant-client-core/src/Servant/Client/Core/Reexport.hs b/servant-client-core/src/Servant/Client/Core/Reexport.hs index 3d8dd53b..401b1e8f 100644 --- a/servant-client-core/src/Servant/Client/Core/Reexport.hs +++ b/servant-client-core/src/Servant/Client/Core/Reexport.hs @@ -28,6 +28,6 @@ module Servant.Client.Core.Reexport import Servant.Client.Core.Internal.BaseUrl -import Servant.Client.Core.Internal.HasClient import Servant.Client.Core.Internal.Generic +import Servant.Client.Core.Internal.HasClient import Servant.Client.Core.Internal.Request diff --git a/servant-client-core/src/Servant/Client/Free.hs b/servant-client-core/src/Servant/Client/Free.hs index bca39aba..f149621b 100644 --- a/servant-client-core/src/Servant/Client/Free.hs +++ b/servant-client-core/src/Servant/Client/Free.hs @@ -1,15 +1,18 @@ -{-# LANGUAGE ScopedTypeVariables, FlexibleContexts, GADTs #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GADTs #-} +{-# LANGUAGE ScopedTypeVariables #-} module Servant.Client.Free ( client, ClientF (..), module Servant.Client.Core.Reexport, ) where -import Data.Proxy (Proxy (..)) -import Control.Monad.Free -import Servant.Client.Core -import Servant.Client.Core.Reexport -import Servant.Client.Core.Internal.ClientF +import Control.Monad.Free +import Data.Proxy + (Proxy (..)) +import Servant.Client.Core +import Servant.Client.Core.Internal.ClientF +import Servant.Client.Core.Reexport client :: HasClient (Free ClientF) api => Proxy api -> Client (Free ClientF) api client api = api `clientIn` (Proxy :: Proxy (Free ClientF))