diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -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`
diff --git a/monad-effect.cabal b/monad-effect.cabal
--- a/monad-effect.cabal
+++ b/monad-effect.cabal
@@ -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.
diff --git a/src/Control/Monad/Effect.hs b/src/Control/Monad/Effect.hs
--- a/src/Control/Monad/Effect.hs
+++ b/src/Control/Monad/Effect.hs
@@ -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.
