diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,5 +1,9 @@
 # Changelog for net-mqtt
 
+## 0.6.2.3
+
+Remove a use of `fail` that prevents us from building under ghc 8.8.
+
 ## 0.6.2.2
 
 Support query parameters in ws and wss URLs.
diff --git a/net-mqtt.cabal b/net-mqtt.cabal
--- a/net-mqtt.cabal
+++ b/net-mqtt.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: 0ef5244416ed2dc4d066d967825e5d4fb9c65cc896a00c5718cc2b9dbadbb29e
+-- hash: a85ef0bb166997bc2d9f79955e997df1d959d52505a9539765fb63e1f9326742
 
 name:           net-mqtt
-version:        0.6.2.2
+version:        0.6.2.3
 synopsis:       An MQTT Protocol Implementation.
 description:    Please see the README on GitHub at <https://github.com/dustin/mqtt-hs#readme>
 category:       Network
diff --git a/src/Network/MQTT/Client.hs b/src/Network/MQTT/Client.hs
--- a/src/Network/MQTT/Client.hs
+++ b/src/Network/MQTT/Client.hs
@@ -161,7 +161,7 @@
              "mqtts:" -> runClientTLS
              "ws:"    -> runWS uri False
              "wss:"   -> runWS uri True
-             us       -> fail $ "invalid URI scheme: " <> us
+             us       -> mqttFail $ "invalid URI scheme: " <> us
 
       (Just a) = uriAuthority uri
       (u,p) = up (uriUserInfo a)
