diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # Revision history for greskell-websocket
 
+## 1.0.0.2  -- 2024-09-12
+
+* Update dependency version bounds with cabal-plan-bounds.
+  This adds support for new packages, while drops support for old ones.
+
 ## 1.0.0.1  -- 2022-11-24
 
 * Confirm test with ghc-9.2.5, vector-0.13.0.0 and aeson-2.1.0.0.
diff --git a/greskell-websocket.cabal b/greskell-websocket.cabal
--- a/greskell-websocket.cabal
+++ b/greskell-websocket.cabal
@@ -1,5 +1,5 @@
 name:                   greskell-websocket
-version:                1.0.0.1
+version:                1.0.0.2
 author:                 Toshio Ito <debug.ito@gmail.com>
 maintainer:             Toshio Ito <debug.ito@gmail.com>
 license:                BSD3
@@ -11,7 +11,7 @@
                         This package is based on [greskell-core](http://hackage.haskell.org/package/greskell-core),
                         and best used with [greskell](http://hackage.haskell.org/package/greskell) package.
 category:               Network
-cabal-version:          >= 1.10
+cabal-version:          2.0
 build-type:             Simple
 extra-source-files:     README.md, ChangeLog.md,
                         test/samples/*.json
@@ -43,20 +43,20 @@
                         Network.Greskell.WebSocket.Connection.Type,
                         Network.Greskell.WebSocket.Client.Impl,
                         Network.Greskell.WebSocket.Util
-  build-depends:        base >=4.9.1.0 && <4.17,
-                        greskell-core >=0.1.2.0 && <1.1,
-                        bytestring >=0.10.8.1 && <0.12,
-                        base64-bytestring >=1.0.0.1 && <1.3,
-                        text >=1.2.2.2 && <1.3,
-                        aeson >=2.0.2.0 && <2.2,
-                        unordered-containers >=0.2.8 && <0.3,
-                        uuid >=1.3.13 && <1.4,
-                        async >=2.1.1.1 && <2.3,
-                        stm >=2.4.4.1 && <2.6,
-                        websockets >=0.10 && <0.13,
-                        hashtables >=1.2.2.1 && <1.4,
-                        safe-exceptions >=0.1.6 && <0.2,
-                        vector >=0.12.0.1 && <0.14
+  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,
+                        greskell-core ^>=1.0.0,
+                        bytestring ^>=0.10.9 || ^>=0.11.3 || ^>=0.12.0,
+                        base64-bytestring ^>=1.2.1,
+                        text ^>=1.2.3 || ^>=2.0.2 || ^>=2.1,
+                        aeson ^>=2.0.2 || ^>=2.1.0 || ^>=2.2.3,
+                        unordered-containers ^>=0.2.15,
+                        uuid ^>=1.3.15,
+                        async ^>=2.2.4,
+                        stm ^>=2.5.0,
+                        websockets ^>=0.12.7 || ^>=0.13.0,
+                        hashtables ^>=1.3,
+                        safe-exceptions ^>=0.1.7,
+                        vector ^>=0.12.3 || ^>=0.13.0
 
 -- executable greskell-websocket
 --   default-language:     Haskell2010
@@ -80,8 +80,15 @@
   other-modules:        Network.Greskell.WebSocket.Codec.JSONSpec,
                         Network.Greskell.WebSocket.ResponseSpec
   build-tool-depends:   hspec-discover:hspec-discover
-  build-depends:        base, greskell-websocket, aeson, uuid, bytestring, unordered-containers, vector, greskell-core,
-                        hspec >=2.4.4
+  build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,
+                        greskell-websocket,
+                        aeson ^>=2.0.2 || ^>=2.1.0 || ^>=2.2.3,
+                        uuid ^>=1.3.15,
+                        bytestring ^>=0.10.9 || ^>=0.11.3 || ^>=0.12.0,
+                        unordered-containers ^>=0.2.15,
+                        vector ^>=0.12.3 || ^>=0.13.0,
+                        greskell-core ^>=1.0.0,
+                        hspec ^>=2.9.1 || ^>=2.10.6 || ^>=2.11.9
 
 
 flag server-test
@@ -103,10 +110,20 @@
                         ServerTest.Connection,
                         ServerTest.Client
   if flag(server-test)
-    build-depends:        base, greskell-websocket, greskell-core,
-                          aeson, uuid, unordered-containers, text, async, safe-exceptions,
-                          websockets, bytestring, stm, vector,
-                          hspec
+    build-depends:        base ^>=4.13.0 || ^>=4.14.0 || ^>=4.15.0 || ^>=4.16.0 || ^>=4.17.0 || ^>=4.18.0 || ^>=4.19.0 || ^>=4.20.0,
+                          greskell-websocket,
+                          greskell-core ^>=1.0.0,
+                          aeson ^>=2.0.2 || ^>=2.1.0 || ^>=2.2.3,
+                          uuid ^>=1.3.15,
+                          unordered-containers ^>=0.2.15,
+                          text ^>=1.2.3 || ^>=2.0.2 || ^>=2.1,
+                          async ^>=2.2.4,
+                          safe-exceptions ^>=0.1.7,
+                          websockets ^>=0.12.7 || ^>=0.13.0,
+                          bytestring ^>=0.10.9 || ^>=0.11.3 || ^>=0.12.0,
+                          stm ^>=2.5.0,
+                          vector ^>=0.12.3 || ^>=0.13.0,
+                          hspec ^>=2.9.1 || ^>=2.10.6 || ^>=2.11.9
                           
   else
     buildable: False
