hasql 0.3.0 → 0.4.0
raw patch · 4 files changed
+26/−26 lines, 4 filesdep −scientificdep ~list-tdep ~transformers
Dependencies removed: scientific
Dependency ranges changed: list-t, transformers
Files
- hasql.cabal +6/−11
- library/Hasql.hs +5/−4
- library/Hasql/Prelude.hs +6/−2
- library/Hasql/QParser.hs +9/−9
hasql.cabal view
@@ -1,7 +1,7 @@ name: hasql version:- 0.3.0+ 0.4.0 synopsis: A minimalistic general high level API for relational databases description:@@ -104,19 +104,16 @@ time >= 1.4 && < 1.6, bytestring == 0.10.*, text >= 1.0 && < 1.3,- -- control:- list-t >= 0.2.4 && < 0.4,- monad-control == 0.3.*,- transformers-base == 0.4.*, -- errors: loch-th == 0.2.*, placeholders == 0.1.*, -- general:- monad-control == 0.3.*,- transformers-base == 0.4.*, safe == 0.3.*,+ list-t >= 0.3 && < 0.4, mmorph == 1.0.*,- mtl-prelude < 3,+ monad-control == 0.3.*,+ transformers-base == 0.4.*,+ transformers >= 0.3 && < 0.5, base-prelude >= 0.1.3 && < 0.2, base >= 4.5 && < 4.8 @@ -162,8 +159,6 @@ build-depends: hasql, hasql-postgres == 0.7.*,- scientific == 0.3.*,- transformers >= 0.2 && < 0.5, mtl-prelude < 3, base-prelude == 0.1.*, HTF == 0.12.*,@@ -190,7 +185,7 @@ build-depends: hasql, hasql-postgres == 0.7.*,- transformers >= 0.2 && < 0.5,+ transformers >= 0.3 && < 0.5, base >= 4.5 && < 4.8
library/Hasql.hs view
@@ -279,12 +279,13 @@ newtype TxListT s m r = TxListT (ListT.ListT m r) deriving (Functor, Applicative, Alternative, Monad, MonadTrans, MonadPlus, - Monoid, ListT.ListMonad)+ Monoid, ListT.MonadCons) -instance ListT.ListTrans (TxListT s) where+instance ListT.MonadTransUncons (TxListT s) where uncons = - unsafeCoerce - (ListT.uncons :: ListT.ListT m r -> m (Maybe (r, ListT.ListT m r)))+ (liftM . fmap . fmap) (unsafeCoerce :: ListT.ListT m r -> TxListT s m r) .+ ListT.uncons . + (unsafeCoerce :: TxListT s m r -> ListT.ListT m r) -- * Statements execution
library/Hasql/Prelude.hs view
@@ -11,9 +11,13 @@ ------------------------- import BasePrelude as Exports --- mtl-prelude+-- transformers --------------------------import MTLPrelude as Exports hiding (shift)+import Control.Monad.Trans.State.Strict as Exports hiding (liftCallCC, liftCatch)+import Control.Monad.Trans.Reader as Exports hiding (liftCallCC, liftCatch)+import Control.Monad.Trans.Class as Exports+import Control.Monad.IO.Class as Exports+import Data.Functor.Identity as Exports -- mmorph -------------------------
library/Hasql/QParser.hs view
@@ -12,16 +12,16 @@ parse :: Text -> Either String Result parse = - parseOnly countPlaceholders+ parseOnly $ flip execStateT 0 $+ statement *>+ (lift endOfInput <|> + (void (lift (char ';')) <* fail "A semicolon detected. Only single statements are allowed")) where- countPlaceholders =- count <|> pure 0- where- count =- do- many $ void stringLit <|> void (notChar '?')- char '?'- fmap succ countPlaceholders+ statement =+ skipMany1 $ + void (lift stringLit) <|> + void (lift (char '?') <* modify succ) <|>+ void (lift (notChar ';')) stringLit :: Parser Text stringLit =