wiki:SumStatsPlugin

Version 4 (modified by robguttman, 3 years ago) (diff)

--

Sums specified field in Roadmap and Milestone stats

Description

This is a complement to the Sum Fields plugin which sums fields in a query or report. This plugin sums fields for the roadmap and milestone views. These plugins are useful when assessing progress based on "points" or "ideal days" of effort instead of ticket count.

This plugin was inspired by the CustomRoadmapPlugin but overcomes its limitation of requiring a patch. Additionally, this plugin allows for any fields to be used to define a group, not just the default status field. Lastly, I designed the plugin to be backwards compatible with the default ticket count behavior so that you can take leverage as much or little of its enhancements as desired.

Configuration

  1. Install the plugin (after downloading and unzipping):
    cd sumstatsplugin/0.12
    sudo python setup.py install
    

See TracPlugins for more installation details and options. You'll likely need to restart Trac's web server after installation.

  1. Enable the plugin in trac.ini:
    [components]
    sumstats.* = enabled
    

You can alternatively use the Trac Web Admin GUI.

  1. Replace the DefaultTicketGroupStatsProvider with this plugin's new SumTicketGroupStatsProvider as shown here:
    [roadmap]
    stats_provider = SumTicketGroupStatsProvider
    
    [milestone]
    stats_provider = SumTicketGroupStatsProvider
    
  1. (Optional) Configure the main trac.ini section:
    [sumstats]
    field = effort
    label = effort
    drilldown_label = Ticket effort
    query_args = col=summary,col=type,col=effort
    

The optional field option specifies which field to sum. The optional drilldown_label and label are used to define the TicketGroupStats object. The optional query_args is a convenient, comma-delimited list that gets appended to each group's query_args. See the examples below for more details.

Bugs/Feature Requests

Existing bugs and feature requests for SumStatsPlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out SumStatsPlugin from here using Subversion, or browse the source with Trac.

Example

Here's an example trac.ini config that combines a custom phase field with a built-in resolution field:

[milestone-groups]
closed = fixed
closed.field = resolution
closed.label = fixed
closed.order = 1
closed.overall_completion = true

readying = *
readying.field = phase
readying.order = 2
readying.color = YellowGreen

implementation = implementation
implementation.field = phase
implementation.order = 3
implementation.color = Yellow

waiting = waiting
waiting.field = phase
waiting.order = 4
waiting.color = White

scoping = sizing,definition
scoping.field = phase
scoping.order = 5
scoping.color = Red

In general, the plugin maintains the same syntax and semantics as the DefaultTicketGroupStatsProvider to support backwards compatibility and ease of transition. If the .field option is omitted, then the status field is presumed. Note that a .color option is required for each group (except for any default closed or new group you have). The "catch all" * value is also still supported (although there are currently no checks for duplicate "catch all" or otherwise redundant group definitions).

Recent Changes

[13559] by jun66j5 on 2014-01-08 22:36:13
Removed duplicated definitions of option to fix hidden documentation for filter on TracIni macro (fixed #11480)
[13548] by rjollos on 2014-01-05 09:21:38
Removed debug print statment. Refs #11478.
[13547] by rjollos on 2014-01-05 09:20:08
Fixed misplaced positional argument in call to ListOption. Fixes #11478.

Author/Contributors

Author: robguttman
Maintainer: robguttman
Contributors:

Attachments (2)

Download all attachments as: .zip