diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
 # Revision history for cabal-plan-bounds
 
+## 0.1.6.1 -- 2024-04-28
+
+* GHC-9.10 support
+
+## 0.1.6 -- 2024-03-25
+
+* Fix issues with `--also` flag
+
 ## 0.1.5.1 -- 2023-10-31
 
 * GHC-9.8 support
diff --git a/cabal-plan-bounds.cabal b/cabal-plan-bounds.cabal
--- a/cabal-plan-bounds.cabal
+++ b/cabal-plan-bounds.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               cabal-plan-bounds
-version:            0.1.5.1
+version:            0.1.6.1
 synopsis:           Derives cabal bounds from build plans
 description:
   Manually curated dependency version ranges tend to become a lie: They likely
@@ -31,11 +31,11 @@
     import:           warnings
     main-is:          cabal-plan-bounds.hs
     other-modules:    ReplaceDependencies
-    build-depends:    base ^>=4.14.3 || ^>=4.15.1 || ^>=4.16.3 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0,
+    build-depends:    base ^>=4.14.3 || ^>=4.15.1 || ^>=4.16.3 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,
                       bytestring ^>=0.10.12 || ^>=0.11.3 || ^>=0.12.0,
-                      containers ^>=0.6.4,
+                      containers ^>=0.6.4 || ^>=0.7,
                       text ^>=1.2.4 || ^>=2.0.1 || ^>=2.1,
-                      Cabal-syntax ^>=3.8.1 || ^>=3.10.1,
+                      Cabal-syntax ^>=3.8.1 || ^>=3.10.1 || ^>=3.12.0,
                       cabal-plan ^>=0.7.2,
                       optparse-applicative ^>=0.17.0 || ^>=0.18.1,
                       pretty ^>=1.1.3
diff --git a/src/cabal-plan-bounds.hs b/src/cabal-plan-bounds.hs
--- a/src/cabal-plan-bounds.hs
+++ b/src/cabal-plan-bounds.hs
@@ -117,9 +117,9 @@
       -- Figure out package name
       let pname = cabalPackageName contents
 
-      let deps = fmap (pruneVersionRanges . sort . map stripPatchLevel) $
-              M.unionsWith (++) $ map (fmap pure) $
-              M.fromList explicits : map (depsOf pname) plans
+      let deps = fmap (pruneVersionRanges . sort . map stripPatchLevel) $ M.fromListWith (++) $
+            [ (p,[v]) | (p,v) <- explicits ] ++
+            [ (p,[v]) | plan <- plans, (p,v) <- M.toList (depsOf pname plan) ]
 
       let new_deps pn vr
             | pn == pname = C.anyVersion -- self-dependency
