diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+## [v1.4.1.2](https://github.com/diagrams/diagrams-canvas/tree/v1.4.1.2) (2023-06-22)
+
+- Allow `base-4.18`, `optparse-applicative-0.18`, and `mtl-2.3`
+- Test on GHC 9.6
+- Drop support for GHC < 8.8
+
 ## [v1.4.1.1](https://github.com/diagrams/diagrams-canvas/tree/v1.4.1.1) (2022-09-12)
 
 - allow `base-4.17`, `lens-5.2`, `text-2.0`
diff --git a/diagrams-canvas.cabal b/diagrams-canvas.cabal
--- a/diagrams-canvas.cabal
+++ b/diagrams-canvas.cabal
@@ -1,5 +1,5 @@
 Name:                diagrams-canvas
-Version:             1.4.1.1
+Version:             1.4.1.2
 Synopsis:            HTML5 canvas backend for diagrams drawing EDSL
 Description:         This package provides a modular backend for rendering
                      diagrams created with the diagrams EDSL using an
@@ -14,7 +14,7 @@
 Category:            Graphics
 Build-type:          Simple
 Extra-source-files:  README.md, CHANGELOG.md
-Tested-with:         GHC ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.4 || ==9.4.1
+Tested-with:         GHC ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.7 || ==9.4.5 || ==9.6.1
 Cabal-version:       >=1.10
 Source-repository head
   type:     git
@@ -24,8 +24,8 @@
   Exposed-modules:     Diagrams.Backend.Canvas
                        Diagrams.Backend.Canvas.CmdLine
   Hs-source-dirs:      src
-  Build-depends:       base >= 4.6 && < 4.18,
-                       mtl >= 2.0 && < 3.0,
+  Build-depends:       base >= 4.13 && < 4.19,
+                       mtl >= 2.0 && < 2.4,
                        NumInstances >= 1.0 && < 1.5,
                        diagrams-core >= 1.3 && < 1.6,
                        diagrams-lib >= 1.3 && < 1.5,
@@ -36,6 +36,6 @@
                        text >= 1.0 && < 2.1,
                        data-default-class >= 0.0.1 && < 0.2,
                        statestack >= 0.2 && <0.4,
-                       optparse-applicative >= 0.13 && < 0.18
+                       optparse-applicative >= 0.13 && < 0.19
 
   Default-language:    Haskell2010
diff --git a/src/Diagrams/Backend/Canvas.hs b/src/Diagrams/Backend/Canvas.hs
--- a/src/Diagrams/Backend/Canvas.hs
+++ b/src/Diagrams/Backend/Canvas.hs
@@ -84,7 +84,8 @@
   ) where
 
 import           Control.Lens                 hiding (transform, (#))
-import           Control.Monad.State          (when, State, evalState)
+import           Control.Monad                (when)
+import           Control.Monad.State          (State, evalState)
 import qualified Control.Monad.StateStack     as SS
 import           Control.Monad.Trans          (lift)
 
