packages feed

monad-effect 0.2.0.0 → 0.2.1.0

raw patch · 3 files changed

+12/−13 lines, 3 files

Files

CHANGELOG.md view
@@ -3,3 +3,11 @@ ## 0.1.0.0 -- 2025-09-20  * First release of monad-effect++## 0.2.0.0 -- 2025-10-17++* Refactored `Control.System` to use bracket pattern by default, users of `Control.Monad.Effect` are not affected. Adding many new combinators.++## 0.2.1.0 -- 2025-11-05++* Exporting `lift`
monad-effect.cabal view
@@ -7,7 +7,7 @@ -- PVP summary:     +-+------- breaking API changes --                  | | +----- non-breaking API additions --                  | | | +--- code changes with no API change-version:            0.2.0.0+version:            0.2.1.0  -- A short (one-line) description of the package. synopsis:  A fast and lightweight effect system.
src/Control/Monad/Effect.hs view
@@ -46,6 +46,9 @@   -- * Transforming error   , mapError +  -- * Re exporting+  , lift+   -- * Lifting IO   , liftIOException, liftIOAt, liftIOSafeWith, liftIOText, liftIOPrepend @@ -377,18 +380,6 @@   asyncEff <- liftBaseWith $ \runInBase -> async (runInBase $ unEffT' eff rs ss)   return (RSuccess asyncEff, ss) {-# INLINE asyncEffT #-}---- | Note: this function seems to be a bit problematic,--- it seems to cause memory leak. Needs investigation.--- -- | A simpler version of asyncEffT that only returns the Result value, discarding the new state.--- asyncEffT_ ::---   ( MonadIO m---   , MonadBaseControl IO m---   , StM m (Result es a, SystemState c mods) ~ (Result es a, SystemState c mods)---   )---   => EffT' c mods es m a -> EffT' c mods NoError m (Async (Result es a))--- asyncEffT_ eff = fmap fst <$> asyncEffT eff--- {-# INLINE asyncEffT_ #-}  -- | Restores the EffT' computation from an Async value created by asyncEffT. -- State will be replaced by the state inside the Async when it finishes.