packages feed

yesod-persistent 1.2.2.1 → 1.2.2.2

raw patch · 2 files changed

+19/−22 lines, 2 filesdep +resource-pooldep −lifted-basedep −pool-conduitdep ~resourcet

Dependencies added: resource-pool

Dependencies removed: lifted-base, pool-conduit

Dependency ranges changed: resourcet

Files

Yesod/Persist/Core.hs view
@@ -25,8 +25,7 @@ import Yesod.Core import Data.Conduit import Blaze.ByteString.Builder (Builder)-import Data.IORef.Lifted-import Data.Conduit.Pool+import Data.Pool import Control.Monad.Trans.Resource import Control.Exception (throwIO) import Yesod.Core.Types (HandlerContents (HCError))@@ -82,24 +81,23 @@                    => (site -> Pool SQL.Connection)                    -> HandlerT site IO (DBRunner site, HandlerT site IO ()) defaultGetDBRunner getPool = do-    ididSucceed <- newIORef False-     pool <- fmap getPool getYesod-    managedConn <- takeResource pool-    let conn = mrValue managedConn--    let withPrep f = f conn (SQL.connPrepare conn)-    (finishTransaction, ()) <- allocate (withPrep SQL.connBegin) $ \() -> do-        didSucceed <- readIORef ididSucceed-        withPrep $ if didSucceed-            then SQL.connCommit-            else SQL.connRollback+    let withPrep conn f = f conn (SQL.connPrepare conn)+    (relKey, (conn, local)) <- allocate+        (do+            (conn, local) <- takeResource pool+            withPrep conn SQL.connBegin+            return (conn, local)+            )+        (\(conn, local) -> do+            withPrep conn SQL.connRollback+            destroyResource pool local conn) -    let cleanup = do-            writeIORef ididSucceed True-            release finishTransaction-            mrReuse managedConn True-            mrRelease managedConn+    let cleanup = liftIO $ do+            withPrep conn SQL.connCommit+            putResource local conn+            _ <- unprotect relKey+            return ()      return (DBRunner $ \x -> runReaderT (unSqlPersistT x) conn, cleanup) 
yesod-persistent.cabal view
@@ -1,5 +1,5 @@ name:            yesod-persistent-version:         1.2.2.1+version:         1.2.2.2 license:         MIT license-file:    LICENSE author:          Michael Snoyman <michael@snoyman.com>@@ -20,9 +20,8 @@                    , transformers              >= 0.2.2    && < 0.4                    , blaze-builder                    , conduit-                   , lifted-base-                   , pool-conduit-                   , resourcet+                   , resourcet                 >= 0.4.5+                   , resource-pool     exposed-modules: Yesod.Persist                      Yesod.Persist.Core     ghc-options:     -Wall