packages feed

relational-query 0.11.3.0 → 0.11.4.0

raw patch · 9 files changed

+83/−60 lines, 9 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Database.Relational.Arrow: deleteNoPH :: TableDerivable r => RestrictedStatement r () -> Delete ()
+ Database.Relational.Arrow: insertValueNoPH :: TableDerivable r => Register r () -> Insert ()
+ Database.Relational.Arrow: updateAllColumn :: (PersistableWidth r, TableDerivable r) => RestrictedStatement r (PlaceHolders p) -> Update (r, p)
+ Database.Relational.Arrow: updateAllColumn' :: (PersistableWidth r, TableDerivable r) => Config -> RestrictedStatement r (PlaceHolders p) -> Update (r, p)
+ Database.Relational.Arrow: updateAllColumnNoPH :: (PersistableWidth r, TableDerivable r) => RestrictedStatement r () -> Update r
+ Database.Relational.Arrow: updateNoPH :: TableDerivable r => AssignStatement r () -> Update ()

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ <!-- -*- Markdown -*- --> +## 0.11.4.0++- add xxxNoPH effect APIs of arrow-interface.+ ## 0.11.3.0  - add some overloaded projection instances for tuple types.
relational-query.cabal view
@@ -1,5 +1,5 @@ name:                relational-query-version:             0.11.3.0+version:             0.11.4.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/Arrow.hs view
@@ -47,9 +47,10 @@    assign, -  update', update,-  insertValue', insertValue,-  delete', delete,+  update', update, updateNoPH,+  updateAllColumn', updateAllColumn, updateAllColumnNoPH,+  insertValue', insertValue, insertValueNoPH,+  delete', delete, deleteNoPH,    QueryA, @@ -81,9 +82,10 @@    relation, relation', aggregateRelation, aggregateRelation', uniqueRelation',    groupBy', key, key', set, bkey, rollup, cube, groupingSets,    orderBy', orderBy, asc, desc, partitionBy, over,-   update', update, derivedUpdate', derivedUpdate,-   insertValue', insertValue, derivedInsertValue', derivedInsertValue,-   delete', delete, derivedDelete', derivedDelete,+   update', update, updateNoPH, derivedUpdate', derivedUpdate,+   updateAllColumn', updateAllColumn, updateAllColumnNoPH,+   insertValue', insertValue, insertValueNoPH, derivedInsertValue', derivedInsertValue,+   delete', delete, deleteNoPH, derivedDelete', derivedDelete,    QuerySimple, QueryAggregate, QueryUnique, Window, Register) import qualified Database.Relational as Monadic import qualified Database.Relational.Monad.Trans.Aggregating as Monadic@@ -421,68 +423,101 @@        -> Assignings r m (Record Flat v) () assign t = queryA (`Monadic.assignTo` t) --- | Same as 'Monadic.derivedUpdate''.+-- | Same as 'Monadic.update''. --   Make 'Update' from assigning statement arrow using configuration. update' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p update' config = Monadic.update' config . runQueryA --- | Same as 'Monadic.derivedUpdate'.+-- | Same as 'Monadic.update'. --   Make 'Update' from assigning statement arrow. update :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p update = Monadic.update . runQueryA --- | Same as 'Monadic.derivedInsertValue''.+-- | Same as 'Monadic.updateNoPH'.+--   Make 'Update' from assigning statement arrow.+updateNoPH :: TableDerivable r => AssignStatement r () -> Update ()+updateNoPH = Monadic.updateNoPH . runQueryA++-- | Same as 'Monadic.updateAllColumn''.+--   Make 'Update' from restrected statement arrow.+updateAllColumn' :: (PersistableWidth r, TableDerivable r)+                 => Config+                 -> RestrictedStatement r (PlaceHolders p)+                 -> Update (r, p)+updateAllColumn' config = Monadic.updateAllColumn' config . runQueryA++-- | Same as 'Monadic.updateAllColumn'.+--   Make 'Update' from restrected statement arrow.+updateAllColumn :: (PersistableWidth r, TableDerivable r)+                => RestrictedStatement r (PlaceHolders p)+                -> Update (r, p)+updateAllColumn = Monadic.updateAllColumn . runQueryA++-- | Same as 'Monadic.updateAllColumnNoPH'.+--   Make 'Update' from restrected statement arrow.+updateAllColumnNoPH :: (PersistableWidth r, TableDerivable r)+                    => RestrictedStatement r ()+                    -> Update r+updateAllColumnNoPH = Monadic.updateAllColumnNoPH . runQueryA++-- | Same as 'Monadic.insertValue''. --   Make 'Insert' from register arrow using configuration. insertValue' :: TableDerivable r => Config -> Register r (PlaceHolders p) -> Insert p insertValue' config = Monadic.insertValue' config . ($ ()) . runQueryA --- | Same as 'Monadic.derivedInsertValue'.+-- | Same as 'Monadic.insertValue'. --   Make 'Insert' from register arrow. insertValue :: TableDerivable r => Register r (PlaceHolders p) -> Insert p insertValue = Monadic.insertValue . ($ ()) . runQueryA --- | Same as 'Monadic.derivedDelete''.+-- | Same as 'Monadic.insertValueNoPH'.+--   Make 'Insert' from register arrow.+insertValueNoPH :: TableDerivable r => Register r () -> Insert ()+insertValueNoPH = Monadic.insertValueNoPH . ($ ()) . runQueryA+++-- | Same as 'Monadic.delete''. --   Make 'Update' from restrict statement arrow using configuration. delete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p delete' config = Monadic.delete' config . runQueryA --- | Same as 'Monadic.derivedDelete'.+-- | Same as 'Monadic.delete'. --   Make 'Update' from restrict statement arrow. delete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p delete = Monadic.delete . runQueryA +-- | Same as 'Monadic.deleteNoPH'.+--   Make 'Update' from restrict statement arrow.+deleteNoPH :: TableDerivable r => RestrictedStatement r () -> Delete ()+deleteNoPH = Monadic.deleteNoPH . runQueryA+ {-# DEPRECATED derivedUpdate' "use `update'` instead of this." #-}--- | Same as 'Monadic.derivedUpdate''.+-- | Same as 'Monadic.update''. --   Make 'Update' from assigning statement arrow using configuration. derivedUpdate' :: TableDerivable r => Config -> AssignStatement r (PlaceHolders p) -> Update p derivedUpdate' = update'  {-# DEPRECATED derivedUpdate "use `update` instead of this." #-}--- | Same as 'Monadic.derivedUpdate'.---   Make 'Update' from assigning statement arrow.+-- | Deprecated. derivedUpdate :: TableDerivable r => AssignStatement r (PlaceHolders p) -> Update p derivedUpdate = update  {-# DEPRECATED derivedInsertValue' "use `insertValue'` instead of this." #-}--- | Same as 'Monadic.derivedInsertValue''.---   Make 'Insert' from register arrow using configuration.+-- | Deprecated. derivedInsertValue' :: TableDerivable r => Config -> Register r (PlaceHolders p) -> Insert p derivedInsertValue' = insertValue'  {-# DEPRECATED derivedInsertValue "use `insertValue` instead of this." #-}--- | Same as 'Monadic.derivedInsertValue'.---   Make 'Insert' from register arrow.+-- | Deprecated. derivedInsertValue :: TableDerivable r => Register r (PlaceHolders p) -> Insert p derivedInsertValue = insertValue  {-# DEPRECATED derivedDelete' "use `derivedDelete'` instead of this." #-}--- | Same as 'Monadic.derivedDelete''.---   Make 'Update' from restrict statement arrow using configuration.+-- | Deprecated. derivedDelete' :: TableDerivable r => Config -> RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete' = delete'  {-# DEPRECATED derivedDelete "use `derivedDelete` instead of this." #-}--- | Same as 'Monadic.derivedDelete'.---   Make 'Update' from restrict statement arrow.+-- | Deprecated. derivedDelete :: TableDerivable r => RestrictedStatement r (PlaceHolders p) -> Delete p derivedDelete = delete
src/Database/Relational/Effect.hs view
@@ -48,8 +48,7 @@ import qualified Database.Relational.Record as Record import Database.Relational.ProjectableClass (ShowConstantTermsSQL) import Database.Relational.Projectable-  (PlaceHolders, unitPlaceHolder,-   pwPlaceholder, placeholder, (><), value, )+  (PlaceHolders, unitPH, pwPlaceholder, placeholder, (><), value, ) import Database.Relational.Monad.Trans.Assigning (assignings, (<-#)) import Database.Relational.Monad.Restrict (RestrictedStatement) import qualified Database.Relational.Monad.Restrict as Restrict@@ -64,7 +63,7 @@  -- | Finalize 'Restrict' monad and generate 'Restriction'. restriction :: RestrictedStatement r () -> Restriction () r-restriction = Restriction . ((>> return unitPlaceHolder) .)+restriction = Restriction . ((>> return unitPH) .)  -- | Finalize 'Restrict' monad and generate 'Restriction' with place-holder parameter 'p' restriction' :: RestrictedStatement r (PlaceHolders p) -> Restriction p r@@ -90,7 +89,7 @@ -- | Finalize 'Target' monad and generate 'UpdateTarget'. updateTarget :: AssignStatement r ()              -> UpdateTarget () r-updateTarget =  UpdateTarget . ((>> return unitPlaceHolder) .)+updateTarget =  UpdateTarget . ((>> return unitPH) .)  -- | Finalize 'Target' monad and generate 'UpdateTarget' with place-holder parameter 'p'. updateTarget' :: AssignStatement r (PlaceHolders p)@@ -145,7 +144,7 @@ -- | Finalize 'Register' monad and generate 'InsertTarget'. insertTarget :: Register r ()              -> InsertTarget () r-insertTarget =  InsertTarget . (>> return unitPlaceHolder)+insertTarget =  InsertTarget . (>> return unitPH)  -- | Finalize 'Target' monad and generate 'UpdateTarget' with place-holder parameter 'p'. insertTarget' :: Register r (PlaceHolders p)
src/Database/Relational/OverloadedInstances.hs view
@@ -21,12 +21,7 @@  import Control.Applicative ((<$>)) #if __GLASGOW_HASKELL__ >= 800-import Database.Record.Persistable-  (PersistableWidth, persistableWidth,-   PersistableRecordWidth, runPersistableRecordWidth)--import Database.Relational.Pi.Unsafe (definePi)-import Database.Relational.OverloadedProjection (HasProjection (projection))+import Database.Relational.OverloadedProjection (projection) #endif import Database.Relational.InternalTH.Overloaded (tupleProjection) 
src/Database/Relational/Sequence.hs view
@@ -41,7 +41,7 @@ import Database.Relational.Pi (Pi) import Database.Relational.Constraint   (HasConstraintKey (..), Key, Primary, projectionKey)-import Database.Relational.Projectable ((.<=.), value, unitPlaceHolder, (!))+import Database.Relational.Projectable ((.<=.), value, unitPH, (!)) import Database.Relational.ProjectableClass (ShowConstantTermsSQL) import Database.Relational.Relation (tableOf) import qualified Database.Relational.Relation as Relation@@ -144,7 +144,7 @@   let iv = value i   seqKey seqt <-# iv   wheres $ proj ! seqKey seqt .<=. iv -- fool proof-  return unitPlaceHolder+  return unitPH  -- | Update statement for sequence table updateNumber :: (PersistableWidth s, Integral i, ShowConstantTermsSQL i)
src/Database/Relational/Type.hs view
@@ -212,9 +212,9 @@ -- | Make typed 'Update' from 'Config', derived table and 'AssignStatement'. --   Update target is all column. updateAllColumn' :: (PersistableWidth r, TableDerivable r)-                        => Config-                        -> RestrictedStatement r (PlaceHolders p)-                        -> Update (r, p)+                 => Config+                 -> RestrictedStatement r (PlaceHolders p)+                 -> Update (r, p) updateAllColumn' config = typedUpdateAllColumn' config derivedTable .restriction'  {-# DEPRECATED derivedUpdateAllColumn' "use `updateAllColumn'` instead of this." #-}
test/sqlsEq.hs view
@@ -75,9 +75,8 @@   return $ a ! intA0'  assignX :: Update ()-assignX = update $ \_proj -> do+assignX = updateNoPH $ \_proj ->   intA0' <-# value (0 :: Int32)-  return unitPlaceHolder  registerX :: Insert (String, Maybe String) registerX = insertValue $ do@@ -634,15 +633,13 @@ updateKeyX =  primaryUpdate tableOfSetA  updateX :: Update ()-updateX =  update $ \proj -> do+updateX =  updateNoPH $ \proj -> do   strA2' <-# value "X"   wheres $ proj ! strA1' .=. value "A"-  return unitPlaceHolder  deleteX :: Delete ()-deleteX =  delete $ \proj -> do+deleteX =  deleteNoPH $ \proj ->   wheres $ proj ! strA1' .=. value "A"-  return unitPlaceHolder  effs :: [Test] effs =@@ -665,42 +662,38 @@   ]  updateExistsX :: Update ()-updateExistsX = update $ \proj -> do+updateExistsX = updateNoPH $ \proj -> do   strA2' <-# value "X"   wheres . exists     =<< (queryList . relation $ do             b <- query setB             wheres $ b ! intB0' .=. proj ! intA0'             return b)-  return unitPlaceHolder  updateScalarX :: Update ()-updateScalarX = update $ \proj -> do+updateScalarX = updateNoPH $ \proj -> do   strA2' <-# value "X"   sb <- queryScalar . unsafeUnique . relation $ do     b <- query setB     wheres $ b ! intB0' .=. value 0     return $ b ! intB0'   wheres $ just (proj ! intA0') .=. sb-  return unitPlaceHolder  deleteExistsX :: Delete ()-deleteExistsX =  delete $ \proj -> do+deleteExistsX =  deleteNoPH $ \proj ->   wheres . exists     =<< (queryList . relation $ do             b <- query setB             wheres $ b ! intB0' .=. proj ! intA0'             return b)-  return unitPlaceHolder  deleteScalarX :: Delete ()-deleteScalarX = delete $ \proj -> do+deleteScalarX = deleteNoPH $ \proj -> do   sb <- queryScalar . unsafeUnique . relation $ do     b <- query setB     wheres $ b ! intB0' .=. value 0     return $ b ! intB0'   wheres $ just (proj ! intA0') .=. sb-  return unitPlaceHolder  correlated :: [Test] correlated =
test/sqlsEqArrow.hs view
@@ -75,9 +75,8 @@   returnA -< a ! intA0'  assignX :: Update ()-assignX = update $ proc _proj -> do+assignX = updateNoPH $ proc _proj ->   assign intA0' -< value (0 :: Int32)-  returnA -< unitPlaceHolder  registerX :: Insert (String, Maybe String) registerX = insertValue $ proc () -> do@@ -545,15 +544,13 @@ updateKeyX =  primaryUpdate tableOfSetA  updateX :: Update ()-updateX =  update $ proc proj -> do+updateX =  updateNoPH $ proc proj -> do   assign strA2' -< value "X"   wheres -< proj ! strA1' .=. value "A"-  returnA -< unitPlaceHolder  deleteX :: Delete ()-deleteX =  delete $ proc proj -> do+deleteX =  deleteNoPH $ proc proj -> do   wheres -< proj ! strA1' .=. value "A"-  returnA -< unitPlaceHolder  effs :: [Test] effs =