diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -5,6 +5,13 @@
 ## Unreleased changes
 
 
+## Version 0.7.1.0
+
+-   Be less strict with quoted identifiers/names in phylogenetic trees.
+-   Be less strict with FASTA identifiers.
+-   Update tooling (GHC 9.2.4).
+
+
 ## Version 0.7.0.1
 
 -   Random 1.2: Parallel functions now require an \`IOGenM\` random number
diff --git a/slynx.cabal b/slynx.cabal
--- a/slynx.cabal
+++ b/slynx.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               slynx
-version:            0.7.0.1
+version:            0.7.1.0
 synopsis:           Handle molecular sequences
 description:
   Examine, modify, and simulate molecular sequences in a reproducible way. Please see the README on GitHub at <https://github.com/dschrempf/elynx>.
diff --git a/src/SLynx/Concatenate/Concatenate.hs b/src/SLynx/Concatenate/Concatenate.hs
--- a/src/SLynx/Concatenate/Concatenate.hs
+++ b/src/SLynx/Concatenate/Concatenate.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  Analyze.Analyze
diff --git a/src/SLynx/Examine/Examine.hs b/src/SLynx/Examine/Examine.hs
--- a/src/SLynx/Examine/Examine.hs
+++ b/src/SLynx/Examine/Examine.hs
@@ -1,5 +1,5 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
+{-# LANGUAGE TupleSections #-}
 
 -- |
 --
@@ -166,7 +166,7 @@
 -- From https://stackoverflow.com/a/52602906/3536806.
 tuples :: [a] -> [(a, a)]
 tuples [] = []
-tuples (x : xs) = map (\y -> (x, y)) xs ++ tuples xs
+tuples (x : xs) = map (x,) xs ++ tuples xs
 
 -- This is all ugly, but who cares.
 writeDivergenceMatrix :: Handle -> (Seq.Sequence, Seq.Sequence, MU.Matrix Int) -> IO ()
@@ -183,7 +183,7 @@
   let xys = tuples ss
       ds = map (\(x, y) -> (x, y, either error id $ divergence x y)) xys
   h <- outHandle "divergence matrices" ".div"
-  sequence_ $ map (liftIO . writeDivergenceMatrix h) ds
+  mapM_ (liftIO . writeDivergenceMatrix h) ds
   liftIO $ hClose h
 
 -- | Examine sequences.
diff --git a/src/SLynx/Examine/Options.hs b/src/SLynx/Examine/Options.hs
--- a/src/SLynx/Examine/Options.hs
+++ b/src/SLynx/Examine/Options.hs
@@ -65,4 +65,4 @@
 
 filePathArg :: Parser FilePath
 filePathArg =
-  strArgument $ metavar "INPUT-FILE" <> help "Read sequences from INPUT-FILE"
+  strArgument $ metavar "INPUT-FILE" <> help "Read sequences from INPUT-FILE" <> action "file"
diff --git a/src/SLynx/Filter/Filter.hs b/src/SLynx/Filter/Filter.hs
--- a/src/SLynx/Filter/Filter.hs
+++ b/src/SLynx/Filter/Filter.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  Analyze.Analyze
diff --git a/src/SLynx/Simulate/Simulate.hs b/src/SLynx/Simulate/Simulate.hs
--- a/src/SLynx/Simulate/Simulate.hs
+++ b/src/SLynx/Simulate/Simulate.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  SLynx.Simulate.Simulate
diff --git a/src/SLynx/SubSample/SubSample.hs b/src/SLynx/SubSample/SubSample.hs
--- a/src/SLynx/SubSample/SubSample.hs
+++ b/src/SLynx/SubSample/SubSample.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  Analyze.Analyze
diff --git a/src/SLynx/Tools.hs b/src/SLynx/Tools.hs
--- a/src/SLynx/Tools.hs
+++ b/src/SLynx/Tools.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  SLynx.Tools
diff --git a/src/SLynx/Translate/Translate.hs b/src/SLynx/Translate/Translate.hs
--- a/src/SLynx/Translate/Translate.hs
+++ b/src/SLynx/Translate/Translate.hs
@@ -1,5 +1,4 @@
 {-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE TemplateHaskell #-}
 
 -- |
 -- Module      :  Analyze.Analyze
