Changeset 2623
- Timestamp:
- 09/08/07 01:55:09 (1 year ago)
- Files:
-
- tracmetrixplugin/0.11/setup.py (modified) (1 diff)
- tracmetrixplugin/0.11/tracmetrixplugin/model.py (modified) (3 diffs)
- tracmetrixplugin/0.11/tracmetrixplugin/templates/pdashboard.html (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
tracmetrixplugin/0.11/setup.py
r2582 r2623 7 7 description='Plugin to provide Trac project metrics and statistics', 8 8 keywords='trac plugin metrics statistics', 9 version='0.1. 0',9 version='0.1.1', 10 10 url='', 11 11 license='http://www.opensource.org/licenses/bsd-license.php', tracmetrixplugin/0.11/tracmetrixplugin/model.py
r2595 r2623 332 332 opened_tickets = self.get_remaning_opened_ticket_on(end_date) 333 333 closed_tickets = self.get_tickets_closed_during(start_date, end_date) 334 334 335 if opened_tickets == []: 336 bmi = 0 337 else: 338 bmi = float(len(closed_tickets)) * 100 / float(len(opened_tickets)) 339 335 340 return ("%s/%s" % (start_date.month, start_date.year), 336 341 created_tickets, 337 342 opened_tickets, 338 343 closed_tickets, 339 float(len(closed_tickets)) * 100 / float(len(opened_tickets)))344 bmi) 340 345 341 346 def get_daily_backlog_history(self, start_date, end_date): … … 441 446 bmi_dataset = [] 442 447 for i in range(len(opened_tickets_dataset)): 443 bmi_dataset.append(float(closed_tickets_dataset[i])*100/float(opened_tickets_dataset[i])) 448 if opened_tickets_dataset[i] == 0: 449 bmi_dataset.append(0.0) 450 else: 451 bmi_dataset.append(float(closed_tickets_dataset[i])*100/float(opened_tickets_dataset[i])) 444 452 445 453 # for idx, numdate in enumerate(numdates): … … 621 629 self.start_date = start_date 622 630 self.stop_date = stop_date 623 self.first_rev = self.changesets[0][0] 624 self.last_rev = self.changesets[-1][0] 631 632 if self.changesets != []: 633 self.first_rev = self.changesets[0][0] 634 self.last_rev = self.changesets[-1][0] 625 635 626 636 def get_commit_by_date(self): tracmetrixplugin/0.11/tracmetrixplugin/templates/pdashboard.html
r2581 r2623 53 53 <td style="width: 200px">${len(bmi[2])} ${wiki_to_html(context(), ', '.join(['#%s' % i for i in bmi[2]]))}</td> 54 54 <td style="width: 200px">${len(bmi[3])} ${wiki_to_html(context(), ', '.join(['#%s' % i for i in bmi[3]]))}</td> 55 <td style="width: 90px">${"%.2f %%" % ( float(len(bmi[3])) * 100 / float(len(bmi[2])),)}</td>55 <td style="width: 90px">${"%.2f %%" % (bmi[4])}</td> 56 56 </tr> 57 57 </tbody> … … 75 75 <tr py:for="key in ticket_duration_stats" class="statistics"> 76 76 <th style="width: 357px" class="style1">${key}</th> 77 <th style="width: 100px"> ${pretty_timedelta(0, ticket_duration_stats[key].avg())}</th>78 <th style="width: 100px"> ${pretty_timedelta(0, ticket_duration_stats[key].median())}</th>79 <th style="width: 91px"> ${pretty_timedelta(0, ticket_duration_stats[key].max())}</th>80 <th style="width: 90px"> ${pretty_timedelta(0, ticket_duration_stats[key].min())}</th>81 <th style="width: 90px"> ${pretty_timedelta(0, ticket_duration_stats[key].stdev())}</th>77 <th style="width: 100px"><py:if test="ticket_duration_stats[key].avg()">${pretty_timedelta(0, ticket_duration_stats[key].avg())}</py:if></th> 78 <th style="width: 100px"><py:if test="ticket_duration_stats[key].median()">${pretty_timedelta(0, ticket_duration_stats[key].median())}</py:if></th> 79 <th style="width: 91px"><py:if test="ticket_duration_stats[key].max()">${pretty_timedelta(0, ticket_duration_stats[key].max())}</py:if></th> 80 <th style="width: 90px"><py:if test="ticket_duration_stats[key].min()">${pretty_timedelta(0, ticket_duration_stats[key].min())}</py:if></th> 81 <th style="width: 90px"><py:if test="ticket_duration_stats[key].stdev()">${pretty_timedelta(0, ticket_duration_stats[key].stdev())}</py:if></th> 82 82 </tr> 83 83 <tr py:for="key in ticket_frequency_stats" class="statistics"> 84 84 <th style="width: 357px" class="style1">${key}</th> 85 <th style="width: 100px"> ${"%.4f" % ticket_frequency_stats[key].avg()}</th>86 <th style="width: 100px"> ${"%.4f" % ticket_frequency_stats[key].median()}</th>87 <th style="width: 91px"> ${"%.4f" % ticket_frequency_stats[key].max()}</th>88 <th style="width: 90px"> ${"%.4f" % ticket_frequency_stats[key].min()}</th>89 <th style="width: 90px"> ${"%.4f" % ticket_frequency_stats[key].stdev()}</th>85 <th style="width: 100px"><py:if test="ticket_frequency_stats[key].avg()">${"%.4f" % ticket_frequency_stats[key].avg()}</py:if></th> 86 <th style="width: 100px"><py:if test="ticket_frequency_stats[key].median()">${"%.4f" % ticket_frequency_stats[key].median()}</py:if></th> 87 <th style="width: 91px"><py:if test="ticket_frequency_stats[key].max()">${"%.4f" % ticket_frequency_stats[key].max()}</py:if></th> 88 <th style="width: 90px"><py:if test="ticket_frequency_stats[key].min()">${"%.4f" % ticket_frequency_stats[key].min()}</py:if></th> 89 <th style="width: 90px"><py:if test="ticket_frequency_stats[key].stdev()">${"%.4f" % ticket_frequency_stats[key].stdev()}</py:if></th> 90 90 </tr> 91 91 </tbody>
