No commit activity in last 3 years
No release in over 3 years
A link-like static code analyzer for Ruby
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme
Ruby lint. Sorta.

http://github.com/kevinclark/nitpick/wikis


Clio:nitpick kev$ ./bin/nitpick spec/fixtures/block_badness.rb \
>     spec/fixtures/branch_badness.rb \
>     spec/fixtures/method_badness.rb \
>     spec/fixtures/rescue_badness.rb \
>     spec/fixtures/local_variable_badness.rb
./spec/fixtures/branch_badness.rb:20: warning: found = in conditional, should be ==
Fixtures::BlockBadness
  no_conditional_for_block_given
    - A block is being yielded to without a check for block_given?
  simple_conditional_without_check
    - A block is being yielded to without a check for block_given?

Fixtures::BranchBadness
  branch_returning_identical_things
    - The branches of 'if (true)' are identical.
  branch_returning_true_or_false
    - No need for an if. Just return '(1 == 2)' as a boolean.
  branch_with_assignment_as_condition
    - An assigment is being used as a condition: (a = 1)
    - The variable :a is unused.

Fixtures::LocalVariableBadness
  anonymous_args
    - The method :anonymous_args is empty.
  block_arg_unused
    - The argument :block is unused.
  lvar_shadowed
    - One or more variables are being shadowed (x)
  lvar_shadowed_many_block_vars
    - One or more variables are being shadowed (x)
  rescue_to_variable
    - The variable :e is unused.
  simple_unused_arg
    - The argument :other is unused.
  unused_arg
    - The argument :arg is unused.
  unused_lasgn
    - The variable :bar is unused.

Fixtures::MethodBadness
  empty_method
    - The method :empty_method is empty.

Fixtures::RescueBadness
  rescue_exception
    - A rescue is capturing Object or Exception, which may hide errors.
  rescue_nil
    - A rescue is returning "nil" directly and may not handle an error.
  rescue_object
    - A rescue is capturing Object or Exception, which may hide errors.