        --------------------------------------------------
               CodeNarc Open Source Project Reports
        --------------------------------------------------

CodeNarc - Open Source Project Reports
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  NOTE: The {{{http://groovy.codehaus.org/}Groovy}}, {{{http://griffon.codehaus.org/}Griffon}}
  and {{{http://gpars.codehaus.org/}GPars}} projects all include <<CodeNarc>> as part of
  their regular build process.

  Sample reports for the {{{http://grails.org/}Grails}} and {{{http://www.gradle.org/}Gradle}}
  projects are shown below.

  <<Disclaimer:>> <The following reports are generated using a "one-size-fits-all"
  {{{Generic_RuleSet}Generic RuleSet}},
  that does not reflect the standards and best practices specific to the individual projects.
  In general, a RuleSet should be customized to reflect the specific standards and practices
  of a project or development organization, and to filter out "legitimate" violations.>

* Grails
~~~~~~~~~

  <<CodeNarc>> report for {{{CodeNarc-Grails-Report.html}Grails 2.0.0 RC1}}


* Gradle
~~~~~~~~~

  <<CodeNarc>> report for {{{CodeNarc-Gradle-Report.html}Gradle 1.0-milestone-9}}


* {Generic RuleSet}
~~~~~~~~~~~~~~~~~~~~

+----------------------------------------------------------------------------------------
ruleset {

    description 'A Generic Groovy RuleSet'

    ruleset("rulesets/basic.xml")

    ruleset("rulesets/concurrency.xml")

    ruleset("rulesets/imports.xml")

    ruleset("rulesets/junit.xml")  {
        exclude 'JUnitStyleAssertions'
    }

    CyclomaticComplexity

    ruleset("rulesets/unused.xml")

    ruleset("rulesets/unnecessary.xml") {
    exclude 'UnnecessaryGString'
    exclude 'UnnecessaryPublicModifier'
    exclude 'UnnecessaryReturnKeyword'
    exclude 'UnnecessarySemicolon'
    }
}
+----------------------------------------------------------------------------------------

