diff --git a/Tests.hs b/Tests.hs
--- a/Tests.hs
+++ b/Tests.hs
@@ -796,7 +796,7 @@
             else ExitSuccess
 
 
--- Cusstom HUnit assertion, which prints the diffs without using 'show'
+-- Custom HUnit assertion, which prints the diffs without using 'show'
 assertEmptyDiff :: String -- ^ The message prefix
                 -> String -- ^ The actual diff
                 -> Assertion
diff --git a/cabal-debian.cabal b/cabal-debian.cabal
--- a/cabal-debian.cabal
+++ b/cabal-debian.cabal
@@ -1,6 +1,6 @@
 cabal-version:  3.0
 Name:           cabal-debian
-Version:        5.4.2
+Version:        5.4.3
 Copyright:      Copyright (c) 2007-2014, David Fox, Jeremy Shaw; 2017-2026 Clint Adams
 License:        BSD-3-Clause
 License-File:   LICENSE
@@ -128,7 +128,7 @@
   test-data/artvaluereport2/output/debian/artvaluereport2-backups.install
   test-data/artvaluereport2/output/debian/copyright
   test-data/artvaluereport2/output/debian/source/format
-Tested-With:    GHC ==9.12.2 || ==9.10.3 || ==9.8.4 || ==9.6.6
+Tested-With:    GHC ==9.14.1 || ==9.12.2 || ==9.10.3 || ==9.8.4 || ==9.6.6
 
 Source-Repository head
   type: git
@@ -140,7 +140,7 @@
   GHC-Options: -Wall
   Build-Depends:
     base >= 4.17 && < 5,
-    Cabal >= 3.0 && < 3.15,
+    Cabal >= 3.0 && < 3.17,
     containers,
     data-default,
     Diff >= 0.3.1 && < 2,
@@ -218,7 +218,7 @@
   Build-Depends:
     base >= 4.17 && < 5,
     cabal-debian,
-    Cabal >= 3.0 && < 3.15,
+    Cabal >= 3.0 && < 3.17,
     containers,
     debian >= 3.95,
     Diff >= 0.3.1 && < 2,
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -533,7 +533,7 @@
 
   * Support for packaging libraries produced by the GHCJS compiler.
   * Generate debianizations that include libraries for multiple compiler
-    flavors (not yet suppored in haskell-devscripts and/or Cabal.)
+    flavors (not yet supported in haskell-devscripts and/or Cabal.)
   * Put a DEB_DEFAULT_COMPILER assignment in debian/rules if we can
     infer it from the command line options.
 
@@ -1405,7 +1405,7 @@
 
   * Don't omit dependencies built into ghc, they should be satisfied by
     the Provides in the compiler if they are not available in the
-    repository.  However, we do need to make ghc an alterantive to any
+    repository.  However, we do need to make ghc an alternative to any
     versioned dependencies that are bundled with the compiler, since the
     built in dependencies are virtual packages and thus unversioned.
 
diff --git a/debian/cabal-debian.1 b/debian/cabal-debian.1
--- a/debian/cabal-debian.1
+++ b/debian/cabal-debian.1
@@ -147,21 +147,21 @@
 package
 .TP
 \fB\-\-depends\fR DEB:RELATION
-Add extry to 'Depends 'field of DEB binary package
+Add entry to 'Depends 'field of DEB binary package
 .HP
-\fB\-\-conflicts\fR DEB:RELATION Add extry to 'Conflicts 'field of DEB binary package
+\fB\-\-conflicts\fR DEB:RELATION Add entry to 'Conflicts 'field of DEB binary package
 .TP
 \fB\-\-provides\fR DEB:RELATION
-Add extry to 'Provides 'field of DEB binary package
+Add entry to 'Provides 'field of DEB binary package
 .TP
 \fB\-\-replaces\fR DEB:RELATION
-Add extry to 'Replaces 'field of DEB binary package
+Add entry to 'Replaces 'field of DEB binary package
 .TP
 \fB\-\-recommends\fR DEB:RELATION
-Add extry to 'Recommends 'field of DEB binary package
+Add entry to 'Recommends 'field of DEB binary package
 .TP
 \fB\-\-suggests\fR DEB:RELATION
-Add extry to 'Suggests 'field of DEB binary package
+Add entry to 'Suggests 'field of DEB binary package
 .TP
 \fB\-\-dep\-map\fR CABAL:DEBIANBINARYPACKAGE
 Specify what debian package name corresponds with a
diff --git a/src/Debian/Debianize.hs b/src/Debian/Debianize.hs
--- a/src/Debian/Debianize.hs
+++ b/src/Debian/Debianize.hs
@@ -76,7 +76,7 @@
     , module Debian.Debianize.CabalInfo
       -- * State monads to carry the collected information, command line options
     , module Debian.Debianize.Monad
-      -- * Functions for maping Cabal name and version number to Debian name
+      -- * Functions for mapping Cabal name and version number to Debian name
     , module Debian.Debianize.DebianName
       -- * Specific details about the particular packages and versions in the Debian repo
     , module Debian.Debianize.Details
diff --git a/src/Debian/Debianize/BasicInfo.hs b/src/Debian/Debianize/BasicInfo.hs
--- a/src/Debian/Debianize/BasicInfo.hs
+++ b/src/Debian/Debianize/BasicInfo.hs
@@ -95,7 +95,7 @@
       Option "" ["upgrade"] (NoArg (upgrade .= True))
              "Carefully upgrade an existing debianization",
       Option "" ["roundtrip"] (NoArg (roundtrip .= True))
-             "Rountrip a debianization to normalize it",
+             "Roundtrip a debianization to normalize it",
       Option "" ["ghc"] (NoArg (compilerFlavor .= GHC)) "Generate packages for GHC - same as --with-compiler GHC",
       Option "" ["ghcjs"] (NoArg (compilerFlavor .= GHCJS)) "Generate packages for GHCJS - same as --with-compiler GHCJS",
       Option "" ["hugs"] (NoArg (compilerFlavor .= Hugs)) "Generate packages for Hugs - same as --with-compiler GHC",
diff --git a/src/Debian/Debianize/Finalize.hs b/src/Debian/Debianize/Finalize.hs
--- a/src/Debian/Debianize/Finalize.hs
+++ b/src/Debian/Debianize/Finalize.hs
@@ -104,7 +104,7 @@
 -- debianization in other ways, so be careful not to do this twice,
 -- this function is not idempotent.  (Exported for use in unit tests.)
 -- FIXME: we should be able to run this without a PackageDescription, change
---        paramter type to Maybe PackageDescription and propagate down thru code
+--        parameter type to Maybe PackageDescription and propagate down thru code
 finalizeDebianization' ::
     (MonadIO m, MonadFail m)
     => CabalT m ()
@@ -136,7 +136,7 @@
        finalizeRules
        -- T.license .?= Just (Cabal.license pkgDesc)
        expandAtoms goodies
-       -- Create the binary packages for the web sites, servers, backup packges, and other executables
+       -- Create the binary packages for the web sites, servers, backup packages, and other executables
        use (A.debInfo . D.executable) >>= List.mapM_ (cabalExecBinaryPackage . fst) . Map.toList
        use (A.debInfo . D.backups) >>= List.mapM_ (cabalExecBinaryPackage . fst) . Map.toList
        use (A.debInfo . D.serverInfo) >>= List.mapM_ (cabalExecBinaryPackage . fst) . Map.toList
@@ -427,7 +427,7 @@
           Just (ChangeLog (entry : maybe [] (\ (ChangeLog entries) -> entries) log))
 
 -- | Convert the extraLibs field of the cabal build info into debian
--- binary package names and make them dependendencies of the debian
+-- binary package names and make them dependencies of the debian
 -- devel package (if there is one.)
 addExtraLibDependencies :: (Monad m) => CompilerFlavor -> CabalT m ()
 addExtraLibDependencies hc =
diff --git a/src/Debian/Debianize/InputCabal.hs b/src/Debian/Debianize/InputCabal.hs
--- a/src/Debian/Debianize/InputCabal.hs
+++ b/src/Debian/Debianize/InputCabal.hs
@@ -20,6 +20,9 @@
 import Distribution.Package (Package(packageId))
 import Distribution.PackageDescription as Cabal (PackageDescription)
 import Distribution.PackageDescription.Configuration (finalizePD)
+#if MIN_VERSION_Cabal(3,16,0)
+import Distribution.Types.DependencySatisfaction (DependencySatisfaction(Satisfied))
+#endif
 #if MIN_VERSION_Cabal(3,8,1)
 import Distribution.Simple.PackageDescription (readGenericPackageDescription)
 #else
@@ -64,7 +67,7 @@
 #else
         genPkgDesc <- liftIO $ defaultPackageDesc vb >>= readGenericPackageDescription vb
 #endif
-        let finalized = finalizePD (mkFlagAssignment (toList fs)) (ComponentRequestedSpec True False) (const True) (Platform buildArch Cabal.buildOS) cinfo [] genPkgDesc
+        let finalized = finalizePD (mkFlagAssignment (toList fs)) (ComponentRequestedSpec True False) (const satisfied) (Platform buildArch Cabal.buildOS) cinfo [] genPkgDesc
         ePkgDesc <- either (return . Left)
                            (\ (pkgDesc, _) -> do liftIO $ bracket (setFileCreationMask 0o022) setFileCreationMask $ \ _ -> autoreconf vb pkgDesc
                                                  return (Right pkgDesc))
@@ -75,6 +78,11 @@
                ePkgDesc
       vb = intToVerbosity' $ view verbosity flags
       fs = view cabalFlagAssignments flags
+#if MIN_VERSION_Cabal(3,16,0)
+      satisfied = Satisfied
+#else
+      satisfied = True
+#endif
 
 getCompInfo :: MonadIO m => Flags -> m (Either String CompilerInfo)
 getCompInfo flags =
diff --git a/src/Debian/Debianize/Optparse.hs b/src/Debian/Debianize/Optparse.hs
--- a/src/Debian/Debianize/Optparse.hs
+++ b/src/Debian/Debianize/Optparse.hs
@@ -393,7 +393,7 @@
     m = O.help helpMsg
         <> O.long long
         <> O.metavar "DEB:RELATION"
-    helpMsg = "Add extry to '" ++ fieldName ++ " 'field of DEB binary package"
+    helpMsg = "Add entry to '" ++ fieldName ++ " 'field of DEB binary package"
 mkExtraP "" = error "mkExtraP: empty long option"
 
 extraDependsP :: O.Parser [ExtraDepends]
diff --git a/src/Debian/Debianize/Output.hs b/src/Debian/Debianize/Output.hs
--- a/src/Debian/Debianize/Output.hs
+++ b/src/Debian/Debianize/Output.hs
@@ -93,7 +93,7 @@
   parseProgramArguments >>= \CommandLineOptions {..} -> do
     -- _ <- try (readProcessWithExitCode "apt-get" ["install", "-y", "--force-yes", hcDeb (view compilerFlavor _flags)] "")
     newCabalInfo _flags >>= either
-                               (error . ("peformDebianization - " ++))
+                               (error . ("performDebianization - " ++))
                                (evalCabalT $ do
                                 handleBehaviorAdjustment _adjustment
                                 debianizeWith goodies custom
diff --git a/src/Debian/GHC.hs b/src/Debian/GHC.hs
--- a/src/Debian/GHC.hs
+++ b/src/Debian/GHC.hs
@@ -156,7 +156,7 @@
           case (hc, typ, isDebian) of
             -- Debian puts the .haddock files in ghc-doc
             (GHC, Documentation, True) -> BinPkgName (hcname ++ "-doc")
-            -- In HVR repo the .haddock files required to buid html
+            -- In HVR repo the .haddock files required to build html
             -- are in the main compiler package.  However, the html
             -- files in ghc-<version>-htmldocs are also needed to
             -- create links.
diff --git a/src/Debian/Policy.hs b/src/Debian/Policy.hs
--- a/src/Debian/Policy.hs
+++ b/src/Debian/Policy.hs
@@ -289,7 +289,7 @@
     -- either (\ e -> error ("Failure parsing uploader list: " ++ show x ++ " -> " ++ show e)) id $ 
     where
       fixWhite c = if isSpace c then ' ' else c
-      -- We absoletely need a name.
+      -- We absolutely need a name.
       fixNameAddrs :: [NameAddr] -> Either String [NameAddr]
       fixNameAddrs xs = case mapMaybe fixNameAddr xs of
                           [] -> Left ("No valid debian maintainers in " ++ show x)
diff --git a/test-data/artvaluereport-data/input/debian/changelog b/test-data/artvaluereport-data/input/debian/changelog
--- a/test-data/artvaluereport-data/input/debian/changelog
+++ b/test-data/artvaluereport-data/input/debian/changelog
@@ -185,7 +185,7 @@
 
 haskell-artvaluereport-data (1.51) unstable; urgency=low
 
-  * Add a UUID field which will serve as a permenant identifier for the
+  * Add a UUID field which will serve as a permanent identifier for the
     report across all the servers we might create to handle these reports.
   * Add report archiving and unarchiving.
   * Add an event to replace a report by UUID number.
diff --git a/test-data/artvaluereport-data/output/debian/changelog b/test-data/artvaluereport-data/output/debian/changelog
--- a/test-data/artvaluereport-data/output/debian/changelog
+++ b/test-data/artvaluereport-data/output/debian/changelog
@@ -172,7 +172,7 @@
 
 haskell-artvaluereport-data (1.51) unstable; urgency=low
 
-  * Add a UUID field which will serve as a permenant identifier for the
+  * Add a UUID field which will serve as a permanent identifier for the
     report across all the servers we might create to handle these reports.
   * Add report archiving and unarchiving.
   * Add an event to replace a report by UUID number.
