Flog Changelog

What's new in Flog 2.3.0

Dec 10, 2009
  • 1 major enhancement:
  • Added file:line info to the flog report (Marty Andrews)
  • 13 minor enhancements:
  • Added .autotest.
  • Deleted pre-gauntlet scripts.
  • Flog#method_name now at least tries show when it is a class method.
  • Flog.parse_options now takes args directly.
  • Removed Flog#increment_total_score_by.
  • Removed Flog#output_summary.
  • Removed Flog#process_attrset.
  • Removed Flog#record_method_score.
  • Removed Flog#summarize_method.
  • Removed Flog::default_options.
  • Renamed Flog#analyze_list to process_until_empty.
  • Renamed Flog#options to #option
  • Rewrote entire test suite (3100 lines down!). Cleaner and less brittle.

New in Flog 2.2.0 (Oct 8, 2009)

  • 1 minor enhancement:
  • mass pushed up to sexp_processor
  • 5 bug fixes:
  • --group didn't use canonical class name.
  • Fixed bin/flog to use flog, not flog_files (removed in last rev)
  • Fixed crasher when processing a block with empty goalposts.
  • Switching to ruby_parser broke ERB syntax error handling. (imccoy)
  • skip empty files instead of crashing.

New in Flog 2.1.2 (Jul 28, 2009)

  • Fixed dependency spec on ruby_parser. (jan)

New in Flog 2.1.0 (Mar 17, 2009)

  • 5 minor enhancements:
  • Added --group to aggregate and sort by class scores.
  • Added flog_task.rb
  • Made -q default, removed -n.
  • Made report output more readable and processable.
  • Moved option processing from bin/flog to lib/flog.rb for better testing.
  • 1 bug fix:
  • removed extra attr_readers for total and average.

New in Flog 2.0.0 (Jan 21, 2009)

  • 1 major enhancement:
  • Pulled in and merged Rick Bradley's awesome flame project into flog.
  • 1 minor enhancement:
  • Added gauntlet plugin
  • 1 bug fix:
  • "hugh sasse".split(/s/).map{|x|x.capitalize}.join(" ")

New in Flog 1.2.0 (Oct 25, 2008)

  • Added -c flag to continue dispite errors.
  • Added -m to only report code in methods (skips #none).
  • Added -n flag to give NO method details (summary only)
  • Added -n to skip method details... pussies should learn grep.
  • Added -q to quiet method details (total per method only)
  • Added avg & stddev to total.
  • Added avg score per method to report.
  • Added lots of doco from contributors (hugh sasse?).
  • Fixed class names when const2/3.
  • Fixed unified ruby changes
  • Refactored flog with help from flay.
  • Refactored get_source_index
  • Refactored into gem_updater.rb and cleaned up.
  • Works with new incremental rubygems, albiet slower than before.

New in Flog 1.1.0 (Sep 19, 2008)

  • Added assignments and branches and a lot of other stuff. rad.
  • Added process_iter section for DSL style blocks (rake tasks etc).
  • Made Flog usable as a library.
  • Added -a flag to turn off threshold culling for other tools.
  • Added -s for summarizing the score.
  • Added -v feedback to know what file you‘re flogging.
  • Added branching penalty so tons of nested conditionals get beat down.
  • Added send (3).
  • Capture and ignore SyntaxErrors from template/generator code. Stupid DHH.
  • Report can now take an IO object.
  • block_args now penalizes all non-benign forms of block_pass.
  • Added usage to bin/flog. Moved -I processing to bin/flog.
  • Added unpack.rb and update_scores.rb at base level (not installed)
  • Added scoring for block_pass.
  • Converted totals to use distance formula on ABC‘s.
  • Ran flog on every latest gem available. Found a bunch of problems.
  • Use a stack for both class/module and method accounting.
  • block_args weren‘t processing the arg.