Sha256: 8795d766e355f391671db5d9ec9af25f3be71a96a1f2393da1e0a2ef2d4919dd

Contents?: true

Size: 1.92 KB

Versions: 2

Compression:

Stored size: 1.92 KB

Contents

= Excellent

Excellent detects commonly regarded bad code snippets like empty +rescue+ blocks etc. It combines roodi (http://github.com/martinjandrews/roodi), most checks of reek (http://github.com/kevinrutherford/reek), flog (http://github.com/seattlerb/flog) and also adds some Rails specific checks.

See the API documentation at http://docs.github.com/simplabs/excellent and the WIKI at http://wiki.github.com/simplabs/excellent.

== Installation

Simply install with Ruby Gems:

  gem sources -a http://gems.github.com
  sudo gem install simplabs-excellent

== Example

To analyse all the models in your Rails application, just do

  excellent app/models

in your <tt>RAILS_ROOT</tt>. You can also invoke analysation through the Simplabs::Excellent::Runner class.

== Static analysis

A few words regarding static code analysis: Static code analysis tools like Excellent can never really understand the code. They just search for patterns that *might* inidicate problematic code. The word *might* really has to be stressed here since static analysis will usually return a reasonable number of false positives. For example, there might be pretty good reasons for empty +rescue+ blocks that suppress all errors (Excellent itself does it). So, don't try and code with the aim of passing Excellent with zero warnings. That will most likely make your code a mess. Instead use Excellent as a helper to find *possibly* problematic code early.

== Contribute

If you want to contribute, just fork the repo. Also I would appretiate suggestions for more checks (especially Rails specific checks) - simply open a new issue: http://github.com/simplabs/excellent/issues.

== Author

Copyright (c) 2008-2009 Marco Otte-Witte (http://simplabs.com), released under the MIT license.

Excellent was inspired by and is in parts based on roodi (http://github.com/martinjandrews/roodi), reek (http://github.com/kevinrutherford/reek) and flog (http://github.com/seattlerb/flog).

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
simplabs-excellent-1.2.1 README.rdoc
simplabs-excellent-1.2.2 README.rdoc