Parcourir la source

Fix for KeyError being generated if a month has commits but for some reason no lines changed

Example of exception

[1.17747] >> gnuplot --version
Traceback (most recent call last):
  File "./gitstats", line 1373, in <module>
      g.run(sys.argv[1:]
  File "./gitstats", line 1365, in run
     report.create(data, outputpath)
  File "./gitstats", line 841, in create
     f.write('<tr><td>%s</td><td>%d</td><td>%d</td><td>%d</td></tr>' % (yymm, data.commits_by_month[yymm], data.lines_added_by_month[yymm],
   data.lines_removed_by_month[yymm]))
KeyError: '2010-08'

Signed-off-by: Heikki Hokkanen <hoxu@users.sf.net>
Chris Cormack il y a 14 ans
Parent
révision
750ddfe35a
1 fichiers modifiés avec 2 ajouts et 2 suppressions
  1. 2
    2
      gitstats

+ 2
- 2
gitstats Voir le fichier

@@ -834,7 +834,7 @@ class HTMLReportCreator(ReportCreator):
834 834
 		f.write(html_header(2, 'Commits by year/month'))
835 835
 		f.write('<div class="vtable"><table><tr><th>Month</th><th>Commits</th><th>Lines added</th><th>Lines removed</th></tr>')
836 836
 		for yymm in reversed(sorted(data.commits_by_month.keys())):
837
-			f.write('<tr><td>%s</td><td>%d</td><td>%d</td><td>%d</td></tr>' % (yymm, data.commits_by_month[yymm], data.lines_added_by_month[yymm], data.lines_removed_by_month[yymm]))
837
+			f.write('<tr><td>%s</td><td>%d</td><td>%d</td><td>%d</td></tr>' % (yymm, data.commits_by_month.get(yymm,0), data.lines_added_by_month.get(yymm,0), data.lines_removed_by_month.get(yymm,0)))
838 838
 		f.write('</table></div>')
839 839
 		f.write('<img src="commits_by_year_month.png" alt="Commits by year/month" />')
840 840
 		fg = open(path + '/commits_by_year_month.dat', 'w')
@@ -846,7 +846,7 @@ class HTMLReportCreator(ReportCreator):
846 846
 		f.write(html_header(2, 'Commits by Year'))
847 847
 		f.write('<div class="vtable"><table><tr><th>Year</th><th>Commits (% of all)</th><th>Lines added</th><th>Lines removed</th></tr>')
848 848
 		for yy in reversed(sorted(data.commits_by_year.keys())):
849
-			f.write('<tr><td>%s</td><td>%d (%.2f%%)</td><td>%d</td><td>%d</td></tr>' % (yy, data.commits_by_year[yy], (100.0 * data.commits_by_year[yy]) / data.getTotalCommits(), data.lines_added_by_year[yy], data.lines_removed_by_year[yy]))
849
+			f.write('<tr><td>%s</td><td>%d (%.2f%%)</td><td>%d</td><td>%d</td></tr>' % (yy, data.commits_by_year.get(yy,0), (100.0 * data.commits_by_year.get(yy,0)) / data.getTotalCommits(), data.lines_added_by_year.get(yy,0), data.lines_removed_by_year.get(yy,0)))
850 850
 		f.write('</table></div>')
851 851
 		f.write('<img src="commits_by_year.png" alt="Commits by Year" />')
852 852
 		fg = open(path + '/commits_by_year.dat', 'w')