diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.4.3 [2024.10.26]
+* Allow building with `data-default-class-0.2.*`.
+* Drop support for pre-8.0 versions of GHC.
+
 ## 0.4.2 [2023.10.05]
 * Support building with `scotty-0.20`.
 
diff --git a/Web/Scotty/Comet.hs b/Web/Scotty/Comet.hs
--- a/Web/Scotty/Comet.hs
+++ b/Web/Scotty/Comet.hs
@@ -19,6 +19,7 @@
 import qualified Web.Scotty as Scotty
 import Web.Scotty (ScottyM, text, post, capture, setHeader, get, ActionM, jsonData)
 import Data.Aeson (Value(..))
+import qualified Data.Aeson.KeyMap as KeyMap
 import Control.Monad
 import Control.Concurrent.STM as STM
 import Control.Concurrent.MVar as STM
@@ -35,12 +36,6 @@
 import Data.Time.Clock
 import Numeric
 
-#if MIN_VERSION_aeson(2,0,0)
-import qualified Data.Aeson.KeyMap as KeyMap
-#else
-import qualified Data.HashMap.Strict as HashMap
-#endif
-
 -- | connect "/foobar" (...) gives a scotty session that:
 --
 -- >  POST http://.../foobar/                       <- bootstrap the interaction
@@ -156,7 +151,7 @@
                m <- case wrappedVal of
                       Object m -> return m
                       _ -> fail $ "Expected Object, received: " ++ show wrappedVal
-               let val = fromJust $ lookupKM "data" m
+               let val = fromJust $ KeyMap.lookup "data" m
                --liftIO $ print (val :: Value)
                db <- liftIO $ atomically $ readTVar contextDB
                case Map.lookup num db of
@@ -184,7 +179,7 @@
                m <- case wrappedVal of
                       Object m -> return m
                       _ -> fail $ "Expected Object, received: " ++ show wrappedVal
-               let val = fromJust $ lookupKM "data" m
+               let val = fromJust $ KeyMap.lookup "data" m
                --liftIO $ print (val :: Value)
 
                db <- liftIO $ atomically $ readTVar contextDB
@@ -197,12 +192,6 @@
                        text $ LT.pack ""
 
   where
-#if MIN_VERSION_aeson(2,0,0)
-    lookupKM = KeyMap.lookup
-#else
-    lookupKM = HashMap.lookup
-#endif
-
 #if MIN_VERSION_scotty(0,20,0)
     captureParam = Scotty.captureParam
 #else
diff --git a/kansas-comet.cabal b/kansas-comet.cabal
--- a/kansas-comet.cabal
+++ b/kansas-comet.cabal
@@ -1,5 +1,5 @@
 Name:                kansas-comet
-Version:             0.4.2
+Version:             0.4.3
 Synopsis:            A JavaScript push mechanism based on the comet idiom
 Homepage:            https://github.com/ku-fpg/kansas-comet/
 Bug-reports:         https://github.com/ku-fpg/kansas-comet/issues
@@ -13,19 +13,18 @@
 Build-type:          Simple
 extra-source-files:  CHANGELOG.md, README.md
 Cabal-version:       >= 1.10
-tested-with:         GHC == 7.6.3
-                   , GHC == 7.8.4
-                   , GHC == 7.10.3
-                   , GHC == 8.0.2
+tested-with:         GHC == 8.0.2
                    , GHC == 8.2.2
                    , GHC == 8.4.4
                    , GHC == 8.6.5
                    , GHC == 8.8.4
                    , GHC == 8.10.7
                    , GHC == 9.0.2
-                   , GHC == 9.2.7
-                   , GHC == 9.4.4
-                   , GHC == 9.6.1
+                   , GHC == 9.2.8
+                   , GHC == 9.4.8
+                   , GHC == 9.6.6
+                   , GHC == 9.8.2
+                   , GHC == 9.10.1
 Description:
   A transport-level remote JavaScript RESTful push mechanism.
 
@@ -36,18 +35,14 @@
   Exposed-modules:     Web.Scotty.Comet
   other-modules:       Paths_kansas_comet
   default-language:    Haskell2010
-  build-depends:
-                       -- TODO: Eventually, we should bump the lower version
-                       -- bounds to >=2 so that we can remove some CPP in
-                       -- Web.Scotty.Comet.
-                       aeson                >= 0.9      && < 2.3,
-                       base                 >= 4.6      && < 4.20,
+  build-depends:       aeson                >= 2        && < 2.3,
+                       base                 >= 4.9      && < 4.21,
                        containers           >= 0.4      && < 0.8,
-                       data-default-class   >= 0.0.1    && < 0.2,
+                       data-default-class   >= 0.0.1    && < 0.3,
                        -- TODO: Eventually, we should bump the lower version
                        -- bounds to >=0.20 so that we can remove some CPP in
                        -- Web.Scotty.Comet.
-                       scotty               >= 0.10     && < 0.21,
+                       scotty               >= 0.10     && < 0.23,
                        stm                  >= 2.2      && < 2.6,
                        text                 >= 0.11.3.1 && < 2.2,
                        time                 >= 1.2      && < 1.13,
