diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+- 0.2.5.1
+    - Drop unnecessary dependencies `semigroups`, `base-compat`
+    - Update bounds
+
 - 0.2.5
     - Add `NFData(/1/2)` instances
 
diff --git a/insert-ordered-containers.cabal b/insert-ordered-containers.cabal
--- a/insert-ordered-containers.cabal
+++ b/insert-ordered-containers.cabal
@@ -1,5 +1,5 @@
 name:               insert-ordered-containers
-version:            0.2.5
+version:            0.2.5.1
 synopsis:
   Associative containers retaining insertion order for traversals.
 
@@ -23,8 +23,9 @@
    || ==8.4.4
    || ==8.6.5
    || ==8.8.4
-   || ==8.10.4
+   || ==8.10.7
    || ==9.0.1
+   || ==9.2.1
 
 extra-source-files:
   CHANGELOG.md
@@ -39,21 +40,24 @@
   hs-source-dirs:   src
   ghc-options:      -Wall
   build-depends:
-      aeson                 >=1.4.2.0  && <1.6
-    , base                  >=4.9      && <4.16
-    , base-compat           >=0.10.5   && <0.12
+      aeson                 >=1.4.2.0  && <1.6 || >=2.0.0.0 && <2.1
+    , base                  >=4.9      && <4.17
     , deepseq               >=1.4.2.0  && <1.5
-    , hashable              >=1.2.6.1  && <1.4
+    , hashable              >=1.2.6.1  && <1.5
     , indexed-traversable   >=0.1.1    && <0.2
-    , lens                  >=4.17     && <5.1
+    , lens                  >=4.17     && <5.2
     , optics-core           >=0.2      && <0.5
     , optics-extra          >=0.2      && <0.5
     , semigroupoids         >=5.3.2    && <5.4
-    , semigroups            >=0.18.5   && <0.20
     , text                  >=1.2.3.0  && <1.3
     , transformers          >=0.5.2.0  && <0.6
     , unordered-containers  >=0.2.14.0 && <0.3
 
+  if !impl(ghc >=8.0)
+    build-depends:
+        semigroups    >=0.18.5  && <0.21
+      , transformers  >=0.5.2.0 && <0.6
+
   exposed-modules:
     Data.HashMap.Strict.InsOrd
     Data.HashSet.InsOrd
@@ -77,9 +81,7 @@
     , lens
     , QuickCheck                 >=2.13.2   && <2.15
     , semigroupoids
-    , semigroups
     , tasty                      >=0.10.1.2 && <1.5
     , tasty-quickcheck           >=0.8.3.2  && <0.11
     , text
-    , transformers
     , unordered-containers
diff --git a/src/Data/HashMap/InsOrd/Internal.hs b/src/Data/HashMap/InsOrd/Internal.hs
--- a/src/Data/HashMap/InsOrd/Internal.hs
+++ b/src/Data/HashMap/InsOrd/Internal.hs
@@ -1,8 +1,7 @@
 {-# LANGUAGE GADTs #-}
 module Data.HashMap.InsOrd.Internal where
 
-import Prelude ()
-import Prelude.Compat hiding (filter, foldr, lookup, map, null)
+import Prelude hiding (filter, foldr, lookup, map, null)
 
 import Control.Applicative ((<**>))
 
diff --git a/src/Data/HashMap/Strict/InsOrd.hs b/src/Data/HashMap/Strict/InsOrd.hs
--- a/src/Data/HashMap/Strict/InsOrd.hs
+++ b/src/Data/HashMap/Strict/InsOrd.hs
@@ -77,8 +77,7 @@
     valid,
     ) where
 
-import Prelude ()
-import Prelude.Compat hiding (filter, foldr, lookup, map, null)
+import Prelude hiding (filter, foldr, lookup, map, null)
 
 import           Control.Applicative             (Const (..))
 import           Control.Arrow                   (first, second)
diff --git a/src/Data/HashSet/InsOrd.hs b/src/Data/HashSet/InsOrd.hs
--- a/src/Data/HashSet/InsOrd.hs
+++ b/src/Data/HashSet/InsOrd.hs
@@ -43,8 +43,7 @@
     valid,
     )where
 
-import Prelude ()
-import Prelude.Compat hiding (filter, foldr, lookup, map, null)
+import Prelude hiding (filter, foldr, lookup, map, null)
 
 import Control.Arrow                   (first)
 import Control.DeepSeq                 (NFData (..))
