diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+# 0.0.1.6
+
+- Added support for GHC `9.14`.
+- Bumped upper version bounds of dependencies.
+
 # 0.0.1.5
 
 - Bumped upper version bounds of dependencies.
diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -186,7 +186,7 @@
       same "printed page" as the copyright notice for easier
       identification within third-party archives.
 
-   Copyright © 2022–2025 Jonathan Knowles
+   Copyright © 2022–2026 Jonathan Knowles
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,12 @@
 # `quickcheck-groups`
 
-<a href="http://jonathanknowles.net/quickcheck-groups/"><img src="https://img.shields.io/badge/API-Documentation-green" /></a>
+[![Latest Release](
+  https://img.shields.io/hackage/v/quickcheck-groups?label=Latest%20Release&color=227755
+)](https://hackage.haskell.org/package/quickcheck-groups)
+[![Development Branch](
+  https://img.shields.io/badge/Development%20Branch-API%20Documentation-225577
+)](https://jonathanknowles.github.io/quickcheck-groups/)
+
 
 ## Overview
 
diff --git a/quickcheck-groups.cabal b/quickcheck-groups.cabal
--- a/quickcheck-groups.cabal
+++ b/quickcheck-groups.cabal
@@ -1,12 +1,12 @@
 cabal-version:  3.0
 name:           quickcheck-groups
-version:        0.0.1.5
+version:        0.0.1.6
 bug-reports:    https://github.com/jonathanknowles/quickcheck-groups/issues
 license:        Apache-2.0
 license-file:   LICENSE
 author:         Jonathan Knowles
 maintainer:     mail@jonathanknowles.net
-copyright:      2022–2025 Jonathan Knowles
+copyright:      2022–2026 Jonathan Knowles
 category:       Testing
 synopsis:       Testing group class instances with QuickCheck
 description:
@@ -19,15 +19,17 @@
     README.md
 
 common dependency-base
-    build-depends:base                          >= 4.14.3.0   && < 4.22
+    build-depends:base                          >= 4.14.3.0   && < 4.23
 common dependency-hspec
     build-depends:hspec                         >= 2.10.7     && < 2.12
+common dependency-hspec-quickcheck-classes
+    build-depends:hspec-quickcheck-classes      >= 0.0.0.0    && < 0.1
 common dependency-groups
     build-depends:groups                        >= 0.5.3      && < 0.6
 common dependency-pretty-show
     build-depends:pretty-show                   >= 1.10       && < 1.11
 common dependency-QuickCheck
-    build-depends:QuickCheck                    >= 2.14.2     && < 2.17
+    build-depends:QuickCheck                    >= 2.14.2     && < 2.19
 common dependency-quickcheck-classes
     build-depends:quickcheck-classes            >= 0.6.5.0    && < 0.7
 common dependency-semigroupoids
@@ -101,6 +103,7 @@
     import:
       , dependency-base
       , dependency-hspec
+      , dependency-hspec-quickcheck-classes
       , dependency-groups
       , dependency-QuickCheck
       , dependency-quickcheck-classes
@@ -111,7 +114,6 @@
         src/test
     other-modules:
         ClassSpec
-        Test.Hspec.Laws
     type: exitcode-stdio-1.0
     default-language:
         Haskell2010
diff --git a/src/internal/Internal.hs b/src/internal/Internal.hs
--- a/src/internal/Internal.hs
+++ b/src/internal/Internal.hs
@@ -1,5 +1,5 @@
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 module Internal
diff --git a/src/internal/Internal/Semigroup/Eq.hs b/src/internal/Internal/Semigroup/Eq.hs
--- a/src/internal/Internal/Semigroup/Eq.hs
+++ b/src/internal/Internal/Semigroup/Eq.hs
@@ -1,5 +1,5 @@
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 module Internal.Semigroup.Eq
diff --git a/src/internal/Internal/Semigroup/Tuple.hs b/src/internal/Internal/Semigroup/Tuple.hs
--- a/src/internal/Internal/Semigroup/Tuple.hs
+++ b/src/internal/Internal/Semigroup/Tuple.hs
@@ -3,7 +3,7 @@
 {- HLINT ignore "Redundant bracket" -}
 
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 module Internal.Semigroup.Tuple
diff --git a/src/prelude/Internal/Prelude.hs b/src/prelude/Internal/Prelude.hs
--- a/src/prelude/Internal/Prelude.hs
+++ b/src/prelude/Internal/Prelude.hs
@@ -1,5 +1,5 @@
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 module Internal.Prelude
diff --git a/src/public/Test/QuickCheck/Classes/Group.hs b/src/public/Test/QuickCheck/Classes/Group.hs
--- a/src/public/Test/QuickCheck/Classes/Group.hs
+++ b/src/public/Test/QuickCheck/Classes/Group.hs
@@ -2,7 +2,7 @@
 {- HLINT ignore "Redundant bracket" -}
 
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 -- This module provides 'Laws' definitions for classes exported by
diff --git a/src/test/ClassSpec.hs b/src/test/ClassSpec.hs
--- a/src/test/ClassSpec.hs
+++ b/src/test/ClassSpec.hs
@@ -2,7 +2,7 @@
 {-# OPTIONS_GHC -fno-warn-orphans #-}
 
 -- |
--- Copyright: © 2022–2025 Jonathan Knowles
+-- Copyright: © 2022–2026 Jonathan Knowles
 -- License: Apache-2.0
 --
 module ClassSpec where
@@ -15,8 +15,8 @@
     ( denominator, numerator, (%) )
 import Test.Hspec
     ( Spec )
-import Test.Hspec.Laws
-    ( testLawsMany )
+import Test.Hspec.QuickCheck.Classes
+    ( testLaws )
 import Test.QuickCheck
     ( Arbitrary (..), NonZero (..), Property, choose, oneof )
 import Test.QuickCheck.Classes
@@ -28,19 +28,19 @@
 
 spec :: Spec
 spec = do
-    testLawsMany @() $ disableCoverageCheck
+    testLaws @() $ disableCoverageCheck
         [ abelianLaws
         , groupLaws
         ]
-    testLawsMany @(Sum TestInteger)
+    testLaws @(Sum TestInteger)
         [ abelianLaws
         , groupLaws
         ]
-    testLawsMany @(Product TestRational)
+    testLaws @(Product TestRational)
         [ abelianLaws
         , groupLaws
         ]
-    testLawsMany @(Sum TestRational)
+    testLaws @(Sum TestRational)
         [ abelianLaws
         , groupLaws
         ]
diff --git a/src/test/Test/Hspec/Laws.hs b/src/test/Test/Hspec/Laws.hs
deleted file mode 100644
--- a/src/test/Test/Hspec/Laws.hs
+++ /dev/null
@@ -1,61 +0,0 @@
--- |
--- Copyright: © 2022–2025 Jonathan Knowles
--- License: Apache-2.0
---
--- Provides testing functions to check that type class instances obey laws.
---
-module Test.Hspec.Laws
-    ( testLaws
-    , testLawsMany
-    ) where
-
-import Prelude
-
-import Control.Monad
-    ( forM_ )
-import Data.Proxy
-    ( Proxy (..) )
-import Data.Typeable
-    ( Typeable, typeRep )
-import Test.Hspec
-    ( Spec, describe, it, parallel )
-import Test.QuickCheck.Classes
-    ( Laws (..) )
-
--- | Constructs a test to check that the given type class instance obeys the
---   given set of laws.
---
--- Example usage:
---
--- >>> testLaws @Natural ordLaws
--- >>> testLaws @(Map Int) functorLaws
---
-testLaws
-    :: forall a. Typeable a
-    => (Proxy a -> Laws)
-    -> Spec
-testLaws getLaws =
-    parallel $ describe description $
-        forM_ (lawsProperties laws) $ uncurry it
-  where
-    description = mconcat
-        [ "Testing "
-        , lawsTypeclass laws
-        , " laws for type "
-        , show (typeRep $ Proxy @a)
-        ]
-    laws = getLaws $ Proxy @a
-
--- | Calls `testLaws` with multiple sets of laws.
---
--- Example usage:
---
--- >>> testLawsMany @Natural [eqLaws, ordLaws]
--- >>> testLawsMany @(Map Int) [foldableLaws, functorLaws]
---
-testLawsMany
-    :: forall a. Typeable a
-    => [Proxy a -> Laws]
-    -> Spec
-testLawsMany getLawsMany =
-    testLaws @a `mapM_` getLawsMany
