diff-lcs 1.5.0 → 1.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0df61a794bf8b132a80753391063526ffc15277d5f2dc592d319d37255d3700f
4
- data.tar.gz: 9664b2f8338ff376bf7b4c9c1ae45e591e789b00b726a53523a2076f014aa5e0
3
+ metadata.gz: 3538bd306feb87c5a2d957b3956a9b8ede2a2782db387f9f253115053c2066a1
4
+ data.tar.gz: af8dd06512d39de79534212726c6ed9beba9560e110a1026666181a21dbb5dcb
5
5
  SHA512:
6
- metadata.gz: 37e529e14e23a3c121f3d5cc3f88fbed90d9efe44376bb579699126c2c1d2ea34649a079902dca42cb72f891daa27e347c99b2e0a32b58245117dd2567af2db0
7
- data.tar.gz: 30576530bd6e1634635989729caeeaed68b9268423b659443b95abc66549491376f179b558b07dc8cc9bcf14f2768433d771c037514ec720a21a43dc9c197a5f
6
+ metadata.gz: 3598cd0dc37b22112495d82949a3d846751ca2dc3717dffe313acf6740761df98ed6d9f158ebc1fc7be6739bb3ac774ee3d8a0c4ccb4f2f651aaa5c45b49e9d9
7
+ data.tar.gz: 77f4c9705752143e88953395b991d4105de3e744f524421ff9a3933aa18febf82854462835ede955b72c62884143f27b9278f968f4629f40bbce2192ca44aa5b
data/Contributing.md CHANGED
@@ -94,6 +94,7 @@ Thanks to everyone else who has contributed code or bug reports to Diff::LCS:
94
94
  - Josep (@apuratepp)
95
95
  - Josh Bronson
96
96
  - Jun Aruga
97
+ - Justin Steele
97
98
  - Kenichi Kamiya
98
99
  - Kensuke Nagae
99
100
  - Kevin Ansfield
@@ -105,6 +106,7 @@ Thanks to everyone else who has contributed code or bug reports to Diff::LCS:
105
106
  - Oleg Orlov
106
107
  - Paul Kunysch
107
108
  - Pete Higgins
109
+ - Peter Goldstein
108
110
  - Peter Wagenet
109
111
  - Philippe Lafoucrière
110
112
  - Ryan Lovelett
data/History.md CHANGED
@@ -1,10 +1,33 @@
1
1
  # History
2
2
 
3
+ ## 1.5.1 / 2024-01-31
4
+
5
+ - Peter Goldstein updated CI configuration to add Ruby 3.1 and Masato Nakamura
6
+ added Ruby 3.2 and 3.3. [#82][], [#89][]
7
+
8
+ - Updated the CI configuration, resolving [#82][] to add Ruby 3.1. Masato
9
+
10
+ - Switched to [standard ruby][] formatting.
11
+
12
+ - Justin Steele converted the licence file to Markdown. [#84][]
13
+
14
+ - Updated the gem SPDX identifier for GPL 2.0 or later, resolving [#86][] by Vit
15
+ Ondruch.
16
+
17
+ - Resolve a potential security issue with `ldiff` in its use of `IO.read`
18
+ instead of `File.read`. [#91][]
19
+
20
+ - Added MFA authentication requirement for release to RubyGems. [#90][]
21
+
22
+ - Added dependabot management for actions and gems. [#90][]
23
+
24
+ - Updated CodeQL coniguration. [#90][]
25
+
3
26
  ## 1.5.0 / 2021-12-23
4
27
 
5
28
  - Updated the CI configuration and monkey-patch Hoe.
6
29
 
7
- - Kenichi Kamiya fixed a test configuration deprecation in SimpleCov. [#69]
30
+ - Kenichi Kamiya fixed a test configuration deprecation in SimpleCov. [#69][]
8
31
 
9
32
  - Tien introduced several corrections and code improvements:
10
33
 
@@ -14,34 +37,34 @@
14
37
  That is, `LCS(s2, s1)` should produce a sequence that is transitive with
15
38
  `LCS(s1, s2)` on traversal, and applying the diff computed from those
16
39
  results would result in equivalent changes that could be played forward or
17
- backward as appropriate. [#71], [#75]
40
+ backward as appropriate. [#71][], [#75][]
18
41
 
19
42
  - The above fix resulted in a changed order of the longest common subsequence
20
43
  when callbacks were applied. After analysis, it was determined that the
21
44
  computed subsequence was _equivalent_ to the prior version, so the test was
22
45
  updated. This also resulted in the clarification of documentation when
23
- traversing the subsequences. [#79]
46
+ traversing the subsequences. [#79][]
24
47
 
25
48
  - An infinite loop case in the case where Diff::LCS would be included into an
26
- enumerable class has been fixed. [#73]
49
+ enumerable class has been fixed. [#73][]
27
50
 
28
- - Clarified the purpose of a threshold test in calculation of LCS. [#72],
29
- [#80]
51
+ - Clarified the purpose of a threshold test in calculation of LCS. [#72][],
52
+ [#80][]
30
53
 
31
54
  - Removed autotest directory
32
55
 
33
56
  ## 1.4.4 / 2020-07-01
34
57
 
35
58
  - Fixed an issue reported by Jun Aruga in the Diff::LCS::Ldiff binary text
36
- detection. [#44]
59
+ detection. [#44][]
37
60
 
38
61
  - Fixed a theoretical issue reported by Jun Aruga in Diff::LCS::Hunk to raise
39
- a more useful exception. [#43]
62
+ a more useful exception. [#43][]
40
63
 
41
64
  - Added documentation that should address custom object issues as reported in
42
- [#35].
65
+ [#35][].
43
66
 
44
- - Fixed more diff errors, in part reported in [#65].
67
+ - Fixed more diff errors, in part reported in [#65][].
45
68
 
46
69
  - The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`. The
47
70
  diff size _must_ be accurate for correct change placement.
@@ -89,19 +112,19 @@
89
112
 
90
113
  - Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`.
91
114
 
92
- Resolves [#63].
115
+ Resolves [#63][].
93
116
 
94
117
  ## 1.4.2 / 2020-06-23
95
118
 
96
- - Camille Drapier fixed a small issue with RuboCop configuration. [#59]
119
+ - Camille Drapier fixed a small issue with RuboCop configuration. [#59][]
97
120
 
98
121
  - Applied another fix (and unit test) to fix an issue for the Chef team.
99
- [#60], [#61]
122
+ [#60][], [#61][]
100
123
 
101
124
  ## 1.4.1 / 2020-06-23
102
125
 
103
- - Fix an issue where diff sizes could be negative, and they should be. [#57],
104
- [#58]
126
+ - Fix an issue where diff sizes could be negative, and they should be. [#57][],
127
+ [#58][]
105
128
 
106
129
  ## 1.4 / 2020-06-23
107
130
 
@@ -109,12 +132,12 @@
109
132
  of the CI process any longer.
110
133
 
111
134
  - Akinora MUSHA (knu) added the ability for Diff::LCS::Change objects to be
112
- implicitly treated arrays. Originally provided as pull request [#47], but it
113
- introduced a number of test failures as documented in [#48], and remediation
114
- of Diff::LCS itself was introduced in [#49].
135
+ implicitly treated arrays. Originally provided as pull request [#47][], but it
136
+ introduced a number of test failures as documented in [#48][], and remediation
137
+ of Diff::LCS itself was introduced in [#49][].
115
138
 
116
- - Resolved [#5] with some tests comparing output from `system` calls to
117
- `bin/ldiff` with some pre-generated output. Resolved [#6] with these tests.
139
+ - Resolved [#5][] with some tests comparing output from `system` calls to
140
+ `bin/ldiff` with some pre-generated output. Resolved [#6][] with these tests.
118
141
 
119
142
  - Resolved a previously undetected `bin/ldiff` issue with `--context` output not
120
143
  matching `diff --context` output.
@@ -122,30 +145,30 @@
122
145
  - Resolved an issue with later versions of Ruby not working with an `OptParse`
123
146
  specification of `Numeric`; this has been changed to `Integer`.
124
147
 
125
- - Brandon Fish added truffleruby in [#52].
148
+ - Brandon Fish added truffleruby in [#52][].
126
149
 
127
- - Fixed two missing classes as reported in [#53].
150
+ - Fixed two missing classes as reported in [#53][].
128
151
 
129
152
  ## 1.3 / 2017-01-18
130
153
 
131
154
  - Bugs fixed:
132
155
 
133
- - Fixed an error for bin/ldiff --version. Fixes issue [#21].
156
+ - Fixed an error for bin/ldiff --version. Fixes issue [#21][].
134
157
 
135
158
  - Force Diff::LCS::Change and Diff::LCS::ContextChange to only perform
136
159
  equality comparisons against themselves. Provided by Kevin Mook in pull
137
- request [#29].
160
+ request [#29][].
138
161
 
139
162
  - Fix tab expansion in htmldiff, provided by Mark Friedgan in pull request
140
- [#25].
163
+ [#25][].
141
164
 
142
- - Silence Ruby 2.4 Fixnum deprecation warnings. Fixes issue [#38] and pull
143
- request [#36].
165
+ - Silence Ruby 2.4 Fixnum deprecation warnings. Fixes issue [#38][] and pull
166
+ request [#36][].
144
167
 
145
- - Ensure that test dependencies are loaded properly. Fixes issue [#33] and
146
- pull request [#34].
168
+ - Ensure that test dependencies are loaded properly. Fixes issue [#33][] and
169
+ pull request [#34][].
147
170
 
148
- - Fix issue [#1] with incorrect intuition of patch direction. Tentative fix,
171
+ - Fix issue [#1][] with incorrect intuition of patch direction. Tentative fix,
149
172
  but the previous failure cases pass now.
150
173
 
151
174
  - Tooling changes:
@@ -167,16 +190,17 @@
167
190
  - Bugs fixed:
168
191
 
169
192
  - Comparing arrays flattened them too far, especially with Diff::LCS.sdiff.
170
- Fixed by Josh Bronson in pull request [#23].
193
+ Fixed by Josh Bronson in pull request [#23][].
171
194
 
172
195
  ## 1.2.4 / 2013-04-20
173
196
 
174
197
  - Bugs fixed:
175
198
 
176
199
  - A bug was introduced after 1.1.3 when pruning common sequences at the start
177
- of comparison. Paul Kunysch (@pck) fixed this in pull request [#18]. Thanks!
200
+ of comparison. Paul Kunysch (@pck) fixed this in pull request [#18][].
201
+ Thanks!
178
202
 
179
- - The Rubinius (1.9 mode) bug in [rubinius/rubinius#2268] has been fixed by
203
+ - The Rubinius (1.9 mode) bug in [rubinius/rubinius#2268][] has been fixed by
180
204
  the Rubinius team two days after it was filed. Thanks for fixing this so
181
205
  quickly!
182
206
 
@@ -188,12 +212,12 @@
188
212
 
189
213
  - The new encoding detection for diff output generation (added in 1.2.2)
190
214
  introduced a bug if the left side of the comparison was the empty set.
191
- Originally found in [rspec/rspec-expectations#238] and
192
- [rspec/rspec-expectations#239]. Jon Rowe developed a reasonable heuristic
215
+ Originally found in [rspec/rspec-expectations#238][] and
216
+ [rspec/rspec-expectations#239][]. Jon Rowe developed a reasonable heuristic
193
217
  (left side, right side, empty string literal) to avoid this bug.
194
218
 
195
219
  - There is a known issue with Rubinius in 1.9 mode reported in
196
- [rubinius/rubinius#2268] and demonstrated in the Travis CI builds. For all
220
+ [rubinius/rubinius#2268][] and demonstrated in the Travis CI builds. For all
197
221
  other tested platforms, diff-lcs is considered stable. As soon as a suitably
198
222
  small test-case can be created for the Rubinius team to examine, this will
199
223
  be added to the Rubinius issue around this.
@@ -205,8 +229,8 @@
205
229
  - Diff::LCS::Hunk could not properly generate a difference for comparison sets
206
230
  that are not US-ASCII-compatible because of the use of literal regular
207
231
  expressions and strings. Jon Rowe found this in
208
- [rspec/rspec-expectations#219] and provided a first pass implementation in
209
- pull request [#15]. I've reworked it because of test failures in Rubinius
232
+ [rspec/rspec-expectations#219][] and provided a first pass implementation in
233
+ pull request [#15][]. I've reworked it because of test failures in Rubinius
210
234
  when running in Ruby 1.9 mode. This coerces the added values to the encoding
211
235
  of the old dataset (as determined by the first piece of the old dataset).
212
236
 
@@ -216,9 +240,9 @@
216
240
 
217
241
  - Bugs Fixed:
218
242
 
219
- - As seen in [rspec/rspec-expectations#200], the release of Diff::LCS 1.2
243
+ - As seen in [rspec/rspec-expectations#200][], the release of Diff::LCS 1.2
220
244
  introduced an unnecessary public API change to Diff::LCS::Hunk (see the
221
- change at [rspec/rspec-expectations@3d6fc82c] for details). The new method
245
+ change at [rspec/rspec-expectations@3d6fc82c][] for details). The new method
222
246
  name (and behaviour) is more correct, but I should not have renamed the
223
247
  function or should have at least provided an alias. This release restores
224
248
  Diff::LCS::Hunk#unshift as an alias to #merge. Note that the old #unshift
@@ -235,25 +259,25 @@
235
259
 
236
260
  - Bugs Fixed:
237
261
 
238
- - Fixed issue [#1] patch direction detection.
262
+ - Fixed issue [#1][] patch direction detection.
239
263
 
240
- - Resolved issue [#2] by handling `string[string.size, 1]` properly (it
264
+ - Resolved issue [#2][] by handling `string[string.size, 1]` properly (it
241
265
  returns `""` not `nil`).
242
266
 
243
267
  - Michael Granger (ged) fixed an implementation error in Diff::LCS::Change and
244
- added specs in pull request [#8]. Thanks!
268
+ added specs in pull request [#8][]. Thanks!
245
269
 
246
270
  - Made the code auto-testable.
247
271
 
248
272
  - Vít Ondruch (voxik) provided the latest version of the GPL2 license file in
249
- pull request [#10]. Thanks!
273
+ pull request [#10][]. Thanks!
250
274
 
251
275
  - Fixed a documentation issue with the includable versions of #patch! and
252
276
  #unpatch! where they implied that they would replace the original value.
253
277
  Given that Diff::LCS.patch always returns a copy, the documentation was
254
278
  incorrect and has been corrected. To provide the behaviour that was
255
279
  originally documented, two new methods were added to provide this behaviour.
256
- Found by scooter-dangle in issue [#12]. Thanks!
280
+ Found by scooter-dangle in issue [#12][]. Thanks!
257
281
 
258
282
  - Code Style Changes:
259
283
 
@@ -261,11 +285,11 @@
261
285
 
262
286
  - Calling class methods using `.` instead of `::`.
263
287
 
264
- - Vít Ondruch (voxik) removed unnecessary shebangs in pull request [#9].
288
+ - Vít Ondruch (voxik) removed unnecessary shebangs in pull request [#9][].
265
289
  Thanks!
266
290
 
267
291
  - Kenichi Kamiya (kachick) removed some warnings of an unused variable in
268
- lucky pull request [#13]. Thanks!
292
+ lucky pull request [#13][]. Thanks!
269
293
 
270
294
  - Embarked on a major refactoring to make the files a little more manageable
271
295
  and understand the code on a deeper level.
@@ -285,9 +309,9 @@
285
309
  - Bugs fixed:
286
310
 
287
311
  - Eliminated the explicit use of RubyGems in both bin/htmldiff and bin/ldiff.
288
- Resolves issue [#4].
312
+ Resolves issue [#4][].
289
313
 
290
- - Eliminated Ruby warnings. Resolves issue [#3].
314
+ - Eliminated Ruby warnings. Resolves issue [#3][].
291
315
 
292
316
  ## 1.1.2 / 2004-10-20
293
317
 
@@ -349,12 +373,6 @@
349
373
 
350
374
  - Initial release based mostly on Perl's Algorithm::Diff.
351
375
 
352
- [rubinius/rubinius#2268]: https://github.com/rubinius/rubinius/issues/2268
353
- [rspec/rspec-expectations#239]: https://github.com/rspec/rspec-expectations/issues/239
354
- [rspec/rspec-expectations#238]: https://github.com/rspec/rspec-expectations/issues/238
355
- [rspec/rspec-expectations#219]: https://github.com/rspec/rspec-expectations/issues/219
356
- [rspec/rspec-expectations@3d6fc82c]: https://github.com/rspec/rspec-expectations/commit/3d6fc82c
357
- [rspec/rspec-expectations#200]: https://github.com/rspec/rspec-expectations/pull/200
358
376
  [#1]: https://github.com/halostatue/diff-lcs/issues/1
359
377
  [#2]: https://github.com/halostatue/diff-lcs/issues/2
360
378
  [#3]: https://github.com/halostatue/diff-lcs/issues/3
@@ -398,3 +416,16 @@
398
416
  [#75]: https://github.com/halostatue/diff-lcs/issues/75
399
417
  [#79]: https://github.com/halostatue/diff-lcs/issues/79
400
418
  [#80]: https://github.com/halostatue/diff-lcs/issues/80
419
+ [#82]: https://github.com/halostatue/diff-lcs/pull/82
420
+ [#84]: https://github.com/halostatue/diff-lcs/pull/84
421
+ [#86]: https://github.com/halostatue/diff-lcs/pull/86
422
+ [#89]: https://github.com/halostatue/diff-lcs/pull/89
423
+ [#90]: https://github.com/halostatue/diff-lcs/pull/90
424
+ [#91]: https://github.com/halostatue/diff-lcs/issues/91
425
+ [rspec/rspec-expectations#200]: https://github.com/rspec/rspec-expectations/pull/200
426
+ [rspec/rspec-expectations#219]: https://github.com/rspec/rspec-expectations/issues/219
427
+ [rspec/rspec-expectations#238]: https://github.com/rspec/rspec-expectations/issues/238
428
+ [rspec/rspec-expectations#239]: https://github.com/rspec/rspec-expectations/issues/239
429
+ [rspec/rspec-expectations@3d6fc82c]: https://github.com/rspec/rspec-expectations/commit/3d6fc82c
430
+ [rubinius/rubinius#2268]: https://github.com/rubinius/rubinius/issues/2268
431
+ [standard ruby]: https://github.com/standardrb/standard
data/License.md CHANGED
@@ -1,4 +1,4 @@
1
- == License
1
+ # License
2
2
 
3
3
  This software is available under three licenses: the GNU GPL version 2 (or at
4
4
  your option, a later version), the Perl Artistic license, or the MIT license.
@@ -12,7 +12,7 @@ licensing terms.
12
12
  * Adapted from Algorithm::Diff (Perl) by Ned Konz and a Smalltalk version by
13
13
  Mario I. Wolczko.
14
14
 
15
- === MIT License
15
+ ## MIT License
16
16
 
17
17
  Permission is hereby granted, free of charge, to any person obtaining a copy of
18
18
  this software and associated documentation files (the "Software"), to deal in
@@ -32,8 +32,10 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
32
32
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
33
33
  SOFTWARE.
34
34
 
35
- === Perl Artistic License (version 2)
35
+ ## Perl Artistic License
36
+
36
37
  See the file docs/artistic.txt in the main distribution.
37
38
 
38
- === GNU GPL version 2
39
+ ## GNU GPL version 2
40
+
39
41
  See the file docs/COPYING.txt in the main distribution.
data/Rakefile CHANGED
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'rubygems'
4
- require 'rspec'
5
- require 'rspec/core/rake_task'
6
- require 'hoe'
3
+ require "rubygems"
4
+ require "rspec"
5
+ require "rspec/core/rake_task"
6
+ require "hoe"
7
7
 
8
8
  # This is required until https://github.com/seattlerb/hoe/issues/112 is fixed
9
9
  class Hoe
@@ -45,66 +45,74 @@ Hoe.plugin :doofus
45
45
  Hoe.plugin :gemspec2
46
46
  Hoe.plugin :git
47
47
 
48
- if RUBY_VERSION < '1.9'
49
- class Array #:nodoc:
48
+ if RUBY_VERSION < "1.9"
49
+ class Array # :nodoc:
50
50
  def to_h
51
51
  Hash[*flatten(1)]
52
52
  end
53
53
  end
54
54
 
55
- class Gem::Specification #:nodoc:
56
- def metadata=(*); end
55
+ class Gem::Specification # :nodoc:
56
+ def metadata=(*)
57
+ end
57
58
 
58
- def default_value(*); end
59
+ def default_value(*)
60
+ end
59
61
  end
60
62
 
61
- class Object #:nodoc:
63
+ class Object # :nodoc:
62
64
  def caller_locations(*)
63
65
  []
64
66
  end
65
67
  end
66
68
  end
67
69
 
68
- _spec = Hoe.spec 'diff-lcs' do
69
- developer('Austin Ziegler', 'halostatue@gmail.com')
70
+ _spec = Hoe.spec "diff-lcs" do
71
+ developer("Austin Ziegler", "halostatue@gmail.com")
72
+
73
+ require_ruby_version ">= 1.8"
70
74
 
71
- require_ruby_version '>= 1.8'
75
+ self.history_file = "History.md"
76
+ self.readme_file = "README.rdoc"
77
+ self.licenses = ["MIT", "Artistic-2.0", "GPL-2.0-or-later"]
72
78
 
73
- self.history_file = 'History.md'
74
- self.readme_file = 'README.rdoc'
75
- self.licenses = ['MIT', 'Artistic-2.0', 'GPL-2.0+']
79
+ spec_extras[:metadata] = ->(val) { val["rubygems_mfa_required"] = "true" }
76
80
 
77
- extra_dev_deps << ['hoe-doofus', '~> 1.0']
78
- extra_dev_deps << ['hoe-gemspec2', '~> 1.1']
79
- extra_dev_deps << ['hoe-git', '~> 1.6']
80
- extra_dev_deps << ['hoe-rubygems', '~> 1.0']
81
- extra_dev_deps << ['rspec', '>= 2.0', '< 4']
82
- extra_dev_deps << ['rake', '>= 10.0', '< 14']
83
- extra_dev_deps << ['rdoc', '>= 6.3.1', '< 7']
81
+ extra_dev_deps << ["hoe", ">= 3.0", "< 5"]
82
+ extra_dev_deps << ["hoe-doofus", "~> 1.0"]
83
+ extra_dev_deps << ["hoe-gemspec2", "~> 1.1"]
84
+ extra_dev_deps << ["hoe-git2", "~> 1.7"]
85
+ extra_dev_deps << ["hoe-rubygems", "~> 1.0"]
86
+ extra_dev_deps << ["rspec", ">= 2.0", "< 4"]
87
+ extra_dev_deps << ["rake", ">= 10.0", "< 14"]
88
+ extra_dev_deps << ["rdoc", ">= 6.3.1", "< 7"]
84
89
  end
85
90
 
86
91
  desc "Run all specifications"
87
92
  RSpec::Core::RakeTask.new(:spec) do |t|
88
- rspec_dirs = %w(spec lib).join(":")
93
+ rspec_dirs = %w[spec lib].join(":")
89
94
  t.rspec_opts = ["-I#{rspec_dirs}"]
90
95
  end
91
96
 
92
97
  Rake::Task["spec"].actions.uniq! { |a| a.source_location }
93
98
 
99
+ # standard:disable Style/HashSyntax
94
100
  task :default => :spec unless Rake::Task["default"].prereqs.include?("spec")
95
101
  task :test => :spec unless Rake::Task["test"].prereqs.include?("spec")
102
+ # standard:enable Style/HashSyntax
96
103
 
97
- if RUBY_VERSION >= '2.0' && RUBY_ENGINE == 'ruby'
104
+ if RUBY_VERSION >= "2.0" && RUBY_ENGINE == "ruby"
98
105
  namespace :spec do
99
106
  desc "Runs test coverage. Only works Ruby 2.0+ and assumes 'simplecov' is installed."
100
107
  task :coverage do
101
- ENV['COVERAGE'] = 'yes'
102
- Rake::Task['spec'].execute
108
+ ENV["COVERAGE"] = "yes"
109
+ Rake::Task["spec"].execute
103
110
  end
104
111
  end
105
112
  end
106
113
 
107
114
  task :ruby18 do
115
+ # standard:disable Layout/HeredocIndentation
108
116
  puts <<-MESSAGE
109
117
  You are starting a barebones Ruby 1.8 docker environment. You will need to
110
118
  do the following:
@@ -117,5 +125,6 @@ do the following:
117
125
  Don't forget to restore your Gemfile.lock after testing.
118
126
 
119
127
  MESSAGE
128
+ # standard:enable Layout/HeredocIndentation
120
129
  sh "docker run -it --rm -v #{Dir.pwd}:/root/diff-lcs bellbind/docker-ruby18-rails2 bash -l"
121
130
  end
data/bin/htmldiff CHANGED
@@ -1,11 +1,11 @@
1
1
  #! /usr/bin/env ruby -w
2
2
  # frozen_string_literal: true
3
3
 
4
- require 'diff/lcs'
5
- require 'diff/lcs/htmldiff'
4
+ require "diff/lcs"
5
+ require "diff/lcs/htmldiff"
6
6
 
7
7
  begin
8
- require 'text/format'
8
+ require "text/format"
9
9
  rescue LoadError
10
10
  Diff::LCS::HTMLDiff.can_expand_tabs = false
11
11
  end
@@ -24,7 +24,7 @@ options = { :title => "diff #{ARGV[0]} #{ARGV[1]}" }
24
24
  htmldiff = Diff::LCS::HTMLDiff.new(left, right, options)
25
25
 
26
26
  if ARGV[2]
27
- File.open(ARGV[2], 'w') do |f|
27
+ File.open(ARGV[2], "w") do |f|
28
28
  htmldiff.options[:output] = f
29
29
  htmldiff.run
30
30
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'diff/lcs'
3
+ require "diff/lcs"
4
4
 
5
5
  class Array
6
6
  include Diff::LCS
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  unless 0.respond_to?(:positive?)
4
- class Fixnum # rubocop:disable Lint/UnifiedInteger, Style/Documentation
4
+ class Fixnum # standard:disable Lint/UnifiedInteger
5
5
  def positive?
6
- self > 0 # rubocop:disable Style/NumericPredicate
6
+ self > 0
7
7
  end
8
8
  end
9
9
  end
@@ -25,13 +25,13 @@ class Diff::LCS::Block
25
25
  def op
26
26
  case [@remove.empty?, @insert.empty?]
27
27
  when [false, false]
28
- '!'
28
+ "!"
29
29
  when [false, true]
30
- '-'
30
+ "-"
31
31
  when [true, false]
32
- '+'
32
+ "+"
33
33
  else # [true, true]
34
- '^'
34
+ "^"
35
35
  end
36
36
  end
37
37
  end
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'diff/lcs/change'
3
+ require "diff/lcs/change"
4
4
 
5
- module Diff::LCS # rubocop:disable Style/Documentation
5
+ module Diff::LCS
6
6
  # This callback object implements the default set of callback events,
7
7
  # which only returns the event itself. Note that #finished_a and
8
8
  # #finished_b are not implemented -- I haven't yet figured out where they
@@ -50,7 +50,9 @@ module Diff::LCS # rubocop:disable Style/Documentation
50
50
  BalancedCallbacks = DefaultCallbacks
51
51
 
52
52
  def self.callbacks_for(callbacks)
53
- callbacks.new rescue callbacks
53
+ callbacks.new
54
+ rescue
55
+ callbacks
54
56
  end
55
57
  end
56
58
 
@@ -107,7 +109,7 @@ class Diff::LCS::DiffCallbacks
107
109
  # Returns the difference set collected during the diff process.
108
110
  attr_reader :diffs
109
111
 
110
- def initialize # :yields self:
112
+ def initialize # :yields: self
111
113
  @hunk = []
112
114
  @diffs = []
113
115
 
@@ -131,11 +133,11 @@ class Diff::LCS::DiffCallbacks
131
133
  end
132
134
 
133
135
  def discard_a(event)
134
- @hunk << Diff::LCS::Change.new('-', event.old_position, event.old_element)
136
+ @hunk << Diff::LCS::Change.new("-", event.old_position, event.old_element)
135
137
  end
136
138
 
137
139
  def discard_b(event)
138
- @hunk << Diff::LCS::Change.new('+', event.new_position, event.new_element)
140
+ @hunk << Diff::LCS::Change.new("+", event.new_position, event.new_element)
139
141
  end
140
142
 
141
143
  def finish_hunk
@@ -302,7 +304,7 @@ class Diff::LCS::SDiffCallbacks
302
304
  # Returns the difference set collected during the diff process.
303
305
  attr_reader :diffs
304
306
 
305
- def initialize #:yields self:
307
+ def initialize # :yields: self
306
308
  @diffs = []
307
309
  yield self if block_given?
308
310
  end