pool-conduit 0.0.0.1 → 0.1.0
raw patch · 2 files changed
+10/−10 lines, 2 filesdep +resourcetdep −conduitdep ~transformersPVP ok
version bump matches the API change (PVP)
Dependencies added: resourcet
Dependencies removed: conduit
Dependency ranges changed: transformers
API changes (from Hackage documentation)
- Data.Conduit.Pool: ManagedResource :: a -> (Bool -> ResourceT m ()) -> ResourceT m () -> ManagedResource m a
+ Data.Conduit.Pool: ManagedResource :: a -> (Bool -> m ()) -> m () -> ManagedResource m a
- Data.Conduit.Pool: mrRelease :: ManagedResource m a -> ResourceT m ()
+ Data.Conduit.Pool: mrRelease :: ManagedResource m a -> m ()
- Data.Conduit.Pool: mrReuse :: ManagedResource m a -> Bool -> ResourceT m ()
+ Data.Conduit.Pool: mrReuse :: ManagedResource m a -> Bool -> m ()
- Data.Conduit.Pool: takeResource :: ResourceIO m => Pool a -> ResourceT m (ManagedResource m a)
+ Data.Conduit.Pool: takeResource :: MonadResource m => Pool a -> m (ManagedResource m a)
- Data.Conduit.Pool: takeResourceCheck :: ResourceIO m => Pool a -> (a -> ResourceT m Bool) -> ResourceT m (ManagedResource m a)
+ Data.Conduit.Pool: takeResourceCheck :: MonadResource m => Pool a -> (a -> m Bool) -> m (ManagedResource m a)
Files
- Data/Conduit/Pool.hs +7/−7
- pool-conduit.cabal +3/−3
Data/Conduit/Pool.hs view
@@ -17,20 +17,20 @@ -- | The result of taking a resource. data ManagedResource m a = ManagedResource { mrValue :: a -- ^ The actual resource.- , mrReuse :: Bool -> ResourceT m ()+ , mrReuse :: Bool -> m () -- ^ Let's you specify whether the resource should be returned to the pool -- (via 'P.putResource') or destroyed (via 'P.destroyResource') on release. -- This defaults to destruction, in case of exceptions.- , mrRelease :: ResourceT m ()+ , mrRelease :: m () -- ^ Release this resource, either destroying it or returning it to the -- pool. } -- | Take a resource from the pool and register a release action.-takeResource :: ResourceIO m => P.Pool a -> ResourceT m (ManagedResource m a)+takeResource :: MonadResource m => P.Pool a -> m (ManagedResource m a) takeResource pool = do onRelRef <- liftIO $ I.newIORef False- (relKey, (a, _)) <- withIO+ (relKey, (a, _)) <- allocate (P.takeResource pool) (\(a, local) -> do onRel <- I.readIORef onRelRef@@ -45,10 +45,10 @@ -- | Same as 'takeResource', but apply some action to check if a resource is -- still valid.-takeResourceCheck :: ResourceIO m+takeResourceCheck :: MonadResource m => P.Pool a- -> (a -> ResourceT m Bool)- -> ResourceT m (ManagedResource m a)+ -> (a -> m Bool)+ -> m (ManagedResource m a) takeResourceCheck pool check = do mr <- takeResource pool isValid <- check $ mrValue mr
pool-conduit.cabal view
@@ -1,5 +1,5 @@ name: pool-conduit-version: 0.0.0.1+version: 0.1.0 license: BSD3 license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>@@ -16,8 +16,8 @@ build-depends: base >= 4 && < 5 , resource-pool >= 0.2.1 && < 0.3- , transformers >= 0.2.1 && < 0.3- , conduit >= 0.0.2 && < 0.3+ , transformers >= 0.2.1 && < 0.4+ , resourcet >= 0.3 && < 0.4 exposed-modules: Data.Conduit.Pool