diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,3 +1,7 @@
+# 1.4.3
+
+* Updated `base` upper bound and compatibility with GHC 8.4
+
 # 1.4.2
 
 * Updated `base` upper bound
diff --git a/libsystemd-journal.cabal b/libsystemd-journal.cabal
--- a/libsystemd-journal.cabal
+++ b/libsystemd-journal.cabal
@@ -1,5 +1,5 @@
 name:                libsystemd-journal
-version:             1.4.2
+version:             1.4.3
 synopsis:            Haskell bindings to libsystemd-journal
 homepage:            http://github.com/ocharles/libsystemd-journal
 license:             BSD3
@@ -8,7 +8,7 @@
 maintainer:          ollie@ocharles.org.uk
 copyright: Oliver Charles (c) 2014
 category:            System
-build-type:          Custom
+build-type:          Simple
 cabal-version:       >=1.10
 
 extra-source-files:
@@ -16,7 +16,7 @@
 
 library
   exposed-modules:     Systemd.Journal
-  build-depends:       base >=4.6 && <4.11
+  build-depends:       base >=4.6 && <4.12
                      , bytestring >= 0.9.1
                      , pipes >= 4.0
                      , pipes-safe >= 2.0
@@ -29,6 +29,7 @@
                      , hashable >= 1.1.2.5
                      , hsyslog
                      , uniplate >= 1.6
+                     , semigroups >= 0.1 && < 0.19
   hs-source-dirs:      src
   default-language:    Haskell2010
   pkgconfig-depends: libsystemd >= 209
diff --git a/src/Systemd/Journal.hsc b/src/Systemd/Journal.hsc
--- a/src/Systemd/Journal.hsc
+++ b/src/Systemd/Journal.hsc
@@ -51,6 +51,7 @@
 import Data.Int
 import Data.List (foldl')
 import Data.Monoid (Monoid, mappend, mempty)
+import Data.Semigroup (Semigroup)
 import Data.String (IsString (..))
 import Data.Typeable (Typeable)
 import Data.Word
@@ -78,7 +79,7 @@
 
 --------------------------------------------------------------------------------
 newtype JournalField = JournalField Text.Text
-  deriving (Eq, Data, Hashable, Ord, Read, Show, Typeable, Monoid)
+  deriving (Eq, Data, Hashable, Ord, Read, Show, Typeable, Monoid, Semigroup)
 
 instance IsString JournalField where
   fromString = JournalField . Text.pack . map toUpper
