From f2f747e6c673635834d92934295219d92dcc85c0 Mon Sep 17 00:00:00 2001 From: Nikita Volkov Date: Fri, 19 Apr 2024 07:38:30 +0300 Subject: [PATCH] Switch to ImportQualifiedPost --- .github/workflows/check.yaml | 2 +- benchmarks/Main.hs | 8 ++++---- hasql.cabal | 3 ++- library/Hasql/Commands.hs | 4 ++-- library/Hasql/Connection/Core.hs | 8 ++++---- library/Hasql/Decoders/All.hs | 22 +++++++++++----------- library/Hasql/Decoders/Array.hs | 2 +- library/Hasql/Decoders/Composite.hs | 2 +- library/Hasql/Decoders/Result.hs | 14 +++++++------- library/Hasql/Decoders/Results.hs | 6 +++--- library/Hasql/Decoders/Row.hs | 6 +++--- library/Hasql/Decoders/Value.hs | 2 +- library/Hasql/Encoders/All.hs | 20 ++++++++++---------- library/Hasql/Encoders/Array.hs | 6 +++--- library/Hasql/Encoders/Params.hs | 10 +++++----- library/Hasql/Encoders/Value.hs | 6 +++--- library/Hasql/Errors.hs | 2 +- library/Hasql/IO.hs | 12 ++++++------ library/Hasql/PostgresTypeInfo.hs | 2 +- library/Hasql/Prelude.hs | 8 ++++---- library/Hasql/PreparedStatementRegistry.hs | 4 ++-- library/Hasql/Session/Core.hs | 14 +++++++------- library/Hasql/Settings.hs | 6 +++--- library/Hasql/Statement.hs | 6 +++--- profiling/Main.hs | 10 +++++----- tasty/Main.hs | 14 +++++++------- tasty/Main/Connection.hs | 2 +- tasty/Main/DSL.hs | 4 ++-- tasty/Main/Statements.hs | 4 ++-- threads-test/Main.hs | 6 +++--- threads-test/Main/Statements.hs | 4 ++-- 31 files changed, 110 insertions(+), 109 deletions(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 9938564..6a7c0e0 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -11,7 +11,7 @@ jobs: fail-fast: false matrix: include: - - ghc: 8.8.1 + - ghc: 8.10.1 ghc-options: "" ignore-haddock: "true" - ghc: latest diff --git a/benchmarks/Main.hs b/benchmarks/Main.hs index fe53edd..a4cdd2c 100644 --- a/benchmarks/Main.hs +++ b/benchmarks/Main.hs @@ -2,10 +2,10 @@ module Main where import Criterion import Criterion.Main -import qualified Hasql.Connection as A -import qualified Hasql.Decoders as D -import qualified Hasql.Session as B -import qualified Hasql.Statement as C +import Hasql.Connection qualified as A +import Hasql.Decoders qualified as D +import Hasql.Session qualified as B +import Hasql.Statement qualified as C import Prelude main :: IO () diff --git a/hasql.cabal b/hasql.cabal index c52e7b6..bb76c36 100644 --- a/hasql.cabal +++ b/hasql.cabal @@ -44,6 +44,7 @@ common base FunctionalDependencies GADTs GeneralizedNewtypeDeriving + ImportQualifiedPost LambdaCase LiberalTypeSynonyms MagicHash @@ -110,7 +111,7 @@ library build-depends: , aeson >=2 && <3 , attoparsec >=0.10 && <0.15 - , base >=4.13 && <5 + , base >=4.14 && <5 , bytestring >=0.10 && <0.13 , bytestring-strict-builder >=0.4.5.1 && <0.5 , contravariant >=1.3 && <2 diff --git a/library/Hasql/Commands.hs b/library/Hasql/Commands.hs index 2c7227f..a1b52f4 100644 --- a/library/Hasql/Commands.hs +++ b/library/Hasql/Commands.hs @@ -6,8 +6,8 @@ module Hasql.Commands ) where -import qualified Data.ByteString.Builder as BB -import qualified Data.ByteString.Lazy as BL +import Data.ByteString.Builder qualified as BB +import Data.ByteString.Lazy qualified as BL import Hasql.Prelude newtype Commands diff --git a/library/Hasql/Connection/Core.hs b/library/Hasql/Connection/Core.hs index 9bf613c..77452cc 100644 --- a/library/Hasql/Connection/Core.hs +++ b/library/Hasql/Connection/Core.hs @@ -2,11 +2,11 @@ -- This module provides a low-level effectful API dealing with the connections to the database. module Hasql.Connection.Core where -import qualified Database.PostgreSQL.LibPQ as LibPQ -import qualified Hasql.IO as IO +import Database.PostgreSQL.LibPQ qualified as LibPQ +import Hasql.IO qualified as IO import Hasql.Prelude -import qualified Hasql.PreparedStatementRegistry as PreparedStatementRegistry -import qualified Hasql.Settings as Settings +import Hasql.PreparedStatementRegistry qualified as PreparedStatementRegistry +import Hasql.Settings qualified as Settings -- | -- A single connection to the database. diff --git a/library/Hasql/Decoders/All.hs b/library/Hasql/Decoders/All.hs index d5305f2..0281e1f 100644 --- a/library/Hasql/Decoders/All.hs +++ b/library/Hasql/Decoders/All.hs @@ -2,18 +2,18 @@ -- A DSL for declaration of result decoders. module Hasql.Decoders.All where -import qualified Data.Aeson as Aeson -import qualified Data.Vector.Generic as GenericVector -import qualified Hasql.Decoders.Array as Array -import qualified Hasql.Decoders.Composite as Composite -import qualified Hasql.Decoders.Result as Result -import qualified Hasql.Decoders.Results as Results -import qualified Hasql.Decoders.Row as Row -import qualified Hasql.Decoders.Value as Value +import Data.Aeson qualified as Aeson +import Data.Vector.Generic qualified as GenericVector +import Hasql.Decoders.Array qualified as Array +import Hasql.Decoders.Composite qualified as Composite +import Hasql.Decoders.Result qualified as Result +import Hasql.Decoders.Results qualified as Results +import Hasql.Decoders.Row qualified as Row +import Hasql.Decoders.Value qualified as Value import Hasql.Prelude hiding (bool, maybe) -import qualified Hasql.Prelude as Prelude -import qualified Network.IP.Addr as NetworkIp -import qualified PostgreSQL.Binary.Decoding as A +import Hasql.Prelude qualified as Prelude +import Network.IP.Addr qualified as NetworkIp +import PostgreSQL.Binary.Decoding qualified as A -- * Result diff --git a/library/Hasql/Decoders/Array.hs b/library/Hasql/Decoders/Array.hs index 24604a2..8c40bff 100644 --- a/library/Hasql/Decoders/Array.hs +++ b/library/Hasql/Decoders/Array.hs @@ -1,7 +1,7 @@ module Hasql.Decoders.Array where import Hasql.Prelude -import qualified PostgreSQL.Binary.Decoding as A +import PostgreSQL.Binary.Decoding qualified as A newtype Array a = Array (ReaderT Bool A.Array a) diff --git a/library/Hasql/Decoders/Composite.hs b/library/Hasql/Decoders/Composite.hs index 081e855..9a372c5 100644 --- a/library/Hasql/Decoders/Composite.hs +++ b/library/Hasql/Decoders/Composite.hs @@ -1,7 +1,7 @@ module Hasql.Decoders.Composite where import Hasql.Prelude -import qualified PostgreSQL.Binary.Decoding as A +import PostgreSQL.Binary.Decoding qualified as A newtype Composite a = Composite (ReaderT Bool A.Composite a) diff --git a/library/Hasql/Decoders/Result.hs b/library/Hasql/Decoders/Result.hs index efac6bc..8bd3d55 100644 --- a/library/Hasql/Decoders/Result.hs +++ b/library/Hasql/Decoders/Result.hs @@ -1,14 +1,14 @@ module Hasql.Decoders.Result where -import qualified Data.Attoparsec.ByteString.Char8 as Attoparsec -import qualified Data.ByteString as ByteString -import qualified Data.Vector as Vector -import qualified Data.Vector.Mutable as MutableVector -import qualified Database.PostgreSQL.LibPQ as LibPQ -import qualified Hasql.Decoders.Row as Row +import Data.Attoparsec.ByteString.Char8 qualified as Attoparsec +import Data.ByteString qualified as ByteString +import Data.Vector qualified as Vector +import Data.Vector.Mutable qualified as MutableVector +import Database.PostgreSQL.LibPQ qualified as LibPQ +import Hasql.Decoders.Row qualified as Row import Hasql.Errors import Hasql.Prelude hiding (many, maybe) -import qualified Hasql.Prelude as Prelude +import Hasql.Prelude qualified as Prelude newtype Result a = Result (ReaderT (Bool, LibPQ.Result) (ExceptT ResultError IO) a) diff --git a/library/Hasql/Decoders/Results.hs b/library/Hasql/Decoders/Results.hs index 2fa2e86..26f218a 100644 --- a/library/Hasql/Decoders/Results.hs +++ b/library/Hasql/Decoders/Results.hs @@ -10,11 +10,11 @@ -- * Row-by-row fetching. module Hasql.Decoders.Results where -import qualified Database.PostgreSQL.LibPQ as LibPQ -import qualified Hasql.Decoders.Result as Result +import Database.PostgreSQL.LibPQ qualified as LibPQ +import Hasql.Decoders.Result qualified as Result import Hasql.Errors import Hasql.Prelude hiding (many, maybe) -import qualified Hasql.Prelude as Prelude +import Hasql.Prelude qualified as Prelude newtype Results a = Results (ReaderT (Bool, LibPQ.Connection) (ExceptT CommandError IO) a) diff --git a/library/Hasql/Decoders/Row.hs b/library/Hasql/Decoders/Row.hs index 381918b..69f291b 100644 --- a/library/Hasql/Decoders/Row.hs +++ b/library/Hasql/Decoders/Row.hs @@ -1,10 +1,10 @@ module Hasql.Decoders.Row where -import qualified Database.PostgreSQL.LibPQ as LibPQ -import qualified Hasql.Decoders.Value as Value +import Database.PostgreSQL.LibPQ qualified as LibPQ +import Hasql.Decoders.Value qualified as Value import Hasql.Errors import Hasql.Prelude hiding (error) -import qualified PostgreSQL.Binary.Decoding as A +import PostgreSQL.Binary.Decoding qualified as A newtype Row a = Row (ReaderT Env (ExceptT RowError IO) a) diff --git a/library/Hasql/Decoders/Value.hs b/library/Hasql/Decoders/Value.hs index 7913fb7..8f79e2f 100644 --- a/library/Hasql/Decoders/Value.hs +++ b/library/Hasql/Decoders/Value.hs @@ -1,7 +1,7 @@ module Hasql.Decoders.Value where import Hasql.Prelude -import qualified PostgreSQL.Binary.Decoding as A +import PostgreSQL.Binary.Decoding qualified as A newtype Value a = Value (Bool -> A.Value a) diff --git a/library/Hasql/Encoders/All.hs b/library/Hasql/Encoders/All.hs index 9ecb33d..d531505 100644 --- a/library/Hasql/Encoders/All.hs +++ b/library/Hasql/Encoders/All.hs @@ -2,17 +2,17 @@ -- A DSL for declaration of query parameter encoders. module Hasql.Encoders.All where -import qualified Data.Aeson as Aeson -import qualified Data.ByteString.Lazy as LazyByteString -import qualified Hasql.Encoders.Array as Array -import qualified Hasql.Encoders.Params as Params -import qualified Hasql.Encoders.Value as Value -import qualified Hasql.PostgresTypeInfo as PTI +import Data.Aeson qualified as Aeson +import Data.ByteString.Lazy qualified as LazyByteString +import Hasql.Encoders.Array qualified as Array +import Hasql.Encoders.Params qualified as Params +import Hasql.Encoders.Value qualified as Value +import Hasql.PostgresTypeInfo qualified as PTI import Hasql.Prelude hiding (bool) -import qualified Hasql.Prelude as Prelude -import qualified Network.IP.Addr as NetworkIp -import qualified PostgreSQL.Binary.Encoding as A -import qualified Text.Builder as C +import Hasql.Prelude qualified as Prelude +import Network.IP.Addr qualified as NetworkIp +import PostgreSQL.Binary.Encoding qualified as A +import Text.Builder qualified as C -- * Parameters Product Encoder diff --git a/library/Hasql/Encoders/Array.hs b/library/Hasql/Encoders/Array.hs index b1e9f11..24f955c 100644 --- a/library/Hasql/Encoders/Array.hs +++ b/library/Hasql/Encoders/Array.hs @@ -1,9 +1,9 @@ module Hasql.Encoders.Array where -import qualified Hasql.PostgresTypeInfo as B +import Hasql.PostgresTypeInfo qualified as B import Hasql.Prelude -import qualified PostgreSQL.Binary.Encoding as A -import qualified Text.Builder as C +import PostgreSQL.Binary.Encoding qualified as A +import Text.Builder qualified as C data Array a = Array B.OID B.OID (Bool -> a -> A.Array) (a -> C.Builder) diff --git a/library/Hasql/Encoders/Params.hs b/library/Hasql/Encoders/Params.hs index 179d3fc..de4cd81 100644 --- a/library/Hasql/Encoders/Params.hs +++ b/library/Hasql/Encoders/Params.hs @@ -1,11 +1,11 @@ module Hasql.Encoders.Params where -import qualified Database.PostgreSQL.LibPQ as A -import qualified Hasql.Encoders.Value as C -import qualified Hasql.PostgresTypeInfo as D +import Database.PostgreSQL.LibPQ qualified as A +import Hasql.Encoders.Value qualified as C +import Hasql.PostgresTypeInfo qualified as D import Hasql.Prelude -import qualified PostgreSQL.Binary.Encoding as B -import qualified Text.Builder as E +import PostgreSQL.Binary.Encoding qualified as B +import Text.Builder qualified as E -- | -- Encoder of some representation of a parameters product. diff --git a/library/Hasql/Encoders/Value.hs b/library/Hasql/Encoders/Value.hs index 1dd3dca..89e31ac 100644 --- a/library/Hasql/Encoders/Value.hs +++ b/library/Hasql/Encoders/Value.hs @@ -1,9 +1,9 @@ module Hasql.Encoders.Value where -import qualified Hasql.PostgresTypeInfo as PTI +import Hasql.PostgresTypeInfo qualified as PTI import Hasql.Prelude -import qualified PostgreSQL.Binary.Encoding as B -import qualified Text.Builder as C +import PostgreSQL.Binary.Encoding qualified as B +import Text.Builder qualified as C data Value a = Value PTI.OID PTI.OID (Bool -> a -> B.Encoding) (a -> C.Builder) diff --git a/library/Hasql/Errors.hs b/library/Hasql/Errors.hs index 63bc9ec..8cc290d 100644 --- a/library/Hasql/Errors.hs +++ b/library/Hasql/Errors.hs @@ -10,7 +10,7 @@ -- * Row-by-row fetching. module Hasql.Errors where -import qualified Data.ByteString.Char8 as BC +import Data.ByteString.Char8 qualified as BC import Hasql.Prelude -- | diff --git a/library/Hasql/IO.hs b/library/Hasql/IO.hs index 47c4b3a..b434b89 100644 --- a/library/Hasql/IO.hs +++ b/library/Hasql/IO.hs @@ -2,14 +2,14 @@ -- An API of low-level IO operations. module Hasql.IO where -import qualified Database.PostgreSQL.LibPQ as LibPQ -import qualified Hasql.Commands as Commands -import qualified Hasql.Decoders.Result as ResultDecoders -import qualified Hasql.Decoders.Results as ResultsDecoders -import qualified Hasql.Encoders.Params as ParamsEncoders +import Database.PostgreSQL.LibPQ qualified as LibPQ +import Hasql.Commands qualified as Commands +import Hasql.Decoders.Result qualified as ResultDecoders +import Hasql.Decoders.Results qualified as ResultsDecoders +import Hasql.Encoders.Params qualified as ParamsEncoders import Hasql.Errors import Hasql.Prelude -import qualified Hasql.PreparedStatementRegistry as PreparedStatementRegistry +import Hasql.PreparedStatementRegistry qualified as PreparedStatementRegistry {-# INLINE acquireConnection #-} acquireConnection :: ByteString -> IO LibPQ.Connection diff --git a/library/Hasql/PostgresTypeInfo.hs b/library/Hasql/PostgresTypeInfo.hs index 2b2769b..b7978b1 100644 --- a/library/Hasql/PostgresTypeInfo.hs +++ b/library/Hasql/PostgresTypeInfo.hs @@ -1,6 +1,6 @@ module Hasql.PostgresTypeInfo where -import qualified Database.PostgreSQL.LibPQ as LibPQ +import Database.PostgreSQL.LibPQ qualified as LibPQ import Hasql.Prelude hiding (bool) -- | A Postgresql type info diff --git a/library/Hasql/Prelude.hs b/library/Hasql/Prelude.hs index 18ab4c3..c6d2403 100644 --- a/library/Hasql/Prelude.hs +++ b/library/Hasql/Prelude.hs @@ -34,8 +34,8 @@ import Data.Bifunctor as Exports import Data.Bits as Exports import Data.Bool as Exports import Data.ByteString as Exports (ByteString) -import qualified Data.ByteString.Builder -import qualified Data.ByteString.Lazy +import Data.ByteString.Builder qualified +import Data.ByteString.Lazy qualified import Data.Char as Exports import Data.Coerce as Exports import Data.Complex as Exports @@ -68,8 +68,8 @@ import Data.Scientific as Exports (Scientific) import Data.Semigroup as Exports hiding (First (..), Last (..)) import Data.String as Exports import Data.Text as Exports (Text) -import qualified Data.Text.Lazy -import qualified Data.Text.Lazy.Builder +import Data.Text.Lazy qualified +import Data.Text.Lazy.Builder qualified import Data.Time as Exports import Data.Traversable as Exports import Data.Tuple as Exports diff --git a/library/Hasql/PreparedStatementRegistry.hs b/library/Hasql/PreparedStatementRegistry.hs index 8b5b5f3..e5d837c 100644 --- a/library/Hasql/PreparedStatementRegistry.hs +++ b/library/Hasql/PreparedStatementRegistry.hs @@ -6,8 +6,8 @@ module Hasql.PreparedStatementRegistry ) where -import qualified ByteString.StrictBuilder as B -import qualified Data.HashTable.IO as A +import ByteString.StrictBuilder qualified as B +import Data.HashTable.IO qualified as A import Hasql.Prelude hiding (lookup) data PreparedStatementRegistry diff --git a/library/Hasql/Session/Core.hs b/library/Hasql/Session/Core.hs index 09f1ffe..f57c9d0 100644 --- a/library/Hasql/Session/Core.hs +++ b/library/Hasql/Session/Core.hs @@ -1,14 +1,14 @@ module Hasql.Session.Core where -import qualified Hasql.Connection.Core as Connection -import qualified Hasql.Decoders.Result as Decoders.Result -import qualified Hasql.Decoders.Results as Decoders.Results -import qualified Hasql.Encoders.All as Encoders -import qualified Hasql.Encoders.Params as Encoders.Params +import Hasql.Connection.Core qualified as Connection +import Hasql.Decoders.Result qualified as Decoders.Result +import Hasql.Decoders.Results qualified as Decoders.Results +import Hasql.Encoders.All qualified as Encoders +import Hasql.Encoders.Params qualified as Encoders.Params import Hasql.Errors -import qualified Hasql.IO as IO +import Hasql.IO qualified as IO import Hasql.Prelude -import qualified Hasql.Statement as Statement +import Hasql.Statement qualified as Statement -- | -- A batch of actions to be executed in the context of a database connection. diff --git a/library/Hasql/Settings.hs b/library/Hasql/Settings.hs index 8c286c9..56cc5b4 100644 --- a/library/Hasql/Settings.hs +++ b/library/Hasql/Settings.hs @@ -1,8 +1,8 @@ module Hasql.Settings where -import qualified Data.ByteString as B -import qualified Data.ByteString.Builder as BB -import qualified Data.ByteString.Lazy as BL +import Data.ByteString qualified as B +import Data.ByteString.Builder qualified as BB +import Data.ByteString.Lazy qualified as BL import Hasql.Prelude -- | diff --git a/library/Hasql/Statement.hs b/library/Hasql/Statement.hs index e303b5d..5bc0aaf 100644 --- a/library/Hasql/Statement.hs +++ b/library/Hasql/Statement.hs @@ -12,9 +12,9 @@ module Hasql.Statement ) where -import qualified Hasql.Decoders as Decoders -import qualified Hasql.Decoders.All as Decoders -import qualified Hasql.Encoders as Encoders +import Hasql.Decoders qualified as Decoders +import Hasql.Decoders.All qualified as Decoders +import Hasql.Encoders qualified as Encoders import Hasql.Prelude -- | diff --git a/profiling/Main.hs b/profiling/Main.hs index 4747963..35180e4 100644 --- a/profiling/Main.hs +++ b/profiling/Main.hs @@ -1,10 +1,10 @@ module Main where -import qualified Data.Vector as F -import qualified Hasql.Connection as A -import qualified Hasql.Decoders as D -import qualified Hasql.Session as B -import qualified Hasql.Statement as C +import Data.Vector qualified as F +import Hasql.Connection qualified as A +import Hasql.Decoders qualified as D +import Hasql.Session qualified as B +import Hasql.Statement qualified as C import Prelude main :: IO () diff --git a/tasty/Main.hs b/tasty/Main.hs index 36fbb42..05626ae 100644 --- a/tasty/Main.hs +++ b/tasty/Main.hs @@ -1,14 +1,14 @@ module Main where import Contravariant.Extras -import qualified Hasql.Decoders as Decoders -import qualified Hasql.Encoders as Encoders -import qualified Hasql.Session as Session -import qualified Hasql.Statement as Statement -import qualified Main.Connection as Connection -import qualified Main.DSL as DSL +import Hasql.Decoders qualified as Decoders +import Hasql.Encoders qualified as Encoders +import Hasql.Session qualified as Session +import Hasql.Statement qualified as Statement +import Main.Connection qualified as Connection +import Main.DSL qualified as DSL import Main.Prelude hiding (assert) -import qualified Main.Statements as Statements +import Main.Statements qualified as Statements import Test.QuickCheck.Instances () import Test.Tasty import Test.Tasty.HUnit diff --git a/tasty/Main/Connection.hs b/tasty/Main/Connection.hs index d54f2db..a4924d6 100644 --- a/tasty/Main/Connection.hs +++ b/tasty/Main/Connection.hs @@ -1,6 +1,6 @@ module Main.Connection where -import qualified Hasql.Connection as HC +import Hasql.Connection qualified as HC import Main.Prelude with :: (HC.Connection -> IO a) -> IO (Either HC.ConnectionError a) diff --git a/tasty/Main/DSL.hs b/tasty/Main/DSL.hs index 7d3bf52..f964157 100644 --- a/tasty/Main/DSL.hs +++ b/tasty/Main/DSL.hs @@ -7,8 +7,8 @@ module Main.DSL ) where -import qualified Hasql.Connection as HC -import qualified Hasql.Session +import Hasql.Connection qualified as HC +import Hasql.Session qualified import Main.Prelude type Session = diff --git a/tasty/Main/Statements.hs b/tasty/Main/Statements.hs index d910df5..258de53 100644 --- a/tasty/Main/Statements.hs +++ b/tasty/Main/Statements.hs @@ -1,7 +1,7 @@ module Main.Statements where -import qualified Hasql.Decoders as HD -import qualified Hasql.Statement as HQ +import Hasql.Decoders qualified as HD +import Hasql.Statement qualified as HQ import Main.Prelude plain :: ByteString -> HQ.Statement () () diff --git a/threads-test/Main.hs b/threads-test/Main.hs index 15c334f..31e68b5 100644 --- a/threads-test/Main.hs +++ b/threads-test/Main.hs @@ -1,8 +1,8 @@ module Main where -import qualified Hasql.Connection -import qualified Hasql.Session -import qualified Main.Statements as Statements +import Hasql.Connection qualified +import Hasql.Session qualified +import Main.Statements qualified as Statements import Prelude main :: IO () diff --git a/threads-test/Main/Statements.hs b/threads-test/Main/Statements.hs index dcf4715..be9807c 100644 --- a/threads-test/Main/Statements.hs +++ b/threads-test/Main/Statements.hs @@ -1,7 +1,7 @@ module Main.Statements where -import qualified Hasql.Decoders as D -import qualified Hasql.Encoders as E +import Hasql.Decoders qualified as D +import Hasql.Encoders qualified as E import Hasql.Statement import Prelude