diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,9 +1,21 @@
-## 0.9.0.5 (2018-02-05)
+## 0.9.0.6 (2018-04-03)
 
 Note that this will be the last release in the `0.9` series, excepting
 critical bug fixes or security issues. The next release is expected to
 (slightly) break module export compatibility, but in a way that should
 not affect too many users.
+
+Changes:
+
+  - Support for GHC 8.4.1.
+
+  - Bump hlint upper bound.
+
+  - Drop support for all Stackage LTS pre-9.
+
+  - Drop support for GHC pre-8.
+
+## 0.9.0.5 (2018-02-05)
 
 Changes:
 
diff --git a/hpio.cabal b/hpio.cabal
--- a/hpio.cabal
+++ b/hpio.cabal
@@ -1,11 +1,11 @@
--- This file has been generated from package.yaml by hpack version 0.21.2.
+-- This file has been generated from package.yaml by hpack version 0.27.0.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 3422bbfd1ca6b82633d357381204ee18fca873f39a41d5b97fb1bdcfe42e5919
+-- hash: dc74eed8b17aa83c4650ab10e6059172f8787907900532262be2ac7f7c3dbaab
 
 name:                   hpio
-version:                0.9.0.5
+version:                0.9.0.6
 synopsis:               Monads for GPIO in Haskell
 description:            This package provides an embedded DSL for writing cross-platform
                         GPIO programs in Haskell. Currently only Linux is supported (via the
@@ -28,7 +28,7 @@
 copyright:              Copyright (c) 2018, Quixoftic, LLC
 license:                BSD3
 license-file:           LICENSE
-tested-with:            GHC==7.8.4 GHC==7.10.2 GHC==7.10.3 GHC==8.0.1 GHC==8.0.2 GHC==8.2.1 GHC==8.2.2
+tested-with:            GHC==8.0.2 GHC==8.2.2 GHC==8.4.1
 build-type:             Simple
 cabal-version:          >= 1.10
 
@@ -37,11 +37,7 @@
     changelog.md
     package.yaml
     README.md
-    stack-lts-10.yaml
-    stack-lts-2.yaml
-    stack-lts-3.yaml
-    stack-lts-6.yaml
-    stack-lts-7.yaml
+    stack-lts-11.yaml
     stack-lts-9.yaml
     stack.yaml
 
@@ -243,7 +239,7 @@
   else
     build-depends:
         base
-      , hlint ==2.0.*
+      , hlint >=2.0 && <2.2
       , protolude
   default-language: Haskell2010
 
diff --git a/package.yaml b/package.yaml
--- a/package.yaml
+++ b/package.yaml
@@ -1,5 +1,5 @@
 name:        hpio
-version:     0.9.0.5
+version:     0.9.0.6
 synopsis:    Monads for GPIO in Haskell
 category:    System
 stability:   experimental
@@ -31,7 +31,7 @@
 
   module, which explains how to use the cross-platform DSL.'
 
-tested-with: GHC==7.8.4 GHC==7.10.2 GHC==7.10.3 GHC==8.0.1 GHC==8.0.2 GHC==8.2.1 GHC==8.2.2
+tested-with: GHC==8.0.2 GHC==8.2.2 GHC==8.4.1
 
 flags:
   test-hlint:
@@ -193,7 +193,7 @@
       else:
         dependencies:
           - base
-          - hlint     ==2.0.*
+          - hlint     >=2.0 && <2.2
           - protolude
   doctest:
     main: doctest.hs
@@ -238,9 +238,5 @@
   - changelog.md
   - package.yaml
   - stack.yaml
-  - stack-lts-2.yaml
-  - stack-lts-3.yaml
-  - stack-lts-6.yaml
-  - stack-lts-7.yaml
   - stack-lts-9.yaml
-  - stack-lts-10.yaml
+  - stack-lts-11.yaml
diff --git a/stack-lts-10.yaml b/stack-lts-10.yaml
deleted file mode 100644
--- a/stack-lts-10.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-require-stack-version: ">= 1.1.0"
-pvp-bounds: both
-resolver: lts-10.3
-packages:
-- .
diff --git a/stack-lts-11.yaml b/stack-lts-11.yaml
new file mode 100644
--- /dev/null
+++ b/stack-lts-11.yaml
@@ -0,0 +1,5 @@
+require-stack-version: ">= 1.1.0"
+pvp-bounds: both
+resolver: lts-11.3
+packages:
+- .
diff --git a/stack-lts-2.yaml b/stack-lts-2.yaml
deleted file mode 100644
--- a/stack-lts-2.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-require-stack-version: ! '>= 1.1.0'
-pvp-bounds: both
-resolver: lts-2.22
-extra-deps:
-- base-compat-0.9.3
-- fail-4.9.0.0
-- monad-logger-0.3.16
-- protolude-0.2
-- semigroups-0.18.2
-- unix-bytestring-0.3.7.3
-- void-0.7.2
-packages:
-- .
-flags:
-  semigroups:
-    bytestring-builder: false
diff --git a/stack-lts-3.yaml b/stack-lts-3.yaml
deleted file mode 100644
--- a/stack-lts-3.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-require-stack-version: ">= 1.1.0"
-pvp-bounds: both
-resolver: lts-3.22
-packages:
-- .
-extra-deps:
-- protolude-0.2
-- fail-4.9.0.0
-- semigroups-0.18.2
-- unix-bytestring-0.3.7.3
-flags:
-  semigroups:
-    bytestring-builder: false
diff --git a/stack-lts-6.yaml b/stack-lts-6.yaml
deleted file mode 100644
--- a/stack-lts-6.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-require-stack-version: ">= 1.1.0"
-pvp-bounds: both
-resolver: lts-6.35
-extra-deps:
-- protolude-0.2
-packages:
-- .
diff --git a/stack-lts-7.yaml b/stack-lts-7.yaml
deleted file mode 100644
--- a/stack-lts-7.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-require-stack-version: ">= 1.1.0"
-pvp-bounds: both
-resolver: lts-7.24
-extra-deps:
-- protolude-0.2
-packages:
-- .
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,5 +1,5 @@
 require-stack-version: ">= 1.1.0"
 pvp-bounds: both
-resolver: lts-10.3
+resolver: lts-11.3
 packages:
 - .
