<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -2,6 +2,8 @@
 
 === Major Changes
 * Reek passes all its tests under ruby 1.8.6, 1.8.7 and 1.9.1 (fixed #16)
+* New smell -- Data Clump:
+** Looks within a class for 3 or more methods taking the same 2 or more parameters
 * New smell -- Simulated Polymorphism:
 ** Currently only performs basic check for multiple tests of same value
 * Reek's output reports are now formatted differently:</diff>
      <filename>History.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,5 +1,5 @@
 $:.unshift File.dirname(__FILE__)
 
 module Reek # :doc:
-  VERSION = '1.1.3.14'
+  VERSION = '1.1.3.15'
 end</diff>
      <filename>lib/reek.rb</filename>
    </modified>
    <modified>
      <diff>@@ -50,9 +50,9 @@ module Reek
       def examine_context(klass)
         max_copies = value(MAX_COPIES_KEY, klass, DEFAULT_MAX_COPIES)
         min_clump_size = value(MIN_CLUMP_SIZE_KEY, klass, DEFAULT_MIN_CLUMP_SIZE)
-        MethodGroup.new(klass, min_clump_size, max_copies).clumps.each {|clump, occurs|
+        MethodGroup.new(klass, min_clump_size, max_copies).clumps.each do |clump, occurs|
           found(klass, &quot;takes parameters #{DataClump.print_clump(clump)} to #{occurs} methods&quot;)
-        }
+        end
       end
 
       def self.print_clump(clump)
@@ -62,7 +62,7 @@ module Reek
   end
 
   # Represents a group of methods
-  class MethodGroup
+  class MethodGroup   # :nodoc:
 
     def self.intersection_of_parameters_of(methods)
       methods.map {|meth| meth.parameters.names.sort}.intersection
@@ -76,12 +76,12 @@ module Reek
 
     def clumps
       results = Hash.new(0)
-      @klass.parameterized_methods(@min_clump_size).bounded_power_set(@max_copies).each {|methods|
+      @klass.parameterized_methods(@min_clump_size).bounded_power_set(@max_copies).each do |methods|
         clump = MethodGroup.intersection_of_parameters_of(methods)
         if clump.length &gt;= @min_clump_size
           results[clump] = [methods.length, results[clump]].max
         end
-      }
+      end
       results
     end
   end</diff>
      <filename>lib/reek/smells/data_clump.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,17 +2,17 @@
 
 Gem::Specification.new do |s|
   s.name = %q{reek}
-  s.version = &quot;1.1.3.14&quot;
+  s.version = &quot;1.1.3.15&quot;
 
   s.required_rubygems_version = Gem::Requirement.new(&quot;&gt;= 0&quot;) if s.respond_to? :required_rubygems_version=
   s.authors = [&quot;Kevin Rutherford&quot;]
-  s.date = %q{2009-08-20}
+  s.date = %q{2009-09-03}
   s.default_executable = %q{reek}
   s.description = %q{Code smell detector for Ruby}
   s.email = [&quot;kevin@rutherford-software.com&quot;]
   s.executables = [&quot;reek&quot;]
   s.extra_rdoc_files = [&quot;History.txt&quot;, &quot;License.txt&quot;, &quot;README.txt&quot;]
-  s.files = [&quot;History.txt&quot;, &quot;License.txt&quot;, &quot;README.txt&quot;, &quot;Rakefile&quot;, &quot;bin/reek&quot;, &quot;config/defaults.reek&quot;, &quot;features/masking_smells.feature&quot;, &quot;features/options.feature&quot;, &quot;features/reports.feature&quot;, &quot;features/samples.feature&quot;, &quot;features/stdin.feature&quot;, &quot;features/step_definitions/reek_steps.rb&quot;, &quot;features/support/env.rb&quot;, &quot;lib/reek.rb&quot;, &quot;lib/reek/adapters/application.rb&quot;, &quot;lib/reek/adapters/config_file.rb&quot;, &quot;lib/reek/adapters/core_extras.rb&quot;, &quot;lib/reek/adapters/object_source.rb&quot;, &quot;lib/reek/adapters/rake_task.rb&quot;, &quot;lib/reek/adapters/report.rb&quot;, &quot;lib/reek/adapters/source.rb&quot;, &quot;lib/reek/adapters/spec.rb&quot;, &quot;lib/reek/block_context.rb&quot;, &quot;lib/reek/class_context.rb&quot;, &quot;lib/reek/code_context.rb&quot;, &quot;lib/reek/code_parser.rb&quot;, &quot;lib/reek/command_line.rb&quot;, &quot;lib/reek/configuration.rb&quot;, &quot;lib/reek/detector_stack.rb&quot;, &quot;lib/reek/exceptions.reek&quot;, &quot;lib/reek/if_context.rb&quot;, &quot;lib/reek/method_context.rb&quot;, &quot;lib/reek/module_context.rb&quot;, &quot;lib/reek/name.rb&quot;, &quot;lib/reek/object_refs.rb&quot;, &quot;lib/reek/sexp_formatter.rb&quot;, &quot;lib/reek/singleton_method_context.rb&quot;, &quot;lib/reek/smell_warning.rb&quot;, &quot;lib/reek/smells/control_couple.rb&quot;, &quot;lib/reek/smells/duplication.rb&quot;, &quot;lib/reek/smells/feature_envy.rb&quot;, &quot;lib/reek/smells/large_class.rb&quot;, &quot;lib/reek/smells/long_method.rb&quot;, &quot;lib/reek/smells/long_parameter_list.rb&quot;, &quot;lib/reek/smells/long_yield_list.rb&quot;, &quot;lib/reek/smells/nested_iterators.rb&quot;, &quot;lib/reek/smells/simulated_polymorphism.rb&quot;, &quot;lib/reek/smells/smell_detector.rb&quot;, &quot;lib/reek/smells/uncommunicative_name.rb&quot;, &quot;lib/reek/smells/utility_function.rb&quot;, &quot;lib/reek/sniffer.rb&quot;, &quot;lib/reek/stop_context.rb&quot;, &quot;lib/reek/yield_call_context.rb&quot;, &quot;reek.gemspec&quot;, &quot;spec/quality/reek_source_spec.rb&quot;, &quot;spec/reek/adapters/report_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_of_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_only_of_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_spec.rb&quot;, &quot;spec/reek/block_context_spec.rb&quot;, &quot;spec/reek/class_context_spec.rb&quot;, &quot;spec/reek/code_context_spec.rb&quot;, &quot;spec/reek/code_parser_spec.rb&quot;, &quot;spec/reek/config_spec.rb&quot;, &quot;spec/reek/configuration_spec.rb&quot;, &quot;spec/reek/if_context_spec.rb&quot;, &quot;spec/reek/method_context_spec.rb&quot;, &quot;spec/reek/module_context_spec.rb&quot;, &quot;spec/reek/name_spec.rb&quot;, &quot;spec/reek/object_refs_spec.rb&quot;, &quot;spec/reek/object_source_spec.rb&quot;, &quot;spec/reek/singleton_method_context_spec.rb&quot;, &quot;spec/reek/smell_warning_spec.rb&quot;, &quot;spec/reek/smells/control_couple_spec.rb&quot;, &quot;spec/reek/smells/duplication_spec.rb&quot;, &quot;spec/reek/smells/feature_envy_spec.rb&quot;, &quot;spec/reek/smells/large_class_spec.rb&quot;, &quot;spec/reek/smells/long_method_spec.rb&quot;, &quot;spec/reek/smells/long_parameter_list_spec.rb&quot;, &quot;spec/reek/smells/nested_iterators_spec.rb&quot;, &quot;spec/reek/smells/simulated_polymorphism_spec.rb&quot;, &quot;spec/reek/smells/smell_detector_spec.rb&quot;, &quot;spec/reek/smells/uncommunicative_name_spec.rb&quot;, &quot;spec/reek/smells/utility_function_spec.rb&quot;, &quot;spec/reek/sniffer_spec.rb&quot;, &quot;spec/samples/all_but_one_masked/clean_one.rb&quot;, &quot;spec/samples/all_but_one_masked/dirty.rb&quot;, &quot;spec/samples/all_but_one_masked/masked.reek&quot;, &quot;spec/samples/clean_due_to_masking/clean_one.rb&quot;, &quot;spec/samples/clean_due_to_masking/clean_three.rb&quot;, &quot;spec/samples/clean_due_to_masking/clean_two.rb&quot;, &quot;spec/samples/clean_due_to_masking/dirty_one.rb&quot;, &quot;spec/samples/clean_due_to_masking/dirty_two.rb&quot;, &quot;spec/samples/clean_due_to_masking/masked.reek&quot;, &quot;spec/samples/corrupt_config_file/corrupt.reek&quot;, &quot;spec/samples/corrupt_config_file/dirty.rb&quot;, &quot;spec/samples/empty_config_file/dirty.rb&quot;, &quot;spec/samples/empty_config_file/empty.reek&quot;, &quot;spec/samples/exceptions.reek&quot;, &quot;spec/samples/inline.rb&quot;, &quot;spec/samples/masked/dirty.rb&quot;, &quot;spec/samples/masked/masked.reek&quot;, &quot;spec/samples/mixed_results/clean_one.rb&quot;, &quot;spec/samples/mixed_results/clean_three.rb&quot;, &quot;spec/samples/mixed_results/clean_two.rb&quot;, &quot;spec/samples/mixed_results/dirty_one.rb&quot;, &quot;spec/samples/mixed_results/dirty_two.rb&quot;, &quot;spec/samples/not_quite_masked/dirty.rb&quot;, &quot;spec/samples/not_quite_masked/masked.reek&quot;, &quot;spec/samples/optparse.rb&quot;, &quot;spec/samples/overrides/masked/dirty.rb&quot;, &quot;spec/samples/overrides/masked/lower.reek&quot;, &quot;spec/samples/overrides/upper.reek&quot;, &quot;spec/samples/redcloth.rb&quot;, &quot;spec/samples/three_clean_files/clean_one.rb&quot;, &quot;spec/samples/three_clean_files/clean_three.rb&quot;, &quot;spec/samples/three_clean_files/clean_two.rb&quot;, &quot;spec/samples/two_smelly_files/dirty_one.rb&quot;, &quot;spec/samples/two_smelly_files/dirty_two.rb&quot;, &quot;spec/spec.opts&quot;, &quot;spec/spec_helper.rb&quot;, &quot;tasks/reek.rake&quot;, &quot;tasks/test.rake&quot;]
+  s.files = [&quot;History.txt&quot;, &quot;License.txt&quot;, &quot;README.txt&quot;, &quot;Rakefile&quot;, &quot;bin/reek&quot;, &quot;config/defaults.reek&quot;, &quot;features/masking_smells.feature&quot;, &quot;features/options.feature&quot;, &quot;features/reports.feature&quot;, &quot;features/samples.feature&quot;, &quot;features/stdin.feature&quot;, &quot;features/step_definitions/reek_steps.rb&quot;, &quot;features/support/env.rb&quot;, &quot;lib/reek.rb&quot;, &quot;lib/reek/adapters/application.rb&quot;, &quot;lib/reek/adapters/config_file.rb&quot;, &quot;lib/reek/adapters/core_extras.rb&quot;, &quot;lib/reek/adapters/object_source.rb&quot;, &quot;lib/reek/adapters/rake_task.rb&quot;, &quot;lib/reek/adapters/report.rb&quot;, &quot;lib/reek/adapters/source.rb&quot;, &quot;lib/reek/adapters/spec.rb&quot;, &quot;lib/reek/block_context.rb&quot;, &quot;lib/reek/class_context.rb&quot;, &quot;lib/reek/code_context.rb&quot;, &quot;lib/reek/code_parser.rb&quot;, &quot;lib/reek/command_line.rb&quot;, &quot;lib/reek/configuration.rb&quot;, &quot;lib/reek/detector_stack.rb&quot;, &quot;lib/reek/exceptions.reek&quot;, &quot;lib/reek/if_context.rb&quot;, &quot;lib/reek/method_context.rb&quot;, &quot;lib/reek/module_context.rb&quot;, &quot;lib/reek/name.rb&quot;, &quot;lib/reek/object_refs.rb&quot;, &quot;lib/reek/sexp_formatter.rb&quot;, &quot;lib/reek/singleton_method_context.rb&quot;, &quot;lib/reek/smell_warning.rb&quot;, &quot;lib/reek/smells/control_couple.rb&quot;, &quot;lib/reek/smells/data_clump.rb&quot;, &quot;lib/reek/smells/duplication.rb&quot;, &quot;lib/reek/smells/feature_envy.rb&quot;, &quot;lib/reek/smells/large_class.rb&quot;, &quot;lib/reek/smells/long_method.rb&quot;, &quot;lib/reek/smells/long_parameter_list.rb&quot;, &quot;lib/reek/smells/long_yield_list.rb&quot;, &quot;lib/reek/smells/nested_iterators.rb&quot;, &quot;lib/reek/smells/simulated_polymorphism.rb&quot;, &quot;lib/reek/smells/smell_detector.rb&quot;, &quot;lib/reek/smells/uncommunicative_name.rb&quot;, &quot;lib/reek/smells/utility_function.rb&quot;, &quot;lib/reek/sniffer.rb&quot;, &quot;lib/reek/stop_context.rb&quot;, &quot;lib/reek/yield_call_context.rb&quot;, &quot;reek.gemspec&quot;, &quot;spec/quality/reek_source_spec.rb&quot;, &quot;spec/reek/adapters/report_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_of_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_only_of_spec.rb&quot;, &quot;spec/reek/adapters/should_reek_spec.rb&quot;, &quot;spec/reek/block_context_spec.rb&quot;, &quot;spec/reek/class_context_spec.rb&quot;, &quot;spec/reek/code_context_spec.rb&quot;, &quot;spec/reek/code_parser_spec.rb&quot;, &quot;spec/reek/config_spec.rb&quot;, &quot;spec/reek/configuration_spec.rb&quot;, &quot;spec/reek/if_context_spec.rb&quot;, &quot;spec/reek/method_context_spec.rb&quot;, &quot;spec/reek/module_context_spec.rb&quot;, &quot;spec/reek/name_spec.rb&quot;, &quot;spec/reek/object_refs_spec.rb&quot;, &quot;spec/reek/object_source_spec.rb&quot;, &quot;spec/reek/singleton_method_context_spec.rb&quot;, &quot;spec/reek/smell_warning_spec.rb&quot;, &quot;spec/reek/smells/control_couple_spec.rb&quot;, &quot;spec/reek/smells/data_clump_spec.rb&quot;, &quot;spec/reek/smells/duplication_spec.rb&quot;, &quot;spec/reek/smells/feature_envy_spec.rb&quot;, &quot;spec/reek/smells/large_class_spec.rb&quot;, &quot;spec/reek/smells/long_method_spec.rb&quot;, &quot;spec/reek/smells/long_parameter_list_spec.rb&quot;, &quot;spec/reek/smells/nested_iterators_spec.rb&quot;, &quot;spec/reek/smells/simulated_polymorphism_spec.rb&quot;, &quot;spec/reek/smells/smell_detector_spec.rb&quot;, &quot;spec/reek/smells/uncommunicative_name_spec.rb&quot;, &quot;spec/reek/smells/utility_function_spec.rb&quot;, &quot;spec/reek/sniffer_spec.rb&quot;, &quot;spec/samples/all_but_one_masked/clean_one.rb&quot;, &quot;spec/samples/all_but_one_masked/dirty.rb&quot;, &quot;spec/samples/all_but_one_masked/masked.reek&quot;, &quot;spec/samples/clean_due_to_masking/clean_one.rb&quot;, &quot;spec/samples/clean_due_to_masking/clean_three.rb&quot;, &quot;spec/samples/clean_due_to_masking/clean_two.rb&quot;, &quot;spec/samples/clean_due_to_masking/dirty_one.rb&quot;, &quot;spec/samples/clean_due_to_masking/dirty_two.rb&quot;, &quot;spec/samples/clean_due_to_masking/masked.reek&quot;, &quot;spec/samples/corrupt_config_file/corrupt.reek&quot;, &quot;spec/samples/corrupt_config_file/dirty.rb&quot;, &quot;spec/samples/empty_config_file/dirty.rb&quot;, &quot;spec/samples/empty_config_file/empty.reek&quot;, &quot;spec/samples/exceptions.reek&quot;, &quot;spec/samples/inline.rb&quot;, &quot;spec/samples/masked/dirty.rb&quot;, &quot;spec/samples/masked/masked.reek&quot;, &quot;spec/samples/mixed_results/clean_one.rb&quot;, &quot;spec/samples/mixed_results/clean_three.rb&quot;, &quot;spec/samples/mixed_results/clean_two.rb&quot;, &quot;spec/samples/mixed_results/dirty_one.rb&quot;, &quot;spec/samples/mixed_results/dirty_two.rb&quot;, &quot;spec/samples/not_quite_masked/dirty.rb&quot;, &quot;spec/samples/not_quite_masked/masked.reek&quot;, &quot;spec/samples/optparse.rb&quot;, &quot;spec/samples/overrides/masked/dirty.rb&quot;, &quot;spec/samples/overrides/masked/lower.reek&quot;, &quot;spec/samples/overrides/upper.reek&quot;, &quot;spec/samples/redcloth.rb&quot;, &quot;spec/samples/three_clean_files/clean_one.rb&quot;, &quot;spec/samples/three_clean_files/clean_three.rb&quot;, &quot;spec/samples/three_clean_files/clean_two.rb&quot;, &quot;spec/samples/two_smelly_files/dirty_one.rb&quot;, &quot;spec/samples/two_smelly_files/dirty_two.rb&quot;, &quot;spec/spec.opts&quot;, &quot;spec/spec_helper.rb&quot;, &quot;tasks/reek.rake&quot;, &quot;tasks/test.rake&quot;]
   s.homepage = %q{http://wiki.github.com/kevinrutherford/reek}
   s.post_install_message = %q{
 For more information on reek, see http://wiki.github.com/kevinrutherford/reek</diff>
      <filename>reek.gemspec</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>9fded2f4c9da2826e2bdd05503e43a56eaf50e53</id>
    </parent>
  </parents>
  <author>
    <name>Kevin Rutherford</name>
    <email>kevin@rutherford-software.com</email>
  </author>
  <url>http://github.com/kevinrutherford/reek/commit/a2a4acf0b15488fe3c2e092520227e5027db5c10</url>
  <id>a2a4acf0b15488fe3c2e092520227e5027db5c10</id>
  <committed-date>2009-09-03T14:12:11-07:00</committed-date>
  <authored-date>2009-09-03T14:12:11-07:00</authored-date>
  <message>Release 1.1.3.15</message>
  <tree>2c9079137bcd602f9c675c65067f0c7dd4348eba</tree>
  <committer>
    <name>Kevin Rutherford</name>
    <email>kevin@rutherford-software.com</email>
  </committer>
</commit>
