diff --git a/src/Quasar/Disposable.hs b/src/Quasar/Disposable.hs
index fe86e94af2ae4f5cb5ff61d85375543ff5a8d837..d232f2d2b5ac86b20a41ee8ff13a02b1232e8558 100644
--- a/src/Quasar/Disposable.hs
+++ b/src/Quasar/Disposable.hs
@@ -33,13 +33,11 @@ import Control.Concurrent (forkIO)
 import Control.Concurrent.STM
 import Control.Monad.Catch
 import Control.Monad.Reader
-import Data.List.NonEmpty (nonEmpty)
 import Data.HashSet (HashSet)
 import Data.HashSet qualified as HashSet
 import GHC.Conc (unsafeIOToSTM)
 import Quasar.Awaitable
 import Quasar.Prelude
-import Quasar.Utils.Exceptions
 
 
 -- * Disposable
diff --git a/src/Quasar/ResourceManager.hs b/src/Quasar/ResourceManager.hs
index 6a04c4cc083b7d6b64c963289d1bb344b812d54f..0755f0eee22fc59e54df079262d6bca168e65c2b 100644
--- a/src/Quasar/ResourceManager.hs
+++ b/src/Quasar/ResourceManager.hs
@@ -52,7 +52,7 @@ import Control.Monad.Reader
 import Data.Foldable (toList)
 import Data.HashMap.Strict (HashMap)
 import Data.HashMap.Strict qualified as HM
-import Data.List.NonEmpty (NonEmpty(..), (<|), nonEmpty)
+import Data.List.NonEmpty ((<|), nonEmpty)
 import Data.Sequence (Seq(..), (|>))
 import Data.Sequence qualified as Seq
 import Quasar.Async.Unmanaged
@@ -221,7 +221,7 @@ captureDisposable :: MonadResourceManager m => m a -> m (a, Disposable)
 captureDisposable action = do
   resourceManager <- newResourceManager
   result <- localResourceManager resourceManager action
-  pure $ (result, toDisposable resourceManager)
+  pure (result, toDisposable resourceManager)
 
 captureDisposable_ :: MonadResourceManager m => m () -> m Disposable
 captureDisposable_ = snd <<$>> captureDisposable
@@ -442,7 +442,7 @@ instance IsDisposable ResourceManagerCore where
         state <- readTVar stateVar
         case state of
           ResourceManagerNormal -> do
-            writeTVar stateVar $ ResourceManagerDisposing
+            writeTVar stateVar ResourceManagerDisposing
             readTVar lockVar >>= \case
               0 -> do
                 disposables <- takeDisposables
diff --git a/src/Quasar/Utils/TOnce.hs b/src/Quasar/Utils/TOnce.hs
index bd1dba8491b3bacb8522ecb205fb82f45ca76e4c..94013154e1271e0755098b857407c3b30995e3d3 100644
--- a/src/Quasar/Utils/TOnce.hs
+++ b/src/Quasar/Utils/TOnce.hs
@@ -13,7 +13,8 @@ import Quasar.Awaitable
 import Quasar.Prelude
 
 data TOnceAlreadyFinalized = TOnceAlreadyFinalized
-  deriving (Eq, Show, Exception)
+  deriving stock (Eq, Show)
+  deriving anyclass Exception
 
 newtype TOnce a b = TOnce (TVar (Either a b))