Hello community, here is the log from the commit of package rubygem-hashdiff for openSUSE:Factory checked in at 2017-10-09 19:47:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-hashdiff (Old) and /work/SRC/openSUSE:Factory/.rubygem-hashdiff.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-hashdiff" Mon Oct 9 19:47:05 2017 rev:6 rq:532664 version:0.3.7 Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-hashdiff/rubygem-hashdiff.changes 2017-09-04 12:36:53.602692912 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-hashdiff.new/rubygem-hashdiff.changes 2017-10-09 19:48:44.850195905 +0200 @@ -1,0 +2,6 @@ +Mon Oct 9 07:01:34 UTC 2017 - [email protected] + +- updated to version 0.3.7 + * remove 1.8.7 support from gemspec #39 + +------------------------------------------------------------------- Old: ---- hashdiff-0.3.6.gem New: ---- hashdiff-0.3.7.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-hashdiff.spec ++++++ --- /var/tmp/diff_new_pack.2Kid1U/_old 2017-10-09 19:48:45.438170064 +0200 +++ /var/tmp/diff_new_pack.2Kid1U/_new 2017-10-09 19:48:45.438170064 +0200 @@ -24,16 +24,16 @@ # Name: rubygem-hashdiff -Version: 0.3.6 +Version: 0.3.7 Release: 0 %define mod_name hashdiff %define mod_full_name %{mod_name}-%{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: %{ruby >= 1.8.7} +BuildRequires: %{ruby >= 1.9.3} BuildRequires: %{rubygem gem2rpm} BuildRequires: ruby-macros >= 5 Url: https://github.com/liufengyun/hashdiff -Source: http://rubygems.org/gems/%{mod_full_name}.gem +Source: https://rubygems.org/gems/%{mod_full_name}.gem Source1: gem2rpm.yml Summary: HashDiff is a diff lib to compute the smallest difference between License: MIT ++++++ hashdiff-0.3.6.gem -> hashdiff-0.3.7.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/.travis.yml new/.travis.yml --- old/.travis.yml 2017-08-22 20:50:23.000000000 +0200 +++ new/.travis.yml 1970-01-01 01:00:00.000000000 +0100 @@ -4,7 +4,10 @@ - 1.9.3 - 2.0.0 - 2.1.10 - - 2.2.6 - - 2.3.3 - - 2.4.0 + - 2.2.8 + - 2.3.4 + - 2.4.2 script: "bundle exec rake spec" + +before_install: + - gem install bundler diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/README.md new/README.md --- old/README.md 2017-08-22 20:50:23.000000000 +0200 +++ new/README.md 1970-01-01 01:00:00.000000000 +0100 @@ -91,9 +91,9 @@ ### Options -There are seven options available: `:delimiter`, `:similarity`, -`:strict`, `:numeric_tolerance`, `:strip`, `:case_insensitive` -and `:array_path`. +There are eight options available: `:delimiter`, `:similarity`, +`:strict`, `:numeric_tolerance`, `:strip`, `:case_insensitive`, `:array_path` +and `:use_lcs` #### `:delimiter` @@ -184,6 +184,28 @@ diff.should == [["~", [:a], [1], {0=>1}]] ``` +#### `:use_lcs` + +The :use_lcs option is used to specify whether a +[Longest common subsequence](https://en.wikipedia.org/wiki/Longest_common_subsequence_problem) +(LCS) algorithm is used to determine differences in arrays. This defaults to +`true` but can be changed to `false` for significantly faster array comparisons +(O(n) complexity rather than O(n<sup>2</sup>) for LCS). + +When :use_lcs is false the results of array comparisons have a tendency to +show changes at indexes rather than additions and subtractions when :use_lcs is +true. + +Note, currently the :similarity option has no effect when :use_lcs is false. + +```ruby +a = {x: [0, 1, 2]} +b = {x: [0, 2, 2, 3]} + +diff = HashDiff.diff(a, b, :use_lcs => false) +diff.should == [["~", "x[1]", 1, 2], ["+", "x[3]", 3]] +``` + #### Specifying a custom comparison method It's possible to specify how the values of a key should be compared. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/changelog.md new/changelog.md --- old/changelog.md 2017-08-22 20:50:23.000000000 +0200 +++ new/changelog.md 1970-01-01 01:00:00.000000000 +0100 @@ -1,5 +1,9 @@ # Change Log +## v0.3.7 2017-10-08 + +* remove 1.8.7 support from gemspec #39 + ## v0.3.6 2017-08-22 * add option `use_lcs` #35 Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hashdiff.gemspec new/hashdiff.gemspec --- old/hashdiff.gemspec 2017-08-22 20:50:23.000000000 +0200 +++ new/hashdiff.gemspec 1970-01-01 01:00:00.000000000 +0100 @@ -12,7 +12,7 @@ s.test_files = `git ls-files -- Appraisals {spec}/*`.split("\n") s.require_paths = ['lib'] - s.required_ruby_version = Gem::Requirement.new(">= 1.8.7") + s.required_ruby_version = Gem::Requirement.new(">= 1.9.3") s.authors = ["Liu Fengyun"] s.email = ["[email protected]"] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/hashdiff/diff.rb new/lib/hashdiff/diff.rb --- old/lib/hashdiff/diff.rb 2017-08-22 20:50:23.000000000 +0200 +++ new/lib/hashdiff/diff.rb 1970-01-01 01:00:00.000000000 +0100 @@ -12,6 +12,7 @@ # * :numeric_tolerance (Numeric) [0] should be a positive numeric value. Value by which numeric differences must be greater than. By default, numeric values are compared exactly; with the :tolerance option, the difference between numeric values must be greater than the given value. # * :strip (Boolean) [false] whether or not to call #strip on strings before comparing # * :array_path (Boolean) [false] whether to return the path references for nested values in an array, can be used for patch compatibility with non string keys. + # * :use_lcs (Boolean) [true] whether or not to use an implementation of the Longest common subsequence algorithm for comparing arrays, produces better diffs but is slower. # # @yield [path, value1, value2] Optional block is used to compare each value, instead of default #==. If the block returns value other than true of false, then other specified comparison options will be used to do the comparison. # @@ -55,6 +56,8 @@ # * :numeric_tolerance (Numeric) [0] should be a positive numeric value. Value by which numeric differences must be greater than. By default, numeric values are compared exactly; with the :tolerance option, the difference between numeric values must be greater than the given value. # * :strip (Boolean) [false] whether or not to call #strip on strings before comparing # * :array_path (Boolean) [false] whether to return the path references for nested values in an array, can be used for patch compatibility with non string keys. + # * :use_lcs (Boolean) [true] whether or not to use an implementation of the Longest common subsequence algorithm for comparing arrays, produces better diffs but is slower. + # # # @yield [path, value1, value2] Optional block is used to compare each value, instead of default #==. If the block returns value other than true of false, then other specified comparison options will be used to do the comparison. # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/hashdiff/version.rb new/lib/hashdiff/version.rb --- old/lib/hashdiff/version.rb 2017-08-22 20:50:23.000000000 +0200 +++ new/lib/hashdiff/version.rb 1970-01-01 01:00:00.000000000 +0100 @@ -1,3 +1,3 @@ module HashDiff - VERSION = '0.3.6' + VERSION = '0.3.7' end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2017-08-22 20:50:23.000000000 +0200 +++ new/metadata 1970-01-01 01:00:00.000000000 +0100 @@ -1,69 +1,69 @@ --- !ruby/object:Gem::Specification name: hashdiff version: !ruby/object:Gem::Version - version: 0.3.6 + version: 0.3.7 platform: ruby authors: - Liu Fengyun autorequire: bindir: bin cert_chain: [] -date: 2017-08-22 00:00:00.000000000 Z +date: 2017-10-08 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: rspec requirement: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ~> - !ruby/object:Gem::Version version: '2.0' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ~> - !ruby/object:Gem::Version version: '2.0' - !ruby/object:Gem::Dependency name: yard requirement: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version version: '0' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version version: '0' - !ruby/object:Gem::Dependency name: bluecloth requirement: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version version: '0' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version version: '0' -description: " HashDiff is a diff lib to compute the smallest difference between two - hashes. " +description: ' HashDiff is a diff lib to compute the smallest difference between two + hashes. ' email: - [email protected] executables: [] extensions: [] extra_rdoc_files: [] files: -- ".gitignore" -- ".rspec" -- ".travis.yml" -- ".yardopts" +- .gitignore +- .rspec +- .travis.yml +- .yardopts - Gemfile - LICENSE - README.md @@ -95,19 +95,18 @@ - lib required_ruby_version: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version - version: 1.8.7 + version: 1.9.3 required_rubygems_version: !ruby/object:Gem::Requirement requirements: - - - ">=" + - - '>=' - !ruby/object:Gem::Version version: '0' requirements: [] rubyforge_project: -rubygems_version: 2.5.1 +rubygems_version: 2.0.14.1 signing_key: specification_version: 4 summary: HashDiff is a diff lib to compute the smallest difference between two hashes. test_files: [] -has_rdoc:
