diff --git a/changes.txt b/changes.txt
--- a/changes.txt
+++ b/changes.txt
@@ -1,3 +1,11 @@
+1.0.11.0
+--------
+
+- Released Thu 05 Apr 2018 14:21:37 CEST
+- Added support for 8.4 (reported by Luke Murphy)
+- Dropped support for 7.8. If that is a problem, write a message to me
+  and I will set up conditional compilation.
+
 1.0.10.1
 --------
 
diff --git a/lentil.cabal b/lentil.cabal
--- a/lentil.cabal
+++ b/lentil.cabal
@@ -1,5 +1,5 @@
 name:                lentil
-version:             1.0.10.1
+version:             1.0.11.0
 synopsis:            frugal issue tracker
 description:         minumum effort, cohesive issue tracker based on
                      ubiquitous @TODO@s and @FIXME@s conventions.
@@ -13,7 +13,7 @@
 category:            Development
 stability:           Stable
 build-type:          Simple
-tested-with:         GHC==7.8.4, GHC==8.0.1, GHC==8.2.2
+tested-with:         GHC==8.0.1, GHC==8.2.2, GHC==8.4.1
 extra-source-files:  stack.yaml,
                      test/test-files/lang-comm/clang.c,
                      test/test-files/lang-comm/haskell.hs,
@@ -47,7 +47,7 @@
                      test/test-files/test-proj/dot-folders/_beta/foo1.hs
 extra-doc-files:     README, changes.txt, doc/usr/page.rst, doc/usr/test.zip,
                      issues.txt, contributors.txt
-cabal-version:       >=1.24
+cabal-version:       1.24
 
 flag developer
   description: developer mode - warnings let compilation fail
diff --git a/src/Lentil/File.hs b/src/Lentil/File.hs
--- a/src/Lentil/File.hs
+++ b/src/Lentil/File.hs
@@ -29,9 +29,11 @@
 -- INSTANCES --
 ---------------
 
+instance Semigroup a => Semigroup (FindClause a) where
+    (<>) = liftA2 (<>)
+
 instance Monoid a => Monoid (FindClause a) where
     mempty = pure mempty
-    mappend = liftA2 mappend
 
 
 --------------
@@ -80,7 +82,7 @@
 
 -- recursion predicate: excludes dot ('.') or _ folders
 recPred :: RecursionPredicate
-recPred = (not . isDotFolder) <$> fileName
+recPred = not . isDotFolder <$> fileName
     where
           isDotFolder "." = False -- not curr dir!
           isDotFolder fp  | null fp                     = False
diff --git a/src/Lentil/Helpers.hs b/src/Lentil/Helpers.hs
--- a/src/Lentil/Helpers.hs
+++ b/src/Lentil/Helpers.hs
@@ -15,8 +15,6 @@
 import qualified Text.Parsec as P
 import qualified Text.Parsec.String as PS
 
-import Control.Applicative hiding ( (<|>), optional, many )
-import Prelude -- 7.8 hack
 
 -- output errors (to stderr)
 perr :: String -> IO ()
diff --git a/src/Lentil/Parse/Issue.hs b/src/Lentil/Parse/Issue.hs
--- a/src/Lentil/Parse/Issue.hs
+++ b/src/Lentil/Parse/Issue.hs
@@ -13,11 +13,7 @@
 
 import Text.Parsec
 
-import Control.Applicative hiding ( (<|>), optional, many )
-
 import qualified Data.Char as C
-
-import Prelude -- 7.8 hack
 
 
 -----------
diff --git a/src/Lentil/Parse/Run.hs b/src/Lentil/Parse/Run.hs
--- a/src/Lentil/Parse/Run.hs
+++ b/src/Lentil/Parse/Run.hs
@@ -7,7 +7,7 @@
 -- Parsing functions interface
 -----------------------------------------------------------------------------
 
-{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleContexts, LambdaCase #-}
 
 module Lentil.Parse.Run where
 
@@ -28,7 +28,6 @@
 import qualified Data.Text.IO as TI
 import qualified Control.Exception as E
 
-import Prelude -- 7.8 hack
 
 -----------
 -- TYPES --
@@ -128,8 +127,7 @@
 setRow r = getPosition >>= setPosition . flip setSourceLine (r-1)
 
 safeRead :: FilePath -> IO String
-safeRead fp = E.try (TI.readFile fp) >>= \e ->
-              case e of
+safeRead fp = E.try (TI.readFile fp) >>= \case
                 Right t -> return (T.unpack t)
                 Left x  -> perr (fp ++ " : " ++ show (x :: E.IOException) ++
                                  " -- ignoring file") >>
diff --git a/src/Lentil/Parse/Source.hs b/src/Lentil/Parse/Source.hs
--- a/src/Lentil/Parse/Source.hs
+++ b/src/Lentil/Parse/Source.hs
@@ -19,9 +19,6 @@
 import qualified Data.Maybe as M
 import qualified Data.List as L
 
-import Control.Applicative hiding (many, (<|>))
-
-import Prelude -- 7.8 hack
 
 -----------
 -- TYPES --
diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -7,9 +7,9 @@
 
 import Options.Applicative
 
-import Data.Monoid -- 7.8
 import qualified System.IO as I
 
+-- todo [feature:basic] ignore dist dist-newstyle and common folders
 -- todo [feature:intermediate] KSyntaxHighlighting to parse sources?
 
 main :: IO ()
@@ -31,7 +31,7 @@
                                    short 'v'      <>
                                    help "show version and copyright info" )
     where
-          versionCopy = "\nlentil - frugal issue tracker, version 1.0.10.1\n\
+          versionCopy = "\nlentil - frugal issue tracker, version 1.0.11.0\n\
                         \(C) 2015-2018 Francesco Ariis - http://www.ariis.it\n\
                         \released under the GNU General Public License v3\n"
 
