diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+# 1.3.10   [2020-01-14]
+
+  - dependencies: Support megaparsec-8
+
 # 1.3.9   [2019-03-02]
 
   - dependencies: Port to hledger-lib-1.14
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@
 The easiest method would be [stack]: Install the [stack] program and
 type:
 
-    stack install --resolver=nightly hledger-iadd
+    stack install --resolver=lts hledger-iadd-1.3.9
 
 This downloads and builds `hledger-iadd` and all it's Haskell
 dependencies. After that, it copys the resulting binary to
@@ -165,7 +165,7 @@
 
 ## Default Currency
 
-To make entry easier it is recommended that you set a [default commodity](http://hledger.org/manual.html#default-commodity)
+To make entry easier it is recommended that you set a [default commodity](https://hledger.org/journal.html#default-commodity)
 in your ledger file if you haven't already done so.
 That way when entering amounts, `hledger-iadd` will add the symbols for you.
 You can do this by adding a line like below to the top of your ledger file:
diff --git a/hledger-iadd.cabal b/hledger-iadd.cabal
--- a/hledger-iadd.cabal
+++ b/hledger-iadd.cabal
@@ -1,5 +1,5 @@
 name:                hledger-iadd
-version:             1.3.9
+version:             1.3.10
 synopsis:            A terminal UI as drop-in replacement for hledger add
 description:         This is a terminal UI as drop-in replacement for hledger add.
                      .
@@ -61,7 +61,7 @@
                      , Data.Time.Ext
   default-language:    Haskell2010
   build-depends:       base >= 4.9 && < 5
-                     , hledger-lib >= 1.14 && < 1.15
+                     , hledger-lib >= 1.14 && < 1.17
                      , brick >= 0.27
                      , vty >= 5.4
                      , text
@@ -71,7 +71,7 @@
                      , transformers >= 0.3
                      , time >= 1.5
                      , vector
-                     , megaparsec >= 7.0 && <7.1
+                     , megaparsec >= 7.0 && <8.1
                      , containers
                      , optparse-applicative
                      , directory
@@ -88,7 +88,7 @@
   default-language:    Haskell2010
   build-depends:       base >= 4.9 && < 5
                      , hledger-iadd
-                     , hledger-lib >= 1.14 && < 1.15
+                     , hledger-lib >= 1.14 && < 1.17
                      , brick >= 0.27
                      , vty >= 5.4
                      , text
@@ -102,7 +102,7 @@
                      , xdg-basedir
                      , unordered-containers
                      , free >= 4.12.4
-                     , megaparsec >= 7.0 && <7.1
+                     , megaparsec >= 7.0 && <8.1
   ghc-options:         -threaded -Wall -fdefer-typed-holes -fno-warn-name-shadowing
 
 test-suite spec
@@ -116,7 +116,7 @@
   default-language:   Haskell2010
   build-depends:      base >= 4.9 && < 5
                     , hledger-iadd
-                    , hledger-lib >= 1.14 && < 1.15
+                    , hledger-lib >= 1.14 && < 1.17
                     , text
                     , transformers >= 0.3
                     , time >= 1.5
@@ -124,7 +124,7 @@
                     , hspec
                     , QuickCheck
                     , free >= 4.12.4
-                    , megaparsec >= 7.0 && <7.1
+                    , megaparsec >= 7.0 && <8.1
                     , text-zipper >= 0.10
   build-tool-depends: hspec-discover:hspec-discover ==2.*
   ghc-options:        -threaded -Wall -fdefer-typed-holes -fno-warn-name-shadowing
diff --git a/src/ConfigParser.hs b/src/ConfigParser.hs
--- a/src/ConfigParser.hs
+++ b/src/ConfigParser.hs
@@ -4,6 +4,7 @@
 {-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE OverloadedStrings #-}
 {-# LANGUAGE GADTs, DeriveFunctor, ScopedTypeVariables #-}
+{-# LANGUAGE CPP #-}
 
 -- | Applicative config parser.
 --
@@ -283,4 +284,7 @@
             , pstateTabWidth = mkPos 1
             , pstateLinePrefix = ""
             }
+#if MIN_VERSION_megaparsec(8,0,0)
+          , stateParseErrors = []
+#endif
           }
