hpqtypes-effectful 1.0.0.0 → 1.0.0.1
raw patch · 5 files changed
+20/−14 lines, 5 filesdep +resource-pooldep ~hpqtypesPVP ok
version bump matches the API change (PVP)
Dependencies added: resource-pool
Dependency ranges changed: hpqtypes
API changes (from Hackage documentation)
Files
- CHANGELOG.md +3/−0
- examples/OuterJoins.hs +4/−1
- hpqtypes-effectful.cabal +4/−3
- src/Effectful/HPQTypes.hs +6/−7
- test/Main.hs +3/−3
CHANGELOG.md view
@@ -1,2 +1,5 @@+# hpqtypes-effectful-1.0.0.1 (2023-03-28)+* Compatibility with `hpqtypes` >= 1.11.1.0.+ # hpqtypes-effectful-1.0.0.0 (2022-10-24) * Initial release.
examples/OuterJoins.hs view
@@ -6,6 +6,7 @@ import Control.Monad import Control.Monad.Catch import Data.Int+import Data.Pool import qualified Data.Text as T import Effectful import Effectful.HPQTypes@@ -132,7 +133,9 @@ let cs = defaultConnectionSettings {csConnInfo = connInfo} withDB cs $ do ConnectionSource pool <- liftIO $ do- poolSource (cs {csComposites = ["attribute_"]}) 10 4+ poolSource+ (cs {csComposites = ["attribute_"]})+ (\create destroy -> defaultPoolConfig create destroy 10 4) runDB pool defaultTransactionSettings $ do insertThings [ Thing
hpqtypes-effectful.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.4 build-type: Simple name: hpqtypes-effectful-version: 1.0.0.0+version: 1.0.0.1 license: BSD-3-Clause license-file: LICENSE category: Database@@ -16,7 +16,7 @@ CHANGELOG.md README.md -tested-with: GHC ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.2+tested-with: GHC ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.7 || ==9.4.4 || ==9.6.1 bug-reports: https://github.com/haskell-effectful/hpqtypes-effectful/issues source-repository head@@ -58,7 +58,7 @@ build-depends: base >= 4.13 && < 5 , effectful-core >= 1.2.0.0 && < 3.0.0.0 , exceptions- , hpqtypes >= 1.9.4.0 && < 1.11.0.0+ , hpqtypes >= 1.11.1.0 && < 1.12.0.0 hs-source-dirs: src @@ -74,6 +74,7 @@ , hpqtypes-effectful , exceptions , hpqtypes+ , resource-pool , tasty , tasty-hunit , text
src/Effectful/HPQTypes.hs view
@@ -19,7 +19,6 @@ import Database.PostgreSQL.PQTypes import qualified Database.PostgreSQL.PQTypes.Internal.Connection as PQ import qualified Database.PostgreSQL.PQTypes.Internal.Notification as PQ-import qualified Database.PostgreSQL.PQTypes.Internal.Query as PQ import qualified Database.PostgreSQL.PQTypes.Internal.State as PQ import Effectful import Effectful.Dispatch.Dynamic@@ -160,9 +159,9 @@ instance (IOE :> es) => MonadDB (DBEff es) where runQuery sql = do dbState <- get- (result, dbState') <- liftIO $ PQ.runQueryIO sql dbState- put dbState'- pure result+ (rows, res) <- liftIO $ PQ.runQueryIO (PQ.dbConnection dbState) sql+ put $ PQ.updateStateWith dbState sql res+ pure rows getQueryResult = get >>= \dbState -> pure $ PQ.dbQueryResult dbState@@ -179,9 +178,9 @@ runPreparedQuery queryName sql = do dbState <- get- (result, dbState') <- liftIO $ PQ.runPreparedQueryIO queryName sql dbState- put dbState'- pure result+ (rows, res) <- liftIO $ PQ.runPreparedQueryIO (PQ.dbConnection dbState) queryName sql+ put $ PQ.updateStateWith dbState sql res+ pure rows getLastQuery = PQ.dbLastQuery <$> get
test/Main.hs view
@@ -27,7 +27,7 @@ testGetLastQuery :: Assertion testGetLastQuery = do dbUrl <- getConnString- let connectionSource = simpleSource $ ConnectionSettings dbUrl Nothing []+ let connectionSource = simpleSource $ defaultConnectionSettings {csConnInfo = dbUrl} void . runEff . runErrorNoCallStack @HPQTypesError . runDB (unConnectionSource connectionSource) defaultTransactionSettings $ do do -- Run the first query and perform some basic sanity checks@@ -48,7 +48,7 @@ testWithFrozenLastQuery :: Assertion testWithFrozenLastQuery = do dbUrl <- getConnString- let connectionSource = simpleSource $ ConnectionSettings dbUrl Nothing []+ let connectionSource = simpleSource $ defaultConnectionSettings {csConnInfo = dbUrl} void . runEff . runErrorNoCallStack @HPQTypesError . runDB (unConnectionSource connectionSource) defaultTransactionSettings $ do let sql = mkSQL "SELECT 1" runQuery_ sql@@ -62,7 +62,7 @@ testConnectionStatsWithNewConnection :: Assertion testConnectionStatsWithNewConnection = do dbUrl <- getConnString- let connectionSource = simpleSource $ ConnectionSettings dbUrl Nothing []+ let connectionSource = simpleSource $ defaultConnectionSettings {csConnInfo = dbUrl} transactionSettings = defaultTransactionSettings { tsIsolationLevel = ReadCommitted