Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{iframe:src=http://update.sonarsource.org/plugins/scmstats.html|width=700|height=250|frameborder=0}
Your browser does not support iframes.
{iframe}

Upgrade from 0.1 to 0.2 or later

If you upgrade from 0.1 to 0.2 or later you'll need to run a new analysis to see the Authors activity and commits per author widgets.

Description / Features

The plugin computes and feds Sonar with four (4) feeds SonarQube with four new metrics : Commits / UserAuthor, Commits / Clock Hour, Commits / Week Day and Commits / Month.
Four Five project widgets ( under the SCM category ) display these metrics using graphical representations.

Info

The "commits per user author widget" displays only the top commiters 10 authors ( list and pie chart )

 

The Author activity widget (available since version 0.2) displays a stacked 3D bar chart showing the top 10 authors activity types: new files(green), modifications(blue) , deletions(red)

Image Added 

The other three widgets display in a bar chart charts for the number of commits / clock hour, week day or month.

...

Tip

The plugin also adds a project dashboard under the name SCM Stats that contains all four widgets.

Usage, Installation and Configuration

...

Requirements

If you plan to use this plugin with non-

...

Maven projects, or SCM access is available only with username/password or no SCM information is included in project's pom.xml you

...

must also install

...

the SCM Activity plugin

...

.

Compatibility Matrix:

Plugin version

0.10.20.3.1
Source Control   

Subversion

(tick)

(tick)(tick)
Git(tick)(tick)(tick)
Mercurial(error)

(tick) (Authors activity not supported
see SONARPLUGINS-3108 )

(tick) (Authors activity not supported
see SONARPLUGINS-3108 )
CVS(error)(tick) (Authors activity not supported
see SONARPLUGINS-3104 )
(tick) (Authors activity not supported
see SONARPLUGINS-3104 )
Perforce(error)(error)(tick)
Jazz(error)(error)(question)

(tick) - supported

(star) - tested by users

(question) - not tested

(error) - not implemented

Include Page
Include - Plugin Installation
Include - Plugin Installation

Usage and Configuration

  1. Set the SCM URL of your project (see SCM URL Format) by setting the sonar.scm.url property of SCM Activity plugin. For Maven projects this is automatically discovered if it's already set in pom.xml

  2. Set the SCM user / password (if needed) by setting the sonar.scm.user.secured and sonar.scm.password.secured properties of SCM Activity plugin
  3. Launch a new quality analysis and the metrics will be fed

Compatibility Matrix

Plugin version

0.1
Source Control 

Subversion

(tick)

Git(tick)
  1. Note
    titleSecurity note for SonarQube 3.4.0 to 3.6.3 included

    For the *.secured properties to be read during the project analysis, it is necessary to set the sonar.login and sonar.password properties to the credentials of a user that is:

    • System administrator
    • And project administrator on the project that is being analyzed
    Example:
    sonar-runner -Dsonar.login=admin -Dsonar.password=admin

Grabbing stats for multiple periods

Since version 0.2, the plugin allows the collection of SCM stats for multiple (1-3) periods. By default the plugin collects stats for the whole history (sonar.scm-stats.period1 = 0 days).
You can have different periods on a global or project level by setting the number of days prior to the current date that the plugin will collect scm stats.

For example to collect scm stats for the last month, enter a value of 30, for the last week a value of 7, etc.

The properties for period 2 (sonar.scm-stats.period2) and period 3 (sonar.scm-stats.period3) can have the value of zero(0) but the plugin will ignore it. Stats for the entire history of a project will be collected only if sonar.scm-stats.period1property is set to zero(0). Negative values are ignored for all periods.

You can edit widget properties by setting the period number (acceptable value are 1-3). By default each widget shows stats for period 1.

Image Added

Ignoring / merging authors

Since version 0.3, the plugin allows you to set a list of authors to ignore (sonar.scm-stats.authors.ignore) and a list of author name synonyms to merge into single authors (sonar.scm-stats.authors.merge).
If you want to set them using the project / global settings, add one author (ignored or merged) in each value.
If you want to pass them as analysis arguments, authors must be comma-delimited. with aliases semicolon-delimited.
 

Example for ignored authors: -Dsonar.scm-stats.authors.ignore=author1,author2,author3

Example for merged authors: -Dsonar.scm-stats.authors.merge="author1=author;AUTHOR1,author2=author22;Author2;authOr2"
(Records for both "author" and "AUTHOR1" will be merged into "author1". Records for "author22", "Author2" and "auth0r2" will be merged into "author2")

Perforce Configuration

Perforce is supported since version 0.3 and you need to set the Client Spec name property (sonar.scm-stats.perforce.clientspecin order to be able to get scm stats

Metrics Definitions

Name

Key

Qualitative

Description

Commits Per UserAuthor

scm-commits-per-user

no

Reports on the number of commits per userauthor.

Commits Per Clock Hour

scm-commits-per-clockhour

no

Reports on the number of commits per clock hour.

Commits Per Week Dayscm-commits-per-weekdaynoReports on the number of commits per week day.
Commits Per Monthscm-commits-per-monthnoReports on the number of commits per month.

Future Work (Open Issues)

Plenty !!! Waiting for your ideas as well!

JIRA Issues
anonymoustrue
titleOpen Issues
renderModestatic
width900
columnstype;key;summary;priority
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=project+%3D+SONARPLUGINS+AND+component+%3D+"SCM+Stats"+AND+status+%3D+Open+ORDER+BY+priority+DESC&tempMax=1000
 

Change Log

JIRA Issues
anonymoustrue
titleRelease 0.3.1 height320(bug-fix release)
renderModestatic
width900
columnstype;key;summary;priority;status
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=1877419580&pid=11911&sorter/field=priority&sorter/order=DESC&tempMax=1000

 

JIRA Issues
anonymoustrue
titleRelease 0.3
renderModestatic
width900
columnstype;key;summary;priority;status
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=19136&pid=11911&sorter/field=priority&sorter/order=DESC&tempMax=1000

 

JIRA Issues
anonymoustrue
titleRelease 0.2
renderModestatic
width900
columnstype;key;summary;priority
urlhttp://jira.codehaus.org/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?fixfor=18847&pid=11911&sorter/field=priority&sorter/order=DESC&tempMax=1000