diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,3 +1,8 @@
+## Changes in version 0.2.4
+
+ - Raise support window to 7.10.3
+ - Some performance improvements
+
 ## Changes in version 0.2.3
 
 - Support GHC >= 7.4 by conditionally removing  strictness features (the `Strict` flag and strict `IntMap`s) for GHC versions < 8.
diff --git a/Data/Graph/Dom.hs b/Data/Graph/Dom.hs
--- a/Data/Graph/Dom.hs
+++ b/Data/Graph/Dom.hs
@@ -70,6 +70,8 @@
   (unsafeNewArray_
   ,unsafeWrite,unsafeRead)
 
+import Data.Maybe
+
 -----------------------------------------------------------------------------
 
 type Node       = Int
@@ -493,12 +495,10 @@
 pruneReach :: Rooted -> Rooted
 pruneReach (r,g) = (r,g2)
   where is = reachable
-              (maybe mempty id
+              (fromMaybe mempty
                 . flip IM.lookup g) $ r
-        g2 = IM.fromList
-            . fmap (second (IS.filter (`IS.member`is)))
-            . filter ((`IS.member`is) . fst)
-            . IM.toList $ g
+        g2 = IM.map (\targets -> IS.filter (`IS.member`is) targets)
+            . IM.filterWithKey (\node _targets -> IS.member node is) $ g
 
 tip :: Tree a -> (a, [Tree a])
 tip (Node a ts) = (a, ts)
diff --git a/dom-lt.cabal b/dom-lt.cabal
--- a/dom-lt.cabal
+++ b/dom-lt.cabal
@@ -1,5 +1,5 @@
 name:               dom-lt
-version:            0.2.3
+version:            0.2.4
 cabal-version:      >= 1.10
 build-type:         Simple
 license:            BSD3
@@ -17,8 +17,8 @@
     Included are ways to compute domination and post-domination relationships.
 
 tested-with:
-  -- Every two major versions between 7 and 9 should be enough
-  GHC == 9.0.1 || == 8.10.3 || == 8.8.4 || == 8.4.4 || == 8.0.2 || == 7.8.4 || == 7.4.2
+  --
+  GHC == 9.12.2 || == 9.10.1 || == 9.8.4 || == 9.6.7 || == 9.4.8 || == 8.10.3 || == 8.0.2
 
 Extra-Source-Files:
   Changelog.md
@@ -33,12 +33,20 @@
   build-tools:
   extra-libraries:
   hs-source-dirs:   .
-  ghc-options:      -O2 -funbox-strict-fields
+
+  ghc-options:
+      -O2 -funbox-strict-fields
+
+  if impl(ghc >= 9.4)
+    -- Improves perf by 5-9% on my box
+    ghc-options: -fworker-wrapper-cbv
+
   default-extensions: RankNTypes
   build-depends:
-      base >= 4.3 && < 5
+      -- base version for ghc-7.10.3
+      base >= 4.8.2 && < 5
     , array
-    , containers >= 0.4.2.0 && < 0.7
+    , containers >= 0.5 && < 0.9
   exposed-modules:
     Data.Graph.Dom,
     Data.Graph.Dom.Internal
@@ -51,7 +59,7 @@
   hs-source-dirs: tests
 
   build-depends:
-      base                        >=4.3   && <5
+      base                        >=4.8.2   && <5
     , dom-lt
     , containers
     , HUnit                       >=1.3   && <1.7
@@ -66,8 +74,13 @@
   Main-Is:  Main.hs
   hs-source-dirs: benchmarks
 
-  Build-Depends: base, dom-lt, containers, criterion, deepseq
+  Build-Depends:
+      base,
+      dom-lt,
+      containers,
+      -- Technically older still works but we want the µ bugfix
+      criterion >= 1.5.3.0,
+      deepseq
   default-extensions:
 
   Ghc-Options: -O2 -fno-full-laziness
-
