diff --git a/app/utf8-troubleshoot/Main.hs b/app/utf8-troubleshoot/Main.hs
--- a/app/utf8-troubleshoot/Main.hs
+++ b/app/utf8-troubleshoot/Main.hs
@@ -30,6 +30,12 @@
 import System.IO (hGetEncoding, stderr, stdout)
 import System.Process (readProcess)
 
+
+#if MIN_VERSION_base(4,11,0)
+#else
+import Data.Semigroup ((<>))
+#endif
+
 import qualified Prelude as P
 
 
diff --git a/lib/System/IO/Utf8.hs b/lib/System/IO/Utf8.hs
--- a/lib/System/IO/Utf8.hs
+++ b/lib/System/IO/Utf8.hs
@@ -146,7 +146,7 @@
 -- Use this function only if you are sure you want to treat this handle as
 -- a terminal (that is, you will be using it to interact with the user
 -- and to write user-visible messages, rather than something that can
--- be reasonable expected to go to a file).
+-- be reasonably expected to go to a file).
 --
 -- This function is safe to call on handles open in binary mode and it will
 -- do nothing on them.
diff --git a/with-utf8.cabal b/with-utf8.cabal
--- a/with-utf8.cabal
+++ b/with-utf8.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 7a8e17b836c254d67dc50ee878cda9586a823dedf7f76b1f36426f2ad817e7b3
+-- hash: 2ed0a249f825ee3e79d21ffa4b3492196be09adead30d226047e943c9aa8a7a7
 
 name:           with-utf8
-version:        1.0.2.0
+version:        1.0.2.1
 synopsis:       Get your IO right on the first try
 description:    This minimalistic library helps you navigate the world of text encodings
                 avoiding @invalid argument (invalid byte sequence)@
@@ -65,12 +65,13 @@
   c-sources:
       app/utf8-troubleshoot/cbits/locale.c
   build-depends:
-      base
-    , directory
-    , filepath
-    , process
+      base >=4.10 && <4.15
+    , directory >=1.2.5.0 && <1.4
+    , filepath >=1.0 && <1.5
+    , process >=1.0.1.1 && <1.7
     , safe-exceptions
-    , th-env
+    , text >=0.7 && <1.3
+    , th-env >=0.1.0.0 && <0.2
   default-language: Haskell2010
 
 test-suite with-utf8-test
@@ -90,7 +91,7 @@
       tasty-discover:tasty-discover
   build-depends:
       HUnit
-    , base
+    , base >=4.10 && <4.15
     , deepseq
     , hedgehog
     , safe-exceptions
@@ -98,7 +99,7 @@
     , tasty-hedgehog
     , tasty-hunit
     , temporary
-    , text
+    , text >=0.7 && <1.3
     , unix
     , with-utf8
   default-language: Haskell2010
