commit 1163d7b86ebcfcc3fb3988841de612228f0ee38e8422046f280516663bcfa8b9 Author: Adrian Schröter Date: Sat May 4 00:14:01 2024 +0200 Sync from SUSE:SLFO:Main rubygem-diff-lcs revision 3b5382e45b0ec7868d6ea6b2f60fc137 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/diff-lcs-1.5.0.gem b/diff-lcs-1.5.0.gem new file mode 100644 index 0000000..fce12bf --- /dev/null +++ b/diff-lcs-1.5.0.gem @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49b934001c8c6aedb37ba19daec5c634da27b318a7a3c654ae979d6ba1929b67 +size 52736 diff --git a/fix-interpreter.patch b/fix-interpreter.patch new file mode 100644 index 0000000..aa0cef1 --- /dev/null +++ b/fix-interpreter.patch @@ -0,0 +1,16 @@ +--- diff-lcs-1.4.2.orig/bin/htmldiff 2020-06-27 20:58:32.365435269 +0200 ++++ diff-lcs-1.4.2/bin/htmldiff 2020-06-27 20:58:49.297519679 +0200 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env ruby -w ++#!/usr/bin/ruby -w + # frozen_string_literal: true + + require 'diff/lcs' +--- diff-lcs-1.4.2.orig/bin/ldiff 2020-06-27 20:58:32.365435269 +0200 ++++ diff-lcs-1.4.2/bin/ldiff 2020-06-27 20:59:01.713581567 +0200 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env ruby -w ++#!/usr/bin/ruby -w + # frozen_string_literal: true + + require 'diff/lcs' diff --git a/gem2rpm.yml b/gem2rpm.yml new file mode 100644 index 0000000..a5b642e --- /dev/null +++ b/gem2rpm.yml @@ -0,0 +1,4 @@ +:license: MIT and Artistic-2.0 and GPL-2.0 + +:patches: + fix-interpreter.patch: -p1 diff --git a/rubygem-diff-lcs.changes b/rubygem-diff-lcs.changes new file mode 100644 index 0000000..50bac3a --- /dev/null +++ b/rubygem-diff-lcs.changes @@ -0,0 +1,234 @@ +------------------------------------------------------------------- +Sat Dec 25 22:32:52 UTC 2021 - Manuel Schnitzer + +- updated to version 1.5.0 + + * Updated the CI configuration and monkey-patch Hoe. + + * Kenichi Kamiya fixed a test configuration deprecation in SimpleCov. [#69] + + * Tien introduced several corrections and code improvements: + + - Removed an off-by-one error when calculating an index value by embracing + Ruby iteration properly. This had a side-effect of fixing a long-standing + bug in `#traverse_sequences` where the traversal would not be transitive. + That is, `LCS(s2, s1)` should produce a sequence that is transitive with + `LCS(s1, s2)` on traversal, and applying the diff computed from those + results would result in equivalent changes that could be played forward or + backward as appropriate. [#71], [#75] + + - The above fix resulted in a changed order of the longest common subsequence + when callbacks were applied. After analysis, it was determined that the + computed subsequence was _equivalent_ to the prior version, so the test was + updated. This also resulted in the clarification of documentation when + traversing the subsequences. [#79] + + - An infinite loop case in the case where Diff::LCS would be included into an + enumerable class has been fixed. [#73] + + - Clarified the purpose of a threshold test in calculation of LCS. [#72], + [#80] + + * Removed autotest directory + +------------------------------------------------------------------- +Mon Jul 13 17:24:56 UTC 2020 - Manuel Schnitzer + +- updated to version 1.4.4 + + ## 1.4.4 / 2020-07-01 + + - Fixed an issue reported by Jun Aruga in the Diff::LCS::Ldiff binary text + detection. [#44][] + - Fixed a theoretical issue reported by Jun Aruga in Diff::LCS::Hunk to raise + a more useful exception. [#43][] + - Added documentation that should address custom object issues as reported in + [#35][]. + + - Fixed more diff errors, in part reported in [#65][]. + + - The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`. + The diff size _must_ be accurate for correct change placement. + - When selecting @max_diff_size in Diff::LCS::Hunk, choose it based on + `block.diff_size.abs`. + - Made a number of changes that will, unfortunately, increase allocations + at the cost of being safe with frozen strings. + - Add some knowledge that when `Diff::LCS::Hunk#diff` is called, that we + are processing the _last_ hunk, so some changes will be made to how the + output is generated. + + - `old`, `ed`, and `reverse_ed` formats have no differences. + - `unified` format will report `\ No newline at end of file` given the + correct conditions, at most once. Unified range reporting also + differs for the last hunk such that the `length` of the range is + reduced by one. + - `context` format will report `\No newline at end of file` given the + correct conditions, up to once per "file". Context range reporting also + differs for the last hunk such that the `end` part of the range is + reduced by one to a minimum of one. + + - Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so + that the phrase being compared isn't nonsense French. + + - Updated formatting. + - Added a Rake task to assist with manual testing on Ruby 1.8. + + ## 1.4.3 / 2020-06-29 + + - Fixed several issues with the 1.4 on Rubies older than 2.0. Some of this was + providing useful shim functions to Hoe 3.x (which dropped these older + Rubies a while ago). Specifically: + + - Removed Array#lazy from a method in Diff::LCS::Hunk. + - Changed some unit tests to use old-style Symbol-keyed hashes. + - Changed some unit test helper functions to no longer use keyword + parameters, but only a trailing options hash. + - Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`. + + Resolves [#63][]. + +------------------------------------------------------------------- +Sat Jun 27 18:37:42 UTC 2020 - Manuel Schnitzer + +- updated to version 1.4.2 + + ## 1.4.2 / 2020-06-23 + + - Camille Drapier fixed a small issue with RuboCop configuration. [#59][] + - Applied another fix (and unit test) to fix an issue for the Chef team. + [#60][], [#61][] + + ## 1.4.1 / 2020-06-23 + + - Fix an issue where diff sizes could be negative, and they should be. [#57][], + [#58][] + + ## 1.4 / 2020-06-23 + + - Ruby versions lower than 2.4 are soft-deprecated and will not be run as + part of the CI process any longer. + - Akinora MUSHA (knu) added the ability for Diff::LCS::Change objects to be + implicitly treated arrays. Originally provided as pull request [#47][], + but it introduced a number of test failures as documented in [#48][], and + remediation of Diff::LCS itself was introduced in [#49][]. + - Resolved [#5][] with some tests comparing output from `system` calls to + `bin/ldiff` with some pre-generated output. Resolved [#6][] with these + tests. + - Resolved a previously undetected `bin/ldiff` issue with `--context` output + not matching `diff --context` output. + - Resolved an issue with later versions of Ruby not working with an `OptParse` + specification of `Numeric`; this has been changed to `Integer`. + - Brandon Fish added truffleruby in [#52][]. + - Fixed two missing classes as reported in [#53][]. + +- Updated fix-interpreter.patch to apply again + +------------------------------------------------------------------- +Thu Jan 19 05:31:17 UTC 2017 - coolo@suse.com + +- updated to version 1.3 + History.rdoc removed upstream + +------------------------------------------------------------------- +Wed Mar 23 12:07:48 UTC 2016 - olaf@aepfle.de + +- Force fixed timestamps for patched gems (bsc#916047) + +------------------------------------------------------------------- +Mon Nov 10 12:31:22 UTC 2014 - tboerger@suse.com + +- Renamed fix-interpreter.diff to fix-interpreter.patch +- Added gem2rpm.yml + - Fixed license list + - Added patch again + +------------------------------------------------------------------- +Mon Nov 10 11:11:09 UTC 2014 - tboerger@suse.com + +- Added new ruby macros with gem2rpm + +------------------------------------------------------------------- +Fri Nov 22 08:40:35 UTC 2013 - coolo@suse.com + +- updated to version 1.2.5 + * Bugs fixed: + * Comparing arrays flattened them too far, especially with Diff::LCS.sdiff. + https://github.com/halostatue/diff-lcs/pull/23 + +------------------------------------------------------------------- +Thu Oct 3 11:33:47 UTC 2013 - jreidinger@suse.com + +- conform license to conform SPDX + +------------------------------------------------------------------- +Wed Apr 24 05:51:10 UTC 2013 - coolo@suse.com + +- updated to version 1.2.4 + * Bugs fixed: + * A bug was introduced after 1.1.3 when pruning common sequences at the start + of comparison. Paul Kunysch (@pck) fixed this in pull request 18. Thanks! + https://github.com/halostatue/diff-lcs/pull/18 + * The Rubinius (1.9 mode) bug in rubinius/rubinius#2268 has been fixed by the + Rubinius team two days after it was filed. Thanks for fixing this so quickly! + https://github.com/rubinius/rubinius/issues/2268 + * Switching to Raggi's hoe-gemspec2 for gemspec generation. + +------------------------------------------------------------------- +Fri Apr 12 07:51:59 UTC 2013 - coolo@suse.com + +- updated to version 1.2.3 + * Bugs Fixed: + * The new encoding detection for diff output generation (added in 1.2.2) + introduced a bug if the left side of the comparison was the empty set. + Originally found in rspec/rspec-expectations#238 and + rspec/rspec-expectations#239. Jon Rowe developed a reasonable heuristic + (left side, right side, empty string literal) to avoid this bug. + https://github.com/rspec/rspec-expectations/pull/238 + https://github.com/rspec/rspec-expectations/pull/239 + * There is a known issue with Rubinius in 1.9 mode reported in + rubinius/rubinius#2268 and demonstrated in the Travis CI builds. For all + other tested platforms, diff-lcs is considered stable. As soon as a suitably + small test-case can be created for the Rubinius team to examine, this will be + added to the Rubinius issue around this. + https://github.com/rubinius/rubinius/issues/2268 + https://travis-ci.org/halostatue/diff-lcs/jobs/6241195 + + == 1.2.2 / 2013-03-30 + + * Bugs Fixed: + * Diff::LCS::Hunk could not properly generate a difference for comparison + sets that are not US-ASCII-compatible because of the use of literal regular + expressions and strings. Jon Rowe (JonRowe) found this in + rspec/rspec-expectations#219 and provided a first pass implementation in + diff-lcs#15. I've reworked it because of test failures in Rubinius when + running in Ruby 1.9 mode. This coerces the added values to the encoding of + the old dataset (as determined by the first piece of the old dataset). + https://github.com/rspec/rspec-expectations/issues/219 + https://github.com/halostatue/diff-lcs/pull/15 + * Adding Travis CI testing for Ruby 2.0. + +------------------------------------------------------------------- +Tue Feb 12 17:04:32 UTC 2013 - coolo@suse.com + +- updated to version 1.2.1 + +------------------------------------------------------------------- +Fri Jan 25 06:47:51 UTC 2013 - coolo@suse.com + +- updated to version 1.2.0 + +------------------------------------------------------------------- +Wed Nov 30 14:23:31 UTC 2011 - schubi@suse.com + +- added provides: rubygem-diff-lcs-1_1 + +------------------------------------------------------------------- +Fri Jun 11 10:00:01 UTC 2010 - mrueckert@suse.de + +- use rubygems_requires macro + +------------------------------------------------------------------- +Tue Mar 31 19:02:00 CEST 2009 - mrueckert@suse.de + +- initial package + diff --git a/rubygem-diff-lcs.spec b/rubygem-diff-lcs.spec new file mode 100644 index 0000000..5f5d007 --- /dev/null +++ b/rubygem-diff-lcs.spec @@ -0,0 +1,77 @@ +# +# spec file for package rubygem-diff-lcs +# +# Copyright (c) 2021 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +# +# This file was generated with a gem2rpm.yml and not just plain gem2rpm. +# All sections marked as MANUAL, license headers, summaries and descriptions +# can be maintained in that file. Please consult this file before editing any +# of those fields +# + +Name: rubygem-diff-lcs +Version: 1.5.0 +Release: 0 +%define mod_name diff-lcs +%define mod_full_name %{mod_name}-%{version} +BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: %{ruby >= 1.8} +BuildRequires: %{rubygem gem2rpm} +BuildRequires: %{rubygem rdoc > 3.10} +BuildRequires: ruby-macros >= 5 +BuildRequires: update-alternatives +URL: https://github.com/halostatue/diff-lcs +Source: https://rubygems.org/gems/%{mod_full_name}.gem +Source1: gem2rpm.yml +# MANUAL +Patch0: fix-interpreter.patch +# /MANUAL +Summary: Diff::LCS computes the difference between two Enumerable sequences +License: MIT AND Artistic-2.0 AND GPL-2.0-only +Group: Development/Languages/Ruby +PreReq: update-alternatives + +%description +Diff::LCS computes the difference between two Enumerable sequences using the +McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities +to create a simple HTML diff output format and a standard diff-like tool. +This is release 1.4.3, providing a simple extension that allows for +Diff::LCS::Change objects to be treated implicitly as arrays and fixes a +number of formatting issues. +Ruby versions below 2.5 are soft-deprecated, which means that older versions +are no longer part of the CI test suite. If any changes have been introduced +that break those versions, bug reports and patches will be accepted, but it +will be up to the reporter to verify any fixes prior to release. The next +major release will completely break compatibility. + +%prep +%gem_unpack +%patch0 -p1 +find -type f -print0 | xargs -0 touch -r %{S:0} +%gem_build + +%build + +%install +%gem_install \ + --symlink-binaries \ + --doc-files="History.md License.md README.rdoc" \ + -f + +%gem_packages + +%changelog