packages feed

relational-query 0.7.0.2 → 0.7.1.0

raw patch · 5 files changed

+32/−15 lines, 5 filesdep ~names-thPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: names-th

API changes (from Hackage documentation)

+ Database.Relational.Query.Arrow: type AssignStatement r a = Assignings r Restrict (Projection Flat r) a
+ Database.Relational.Query.Arrow: type RestrictedStatement r a = QueryA Restrict (Projection Flat r) a
- Database.Relational.Query.Arrow: derivedDelete :: TableDerivable r => RestrictionContext p r -> Delete p
+ Database.Relational.Query.Arrow: derivedDelete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p
- Database.Relational.Query.Arrow: derivedDelete' :: TableDerivable r => Config -> RestrictionContext p r -> Delete p
+ Database.Relational.Query.Arrow: derivedDelete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p
- Database.Relational.Query.Arrow: derivedUpdate :: TableDerivable r => UpdateTargetContext p r -> Update p
+ Database.Relational.Query.Arrow: derivedUpdate :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p
- Database.Relational.Query.Arrow: derivedUpdate' :: TableDerivable r => Config -> UpdateTargetContext p r -> Update p
+ Database.Relational.Query.Arrow: derivedUpdate' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p
- Database.Relational.Query.Type: derivedDelete :: TableDerivable r => RestrictionContext p r -> Delete p
+ Database.Relational.Query.Type: derivedDelete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p
- Database.Relational.Query.Type: derivedDelete' :: TableDerivable r => Config -> RestrictionContext p r -> Delete p
+ Database.Relational.Query.Type: derivedDelete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p
- Database.Relational.Query.Type: derivedUpdate :: TableDerivable r => UpdateTargetContext p r -> Update p
+ Database.Relational.Query.Type: derivedUpdate :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p
- Database.Relational.Query.Type: derivedUpdate' :: TableDerivable r => Config -> UpdateTargetContext p r -> Update p
+ Database.Relational.Query.Type: derivedUpdate' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p
- Database.Relational.Query.Type: restrictedUpdateAllColumn :: PersistableWidth r => Table r -> RestrictionContext p r -> Update (r, p)
+ Database.Relational.Query.Type: restrictedUpdateAllColumn :: PersistableWidth r => Table r -> RestrictedStatement r (PlaceHolders p) -> Update (r, p)
- Database.Relational.Query.Type: restrictedUpdateTableAllColumn :: (PersistableWidth r, TableDerivable r) => Relation () r -> RestrictionContext p r -> Update (r, p)
+ Database.Relational.Query.Type: restrictedUpdateTableAllColumn :: (PersistableWidth r, TableDerivable r) => Relation () r -> RestrictedStatement r (PlaceHolders p) -> Update (r, p)

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ <!-- -*- Markdown -*- --> +## 0.7.1.0++- Deprecate redundant type synonyms.+ ## 0.7.0.2  - Prepare to drop Expr type and deprecate around it.
relational-query.cabal view
@@ -1,5 +1,5 @@ name:                relational-query-version:             0.7.0.2+version:             0.7.1.0 synopsis:            Typeful, Modular, Relational, algebraic query engine description:         This package contiains typeful relation structure and                      relational-algebraic query building DSL which can
src/Database/Relational/Query/Arrow.hs view
@@ -58,6 +58,7 @@    Orderings, Window, Assignings, +  AssignStatement, RestrictedStatement,   UpdateTargetContext, RestrictionContext,   ) where @@ -124,9 +125,17 @@ -- | Arrow type corresponding to 'Monadic.Assignings' type Assignings r m = QueryA (Monadic.Assignings r m) +-- | Arrow type corresponding to 'Monadic.AssignStatement'+type AssignStatement r a = Assignings r Restrict (Projection Flat r) a++-- | Arrow type corresponding to 'Monadic.RestrictedStatement'+type RestrictedStatement r a = QueryA Monadic.Restrict (Projection Flat r) a++{-# DEPRECATED UpdateTargetContext "Expand UpdateTargetContext p r into AssignStatement r (PlaceHolders p)." #-} -- | Arrow type corresponding to 'Monadic.UpdateTargetContext' type UpdateTargetContext p r = Assignings r Restrict (Projection Flat r) (PlaceHolders p) +{-# DEPRECATED RestrictionContext "Expand RestrictionContext p r into RestrictedStatement r (PlaceHolders p)." #-} -- | Arrow type corresponding to 'Monadic.RestrictionContext' type RestrictionContext p r = QueryA Monadic.Restrict (Projection Flat r) (PlaceHolders p) @@ -406,20 +415,20 @@  -- | Same as 'Monadic.derivedUpdate''. --   Make 'Update' from assigning statement arrow using configuration.-derivedUpdate' :: TableDerivable r => Config -> UpdateTargetContext p r -> Update p+derivedUpdate' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p derivedUpdate' config = Monadic.derivedUpdate' config . runQueryA  -- | Same as 'Monadic.derivedUpdate'. --   Make 'Update' from assigning statement arrow.-derivedUpdate :: TableDerivable r => UpdateTargetContext p r -> Update p+derivedUpdate :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p derivedUpdate = Monadic.derivedUpdate . runQueryA  -- | Same as 'Monadic.derivedDelete''. --   Make 'Update' from restrict statement arrow using configuration.-derivedDelete' :: TableDerivable r => Config -> RestrictionContext p r -> Delete p+derivedDelete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete' config = Monadic.derivedDelete' config . runQueryA  -- | Same as 'Monadic.derivedDelete'. --   Make 'Update' from restrict statement arrow.-derivedDelete :: TableDerivable r => RestrictionContext p r -> Delete p+derivedDelete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete = Monadic.derivedDelete . runQueryA
src/Database/Relational/Query/Effect.hs view
@@ -49,6 +49,7 @@ -- | Restriction type with place-holder parameter 'p' and projection record type 'r'. newtype Restriction p r = Restriction (Projection Flat r -> Restrict ()) +{-# DEPRECATED RestrictionContext "Expand RestrictionContext p r into RestrictedStatement r (PlaceHolders p)." #-} -- | Not finalized 'Restrict' monad type. type RestrictionContext p r = RestrictedStatement r (PlaceHolders p) @@ -77,6 +78,7 @@ -- | UpdateTarget type with place-holder parameter 'p' and projection record type 'r'. newtype UpdateTarget p r = UpdateTarget (AssignStatement r ()) +{-# DEPRECATED UpdateTargetContext "Expand UpdateTargetContext p r into AssignStatement r (PlaceHolders p)." #-} -- | Not finalized 'Target' monad type. type UpdateTargetContext p r = AssignStatement r (PlaceHolders p) 
src/Database/Relational/Query/Type.hs view
@@ -44,14 +44,16 @@  import Database.Relational.Query.Internal.SQL (showStringSQL) import Database.Relational.Query.Monad.BaseType (Relation, sqlFromRelationWith)+import Database.Relational.Query.Monad.Restrict (RestrictedStatement)+import Database.Relational.Query.Monad.Assign (AssignStatement) import Database.Relational.Query.Relation (tableOf) import Database.Relational.Query.Effect-  (Restriction, RestrictionContext, restriction',-   UpdateTarget, UpdateTargetContext, updateTarget', liftTargetAllColumn',+  (Restriction, restriction', UpdateTarget, updateTarget', liftTargetAllColumn',    sqlWhereFromRestriction, sqlFromUpdateTarget) import Database.Relational.Query.Pi (Pi) import Database.Relational.Query.Component (Config (chunksInsertSize), defaultConfig) import Database.Relational.Query.Table (Table, TableDerivable, derivedTable)+import Database.Relational.Query.Projectable (PlaceHolders) import Database.Relational.Query.SQL   (QuerySuffix, showsQuerySuffix, insertPrefixSQL, insertSQL, insertSizedChunkSQL,    updateOtherThanKeySQL, updatePrefixSQL, deletePrefixSQL)@@ -128,13 +130,13 @@ targetTable :: TableDerivable r => UpdateTarget p r -> Table r targetTable =  const derivedTable --- | Make typed 'Update' from 'Config', derived table and 'UpdateTargetContext'-derivedUpdate' :: TableDerivable r => Config -> UpdateTargetContext p r -> Update p+-- | Make typed 'Update' from 'Config', derived table and 'AssignStatement'+derivedUpdate' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p derivedUpdate' config utc =  typedUpdate' config (targetTable ut) ut  where   ut = updateTarget' utc --- | Make typed 'Update' from 'defaultConfig', derived table and 'UpdateTargetContext'-derivedUpdate :: TableDerivable r => UpdateTargetContext p r -> Update p+-- | Make typed 'Update' from 'defaultConfig', derived table and 'AssignStatement'+derivedUpdate :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p derivedUpdate = derivedUpdate' defaultConfig  @@ -150,7 +152,7 @@ --   Update target is all column. restrictedUpdateAllColumn :: PersistableWidth r                            => Table r-                           -> RestrictionContext p r -- ^ 'Restrict' monad context+                           -> RestrictedStatement r (PlaceHolders p) -- ^ 'Restrict' monad context                            -> Update (r, p) restrictedUpdateAllColumn tbl = typedUpdateAllColumn tbl . restriction' @@ -158,7 +160,7 @@ --   Update target is all column. restrictedUpdateTableAllColumn :: (PersistableWidth r, TableDerivable r)                                => Relation () r-                               -> RestrictionContext p r+                               -> RestrictedStatement r (PlaceHolders p)                                -> Update (r, p) restrictedUpdateTableAllColumn =  restrictedUpdateAllColumn . tableOf @@ -251,12 +253,12 @@ restrictedTable =  const derivedTable  -- | Make typed 'Delete' from 'Config', derived table and 'RestrictContext'-derivedDelete' :: TableDerivable r => Config -> RestrictionContext p r -> Delete p+derivedDelete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete' config rc = typedDelete' config (restrictedTable rs) rs  where   rs = restriction' rc  -- | Make typed 'Delete' from 'defaultConfig', derived table and 'RestrictContext'-derivedDelete :: TableDerivable r => RestrictionContext p r -> Delete p+derivedDelete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete = derivedDelete' defaultConfig  -- | Show delete SQL string