diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,3 +17,11 @@
 ## 0.1.0.3 -- 2024-06-13
 
 * Adjusts dependency versioning to add to Stackage
+
+## 0.1.0.4 -- 2024-10-21
+
+* Supports extra-1.8
+
+* Supports Haskell2010
+
+* Updates CI
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -4,11 +4,11 @@
 
 ## Introduction
 
-In celebration of Haskell's determinative nature, this package provides random data from my interaction with the physical world as well as utilities to leverage this data for random number generation and other RNG-based tasks
-
 Sometimes the digital world can feel cold and sterile compared to the messy and unpredictable nature of our physical environment. Purely functional languages like Haskell are, for better and for worse, particularly susceptible to this digital de-messification
 
-This package can be used to bring some analog warmth and a human touch to our digital world
+In celebration of Haskell's determinative nature, this package provides random data from my interaction with the physical world as well as utilities to leverage this data for random number generation and other RNG-based tasks
+
+This package can be used to bring a human touch to our digital world
 
 ## Use
 
diff --git a/app/StdGenRandomize.hs b/app/StdGenRandomize.hs
--- a/app/StdGenRandomize.hs
+++ b/app/StdGenRandomize.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 module StdGenRandomize (randomizeList) where
 
 import Control.Monad.State
diff --git a/real-dice.cabal b/real-dice.cabal
--- a/real-dice.cabal
+++ b/real-dice.cabal
@@ -20,7 +20,7 @@
 -- PVP summary:     +-+------- breaking API changes
 --                  | | +----- non-breaking API additions
 --                  | | | +--- code changes with no API change
-version:            0.1.0.3
+version:            0.1.0.4
 
 tested-with:        GHC==9.8.2, 
                     GHC==9.6.4, 
@@ -118,7 +118,7 @@
     -- other-extensions:
 
     -- Other library packages from which modules are imported.
-    build-depends:    base >=4.16.0.0 && <= 4.20.0.1,
+    build-depends:    base >=4.12.0.0 && <= 4.20.0.1,
                       mtl >= 2.2.2 && < 2.4,
                       primes >= 0.2.1 && < 0.3
 
@@ -126,7 +126,7 @@
     hs-source-dirs:   src
 
     -- Base language which the package is written in.
-    default-language: GHC2021
+    default-language: Haskell2010
 
 executable real-dice
     -- Import common warning flags.
@@ -147,20 +147,20 @@
         base,
         mtl,
         random >= 1.2.1 && < 1.3,
-        real-dice
+        real-dice >= 0.1 && < 0.2,
 
     -- Directories containing source files.
     hs-source-dirs:   app
 
     -- Base language which the package is written in.
-    default-language: GHC2021
+    default-language: Haskell2010
 
 test-suite real-dice-test
     -- Import common warning flags.
     import:           warnings
 
     -- Base language which the package is written in.
-    default-language: GHC2021
+    default-language: Haskell2010
 
     -- Modules included in this executable, other than Main.
     other-modules:    TestCheck,
@@ -193,5 +193,5 @@
         real-dice,
         primes,
         mtl,
-        extra >= 1.7.15 && < 1.8,
+        extra >= 1.7.15 && < 1.9,
         QuickCheck >= 2.14.3 && < 2.16
diff --git a/src/RealDice/Coin.hs b/src/RealDice/Coin.hs
--- a/src/RealDice/Coin.hs
+++ b/src/RealDice/Coin.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 -- | This module exports the CoinGen data type and functions for flipping Coins
 --   to generate random boolean values via balanced tables randomized by the
 --   RealDice data or custom boolean tables
diff --git a/src/RealDice/Die.hs b/src/RealDice/Die.hs
--- a/src/RealDice/Die.hs
+++ b/src/RealDice/Die.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 -- | This module provides the DieGen data type and functions for using Dice to
 --   generate random positive integers via balanced tables randomized by the
 --   RealDice data or custom integer tables
diff --git a/src/RealDice/Manipulate/RandomizeList.hs b/src/RealDice/Manipulate/RandomizeList.hs
--- a/src/RealDice/Manipulate/RandomizeList.hs
+++ b/src/RealDice/Manipulate/RandomizeList.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 -- | Module for randomizing the order of elements in a list.
 --   Used to generate randomized lists for table-based random generation
 module RealDice.Manipulate.RandomizeList
diff --git a/src/RealDice/RNG.hs b/src/RealDice/RNG.hs
--- a/src/RealDice/RNG.hs
+++ b/src/RealDice/RNG.hs
@@ -1,3 +1,5 @@
+{-# LANGUAGE GADTs #-}
+
 -- | This module provides functions to generate random numbers using balanced
 --   integer tables randomized by the RealDice data or custom integer tables
 module RealDice.RNG
diff --git a/test/RealDice/CoinSpec.hs b/test/RealDice/CoinSpec.hs
--- a/test/RealDice/CoinSpec.hs
+++ b/test/RealDice/CoinSpec.hs
@@ -1,6 +1,8 @@
+{-# LANGUAGE GADTs #-}
 {-# OPTIONS_GHC -Wno-unrecognised-pragmas #-}
 
 {-# HLINT ignore "Use camelCase" #-}
+
 module RealDice.CoinSpec (doesnt_give_same_result_10_times) where
 
 import Control.Monad.State
diff --git a/test/RealDice/DieSpec.hs b/test/RealDice/DieSpec.hs
--- a/test/RealDice/DieSpec.hs
+++ b/test/RealDice/DieSpec.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE GADTs #-}
 {-# OPTIONS_GHC -Wno-unrecognised-pragmas #-}
 
 {-# HLINT ignore "Use camelCase" #-}
diff --git a/test/RealDice/RNGSpec.hs b/test/RealDice/RNGSpec.hs
--- a/test/RealDice/RNGSpec.hs
+++ b/test/RealDice/RNGSpec.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE GADTs #-}
 {-# OPTIONS_GHC -Wno-unrecognised-pragmas #-}
 
 {-# HLINT ignore "Use camelCase" #-}
diff --git a/test/TestCheck.hs b/test/TestCheck.hs
--- a/test/TestCheck.hs
+++ b/test/TestCheck.hs
@@ -1,6 +1,6 @@
 module TestCheck (isPass, check) where
 
-import Control.Monad qualified
+import qualified Control.Monad
 import System.Exit
 import Test.QuickCheck
 
