diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,19 +1,24 @@
+
+## 2.2.0.1
+
+*   Fix small import problem in the tests. [#38](https://github.com/cdepillabout/servant-checked-exceptions/pull/38)
+
 ## 2.2.0.0
 
-*   Add the `EnvelopeT` monad transformer. [#32]
+*   Add the `EnvelopeT` monad transformer. [#32](https://github.com/cdepillabout/servant-checked-exceptions/pull/32)
 
 *   Add a few combinators for `Envelope`:
 
-        - `envelopeRemove`
-        - `envelopeHandle`
-        - `relaxEnvelope`
-        - `liftA2Envelope`
-        - `bindEnvelope`
+    - `envelopeRemove`
+    - `envelopeHandle`
+    - `relaxEnvelope`
+    - `liftA2Envelope`
+    - `bindEnvelope`
 
-    [#32]
+    [#32](https://github.com/cdepillabout/servant-checked-exceptions/pull/32)
 
 *   Add an example of using `EnvelopeT` in
-    `servant-checked-exceptions/example/EnvelopeT.hs`. [#32]
+    `servant-checked-exceptions/example/EnvelopeT.hs`. [#32](https://github.com/cdepillabout/servant-checked-exceptions/pull/32)
 
 ## 2.1.0.0
 
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
 Servant.Checked.Exceptions
 ==========================
 
-[![Build Status](https://secure.travis-ci.org/cdepillabout/servant-checked-exceptions.svg)](http://travis-ci.org/cdepillabout/servant-checked-exceptions)
+[![Build Status](https://github.com/cdepillabout/servant-checked-exceptions/workflows/CI/badge.svg)](https://github.com/cdepillabout/servant-checked-exceptions)
 [![Hackage](https://img.shields.io/hackage/v/servant-checked-exceptions.svg)](https://hackage.haskell.org/package/servant-checked-exceptions)
 [![Stackage LTS](http://stackage.org/package/servant-checked-exceptions/badge/lts)](http://stackage.org/lts/package/servant-checked-exceptions)
 [![Stackage Nightly](http://stackage.org/package/servant-checked-exceptions/badge/nightly)](http://stackage.org/nightly/package/servant-checked-exceptions)
@@ -87,10 +87,10 @@
 
 ## Example
 
-This repository contains an [example](example/) of using
-`servant-checked-exceptions`.  This includes an [api](example/Api.hs),
-[server](example/Server.hs), [client](example/Client.hs), and
-[documentation](example/Docs.hs).
+This repository contains an [example](servant-checked-exceptions/example/) of using
+`servant-checked-exceptions`.  This includes an [api](servant-checked-exceptions/example/Api.hs),
+[server](servant-checked-exceptions/example/Server.hs), [client](servant-checked-exceptions/example/Client.hs), and
+[documentation](servant-checked-exceptions-core/example/Docs.hs).
 
 Below I show how to compile and run these examples.
 
@@ -99,7 +99,7 @@
 The examples can be compiled by using the `buildexample` flag:
 
 ```sh
-$ stack build --flag servant-checked-exceptions:buildexample
+$ stack build --flag servant-checked-exceptions-core:buildexample --flag servant-checked-exceptions:buildexample
 ```
 
 This creates three executables.  A server, a client, and a documentaiton
@@ -178,7 +178,7 @@
 The documentation generator will generate documentation for the api in Markdown:
 
 ```sh
-$ stack exec -- servant-checked-exceptions-example-docs
+$ stack exec -- servant-checked-exceptions-core-example-docs
 ```
 
 Here is a small example of the documentation that will be generated for the lax
@@ -219,6 +219,14 @@
 and `servant-server`. This can be useful if you are writing an API meant to be
 shared with ghcjs and run in a browser, where these dependencies aren't
 available.
+
+## Limitations
+
+Currently, `servant-client` only treats HTTP responses as successful if they
+have a status code of 2XX.  This means that any non-2XX errors thrown by
+`servant-checked-exceptions` don't get parsed into a typed `Envelope` as
+expected, but raised as a Servant `ClientError`.  For more information, see
+[issue #27](https://github.com/cdepillabout/servant-checked-exceptions/issues/27).
 
 ## Maintainers
 
diff --git a/example/Api.hs b/example/Api.hs
--- a/example/Api.hs
+++ b/example/Api.hs
@@ -109,6 +109,9 @@
   parseJSON = withText "BadSearchTermErr" $
     maybe (fail "could not parse as BadSearchTermErr") pure . readMaybe . unpack
 
+-- | Note that clients generated by @servant-client@ currently don't handle
+-- status codes outside the @2XX@ range correctly.
+-- Take a look at the README for more details.
 instance ErrStatus BadSearchTermErr where
   toErrStatus :: BadSearchTermErr -> Status
   toErrStatus _ = status404
@@ -128,6 +131,9 @@
   parseJSON = withText "IncorrectCapitalization" $
     maybe (fail "could not parse as IncorrectCapitalization") pure . readMaybe . unpack
 
+-- | Note that clients generated by @servant-client@ currently don't handle
+-- status codes outside the @2XX@ range correctly.
+-- Take a look at the README for more details.
 instance ErrStatus IncorrectCapitalization where
   toErrStatus :: IncorrectCapitalization -> Status
   toErrStatus _ = status400
diff --git a/example/Client.hs b/example/Client.hs
--- a/example/Client.hs
+++ b/example/Client.hs
@@ -25,8 +25,8 @@
         metavar, progDesc, short, str, switch)
 import Servant.API ((:<|>)((:<|>)))
 import Servant.Client
-       (BaseUrl(BaseUrl), ClientEnv(ClientEnv), ClientM, Scheme(Http),
-        client, runClientM)
+       (BaseUrl(BaseUrl), ClientEnv, ClientM, Scheme(Http),
+        client, mkClientEnv, runClientM)
 
 import Servant.Checked.Exceptions (Envelope, emptyEnvelope, catchesEnvelope)
 
@@ -142,7 +142,7 @@
 main :: IO ()
 main = do
   manager <- newManager defaultManagerSettings
-  let clientEnv = ClientEnv manager baseUrl Nothing
+  let clientEnv = mkClientEnv manager baseUrl
   options <- execParser opts
   run clientEnv options
   where
diff --git a/servant-checked-exceptions.cabal b/servant-checked-exceptions.cabal
--- a/servant-checked-exceptions.cabal
+++ b/servant-checked-exceptions.cabal
@@ -1,5 +1,5 @@
 name:                servant-checked-exceptions
-version:             2.2.0.0
+version:             2.2.0.1
 synopsis:            Checked exceptions for Servant APIs.
 description:         Please see <https://github.com/cdepillabout/servant-checked-exceptions#readme README.md>.
 homepage:            https://github.com/cdepillabout/servant-checked-exceptions
@@ -7,7 +7,7 @@
 license-file:        LICENSE
 author:              Dennis Gosnell
 maintainer:          cdep.illabout@gmail.com
-copyright:           2017-2018 Dennis Gosnell
+copyright:           2017-2021 Dennis Gosnell
 category:            Web
 build-type:          Simple
 extra-source-files:  CHANGELOG.md
@@ -113,6 +113,7 @@
   other-modules:
   hs-source-dirs:      test
   build-depends:       base
+                     , hspec
                      , hspec-wai
                      , http-types
                      , tasty
diff --git a/test/Spec.hs b/test/Spec.hs
--- a/test/Spec.hs
+++ b/test/Spec.hs
@@ -23,6 +23,7 @@
   , ServerT
   , serve
   )
+import Test.Hspec (describe, it)
 import Test.Hspec.Wai
   ( ResponseMatcher(matchStatus)
   , get
@@ -30,7 +31,7 @@
   , with
   )
 import Test.Tasty (TestTree, defaultMain, testGroup)
-import Test.Tasty.Hspec (describe, it, testSpec)
+import Test.Tasty.Hspec (testSpec)
 import Test.Tasty.HUnit ((@?=), assertFailure, testCase)
 
 import Servant.Checked.Exceptions
