diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,15 @@
 # Revision history for tasty-lua
 
+## 0.2.2 -- 2020-01-26
+
+- Avoid compilation warnings on GHC 8.2 and older. Monoid
+  instances on older GHC versions require an explicit
+  implementation of `mappend`. Newer instances use `(<>)` from
+  Semigroup.
+
+- Improved CI tests: build with more GHC versions, build with
+  stack, and ensure that there are no HLint errors.
+
 ## 0.2.1 -- 2020-01-26
 
 - Fixed an issue with error reporting: the bug caused test-group
diff --git a/src/Test/Tasty/Lua.hs b/src/Test/Tasty/Lua.hs
--- a/src/Test/Tasty/Lua.hs
+++ b/src/Test/Tasty/Lua.hs
@@ -2,7 +2,7 @@
 {-# LANGUAGE ScopedTypeVariables #-}
 {-|
 Module      : Test.Tasty.Lua
-Copyright   : © 2019 Albert Krewinkel
+Copyright   : © 2019–2020 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <albert+hslua@zeitkraut.de>
 Stability   : alpha
@@ -110,3 +110,4 @@
 
 instance Monoid ResultSummary where
   mempty = SuccessSummary 0
+  mappend = (<>)             -- GHC 8.2 compatibility
diff --git a/src/Test/Tasty/Lua/Core.hs b/src/Test/Tasty/Lua/Core.hs
--- a/src/Test/Tasty/Lua/Core.hs
+++ b/src/Test/Tasty/Lua/Core.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE LambdaCase #-}
 {-|
 Module      : Test.Tasty.Lua.Core
-Copyright   : © 2019 Albert Krewinkel
+Copyright   : © 2019–2020 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <albert+hslua@zeitkraut.de>
 Stability   : alpha
diff --git a/src/Test/Tasty/Lua/Module.hs b/src/Test/Tasty/Lua/Module.hs
--- a/src/Test/Tasty/Lua/Module.hs
+++ b/src/Test/Tasty/Lua/Module.hs
@@ -1,7 +1,7 @@
 {-# LANGUAGE TemplateHaskell #-}
 {-|
 Module      : Test.Tasty.Lua.Module
-Copyright   : © 2019 Albert Krewinkel
+Copyright   : © 2019–2020 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <albert+hslua@zeitkraut.de>
 Stability   : alpha
diff --git a/src/Test/Tasty/Lua/Translate.hs b/src/Test/Tasty/Lua/Translate.hs
--- a/src/Test/Tasty/Lua/Translate.hs
+++ b/src/Test/Tasty/Lua/Translate.hs
@@ -1,10 +1,10 @@
 {-|
 Module      : Test.Tasty.Lua.Translate
-Copyright   : © 2019 Albert Krewinkel
+Copyright   : © 2019–2020 Albert Krewinkel
 License     : MIT
 Maintainer  : Albert Krewinkel <albert+hslua@zeitkraut.de>
 Stability   : alpha
-Portability : Requires TemplateHaskell
+Portability : Requires GHC
 
 Translate test results from Lua into a Tasty @'TestTree'@.
 -}
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,5 +1,4 @@
-resolver: lts-13.18
-packages:
-  - .
-extra-deps:
-  - hslua-1.0.3.1
+resolver: lts-14.21
+
+ghc-options:
+  "$locals": -fhide-source-paths
diff --git a/tasty-lua.cabal b/tasty-lua.cabal
--- a/tasty-lua.cabal
+++ b/tasty-lua.cabal
@@ -1,5 +1,5 @@
 name:                tasty-lua
-version:             0.2.1
+version:             0.2.2
 synopsis:            Write tests in Lua, integrate into tasty.
 description:         Allow users to define tasty tests from Lua.
 homepage:            https://github.com/hslua/tasty-lua
@@ -7,7 +7,7 @@
 license-file:        LICENSE
 author:              Albert Krewinkel
 maintainer:          albert+hslua@zeitkraut.de
-copyright:           Albert Krewinkel <albert+hslua@zeitkraut.de>
+copyright:           © 2019–2020 Albert Krewinkel <albert+hslua@zeitkraut.de>
 category:            Foreign
 build-type:          Simple
 extra-source-files:  CHANGELOG.md
@@ -15,7 +15,11 @@
                    , test/test-tasty.lua
                    , stack.yaml
 cabal-version:       >=1.10
-tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5
+tested-with:         GHC == 8.0.2
+                   , GHC == 8.2.2
+                   , GHC == 8.4.4
+                   , GHC == 8.6.5
+                   , GHC == 8.8.1
 
 source-repository head
   type:              git
