diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,10 +1,8 @@
 # Revision history for io-classes-mtl
 
-## next release
-
-### Breaking changes
+## 0.1.1.0
 
-### Non-breaking changes
+* Support `io-classes-1.4.1.0`
 
 ## 0.1.0.2
 
@@ -16,6 +14,6 @@
 
 * Support `ghc-9.6`.
 
-## 0.1.0.0 -- YYYY-mm-dd
+## 0.1.0.0
 
 * First version. Released on an unsuspecting world.
diff --git a/io-classes-mtl.cabal b/io-classes-mtl.cabal
--- a/io-classes-mtl.cabal
+++ b/io-classes-mtl.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               io-classes-mtl
-version:            0.1.0.3
+version:            0.1.1.0
 synopsis:           Experimental MTL instances for io-classes
 description:
     MTL instances for
@@ -44,7 +44,7 @@
                       array,
                       mtl,
 
-                      io-classes  >=1.0 && <1.5,
+                      io-classes ^>=1.4.1.0,
                       si-timers,
 
 
diff --git a/src/Control/Monad/Class/MonadST/Trans.hs b/src/Control/Monad/Class/MonadST/Trans.hs
--- a/src/Control/Monad/Class/MonadST/Trans.hs
+++ b/src/Control/Monad/Class/MonadST/Trans.hs
@@ -1,4 +1,5 @@
 {-# OPTIONS_GHC -Wno-orphans #-}
+{-# OPTIONS_GHC -Wno-deprecations #-}
 module Control.Monad.Class.MonadST.Trans () where
 
 import           Control.Monad.Cont (ContT)
@@ -15,25 +16,33 @@
 
 
 instance MonadST m => MonadST (ContT r m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance MonadST m => MonadST (ExceptT e m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance (Monoid w, MonadST m) => MonadST (Lazy.RWST r w s m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance (Monoid w, MonadST m) => MonadST (Strict.RWST r w s m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance MonadST m => MonadST (Lazy.StateT s m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance MonadST m => MonadST (Strict.StateT s m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
 
 instance (Monoid w, MonadST m) => MonadST (Lazy.WriterT w m) where
-   withLiftST f = withLiftST $ \g -> f (lift . g) 
+  stToIO = lift . stToIO
+  withLiftST f = withLiftST $ \g -> f (lift . g) 
 
 instance (Monoid w, MonadST m) => MonadST (Strict.WriterT w m) where
+  stToIO = lift . stToIO
   withLiftST f = withLiftST $ \g -> f (lift . g)
