diff --git a/src/System/Console/StructuredCLI.hs b/src/System/Console/StructuredCLI.hs
--- a/src/System/Console/StructuredCLI.hs
+++ b/src/System/Console/StructuredCLI.hs
@@ -504,7 +504,7 @@
 -- | Launches the CLI application. It doesn't normally return unless an exception is thrown
 -- or if it runs out of input in batch mode. Normal return value is that returned by the CommandsT
 -- action that built the tree. Remember that 'Settings' is an instance of 'Default'
-runCLI :: (MonadMask m, MonadIO m, HL.MonadException m) 
+runCLI :: (MonadMask m, MonadIO m) 
        => String
        -> Settings m
        -> CommandsT m a
@@ -555,7 +555,7 @@
 defExceptionHandler e =
     return . Left $ e
 
-runLevel :: (?settings::Settings m, MonadMask m, MonadIO m, HL.MonadException m) 
+runLevel :: (?settings::Settings m, MonadMask m, MonadIO m) 
          => ParserT m ()
 runLevel = do
   prompt  <- liftUserM . buildPrompt =<< withLabels
diff --git a/structured-cli.cabal b/structured-cli.cabal
--- a/structured-cli.cabal
+++ b/structured-cli.cabal
@@ -1,5 +1,5 @@
 name:                structured-cli
-version:             2.7.0.0
+version:             2.7.0.1
 synopsis:            Application library for building interactive console CLIs
 description:         This module provides the tools to build a complete "structured" CLI application, similar to those found in systems like Cisco IOS or console configuration utilities etc. It aims to be easy for implementors to use.
 homepage:            https://gitlab.com/codemonkeylabs/structured-cli#readme
@@ -28,7 +28,7 @@
   build-depends:       base         >= 4.9.1.0 && < 5
                      , data-default >= 0.7.1.1 && < 0.8
                      , exceptions   >= 0.6     && < 0.11
-                     , haskeline    >= 0.7.4.0 && < 0.9
+                     , haskeline    >= 0.8     && < 0.9
                      , mtl          >= 2.2.1   && < 3.0
                      , split        >= 0.2.3.2 && < 0.3
                      , transformers >= 0.5.2.0 && < 0.6
