diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,17 @@
 # Aura Changelog
 
+## 3.2.5
+
+#### Changed
+
+- Expect at least version `5.0` of the `versions` library.
+
+#### Fixed
+
+- Subtle bug involving tarball path parsing. [#713]
+
+[#713]: https://github.com/fosskers/aura/pull/713
+
 ## 3.2.4 (2021-03-10)
 
 #### Fixed
@@ -40,7 +52,7 @@
 
 #### Changed
 
-- *Breaking:* `-As` and `-Ai` will yield an exit code of `1` if no results were
+- _Breaking:_ `-As` and `-Ai` will yield an exit code of `1` if no results were
   found. This matches `pacman`.
 - `-As` now accepts multiple search terms to narrow in on specific packages.
 
@@ -194,6 +206,7 @@
   - `-Pd` accepts a path to a directory containing a PKGBUILD.
   - `-Pa` to scan the PKGBUILDs of all locally installed AUR packages.
   - `-P` on its own will read from stdin. Combine this with `-Ap` to pull from the AUR:
+
 ```
 > aura -Ap myget | aura -P
 
@@ -202,6 +215,7 @@
 aura >>= sudo indicates that someone may be trying to gain root access to your machine.
 aura >>= Potential PKGBUILD vulnerabilities detected.
 ```
+
 - A new flag `--vcspath` to accompany the new VCS build behaviour (see below).
 - A new flag `--allsourcepath` to accompany the restored `--allsource`
   functionality (see below).
@@ -321,7 +335,7 @@
 ## 2.0.0
 
 This is a large update representing about a month of full-time effort. Aura is now
-*much* faster, solves dependencies more reliably, has a few new features, and
+_much_ faster, solves dependencies more reliably, has a few new features, and
 many fewer bugs. This is all while modernizing the code and seeing a ~15% decrease
 in overall code size.
 
@@ -362,7 +376,7 @@
 - `-Su` and `-Au` automatically save a package state before updating (unless you're doing `--dryrun`).
   This lets you more easily roll back from problematic updates.
 - Saved package states can now be "pinned", which will protect them from removal via `-Bc`.
-  To pin a certain state, open its JSON file (see below in *Breaking Changes*) and edit the
+  To pin a certain state, open its JSON file (see below in _Breaking Changes_) and edit the
   `pinned` field from `false` to `true`.
 
 #### CLI Flags
@@ -423,33 +437,40 @@
 - `makepkg` output is no longer coloured green.
 
 ## 1.4.0
-- *Dependency resolution vastly improved.* We removed the Bash parser that used
+
+- _Dependency resolution vastly improved._ We removed the Bash parser that used
   to poorly handle the bulk of this.
 - Chinese translations thanks to Kai Zhang.
 - `-M` operator and associated code fully removed.
 
 ## 1.3.9
+
 - Updated Swedish translations
 - Disabled `-M` operator due to the `abs` tool being deprecated by Arch Linux
 
 ## 1.3.8
+
 - Fixed behaviour of `-B` flags. For restoring of saved states, use the long
   form: `aura -B --restore`. Cache backups also need to take their long form: `aura -C --backup`.
 - Fixed handling of language flags. Thanks to Doug Patti!
 
 ## 1.3.5
+
 - Aura now uses version 5 of the `aur` package, to fix a critial bug
 - Updated Spanish and Polish
 
 ## 1.3.4
+
 - Bash parser bug fix. Fixes some packages.
 
 ## 1.3.3
+
 - Bash parser extended to be able to handle bash array expansions.
   This enables packages with more (Bash-wise) complex PKGBUILDs to build
   properly.
 
 ## 1.3.2.1
+
 - `-Ai` and `-As` show popularity values.
 - `aur4` is no longer referenced.
 - `Yes/No` prompts are now localized.
@@ -457,28 +478,34 @@
 - Updated German translation.
 
 ## 1.3.1.0
+
 - Aura builds against GHC 7.10.
 - Updated German and Russian translations.
 
 ## 1.3.0.4
+
 - Must use `--builduser` when building as root.
 - Bug fix regarding `--needed`.
 - Updated Portuguese translation.
 
 ## 1.3.0.3
+
 - Pacman flags `--ignore` and `--ignoregroup` now work.
 - Bug fixes.
 
 ## 1.3.0.2
+
 - (Bug fix) If a user tries to install a package in `IgnorePkg`, they
   will now be prompted.
 - Man page updated.
 - Dependencies updated.
 
 ## 1.3.0.1
+
 - (Bug fix) Tarballs are now downloaded from a URL provided by the RPC.
 
 ## 1.3.0.0
+
 - Last major version of Aura 1! We have entered the design phase for Aura 2,
   the implementation of which will transform Aura into a multi-distro
   package management platform.
@@ -499,41 +526,48 @@
   - Other updated translations.
 
 ## 1.2.3.4
+
 - zsh completions completely redone (thanks to Sauyon Lee!)
   Having `aur-git` installed will let you auto-complete on AUR packages.
 
 ## 1.2.3.3
+
 - `-As --{head,tail}` can now be passed numbers to truncate the results
   to any number you want. The default is 10.
 - Updated Russian translation.
 
 ## 1.2.3.2
+
 - Expanded Bash completions:
-    Aura Only
-      * Expanded completion for all options and search sub-options
-      * Package completion for -M/--abssync
-      * Completion for orphans using self-generated list
-    Pacman
-      * Include completion for all pacman options
-      * Directory or file completion for some common options
+  - Aura Only:
+    - Expanded completion for all options and search sub-options
+    - Package completion for -M/--abssync
+    - Completion for orphans using self-generated list
+  - Pacman
+    - Include completion for all pacman options
+    - Directory or file completion for some common options
 - Use `--dryrun` with `-A` and `-M` install options to test everything
   up until actual building would occur (dependency checks, etc.)
 
 ## 1.2.3.1
+
 - Network.HTTP.Conduit errors are now caught properly
   and don't crash aura.
 - `customizepkg` usage corrected.
 - zsh completions slightly expanded.
 
 ## 1.2.3.0
+
 - Moved to `Network.HTTP.Conduit` from `Network.Curl`
   This fixes the AUR connection issues.
   Binary size has increased by quite a bit.
 
 ## 1.2.2.1
+
 - `-Ai` now shows dependencies.
 
 ## 1.2.2.0
+
 - Happy New Year!
 - makepkg's `--ignorearch` flag is now visible to Aura.
   This allows users to build AUR packages on ARM devices
@@ -543,6 +577,7 @@
 - Bug fixes and translation updates
 
 ## 1.2.1.3
+
 - `-As` results now sort by vote. Use `--abc` to sort alphabetically.
 - "[installed]" will now be shown in `-As` results if you have it.
 - Fixed Bash parsing bug involving `\\` in arrays
@@ -551,16 +586,19 @@
 - Updated French translation
 
 ## 1.2.1.2
+
 - Happy Canadian Thanksgiving
 - Bug fixes
 
 ## 1.2.1.1
+
 - Norwegian translation added!
 - Dependency checks slightly faster
 - `--hotedit` and `--custom` can now be used together
 - Bug fixes
 
 ## 1.2.1.0
+
 - New `builduser` option
 - `Prelude.head` bug fixed
 - Dependency checking is faster
@@ -569,12 +607,15 @@
 - Other bug fixes
 
 ## 1.2.0.2
+
 - Bug fixes and spelling corrections.
 
 ## 1.2.0.1
+
 - Fixes dependency build order bug.
 
 ## 1.2.0.0
+
 - New operator `-M` for building ABS packages. Has its own family of options.
 - Pre-built binary package available (x86_64 only)
 - Updates to Aura are now prioritized like pacman updates.
@@ -585,50 +626,59 @@
 - Extensive API changes.
 
 ## 1.1.6.2
+
 - New option `--no-pp`. Disables use of powerpill, even if you have it.
 - This is a light release, as major work is being done on version 1.2 on
   another development branch.
 
 ## 1.1.6.1
+
 - Compatable with pacman 4.1
 - All pacman-color support removed
 - `-As` output slightly altered to match pacman.
 - Bug fixes.
 
 ## 1.1.6.0
+
 - New option `--build` for specifying AUR package build path.
 - Vote number now shown in `-As` output.
 - Fixed Repo/AUR name collision bug.
 - API Change: Argument order for functions in `Aura/Languages` changed.
 
 ## 1.1.5.0
+
 - `customizepkg` now usable with Aura.
   Activate with the `--custom` option.
-- API Change: Aura/Pkgbuilds now a set of libraries as Aura/Pkgbuild/*
+- API Change: Aura/Pkgbuilds now a set of libraries as Aura/Pkgbuild/\*
 
 ## 1.1.4.3
+
 - Fixed flaw in `-Br`.
 - Fixed repititious `-Ad` output.
 - API Change: Aura/AurConnection renamed to Aura/AUR
 - API Change: function names in Aura/Languages now have better names.
 
 ## 1.1.4.2
+
 - Haskell deps have been moved back to `makedepends`.
 - haskell-http removed as dependency.
 - API Change: function naming conventions in `Aura/Languages.hs` has been
   changed. The localisation guide was also updated to reflect this.
 
 ## 1.1.4.1
+
 - Support for the $LANG environment variable.
 - Aura will now pause before post-build installation if the package database
   lock exists. This means you can run multiple instances of Aura and avoid
   crashes.
 
 ## 1.1.4.0
+
 - Serbian translation added. Thank you, Filip Brcic!
 - Fixed bug that was breaking `aura -Ss`.
 
 ## 1.1.3.0
+
 - Changed `--save` and `--restore` to `-B` and `-Br`.
   `--save` is now just an alias for `-B`, but `--restore`
   must be used with `-B`.
@@ -641,13 +691,16 @@
 - Dep Change: `haskell-url` no longer needed.
 
 ## 1.1.2.1
+
 - Added message to `--save`.
 
 ## 1.1.2.0
+
 - Bash parser completely rewritten.
 - Bug fixes (thanks to the new parser)
 
 ## 1.1.1.0
+
 - New option `--devel`. Rebuilds all devel packages installed.
 - Italian translation added! Thank you Bob Valantin!
 - Support for `powerpill` added. It will be used if installed, unless
@@ -656,6 +709,7 @@
 - Bug fixes
 
 ## 1.1.0.0
+
 - New `--save` and `--restore` options.
 - New option `-Ak` for showing PKGBUILD diffs when upgrading.
 - New option `--aurignore` for ignoring AUR packages.
@@ -665,18 +719,21 @@
 - Code is quite cleaner now.
 
 ## 1.0.8.1
+
 - Bash completions added.
 - zsh completions added.
 - Changed `--conf` to `--viewconf`
 - Fixed bug involving "symlink" Haskell error.
 
 ## 1.0.8.0
+
 - Moved certain general functions to `Aura.Utils`
 - Moved `-L`, `-O`, `-A` functions out of `aura.hs`.
 - `--hotedit` functionality altered (fix).
 - The license message is now more badass.
 
 ## 1.0.7.0
+
 - New libraries: Aura.Time, Aura.State
 - Moved `-C` functionality to `Aura.C`
 - New secret option you don't get to find out about until 1.1
@@ -684,11 +741,13 @@
 - Bug fixes
 
 ## 1.0.6.0
+
 - New libraries: ColourDiff, Data.Algorithm.Diff, Aura.Pkgbuilds
 - Aura.AuraLib split into Aura.General, Aura.Build, Aura.Dependencies
 - New secret option you don't get to find out about until 1.1
 
 ## 1.0.5.0
+
 - Fixed bug where packages with `+` in their name couldn't be
   searched or built.
 - `-As` now allows multi-word searches, as it always should have.
@@ -696,11 +755,13 @@
   Still does not read the color.conf directly.
 
 ## 1.0.4.0
+
 - Added French translation. Thanks to Ma Jiehong!
 - Added Russian translation. Thanks to Kyrylo Silin!
 - Fixed bug where packages with dots in their name wouldn't build.
 
 ## 1.0.3.2
+
 - Moved haskell dependencies out of `makedepends` field and into
   `depends` field in PKGBUILD. Makedepends can usually be ignored
   after building, but haskell packages are a pain to rebuild
@@ -710,31 +771,37 @@
 - Fixed pacman-color issues.
 
 ## 1.0.3.1
+
 - Added `--auradebug` option.
 
 ## 1.0.3.0
+
 - Compatibility with AUR 2.0 added.
 - Portuguese translation added. Thanks to Henry "Ingvij" Kupty!
 - Support for `pacman-color` added. Run sudo with `-E` a la:
-    sudo -E aura -Ayu
+  sudo -E aura -Ayu
 - Fixed backslash parsing bug in `Bash`.
 
 ## 1.0.2.2
+
 - Fixed parsing bug in `Bash`.
   If one package fell victim, a whole `-Au` session would fail.
 
 ## 1.0.2.1
+
 - Added License info to source files.
 - Fixed virtual package recognition bug.
 - Altered version conflict error message.
 - Fixed bug in Bash parser that would occasionally break parsing.
 
 ## 1.0.2.0
+
 - Bug fixes.
 - Extended the Bash parser. PKGBUILDs that had bash variables in their
   dependency arrays will now be parsed correctly.
 
 ## 1.0.1.0
+
 - German translation (use with --german).
   Thanks to Lukas Niederbremer!
 - Spanish translation (use with --spanish)
@@ -744,41 +811,50 @@
 - Moved a number of modules to `Aura/`
 
 ## 1.0.0.0
+
 - Fixed `-V` message in terminals other than urxvt.
 - New `haskell-ansi-terminal` library to do this.
 
 ## 0.10.0.0
+
 - Internet access moved to Network.Curl library.
 - `Bash.hs` library created to help with PKGBUILD parsing.
   Can currently handle string expansions a la::
 
-    "this-is-{awesome,neat}" => ["this-is-awesome","this-is-neat"]
+  "this-is-{awesome,neat}" => ["this-is-awesome","this-is-neat"]
 
 ## 0.9.2.3
+
 - Dependency determining speed up.
 - Added AUR URL to `-Ai`.
 
 ## 0.9.3.2
+
 - Swedish translation.
   Thanks to Fredrik Haikarainen!
 
 ## 0.9.2.0
+
 - `-Ai` and `-As`!
 
 ## 0.9.1.0
+
 - `-Au` is about 20 times faster.
 
 ## 0.9.?.?
+
 - Polish translation.
   Thanks to Chris "Kwpolska" Warrick!
 - Croatian translation.
   Thanks to Denis Kasak!
 
 ## 0.9.0.0
+
 - New `-O` operation for dealing with orphan packages.
 - A man page!
 
 ## 0.8.0.0
+
 - Help message now supports multiple languages.
 - Broke "no overlapping options" convention.
 - `-Cz` is now `-Cb`.
@@ -787,17 +863,21 @@
   This option shows information you can't get from looking at PKGBUILDS!
 
 ## 0.7.3.0
+
 - New option `--conf`. Lets you quickly view your pacman.conf.
 
 ## 0.7.2.3
+
 - `--log` is now `-L`.
 - New option `-Ls`. Search the log file via a regex.
 - New option `-Li`. Reports information on a given package that has had
   any appearance in the log file.
 
 ## 0.7.0.0
+
 - `--hotedit` option added.
 - `Shell` library added.
 
 ## 0.6.0.0
+
 - Aura passes proper exit codes to the shell upon completion.
diff --git a/aura.cabal b/aura.cabal
--- a/aura.cabal
+++ b/aura.cabal
@@ -1,6 +1,6 @@
 cabal-version:      2.2
 name:               aura
-version:            3.2.4
+version:            3.2.5
 synopsis:           A secure package manager for Arch Linux and the AUR.
 description:
   Aura is a package manager for Arch Linux. It connects to both the
@@ -46,7 +46,7 @@
     , megaparsec  >=7      && <10
     , rio         ^>=0.1.17
     , text        ^>=1.2
-    , versions    ^>=4.0.1
+    , versions    ^>=5
 
 common libexec
   build-depends:
diff --git a/lib/Aura/Types.hs b/lib/Aura/Types.hs
--- a/lib/Aura/Types.hs
+++ b/lib/Aura/Types.hs
@@ -192,13 +192,14 @@
 pToSP p = SimplePkg (pName p) (pVersion p)
 
 -- | Attempt to create a `SimplePkg` from filepaths like
---   @\/var\/cache\/pacman\/pkg\/linux-3.2.14-1-x86_64.pkg.tar.xz@
+--   @\/var\/cache\/pacman\/pkg\/linux-3.2.14-1-x86_64.pkg.tar.zst@
 simplepkg :: PackagePath -> Maybe SimplePkg
-simplepkg (PackagePath t) =
-  uncurry SimplePkg <$> bitraverse hush hush (parse n "name" t', parse v "version" t')
+simplepkg (PackagePath t) = do
+  nav <- hush . parse nameAndVer "Name and Version" . T.pack $ takeFileName t
+  uncurry SimplePkg <$> bitraverse hush hush (parse n "name" nav, parse ver "version" nav)
   where
-    t' :: Text
-    t' = T.pack $ takeFileName t
+    nameAndVer :: Parsec Void Text Text
+    nameAndVer = T.pack <$> manyTill anySingle (string "-x86_64" <|> string "-any")
 
     n :: Parsec Void Text PkgName
     n = PkgName . T.pack <$> manyTill anySingle (try finished)
@@ -206,10 +207,15 @@
     -- | Assumes that a version number will never start with a letter,
     -- and that a package name section (i.e. abc-def-ghi) will never start
     -- with a number.
+    finished :: Parsec Void Text Char
     finished = char '-' *> lookAhead digitChar
-    v    = manyTill anySingle (try finished) *> ver
-    ver  = try (fmap Ideal semver' <* post) <|> try (fmap General version' <* post) <|> fmap Complex mess'
-    post = char '-' *> (string "x86_64" <|> string "any") *> string ".pkg.tar.xz"
+
+    ver :: Parsec Void Text Versioning
+    ver = do
+      void $ manyTill anySingle (try finished)
+      choice [ try $ fmap Ideal semver'
+             , try $ fmap General version'
+             , fmap Complex mess' ]
 
 -- | Attempt to create a `SimplePkg` from text like:
 --     xchat 2.8.8-19
diff --git a/test/Test.hs b/test/Test.hs
--- a/test/Test.hs
+++ b/test/Test.hs
@@ -33,28 +33,28 @@
     , testCase "parseDep - python2-lxml>=3.1.0" $ do
         let pn = "python2-lxml>=3.1.0"
             p = parseDep pn
-        p @?= Just (Dep "python2-lxml" . AtLeast . Ideal $ SemVer 3 1 0 [] [])
+        p @?= Just (Dep "python2-lxml" . AtLeast . Ideal $ SemVer 3 1 0 [] Nothing)
         fmap renderedDep p @?= Just pn
     , testCase "parseDep - foobar>1.2.3" $ do
         let pn = "foobar>1.2.3"
             p = parseDep pn
-        p @?= Just (Dep "foobar" . MoreThan . Ideal $ SemVer 1 2 3 [] [])
+        p @?= Just (Dep "foobar" . MoreThan . Ideal $ SemVer 1 2 3 [] Nothing)
         fmap renderedDep p @?= Just pn
     , testCase "parseDep - foobar=1.2.3" $ do
         let pn = "foobar=1.2.3"
             p = parseDep pn
-        p @?= Just (Dep "foobar" . MustBe . Ideal $ SemVer 1 2 3 [] [])
+        p @?= Just (Dep "foobar" . MustBe . Ideal $ SemVer 1 2 3 [] Nothing)
         fmap renderedDep p @?= Just pn
     ]
   , testGroup "Aura.Types"
     [ testCase "simplepkg"
       $ simplepkg (fromJust $ packagePath "/var/cache/pacman/pkg/linux-is-cool-3.2.14-1-x86_64.pkg.tar.xz")
-      @?= Just (SimplePkg "linux-is-cool" . Ideal $ SemVer 3 2 14 [[Digits 1]] [])
+      @?= Just (SimplePkg "linux-is-cool" . Ideal $ SemVer 3 2 14 [[Digits 1]] Nothing)
     , testCase "simplepkg'"
-      $ simplepkg' "xchat 2.8.8-19" @?= Just (SimplePkg "xchat" . Ideal $ SemVer 2 8 8 [[Digits 19]] [])
+      $ simplepkg' "xchat 2.8.8-19" @?= Just (SimplePkg "xchat" . Ideal $ SemVer 2 8 8 [[Digits 19]] Nothing)
     ]
   , testGroup "Aura.Packages.Repository"
-    [ testCase "extractVersion" $ extractVersion firefox @?= Just (Ideal $ SemVer 60 0 2 [[Digits 1]] [])
+    [ testCase "extractVersion" $ extractVersion firefox @?= Just (Ideal $ SemVer 60 0 2 [[Digits 1]] Nothing)
     ]
   , testGroup "Aura.Pacman"
     [ testCase "Parsing pacman.conf" $ do
