packages feed

hasql-resource-pool 0.5.3.0 → 0.5.3.1

raw patch · 3 files changed

+22/−11 lines, 3 filesdep +hasql-resource-pooldep −hasql-poolPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: hasql-resource-pool

Dependencies removed: hasql-pool

API changes (from Hackage documentation)

- Hasql.Pool: acquireWithStripes :: PoolStripes -> Settings -> IO Pool
+ Hasql.Pool: acquireWith :: PoolStripes -> ConnectionGetter -> Settings -> IO Pool

Files

CHANGELOG.md view
@@ -1,3 +1,8 @@+# 0.5.3.1++* `acquireWithStripes` renamed to `aquireWith` and allows specifying a custom `ConnectionGetter`.++ # 0.5.3  Initial release as a new package. The implementation is based on `hasql-pool` v0.5.2.2
hasql-resource-pool.cabal view
@@ -1,7 +1,7 @@ name:   hasql-resource-pool version:-  0.5.3.0+  0.5.3.1 category:   Hasql, Database, PostgreSQL synopsis:@@ -76,5 +76,5 @@   build-depends:     base-prelude,     hasql,-    hasql-pool,+    hasql-resource-pool,     hspec >= 2.6 && < 3
library/Hasql/Pool.hs view
@@ -3,7 +3,7 @@ ,   Settings(..) ,   UsageError(..) ,   acquire-,   acquireWithStripes+,   acquireWith ,   release ,   use ,   useWithObserver@@ -33,6 +33,10 @@ type ResidenceTimeout = NominalDiffTime  -- |+-- Connection getter action that allows for obtaining Postgres connection settings via external rsources such as AWS tokens etc.+type ConnectionGetter = IO (Either Hasql.Connection.ConnectionError Hasql.Connection.Connection)++-- | -- Settings of the connection pool. Consist of: -- -- * Pool-size.@@ -50,20 +54,22 @@ -- Given the pool-size, timeout and connection settings -- create a connection-pool. acquire :: Settings -> IO Pool-acquire =-    acquireWithStripes stripes+acquire settings@(_size, _timeout, connectionSettings) =+    acquireWith stripes (Hasql.Connection.acquire connectionSettings) settings     where         stripes = 1  -acquireWithStripes :: PoolStripes-                   -> Settings-                   -> IO Pool-acquireWithStripes stripes (size, timeout, connectionSettings) =+-- |+-- Similar to 'acquire', allows for finer configuration.+acquireWith :: PoolStripes+            -> ConnectionGetter+            -> Settings+            -> IO Pool+acquireWith stripes connGetter (size, timeout, connectionSettings) =     fmap Pool $-        ResourcePool.createPool acquire release stripes timeout size+        ResourcePool.createPool connGetter release stripes timeout size     where-        acquire = Hasql.Connection.acquire connectionSettings         release = either (const (pure ())) Hasql.Connection.release