diff --git a/example/App.hs b/example/App.hs
--- a/example/App.hs
+++ b/example/App.hs
@@ -14,6 +14,7 @@
 import           Data.Maybe
 import           Data.Text.Lazy                (Text)
 import qualified Data.Text.Lazy                as TL
+import           IDP
 import           Network.HTTP.Conduit
 import           Network.HTTP.Types
 import           Network.OAuth.OAuth2
@@ -21,13 +22,12 @@
 import           Network.Wai.Handler.Warp      (run)
 import           Network.Wai.Middleware.Static
 import           Prelude
-import           Web.Scotty
-import           Web.Scotty.Internal.Types
-import           IDP
 import           Session
 import           Types
 import           Utils
 import           Views
+import           Web.Scotty
+import           Web.Scotty.Internal.Types
 
 ------------------------------
 -- App
diff --git a/example/IDP/Dropbox.hs b/example/IDP/Dropbox.hs
--- a/example/IDP/Dropbox.hs
+++ b/example/IDP/Dropbox.hs
@@ -5,12 +5,12 @@
 module IDP.Dropbox where
 import           Data.Aeson
 import           Data.Bifunctor
+import qualified Data.ByteString.Lazy.Char8 as BSL
 import           Data.Hashable
-import           Data.Text.Lazy       (Text)
+import           Data.Text.Lazy             (Text)
 import           GHC.Generics
 import           Keys
 import           Network.OAuth.OAuth2
-import qualified Data.ByteString.Lazy.Char8        as BSL
 import           Types
 import           URI.ByteString
 import           URI.ByteString.QQ
diff --git a/example/IDP/StackExchange.hs b/example/IDP/StackExchange.hs
--- a/example/IDP/StackExchange.hs
+++ b/example/IDP/StackExchange.hs
@@ -9,11 +9,11 @@
 module IDP.StackExchange where
 import           Data.Aeson
 import           Data.Bifunctor
-import           Data.ByteString      (ByteString)
+import           Data.ByteString            (ByteString)
+import qualified Data.ByteString.Lazy.Char8 as BSL
 import           Data.Hashable
-import           Data.Text.Lazy       (Text)
-import qualified Data.Text.Lazy       as TL
-import qualified Data.ByteString.Lazy.Char8        as BSL
+import           Data.Text.Lazy             (Text)
+import qualified Data.Text.Lazy             as TL
 import           GHC.Generics
 import           Keys
 import           Lens.Micro
diff --git a/example/IDP/Weibo.hs b/example/IDP/Weibo.hs
--- a/example/IDP/Weibo.hs
+++ b/example/IDP/Weibo.hs
@@ -5,10 +5,10 @@
 module IDP.Weibo where
 import           Data.Aeson
 import           Data.Bifunctor
+import qualified Data.ByteString.Lazy.Char8 as BSL
 import           Data.Hashable
-import           Data.Text.Lazy       (Text)
-import qualified Data.Text.Lazy       as TL
-import qualified Data.ByteString.Lazy.Char8        as BSL
+import           Data.Text.Lazy             (Text)
+import qualified Data.Text.Lazy             as TL
 import           GHC.Generics
 import           Keys
 import           Network.OAuth.OAuth2
diff --git a/example/Types.hs b/example/Types.hs
--- a/example/Types.hs
+++ b/example/Types.hs
@@ -9,6 +9,7 @@
 
 import           Control.Concurrent.MVar
 import           Data.Aeson
+import qualified Data.ByteString.Lazy.Char8        as BSL
 import           Data.Hashable
 import qualified Data.HashMap.Strict               as Map
 import           Data.Maybe
@@ -18,7 +19,6 @@
 import           Network.HTTP.Conduit
 import           Network.OAuth.OAuth2
 import qualified Network.OAuth.OAuth2.TokenRequest as TR
-import qualified Data.ByteString.Lazy.Char8        as BSL
 import           Text.Mustache
 import qualified Text.Mustache                     as M
 
diff --git a/example/Utils.hs b/example/Utils.hs
--- a/example/Utils.hs
+++ b/example/Utils.hs
@@ -1,11 +1,11 @@
 module Utils where
 
-import qualified Data.Aeson                as Aeson
-import           Data.ByteString           (ByteString)
-import qualified Data.Text.Encoding        as TE
-import           Data.Text.Lazy            (Text)
-import qualified Data.Text.Lazy            as TL
-import qualified Data.ByteString.Lazy.Char8        as BSL
+import qualified Data.Aeson                 as Aeson
+import           Data.ByteString            (ByteString)
+import qualified Data.ByteString.Lazy.Char8 as BSL
+import qualified Data.Text.Encoding         as TE
+import           Data.Text.Lazy             (Text)
+import qualified Data.Text.Lazy             as TL
 
 import           Network.OAuth.OAuth2
 import           URI.ByteString
diff --git a/hoauth2.cabal b/hoauth2.cabal
--- a/hoauth2.cabal
+++ b/hoauth2.cabal
@@ -1,6 +1,7 @@
+Cabal-version: 2.4
 Name:                hoauth2
 -- http://wiki.haskell.org/Package_versioning_policy
-Version:             1.9.0
+Version:             1.9.1
 
 Synopsis:            Haskell OAuth2 authentication client
 
@@ -25,15 +26,15 @@
              * Douban: <http://developers.douban.com/wiki/?title=oauth2>
 
 Homepage:            https://github.com/freizl/hoauth2
-License:             BSD3
+License:             BSD-3-Clause
 License-file:        LICENSE
 Author:              Haisheng Wu
 Maintainer:          Haisheng Wu <freizl@gmail.com>
 Copyright:           Haisheng Wu
 Category:            Network
 Build-type:          Simple
-stability:           Beta
-tested-with:         GHC <= 8.4.3
+Stability:           Beta
+Tested-With:         GHC <= 8.6.5
 
 Extra-source-files: README.md
                     example/Keys.hs.sample
@@ -56,8 +57,6 @@
                     example/templates/index.mustache
                     example/assets/main.css
 
-Cabal-version:       >=1.10
-
 Source-Repository head
   Type:     git
   Location: git://github.com/freizl/hoauth2.git
@@ -76,7 +75,7 @@
                    Network.OAuth.OAuth2.AuthorizationRequest
 
   Build-Depends: base                 >= 4     && < 5,
-                 binary               >= 0.8.3.0 && < 0.8.7,
+                 binary               >= 0.8.3.0 && < 0.8.8,
                  text                 >= 0.11  && < 1.3,
                  bytestring           >= 0.9   && < 0.11,
                  http-conduit         >= 2.1   && < 2.4,
@@ -88,11 +87,8 @@
                  microlens            >= 0.4.0 && < 0.5,
                  exceptions           >= 0.8.3 && < 0.11
 
-  if impl(ghc >= 6.12.0)
-      ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
-                   -fno-warn-unused-do-bind
-  else
-      ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
+  ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
+               -fno-warn-unused-do-bind
 
 Executable demo-server
   if flag(test)
@@ -134,17 +130,14 @@
                        microlens            >= 0.4.0 && < 0.5,
                        unordered-containers >= 0.2.5,
                        wai-extra >= 3.0.21.0 && < 3.1,
-                       wai-middleware-static >= 0.8.1 && < 0.8.3,
+                       wai-middleware-static >= 0.8.1 && < 0.8.4,
                        mustache >= 2.2.3 && < 2.4.0,
                        mtl >= 2.2.1 && < 2.3,
                        scotty >= 0.10.0 && < 0.12,
-                       binary >= 0.8.3.0 && < 0.8.7,
+                       binary >= 0.8.3.0 && < 0.8.8,
                        parsec >= 3.1.11 && < 3.2.0 ,
                        hashable >= 1.2.6 && < 1.4.0,
                        hoauth2
 
-  if impl(ghc >= 6.12.0)
-      ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
-                   -fno-warn-unused-do-bind -fno-warn-orphans
-  else
-      ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
+  ghc-options: -Wall -fwarn-tabs -funbox-strict-fields
+               -fno-warn-unused-do-bind -fno-warn-orphans
diff --git a/src/Network/OAuth/OAuth2/HttpClient.hs b/src/Network/OAuth/OAuth2/HttpClient.hs
--- a/src/Network/OAuth/OAuth2/HttpClient.hs
+++ b/src/Network/OAuth/OAuth2/HttpClient.hs
@@ -20,8 +20,8 @@
   authRequest
 ) where
 
-import Data.Bifunctor (first)
 import           Data.Aeson
+import           Data.Bifunctor                    (first)
 import qualified Data.ByteString.Char8             as BS
 import qualified Data.ByteString.Lazy.Char8        as BSL
 import qualified Data.HashMap.Strict               as HM (fromList)
