diff --git a/Changelog b/Changelog
--- a/Changelog
+++ b/Changelog
@@ -1,3 +1,6 @@
+Changed in version 0.8.2.1:
+   * Add `configure` check for `termios.h` and fallbacks for wasi.
+
 Changed in version 0.8.2:
    * Add versions of `completeWord{,withPrev}` that take predicates for word break chars (#164)
 
@@ -89,7 +92,7 @@
    * Fix build on Windows.
 
 Changed in version 0.7.2.0:
-   * Bump upper-bound on base and filepath libraries to accomodate GHC HEAD (7.10)
+   * Bump upper-bound on base and filepath libraries to accommodate GHC HEAD (7.10)
    * Drop Cabal dependency to 1.10
    * Use explicit forall syntax to avoid warning
    * Support Applicative/Monad proposal in Win32/Draw backend
diff --git a/System/Console/Haskeline/Backend/Posix.hsc b/System/Console/Haskeline/Backend/Posix.hsc
--- a/System/Console/Haskeline/Backend/Posix.hsc
+++ b/System/Console/Haskeline/Backend/Posix.hsc
@@ -51,6 +51,8 @@
 #endif
 #include <sys/ioctl.h>
 
+#include <HsBaseConfig.h>
+
 -----------------------------------------------
 -- Input/output handles
 data Handles = Handles {hIn, hOut :: ExternalHandle
@@ -63,6 +65,10 @@
 -------------------
 -- Window size
 
+#if !defined(HAVE_TERMIOS_H)
+posixLayouts :: Handles -> [IO (Maybe Layout)]
+posixLayouts _ = error "System.Console.Haskeline.Backend.Posix.posixLayouts"
+#else
 foreign import capi "sys/ioctl.h ioctl" ioctl :: FD -> CULong -> Ptr a -> IO CInt
 
 posixLayouts :: Handles -> [IO (Maybe Layout)]
@@ -78,6 +84,8 @@
                     then return $ Just Layout {height=fromEnum rows,width=fromEnum cols}
                     else return Nothing
 
+#endif
+
 unsafeHandleToFD :: Handle -> IO FD
 unsafeHandleToFD h =
   withHandle_ "unsafeHandleToFd" h $ \Handle__{haDevice=dev} -> do
@@ -141,7 +149,7 @@
             -- Terminal.app:
             ,("\ESC[5D", ctrlKey $ simpleKey LeftKey)
             ,("\ESC[5C", ctrlKey $ simpleKey RightKey)
-            -- rxvt: (Note: these will be superceded by e.g. xterm-color,
+            -- rxvt: (Note: these will be superseded by e.g. xterm-color,
             -- which uses them as regular arrow keys.)
             ,("\ESC[OD", ctrlKey $ simpleKey LeftKey)
             ,("\ESC[OC", ctrlKey $ simpleKey RightKey)
diff --git a/System/Console/Haskeline/Backend/Win32.hsc b/System/Console/Haskeline/Backend/Win32.hsc
--- a/System/Console/Haskeline/Backend/Win32.hsc
+++ b/System/Console/Haskeline/Backend/Win32.hsc
@@ -144,7 +144,7 @@
                           unicodeChar :: Char,
                           controlKeyState :: DWORD}
             -- TODO: WINDOW_BUFFER_SIZE_RECORD
-            -- I cant figure out how the user generates them.
+            -- I can't figure out how the user generates them.
            | WindowEvent
            | OtherEvent
                         deriving Show
diff --git a/System/Console/Haskeline/Vi.hs b/System/Console/Haskeline/Vi.hs
--- a/System/Console/Haskeline/Vi.hs
+++ b/System/Console/Haskeline/Vi.hs
@@ -81,7 +81,7 @@
                                                 >|> return . Left
 
 -- If we receive a ^D and the line is empty, return Nothing
--- otherwise, act like '\n' (mimicing how Readline behaves)
+-- otherwise, act like '\n' (mimicking how Readline behaves)
 eofIfEmpty :: (Monad m, Save s, Result s) => Command m s (Maybe String)
 eofIfEmpty s
     | save s == emptyIM = return Nothing
diff --git a/haskeline.cabal b/haskeline.cabal
--- a/haskeline.cabal
+++ b/haskeline.cabal
@@ -1,6 +1,6 @@
 Name:           haskeline
 Cabal-Version:  >=1.10
-Version:        0.8.2
+Version:        0.8.2.1
 Category:       User Interfaces
 License:        BSD3
 License-File:   LICENSE
@@ -49,9 +49,9 @@
     -- We require ghc>=7.4.1 (base>=4.5) to use the base library encodings, even
     -- though it was implemented in earlier releases, due to GHC bug #5436 which
     -- wasn't fixed until 7.4.1
-    Build-depends: base >=4.9 && < 4.17, containers>=0.4 && < 0.7,
+    Build-depends: base >=4.9 && < 4.19, containers>=0.4 && < 0.7,
                    directory>=1.1 && < 1.4, bytestring>=0.9 && < 0.12,
-                   filepath >= 1.2 && < 1.5, transformers >= 0.2 && < 0.6,
+                   filepath >= 1.2 && < 1.5, transformers >= 0.2 && < 0.7,
                    process >= 1.0 && < 1.7, stm >= 2.4 && < 2.6,
                    exceptions == 0.10.*
     Default-Language: Haskell98
