diff options
Diffstat (limited to 'activity/git.lua')
-rw-r--r-- | activity/git.lua | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/activity/git.lua b/activity/git.lua index 160d227..b24fc09 100644 --- a/activity/git.lua +++ b/activity/git.lua @@ -18,17 +18,19 @@ function git.log (dirname, entries, filter) end local ok, _ = handle:close() if not ok then - error "git log closed unexpectedly" + io.stderr:write("could not read repo: ", dirname, "\n") end - return entries + return not ok, entries end function git.lookup (repositories, filter) local lookup = {} + local errors = nil local entries = {} for _, dirname in pairs(repositories) do - git.log(dirname, entries, filter) + local err, _ = git.log(dirname, entries, filter) + errors = errors or err end for _, entry in pairs(entries) do local day = dates.day_of_year(entry.date) @@ -36,7 +38,7 @@ function git.lookup (repositories, filter) lookup[year] = lookup[year] or {} lookup[year][day] = (lookup[year][day] or 0) + 1 end - return function (year, day) + return errors, function (year, day) return (lookup[year] or {})[day] or 0 end end |