Explorar el Código

Fixed project 'active days' counting.

Commits in projects with lots of activity and authors don't happen
chronologically (patches are accepted later etc), so the counting was messed up
for them (git.git for example).
Heikki Hokkanen hace 16 años
padre
commit
b49bc1b9ad
Se han modificado 1 ficheros con 3 adiciones y 3 borrados
  1. 3
    3
      gitstats

+ 3
- 3
gitstats Ver fichero

@@ -172,7 +172,7 @@ class GitDataCollector(DataCollector):
172 172
 		self.first_commit_stamp = 0
173 173
 		self.last_commit_stamp = 0
174 174
 		self.last_active_day = None
175
-		self.active_days = 0
175
+		self.active_days = set()
176 176
 
177 177
 		# timezone
178 178
 		self.commits_by_timezone = {} # timezone -> commits
@@ -303,7 +303,7 @@ class GitDataCollector(DataCollector):
303 303
 			# project: active days
304 304
 			if yymmdd != self.last_active_day:
305 305
 				self.last_active_day = yymmdd
306
-				self.active_days += 1
306
+				self.active_days.add(yymmdd)
307 307
 
308 308
 			# timezone
309 309
 			self.commits_by_timezone[timezone] = self.commits_by_timezone.get(timezone, 0) + 1
@@ -513,7 +513,7 @@ class HTMLReportCreator(ReportCreator):
513 513
 		f.write('<dt>Project name</dt><dd>%s</dd>' % (data.projectname))
514 514
 		f.write('<dt>Generated</dt><dd>%s (in %d seconds)</dd>' % (datetime.datetime.now().strftime(format), time.time() - data.getStampCreated()))
515 515
 		f.write('<dt>Generator</dt><dd><a href="http://gitstats.sourceforge.net/">GitStats</a> (version %s)</dd>' % getversion())
516
-		f.write('<dt>Report Period</dt><dd>%s to %s (%d days, %d active days)</dd>' % (data.getFirstCommitDate().strftime(format), data.getLastCommitDate().strftime(format), data.getCommitDeltaDays(), data.getActiveDays()))
516
+		f.write('<dt>Report Period</dt><dd>%s to %s (%d days, %d active days)</dd>' % (data.getFirstCommitDate().strftime(format), data.getLastCommitDate().strftime(format), data.getCommitDeltaDays(), len(data.getActiveDays())))
517 517
 		f.write('<dt>Total Files</dt><dd>%s</dd>' % data.getTotalFiles())
518 518
 		f.write('<dt>Total Lines of Code</dt><dd>%s</dd>' % data.getTotalLOC())
519 519
 		f.write('<dt>Total Commits</dt><dd>%s</dd>' % data.getTotalCommits())