on master help sign in
Switch to GHC2021
6492765Mark Karpov
Network/HTTP/Req.hs+30−40
@@ -1,19 +1,9 @@
1−{-# LANGUAGE BangPatterns #-}
2{-# LANGUAGE DataKinds #-}
1{-# LANGUAGE DataKinds #-}
3−{-# LANGUAGE DeriveDataTypeable #-}
4−{-# LANGUAGE DeriveGeneric #-}
5−{-# LANGUAGE DeriveLift #-}
6−{-# LANGUAGE FlexibleInstances #-}
7−{-# LANGUAGE GeneralizedNewtypeDeriving #-}
8{-# LANGUAGE LambdaCase #-}
2{-# LANGUAGE LambdaCase #-}
9−{-# LANGUAGE MultiParamTypeClasses #-}
10{-# LANGUAGE OverloadedStrings #-}
3{-# LANGUAGE OverloadedStrings #-}
11{-# LANGUAGE QuasiQuotes #-}
4{-# LANGUAGE QuasiQuotes #-}
12−{-# LANGUAGE RankNTypes #-}
13{-# LANGUAGE RecordWildCards #-}
5{-# LANGUAGE RecordWildCards #-}
14{-# LANGUAGE RoleAnnotations #-}
6{-# LANGUAGE RoleAnnotations #-}
15−{-# LANGUAGE ScopedTypeVariables #-}
16−{-# LANGUAGE StandaloneDeriving #-}
17{-# LANGUAGE TemplateHaskellQuotes #-}
7{-# LANGUAGE TemplateHaskellQuotes #-}
18{-# LANGUAGE TypeFamilies #-}
8{-# LANGUAGE TypeFamilies #-}
19{-# LANGUAGE UndecidableInstances #-}
9{-# LANGUAGE UndecidableInstances #-}
@@ -213,7 +203,7 @@ module Network.HTTP.Req
213 )
203 )
214where
204where
215
205
216−import qualified Blaze.ByteString.Builder as BB
206+import Blaze.ByteString.Builder qualified as BB
217import Control.Applicative
207import Control.Applicative
218import Control.Arrow (first, second)
208import Control.Arrow (first, second)
219import Control.Exception hiding (Handler (..), TypeError)
209import Control.Exception hiding (Handler (..), TypeError)
@@ -229,55 +219,55 @@ import Control.Monad.Trans.Control
229import Control.Monad.Trans.Except (ExceptT)
219import Control.Monad.Trans.Except (ExceptT)
230import Control.Monad.Trans.Identity (IdentityT)
220import Control.Monad.Trans.Identity (IdentityT)
231import Control.Monad.Trans.Maybe (MaybeT)
221import Control.Monad.Trans.Maybe (MaybeT)
232−import qualified Control.Monad.Trans.RWS.CPS as RWS.CPS
222+import Control.Monad.Trans.RWS.CPS qualified as RWS.CPS
233−import qualified Control.Monad.Trans.RWS.Lazy as RWS.Lazy
223+import Control.Monad.Trans.RWS.Lazy qualified as RWS.Lazy
234−import qualified Control.Monad.Trans.RWS.Strict as RWS.Strict
224+import Control.Monad.Trans.RWS.Strict qualified as RWS.Strict
235import Control.Monad.Trans.Select (SelectT)
225import Control.Monad.Trans.Select (SelectT)
236−import qualified Control.Monad.Trans.State.Lazy as State.Lazy
226+import Control.Monad.Trans.State.Lazy qualified as State.Lazy
237−import qualified Control.Monad.Trans.State.Strict as State.Strict
227+import Control.Monad.Trans.State.Strict qualified as State.Strict
238−import qualified Control.Monad.Trans.Writer.CPS as Writer.CPS
228+import Control.Monad.Trans.Writer.CPS qualified as Writer.CPS
239−import qualified Control.Monad.Trans.Writer.Lazy as Writer.Lazy
229+import Control.Monad.Trans.Writer.Lazy qualified as Writer.Lazy
240−import qualified Control.Monad.Trans.Writer.Strict as Writer.Strict
230+import Control.Monad.Trans.Writer.Strict qualified as Writer.Strict
241import Control.Retry
231import Control.Retry
242import Data.Aeson (FromJSON (..), ToJSON (..))
232import Data.Aeson (FromJSON (..), ToJSON (..))
243−import qualified Data.Aeson as A
233+import Data.Aeson qualified as A
244import Data.ByteString (ByteString)
234import Data.ByteString (ByteString)
245−import qualified Data.ByteString as B
235+import Data.ByteString qualified as B
246−import qualified Data.ByteString.Lazy as BL
236+import Data.ByteString.Lazy qualified as BL
247−import qualified Data.CaseInsensitive as CI
237+import Data.CaseInsensitive qualified as CI
248import Data.Data (Data)
238import Data.Data (Data)
249import Data.Function (on)
239import Data.Function (on)
250import Data.IORef
240import Data.IORef
251import Data.Kind (Constraint, Type)
241import Data.Kind (Constraint, Type)
252import Data.List (foldl', nubBy)
242import Data.List (foldl', nubBy)
253import Data.List.NonEmpty (NonEmpty (..))
243import Data.List.NonEmpty (NonEmpty (..))
254−import qualified Data.List.NonEmpty as NE
244+import Data.List.NonEmpty qualified as NE
255import Data.Maybe (fromMaybe)
245import Data.Maybe (fromMaybe)
256import Data.Proxy
246import Data.Proxy
257import Data.Semigroup (Endo (..))
247import Data.Semigroup (Endo (..))
258−import qualified Data.Set as S
248+import Data.Set qualified as S
259import Data.Text (Text)
249import Data.Text (Text)
260−import qualified Data.Text as T
250+import Data.Text qualified as T
261−import qualified Data.Text.Encoding as T
251+import Data.Text.Encoding qualified as T
262import Data.Typeable (Typeable, cast)
252import Data.Typeable (Typeable, cast)
263import GHC.Generics
253import GHC.Generics
264import GHC.TypeLits
254import GHC.TypeLits
265−import qualified Language.Haskell.TH as TH
255+import Language.Haskell.TH qualified as TH
266−import qualified Language.Haskell.TH.Quote as TH
256+import Language.Haskell.TH.Quote qualified as TH
267−import qualified Language.Haskell.TH.Syntax as TH
257+import Language.Haskell.TH.Syntax qualified as TH
268−import qualified Network.Connection as NC
258+import Network.Connection qualified as NC
269−import qualified Network.HTTP.Client as L
259+import Network.HTTP.Client qualified as L
270−import qualified Network.HTTP.Client.Internal as LI
260+import Network.HTTP.Client.Internal qualified as LI
271−import qualified Network.HTTP.Client.MultipartFormData as LM
261+import Network.HTTP.Client.MultipartFormData qualified as LM
272−import qualified Network.HTTP.Client.TLS as L
262+import Network.HTTP.Client.TLS qualified as L
273−import qualified Network.HTTP.Types as Y
263+import Network.HTTP.Types qualified as Y
274import System.IO.Unsafe (unsafePerformIO)
264import System.IO.Unsafe (unsafePerformIO)
275import Text.URI (URI)
265import Text.URI (URI)
276−import qualified Text.URI as URI
266+import Text.URI qualified as URI
277−import qualified Text.URI.QQ as QQ
267+import Text.URI.QQ qualified as QQ
278−import qualified Web.Authenticate.OAuth as OAuth
268+import Web.Authenticate.OAuth qualified as OAuth
279import Web.FormUrlEncoded (FromForm (..), ToForm (..))
269import Web.FormUrlEncoded (FromForm (..), ToForm (..))
280−import qualified Web.FormUrlEncoded as Form
270+import Web.FormUrlEncoded qualified as Form
281import Web.HttpApiData (ToHttpApiData (..))
271import Web.HttpApiData (ToHttpApiData (..))
282
272
283----------------------------------------------------------------------------
273----------------------------------------------------------------------------
httpbun-tests/Network/HTTP/ReqSpec.hs+10−11
@@ -1,6 +1,5 @@
1{-# LANGUAGE DataKinds #-}
1{-# LANGUAGE DataKinds #-}
2{-# LANGUAGE FlexibleInstances #-}
2{-# LANGUAGE FlexibleInstances #-}
3−{-# LANGUAGE LambdaCase #-}
4{-# LANGUAGE OverloadedStrings #-}
3{-# LANGUAGE OverloadedStrings #-}
5{-# LANGUAGE RankNTypes #-}
4{-# LANGUAGE RankNTypes #-}
6{-# OPTIONS_GHC -fno-warn-orphans #-}
5{-# OPTIONS_GHC -fno-warn-orphans #-}
@@ -11,21 +10,21 @@ import Control.Exception
11import Control.Monad (forM_)
10import Control.Monad (forM_)
12import Control.Monad.Trans.Control
11import Control.Monad.Trans.Control
13import Data.Aeson (ToJSON (..), Value (..), object, (.=))
12import Data.Aeson (ToJSON (..), Value (..), object, (.=))
14−import qualified Data.Aeson as A
13+import Data.Aeson qualified as A
15−import qualified Data.Aeson.KeyMap as Aeson.KeyMap
14+import Data.Aeson.KeyMap qualified as Aeson.KeyMap
16−import qualified Data.ByteString as B
15+import Data.ByteString qualified as B
17−import qualified Data.ByteString.Lazy as BL
16+import Data.ByteString.Lazy qualified as BL
18import Data.Functor.Identity (runIdentity)
17import Data.Functor.Identity (runIdentity)
19import Data.Maybe (fromJust)
18import Data.Maybe (fromJust)
20import Data.Proxy
19import Data.Proxy
21import Data.Text (Text)
20import Data.Text (Text)
22−import qualified Data.Text as T
21+import Data.Text qualified as T
23−import qualified Data.Text.Encoding as T
22+import Data.Text.Encoding qualified as T
24−import qualified Data.Text.IO as TIO
23+import Data.Text.IO qualified as TIO
25−import qualified Network.HTTP.Client as L
24+import Network.HTTP.Client qualified as L
26−import qualified Network.HTTP.Client.MultipartFormData as LM
25+import Network.HTTP.Client.MultipartFormData qualified as LM
27import Network.HTTP.Req
26import Network.HTTP.Req
28−import qualified Network.HTTP.Types as Y
27+import Network.HTTP.Types qualified as Y
29import Test.Hspec
28import Test.Hspec
30import Test.QuickCheck
29import Test.QuickCheck
31
30
pure-tests/Network/HTTP/ReqSpec.hs+17−17
@@ -13,41 +13,41 @@
13
13
14module Network.HTTP.ReqSpec (spec) where
14module Network.HTTP.ReqSpec (spec) where
15
15
16−import qualified Blaze.ByteString.Builder as BB
16+import Blaze.ByteString.Builder qualified as BB
17import Control.Exception (throwIO)
17import Control.Exception (throwIO)
18import Control.Monad
18import Control.Monad
19import Control.Retry
19import Control.Retry
20import Data.Aeson (ToJSON (..))
20import Data.Aeson (ToJSON (..))
21−import qualified Data.Aeson as A
21+import Data.Aeson qualified as A
22import Data.ByteString (ByteString)
22import Data.ByteString (ByteString)
23−import qualified Data.ByteString as B
23+import Data.ByteString qualified as B
24−import qualified Data.ByteString.Char8 as B8
24+import Data.ByteString.Char8 qualified as B8
25−import qualified Data.ByteString.Lazy as BL
25+import Data.ByteString.Lazy qualified as BL
26−import qualified Data.CaseInsensitive as CI
26+import Data.CaseInsensitive qualified as CI
27import Data.Either (isRight)
27import Data.Either (isRight)
28−import qualified Data.List.NonEmpty as NE
28+import Data.List.NonEmpty qualified as NE
29import Data.Maybe (fromJust, fromMaybe, isJust, isNothing)
29import Data.Maybe (fromJust, fromMaybe, isJust, isNothing)
30import Data.Proxy
30import Data.Proxy
31import Data.Text (Text)
31import Data.Text (Text)
32−import qualified Data.Text as T
32+import Data.Text qualified as T
33−import qualified Data.Text.Encoding as T
33+import Data.Text.Encoding qualified as T
34import Data.Time
34import Data.Time
35import Data.Typeable (Typeable, eqT)
35import Data.Typeable (Typeable, eqT)
36import GHC.Exts (IsList (..))
36import GHC.Exts (IsList (..))
37import GHC.Generics
37import GHC.Generics
38−import qualified Language.Haskell.TH as TH
38+import Language.Haskell.TH qualified as TH
39−import qualified Language.Haskell.TH.Quote as TH
39+import Language.Haskell.TH.Quote qualified as TH
40−import qualified Network.HTTP.Client as L
40+import Network.HTTP.Client qualified as L
41import Network.HTTP.Req
41import Network.HTTP.Req
42−import qualified Network.HTTP.Types as Y
42+import Network.HTTP.Types qualified as Y
43−import qualified Network.HTTP.Types.Header as Y
43+import Network.HTTP.Types.Header qualified as Y
44import Test.Hspec
44import Test.Hspec
45import Test.Hspec.Core.Spec (SpecM)
45import Test.Hspec.Core.Spec (SpecM)
46import Test.QuickCheck
46import Test.QuickCheck
47import Text.URI (URI)
47import Text.URI (URI)
48−import qualified Text.URI as URI
48+import Text.URI qualified as URI
49−import qualified Text.URI.QQ as QQ
49+import Text.URI.QQ qualified as QQ
50−import qualified Web.FormUrlEncoded as F
50+import Web.FormUrlEncoded qualified as F
51
51
52spec :: Spec
52spec :: Spec
53spec = do
53spec = do
req.cabal+3−3
@@ -31,7 +31,7 @@ flag dev
31
31
32library
32library
33 exposed-modules: Network.HTTP.Req
33 exposed-modules: Network.HTTP.Req
34− default-language: Haskell2010
34+ default-language: GHC2021
35 build-depends:
35 build-depends:
36 aeson >=0.9 && <3,
36 aeson >=0.9 && <3,
37 authenticate-oauth >=1.5 && <1.8,
37 authenticate-oauth >=1.5 && <1.8,
@@ -74,7 +74,7 @@ test-suite pure-tests
74 build-tool-depends: hspec-discover:hspec-discover >=2.0 && <3.0
74 build-tool-depends: hspec-discover:hspec-discover >=2.0 && <3.0
75 hs-source-dirs: pure-tests
75 hs-source-dirs: pure-tests
76 other-modules: Network.HTTP.ReqSpec
76 other-modules: Network.HTTP.ReqSpec
77− default-language: Haskell2010
77+ default-language: GHC2021
78 build-depends:
78 build-depends:
79 QuickCheck >=2.7 && <3.0,
79 QuickCheck >=2.7 && <3.0,
80 aeson >=0.9 && <3,
80 aeson >=0.9 && <3,
@@ -107,7 +107,7 @@ test-suite httpbun-tests
107 build-tool-depends: hspec-discover:hspec-discover >=2.0 && <3.0
107 build-tool-depends: hspec-discover:hspec-discover >=2.0 && <3.0
108 hs-source-dirs: httpbun-tests
108 hs-source-dirs: httpbun-tests
109 other-modules: Network.HTTP.ReqSpec
109 other-modules: Network.HTTP.ReqSpec
110− default-language: Haskell2010
110+ default-language: GHC2021
111 build-depends:
111 build-depends:
112 QuickCheck >=2.7 && <3.0,
112 QuickCheck >=2.7 && <3.0,
113 aeson >=2 && <3,
113 aeson >=2 && <3,