postgresql-query 3.4.0 → 3.5.0
raw patch · 17 files changed
+67/−90 lines, 17 filesdep +generic-arbitrarydep −derivedep ~base
Dependencies added: generic-arbitrary
Dependencies removed: derive
Dependency ranges changed: base
Files
- CHANGELOG.md +7/−0
- postgresql-query.cabal +5/−4
- src/Database/PostgreSQL/Query/Entity/Class.hs +1/−2
- src/Database/PostgreSQL/Query/Entity/Functions.hs +1/−8
- src/Database/PostgreSQL/Query/Entity/Internal.hs +1/−3
- src/Database/PostgreSQL/Query/Functions.hs +1/−5
- src/Database/PostgreSQL/Query/Import.hs +27/−0
- src/Database/PostgreSQL/Query/Internal.hs +0/−5
- src/Database/PostgreSQL/Query/SqlBuilder/Builder.hs +1/−6
- src/Database/PostgreSQL/Query/SqlBuilder/Types.hs +1/−4
- src/Database/PostgreSQL/Query/TH/Common.hs +0/−2
- src/Database/PostgreSQL/Query/TH/Entity.hs +5/−10
- src/Database/PostgreSQL/Query/TH/Enum.hs +0/−5
- src/Database/PostgreSQL/Query/TH/Row.hs +0/−6
- src/Database/PostgreSQL/Query/TH/SqlExp.hs +6/−8
- src/Database/PostgreSQL/Query/Types.hs +5/−14
- test/ParserTest.hs +6/−8
CHANGELOG.md view
@@ -1,5 +1,12 @@ # CHANGELOG +## 3.5.0+### Changed+* Copatibility with ghc-8.4+* Drop dependency from `derive`+### Fixed+* Implemented method `hlocal`+ ## 3.4.0 ### Removed * Drop `EitherT` support
postgresql-query.cabal view
@@ -1,5 +1,5 @@ name: postgresql-query-version: 3.4.0+version: 3.5.0 synopsis: Sql interpolating quasiquote plus some kind of primitive ORM using it@@ -41,6 +41,7 @@ , Database.PostgreSQL.Query.TH.Row , Database.PostgreSQL.Query.TH.SqlExp , Database.PostgreSQL.Query.Types+ other-modules: Database.PostgreSQL.Query.Import default-extensions: AutoDeriveTypeable , CPP@@ -117,10 +118,10 @@ , QuasiQuotes , TemplateHaskell - build-depends: QuickCheck+ build-depends: base >=4.6 && < 5+ , QuickCheck , attoparsec- , base >=4.6 && < 5- , derive+ , generic-arbitrary , postgresql-query , postgresql-simple , quickcheck-assertions
src/Database/PostgreSQL/Query/Entity/Class.hs view
@@ -3,8 +3,7 @@ , Ent ) where -import Data.Proxy-import Data.Typeable ( Typeable )+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.Types -- | Auxiliary typeclass for data types which can map to rows of some
src/Database/PostgreSQL/Query/Entity/Functions.hs view
@@ -14,14 +14,11 @@ , pgSelectCount ) where -import Control.Monad.Logger import Data.Int ( Int64 )-import Data.Maybe ( listToMaybe )-import Data.Proxy ( Proxy(..) )-import Data.Typeable ( Typeable ) import Database.PostgreSQL.Query.Entity.Class import Database.PostgreSQL.Query.Entity.Internal import Database.PostgreSQL.Query.Functions+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.SqlBuilder import Database.PostgreSQL.Query.TH ( sqlExp )@@ -29,10 +26,6 @@ import Database.PostgreSQL.Simple import Database.PostgreSQL.Simple.FromField import Database.PostgreSQL.Simple.ToField--#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif import qualified Data.List as L import qualified Data.List.NonEmpty as NL
src/Database/PostgreSQL/Query/Entity/Internal.hs view
@@ -9,10 +9,8 @@ , entityToMR ) where -import Data.List.NonEmpty ( NonEmpty )-import Data.Monoid-import Data.Proxy ( Proxy(..) ) import Database.PostgreSQL.Query.Entity.Class+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.Internal import Database.PostgreSQL.Query.SqlBuilder ( SqlBuilder, ToSqlBuilder(..), mkValue )
src/Database/PostgreSQL/Query/Functions.hs view
@@ -14,12 +14,8 @@ , pgRepsertRow ) where -import Control.Monad-import Control.Monad.Base-import Control.Monad.Logger-import Control.Monad.Trans.Control import Data.Int ( Int64 )-import Data.Monoid+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.Internal import Database.PostgreSQL.Query.SqlBuilder import Database.PostgreSQL.Query.TH
+ src/Database/PostgreSQL/Query/Import.hs view
@@ -0,0 +1,27 @@+-- | Module for internal usage. Just reexports and some compatibility+-- stuff++module Database.PostgreSQL.Query.Import+ ( module X+ ) where++import Control.Applicative as X+import Control.Monad as X+import Control.Monad.Base as X+import Control.Monad.Catch as X+import Control.Monad.Logger as X+import Control.Monad.Trans.Control as X+import Data.List.NonEmpty as X (NonEmpty)+import Data.Maybe as X+import Data.Proxy as X+import Data.String as X+import Data.Text as X (Text)+import Data.Typeable as X+import GHC.Generics as X (Generic)++#if MIN_VERSION_base(4,8,0)+import Data.Semigroup as X+#else+import Data.Monoid as X+import Data.Semigroup as X+#endif
src/Database/PostgreSQL/Query/Internal.hs view
@@ -9,11 +9,6 @@ import Database.PostgreSQL.Query.TH import Database.PostgreSQL.Query.Types -#if !MIN_VERSION_base(4,8,0)-import Data.Monoid-#endif-- import qualified Data.List as L {- $setup
src/Database/PostgreSQL/Query/SqlBuilder/Builder.hs view
@@ -14,19 +14,14 @@ import Blaze.ByteString.Builder (Builder) import Data.ByteString (ByteString)-import Data.Semigroup import Data.String import Data.Typeable+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.SqlBuilder.Types import Database.PostgreSQL.Simple import Database.PostgreSQL.Simple.Internal import Database.PostgreSQL.Simple.ToField import Database.PostgreSQL.Simple.Types-import GHC.Generics (Generic)--#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif import qualified Blaze.ByteString.Builder as BB import qualified Blaze.ByteString.Builder.Char.Utf8 as BB
src/Database/PostgreSQL/Query/SqlBuilder/Types.hs view
@@ -11,10 +11,7 @@ import Blaze.ByteString.Builder (Builder)-import Data.Semigroup-import Data.String-import Data.Typeable-import GHC.Generics (Generic)+import Database.PostgreSQL.Query.Import import Language.Haskell.TH.Lift import qualified Blaze.ByteString.Builder as BB
src/Database/PostgreSQL/Query/TH/Common.hs view
@@ -6,8 +6,6 @@ , dataConstructors ) where -import Prelude- import Language.Haskell.TH -- | Return constructor name
src/Database/PostgreSQL/Query/TH/Entity.hs view
@@ -3,23 +3,18 @@ , deriveEntity ) where -import Prelude- import Data.Default-import Data.Text (Text, pack, unpack) import Database.PostgreSQL.Query.Entity.Class+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.TH.Common import Database.PostgreSQL.Query.Types ( FN(..), textFN ) import Database.PostgreSQL.Simple.FromField import Database.PostgreSQL.Simple.ToField-import GHC.Generics (Generic) import Language.Haskell.TH import Language.Haskell.TH.Syntax import Text.Inflections -#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif+import qualified Data.Text as T -- | Options for deriving `Entity` data EntityOptions = EntityOptions@@ -31,7 +26,7 @@ #if !MIN_VERSION_inflections(0,3,0) toUnderscore' :: Text -> Text-toUnderscore' = pack . toUnderscore . unpack+toUnderscore' = T.pack . toUnderscore . T.unpack #else toUnderscore' :: Text -> Text toUnderscore' = either error' id . toUnderscore@@ -113,8 +108,8 @@ iddec = NewtypeInstD [] entityIdName [ConT tname] idcon (eoDeriveClasses opts) #endif- tblName = eoTableName opts $ pack tnames- fldNames = map (eoColumnNames opts . pack . nameBase)+ tblName = eoTableName opts $ T.pack tnames+ fldNames = map (eoColumnNames opts . T.pack . nameBase) $ cFieldNames tcon VarE ntableName <- [e|tableName|] VarE nfieldNames <- [e|fieldNames|]
src/Database/PostgreSQL/Query/TH/Enum.hs view
@@ -11,11 +11,6 @@ import Database.PostgreSQL.Simple.ToField import Language.Haskell.TH -#if !MIN_VERSION_base(4,8,0)-import Data.Traversable-import Control.Applicative-#endif- import qualified Data.Text.Encoding as T import qualified Data.Text as T
src/Database/PostgreSQL/Query/TH/Row.hs view
@@ -3,16 +3,10 @@ , deriveToRow ) where -import Prelude- import Database.PostgreSQL.Query.TH.Common import Database.PostgreSQL.Simple.FromRow ( FromRow(..), field ) import Database.PostgreSQL.Simple.ToRow ( ToRow(..) ) import Language.Haskell.TH--#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif {-| Derive 'FromRow' instance. i.e. you have type like that
src/Database/PostgreSQL/Query/TH/SqlExp.hs view
@@ -12,26 +12,24 @@ , sqlExpEmbed , sqlExpFile ) where+ import Prelude hiding (takeWhile) -import Control.Applicative-import Control.Monad ( when ) import Data.Attoparsec.Combinator import Data.Attoparsec.Text import Data.Char ( isSpace ) import Data.FileEmbed ( bsToExp )-import Data.Maybe-import Data.Monoid-import Data.Text ( Text )+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.SqlBuilder+import Language.Haskell.TH+import Language.Haskell.TH.Quote+import Language.Haskell.TH.Syntax+ #if MIN_VERSION_haskell_src_meta(0,8,0) import Language.Haskell.Meta.Parse #else import Language.Haskell.Meta.Parse.Careful #endif-import Language.Haskell.TH-import Language.Haskell.TH.Quote-import Language.Haskell.TH.Syntax import qualified Data.ByteString as B import qualified Data.Text as T
src/Database/PostgreSQL/Query/Types.hs view
@@ -16,11 +16,6 @@ , ToMarkedRow(..) ) where -import Control.Applicative-import Control.Monad-import Control.Monad.Base ( MonadBase(..) )-import Control.Monad.Catch- ( MonadThrow, MonadMask, MonadCatch ) import Control.Monad.Cont.Class ( MonadCont ) import Control.Monad.Error.Class ( MonadError ) import Control.Monad.Fix ( MonadFix(..) )@@ -39,22 +34,17 @@ import Data.HSet import Data.Pool import Data.String-import Data.Text ( Text ) import Data.Typeable+import Database.PostgreSQL.Query.Import import Database.PostgreSQL.Query.SqlBuilder import Database.PostgreSQL.Query.TH.SqlExp import Database.PostgreSQL.Simple import Database.PostgreSQL.Simple.FromField import Database.PostgreSQL.Simple.ToField import Database.PostgreSQL.Simple.Types-import GHC.Generics import Instances.TH.Lift () import Language.Haskell.TH.Lift ( deriveLift ) -#if !MIN_VERSION_base(4,8,0)-import Data.Monoid-#endif- import qualified Blaze.ByteString.Builder.ByteString as BB import qualified Control.Monad.Trans.State.Lazy as STL import qualified Control.Monad.Trans.State.Strict as STS@@ -83,7 +73,7 @@ newtype InetText = InetText { unInetText :: T.Text } deriving ( IsString, Eq, Ord, Read, Show- , Typeable, Monoid, ToField )+ , Typeable, Semigroup, Monoid, ToField ) instance FromField InetText where@@ -130,7 +120,7 @@ -} newtype FN = FN [Text]- deriving (Ord, Eq, Show, Monoid, Typeable, Generic)+ deriving (Ord, Eq, Show, Semigroup, Monoid, Typeable, Generic) $(deriveLift ''FN) @@ -182,7 +172,7 @@ newtype MarkedRow = MR { unMR :: [(FN, SqlBuilder)]- } deriving (Monoid, Typeable, Generic)+ } deriving (Semigroup, Monoid, Typeable, Generic) class ToMarkedRow a where -- | generate list of pairs (field name, field value)@@ -359,6 +349,7 @@ type MHRElements (PgMonadT m) = MHRElements m askHSet = PgMonadT askHSet {-# INLINEABLE askHSet #-}+ hlocal f (PgMonadT ma) = PgMonadT $ hlocal f ma instance (MonadBase IO m) => HasPostgres (PgMonadT m) where withPGConnection action = do
test/ParserTest.hs view
@@ -5,12 +5,11 @@ ) where import Data.Attoparsec.Text ( parseOnly )-import Data.Derive.Arbitrary-import Data.DeriveTH import Data.Monoid-import Data.Text ( Text )+import Data.Text (Text) import Database.PostgreSQL.Query.SqlBuilder import Database.PostgreSQL.Query.TH.SqlExp+import Test.QuickCheck.Arbitrary.Generic import Test.QuickCheck.Assertions import Test.QuickCheck.Instances () import Test.QuickCheck.Modifiers@@ -19,10 +18,6 @@ import Test.Tasty.QuickCheck import Test.Tasty.TH -#if !MIN_VERSION_base(4,8,0)-import Control.Applicative-#endif- import qualified Data.Text as T noSeqSpace :: [Rope] -> [Rope]@@ -37,6 +32,10 @@ instance Arbitrary RopeList where arbitrary = resize 10 $ (RopeList . noSeqSpace . getNonEmpty) <$> arbitrary +instance Arbitrary FieldOption where+ arbitrary = genericArbitrary+ shrink = genericShrink+ wordAlpha :: [Text] wordAlpha = map T.singleton $ ['A'..'Z'] ++ ['a'..'z']@@ -51,7 +50,6 @@ intAlpha :: [Text] intAlpha = wordAlpha ++ [" "] -derive makeArbitrary ''FieldOption instance Arbitrary Rope where arbitrary =