diff options
author | Alexander Foremny <aforemny@posteo.de> | 2023-11-07 22:12:00 +0100 |
---|---|---|
committer | Alexander Foremny <aforemny@posteo.de> | 2023-11-07 22:12:02 +0100 |
commit | 83e40ef27b2291ff7308243cbecf9431f3489554 (patch) | |
tree | 0efddedf9767be23cb3ad4500372d7b0539e916d /app/Issue.hs | |
parent | 60fb967e2de7ab290f46d4a84fd920dfe8d264b0 (diff) |
fix performance when generating history
At some point, we noticed a performance drop when generating the
history. It turns out that per-file granularity is not performant
anymore, presumably since we're analizing changed files.
This restores performance by switching to per-commit granularity
instead.
Diffstat (limited to 'app/Issue.hs')
-rw-r--r-- | app/Issue.hs | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/app/Issue.hs b/app/Issue.hs index e6515a9..54ef5e4 100644 --- a/app/Issue.hs +++ b/app/Issue.hs @@ -3,7 +3,7 @@ module Issue Provenance (..), fromMatch, id, - getIssuesPar, + getIssues, ) where @@ -22,7 +22,6 @@ import Issue.Provenance (Provenance (..), commitFromHEAD) import Issue.Tag (Tag (..)) import Issue.Tag qualified as I import Issue.Text qualified as I -import Parallel (parMapM) import Process (proc, sh) import System.FilePath (takeExtension) import System.Process.Typed (setWorkingDir) @@ -102,13 +101,9 @@ stripIssueMarkers text = -- | Get all issues in the given directory and files. Runs -- parallelized. -getIssuesPar :: FilePath -> [FilePath] -> IO [[Issue]] -getIssuesPar cwd files = - parMapM (handle forgetGetIssuesExceptions . getIssues cwd) files - -- | Get all issues in the given directory and file. getIssues :: FilePath -> FilePath -> IO [Issue] -getIssues cwd filename = do +getIssues cwd filename = handle (\(_ :: E.UnknownFileExtension) -> pure []) $ do let extension = takeExtension filename treeGrepperLanguage = -- TODO Add support for all tree-grepper supported files @@ -151,6 +146,3 @@ getIssues cwd filename = do fixTreeGrepper :: G.Result -> G.Result fixTreeGrepper treeGrepperResult = treeGrepperResult {G.matches = G.merge treeGrepperResult.matches} - -forgetGetIssuesExceptions :: E.UnknownFileExtension -> IO [a] -forgetGetIssuesExceptions _ = pure [] |