Download Latest Version GMetrics-0.3-bin.tar.gz (1.0 MB)
Email in envelope

Get an email when there's a new version of GMetrics

Home / gmetrics-0.5
Name Modified Size InfoDownloads / Week
Parent folder
README.txt 2012-01-16 3.1 kB
GMetrics-0.5-bin.zip 2012-01-16 2.0 MB
GMetrics-0.5-bin.tar.gz 2012-01-16 1.3 MB
Totals: 3 Items   3.4 MB 0
GMetrics version 0.5
-------------------------------------------------------------------------------
http://www.gmetrics.org

The GMetrics project provides calculation and reporting of size and complexity metrics for
Groovy source code. GMetrics scans Groovy source code, applying a set of metrics, and
generates an HTML report of the results.

Changes in version 0.5 (Jan 2012)
--------------------------------------
NEW METRICS
- New CoberturaBranchCoverageMetric. Branch coverage at method/class/package level. Requires a Cobertura "coverage.xml" file. (#3474462)
- New CoberturaLineCoverageMetric. Line coverage at method/class/package level. Requires a Cobertura "coverage.xml" file. (#3474462)
- New CrapMetric. Calculated the CRAP score for a method, based on its complexity and code coverage. Requires a Cobertura "coverage.xml" file. (#3192158.)

NEW FEATURES
- MetricSet DSL: Return value from each metric in the metric set; Allow storing metric in variable. #3465486.
  This is useful for composite Metrics that require other metric values to calculate results (e.g. CrapMetric). If a metric is
  defined within another metric definition (assigned to a field), do not include as a standalone metric in the metric set.

INTEGRATION WITH OTHER TOOLS
- If you use GMetric with CodeNarc, this release requires CodeNarc 0.16.

FIXES AND ENHANCEMENTS
- Method-level Metrics: Handle multiple overloaded methods. (#3439103). Use MethodKey class.
- Fix: For SingleSeries package-level reports, show the full package name, not just the rightmost part of the package name. (#3439104).
- Add includeClosureFields property to AbstractMethodMetric. Defaults to true.
- Add String getSignature() method to MethodResultsNode and MethodKey. Add signature attribute to Method elements in XmlReportWriter. #3444707.

FRAMEWORK/API CHANGES  (Potential breaking changes if you have implemented your own Metrics)
- Change Metric and AbstractMetric to add packageName to applyToPackage(): applyToPackage(String packageName, Collection<MetricResult> childMetricResults). (Breaking Change). (#3465484)
- Introduce new MethodMetric (extends Metric) interface: applyToMethod() and applyToClosure().
- Create MethodKey class, with MethodKey(MethodNode) and MethodKey(String) constructors and String getMethodName() method, along with equals() and hashCode().
- Introduce Formatter framework. Enable configuring Formatter for Metric within "gmetrics-base-messages.properties".
- Reorganize MetricResult implementation classes; rename NumberMetricResult to SingleNumberMetricResult; Create new
  NumberMetricResult: allows setting values for total, average, min, max.
- AggregateNumberMetricResult: Add support for predefinedValues.
- Change writeReport(Writer writer, ResultsNode resultsNode, AnalysisContext analysisContext) to protected


DEPENDENCIES

CodeNarc requires
 - Groovy version 1.7 or later
 - Java 1.5 or later
 - The Log4J jar, version 1.2.13 or later, accessible on the CLASSPATH
   (http://logging.apache.org/log4j/index.html).
Source: README.txt, updated 2012-01-16