aboutsummaryrefslogtreecommitdiffstats
path: root/app/History
diff options
context:
space:
mode:
authorLibravatar Alexander Foremny <aforemny@posteo.de>2023-11-07 22:38:03 +0100
committerLibravatar Alexander Foremny <aforemny@posteo.de>2023-11-07 22:38:06 +0100
commit561ef3d43d94bdf098fee37295d7588905ec0c9e (patch)
tree325e692bf80fd51df35503b87eae0f0abff40269 /app/History
parentc64a7e5285bb119927c8cb1136db60c6ffa77220 (diff)
improve getCommitHashes
`getCommitHashes` now returns at least one commit, and reverses commits by default (ie. oldest to newset).
Diffstat (limited to 'app/History')
-rw-r--r--app/History/PartialCommitInfo.hs9
1 files changed, 2 insertions, 7 deletions
diff --git a/app/History/PartialCommitInfo.hs b/app/History/PartialCommitInfo.hs
index 2337ef7..cd8cd46 100644
--- a/app/History/PartialCommitInfo.hs
+++ b/app/History/PartialCommitInfo.hs
@@ -8,6 +8,7 @@ import Control.Exception (catch)
import Data.Binary (Binary)
import Data.ByteString.Lazy.Char8 qualified as LB8
import Data.Function ((&))
+import Data.List.NonEmpty qualified as N
import Data.Text qualified as T
import Die (die)
import Exception qualified as E
@@ -35,13 +36,7 @@ data PartialCommitInfo = PartialCommitInfo
getPartialCommitInfos :: IO [PartialCommitInfo]
getPartialCommitInfos = do
- -- TODO Revise `getCommitHashes`
- --
- -- - Should throw if no commits.
- -- - Should always be reversed?
- --
- -- @difficulty easy
- commitHashes <- reverse <$> Git.getCommitHashes
+ commitHashes <- N.toList <$> Git.getCommitHashes
parMapM getCommitInfoOf (map Commit commitHashes ++ [WorkingTree])
getCommitInfoOf :: CommitHash -> IO PartialCommitInfo