diff-lcs 1.5.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +581 -0
  3. data/CODE_OF_CONDUCT.md +166 -0
  4. data/CONTRIBUTING.md +127 -0
  5. data/CONTRIBUTORS.md +59 -0
  6. data/LICENCE.md +68 -0
  7. data/Manifest.txt +99 -35
  8. data/README.md +105 -0
  9. data/Rakefile +107 -96
  10. data/SECURITY.md +36 -0
  11. data/integration/compare/array_diff_spec.rb +10 -0
  12. data/integration/compare/hash_diff_spec.rb +25 -0
  13. data/integration/compare/string_diff_spec.rb +10 -0
  14. data/integration/rspec_differ_spec.rb +26 -0
  15. data/integration/rspec_expectations_spec.rb +32 -0
  16. data/integration/runner +20 -0
  17. data/lib/diff/lcs/block.rb +29 -24
  18. data/lib/diff/lcs/callbacks.rb +240 -242
  19. data/lib/diff/lcs/change.rb +102 -104
  20. data/lib/diff/lcs/hunk.rb +110 -157
  21. data/lib/diff/lcs/internals.rb +92 -96
  22. data/lib/diff/lcs/ldiff.rb +81 -73
  23. data/lib/diff/lcs/version.rb +7 -0
  24. data/lib/diff/lcs.rb +440 -466
  25. data/{docs → licenses}/artistic.txt +1 -1
  26. data/licenses/dco.txt +34 -0
  27. data/spec/hunk_spec.rb +33 -46
  28. data/spec/issues_spec.rb +32 -32
  29. data/spec/lcs_spec.rb +6 -6
  30. data/spec/ldiff_spec.rb +27 -16
  31. data/spec/patch_spec.rb +1 -1
  32. data/spec/spec_helper.rb +98 -108
  33. data/test/fixtures/123_x +2 -0
  34. data/test/fixtures/456_x +2 -0
  35. data/test/fixtures/empty +0 -0
  36. data/test/fixtures/file1.bin +0 -0
  37. data/test/fixtures/file2.bin +0 -0
  38. data/test/fixtures/four_lines +4 -0
  39. data/test/fixtures/four_lines_with_missing_new_line +4 -0
  40. data/test/fixtures/ldiff/diff.missing_new_line1-e +1 -0
  41. data/test/fixtures/ldiff/diff.missing_new_line1-f +1 -0
  42. data/test/fixtures/ldiff/diff.missing_new_line2-e +1 -0
  43. data/test/fixtures/ldiff/diff.missing_new_line2-f +1 -0
  44. data/test/fixtures/ldiff/error.diff.chef-e +2 -0
  45. data/test/fixtures/ldiff/error.diff.chef-f +2 -0
  46. data/test/fixtures/ldiff/error.diff.missing_new_line1-e +1 -0
  47. data/test/fixtures/ldiff/error.diff.missing_new_line1-f +1 -0
  48. data/test/fixtures/ldiff/error.diff.missing_new_line2-e +1 -0
  49. data/test/fixtures/ldiff/error.diff.missing_new_line2-f +1 -0
  50. data/test/fixtures/ldiff/output.diff-c +7 -0
  51. data/test/fixtures/ldiff/output.diff-u +5 -0
  52. data/test/fixtures/ldiff/output.diff.bin1 +0 -0
  53. data/test/fixtures/ldiff/output.diff.bin1-c +0 -0
  54. data/test/fixtures/ldiff/output.diff.bin1-e +0 -0
  55. data/test/fixtures/ldiff/output.diff.bin1-f +0 -0
  56. data/test/fixtures/ldiff/output.diff.bin1-u +0 -0
  57. data/test/fixtures/ldiff/output.diff.bin2 +1 -0
  58. data/test/fixtures/ldiff/output.diff.bin2-c +1 -0
  59. data/test/fixtures/ldiff/output.diff.bin2-e +1 -0
  60. data/test/fixtures/ldiff/output.diff.bin2-f +1 -0
  61. data/test/fixtures/ldiff/output.diff.bin2-u +1 -0
  62. data/{spec → test}/fixtures/ldiff/output.diff.chef-c +2 -2
  63. data/test/fixtures/ldiff/output.diff.chef-u +9 -0
  64. data/{spec → test}/fixtures/ldiff/output.diff.chef2-c +2 -2
  65. data/{spec → test}/fixtures/ldiff/output.diff.chef2-u +2 -2
  66. data/test/fixtures/ldiff/output.diff.empty.vs.four_lines +5 -0
  67. data/test/fixtures/ldiff/output.diff.empty.vs.four_lines-c +9 -0
  68. data/test/fixtures/ldiff/output.diff.empty.vs.four_lines-e +6 -0
  69. data/test/fixtures/ldiff/output.diff.empty.vs.four_lines-f +6 -0
  70. data/test/fixtures/ldiff/output.diff.empty.vs.four_lines-u +7 -0
  71. data/test/fixtures/ldiff/output.diff.four_lines.vs.empty +5 -0
  72. data/test/fixtures/ldiff/output.diff.four_lines.vs.empty-c +9 -0
  73. data/test/fixtures/ldiff/output.diff.four_lines.vs.empty-e +1 -0
  74. data/test/fixtures/ldiff/output.diff.four_lines.vs.empty-f +1 -0
  75. data/test/fixtures/ldiff/output.diff.four_lines.vs.empty-u +7 -0
  76. data/test/fixtures/ldiff/output.diff.issue95_trailing_context +4 -0
  77. data/test/fixtures/ldiff/output.diff.issue95_trailing_context-c +9 -0
  78. data/{spec/fixtures/ldiff/output.diff-e → test/fixtures/ldiff/output.diff.issue95_trailing_context-e} +1 -1
  79. data/{spec/fixtures/ldiff/output.diff-f → test/fixtures/ldiff/output.diff.issue95_trailing_context-f} +1 -1
  80. data/test/fixtures/ldiff/output.diff.issue95_trailing_context-u +6 -0
  81. data/test/fixtures/ldiff/output.diff.missing_new_line1 +5 -0
  82. data/test/fixtures/ldiff/output.diff.missing_new_line1-c +14 -0
  83. data/test/fixtures/ldiff/output.diff.missing_new_line1-e +0 -0
  84. data/test/fixtures/ldiff/output.diff.missing_new_line1-f +0 -0
  85. data/test/fixtures/ldiff/output.diff.missing_new_line1-u +9 -0
  86. data/test/fixtures/ldiff/output.diff.missing_new_line2 +5 -0
  87. data/test/fixtures/ldiff/output.diff.missing_new_line2-c +14 -0
  88. data/test/fixtures/ldiff/output.diff.missing_new_line2-e +0 -0
  89. data/test/fixtures/ldiff/output.diff.missing_new_line2-f +0 -0
  90. data/test/fixtures/ldiff/output.diff.missing_new_line2-u +9 -0
  91. data/test/test_block.rb +34 -0
  92. data/test/test_change.rb +234 -0
  93. data/test/test_diff.rb +53 -0
  94. data/test/test_helper.rb +225 -0
  95. data/test/test_hunk.rb +72 -0
  96. data/test/test_issues.rb +168 -0
  97. data/test/test_lcs.rb +47 -0
  98. data/test/test_ldiff.rb +89 -0
  99. data/test/test_patch.rb +362 -0
  100. data/test/test_sdiff.rb +167 -0
  101. data/test/test_traverse_balanced.rb +322 -0
  102. data/test/test_traverse_sequences.rb +187 -0
  103. metadata +211 -103
  104. data/.rspec +0 -1
  105. data/Code-of-Conduct.md +0 -74
  106. data/Contributing.md +0 -121
  107. data/History.md +0 -431
  108. data/License.md +0 -41
  109. data/README.rdoc +0 -84
  110. data/bin/htmldiff +0 -35
  111. data/lib/diff/lcs/backports.rb +0 -9
  112. data/lib/diff/lcs/htmldiff.rb +0 -158
  113. data/spec/fixtures/ldiff/output.diff-c +0 -7
  114. data/spec/fixtures/ldiff/output.diff-u +0 -5
  115. data/spec/fixtures/ldiff/output.diff.chef-e +0 -3
  116. data/spec/fixtures/ldiff/output.diff.chef-f +0 -3
  117. data/spec/fixtures/ldiff/output.diff.chef-u +0 -9
  118. data/spec/fixtures/ldiff/output.diff.chef2-e +0 -7
  119. data/spec/fixtures/ldiff/output.diff.chef2-f +0 -7
  120. /data/{docs → licenses}/COPYING.txt +0 -0
  121. /data/{spec → test}/fixtures/aX +0 -0
  122. /data/{spec → test}/fixtures/bXaX +0 -0
  123. /data/{spec → test}/fixtures/ds1.csv +0 -0
  124. /data/{spec → test}/fixtures/ds2.csv +0 -0
  125. /data/{spec → test}/fixtures/ldiff/output.diff +0 -0
  126. /data/{spec → test}/fixtures/ldiff/output.diff.chef +0 -0
  127. /data/{spec → test}/fixtures/ldiff/output.diff.chef2 +0 -0
  128. /data/{spec → test}/fixtures/ldiff/output.diff.chef2-d +0 -0
  129. /data/{spec → test}/fixtures/new-chef +0 -0
  130. /data/{spec → test}/fixtures/new-chef2 +0 -0
  131. /data/{spec → test}/fixtures/old-chef +0 -0
  132. /data/{spec → test}/fixtures/old-chef2 +0 -0
metadata CHANGED
@@ -1,231 +1,255 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: diff-lcs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Austin Ziegler
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-01-31 00:00:00.000000000 Z
10
+ date: 1970-01-01 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: hoe
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - ">="
18
- - !ruby/object:Gem::Version
19
- version: '3.0'
20
- - - "<"
16
+ - - "~>"
21
17
  - !ruby/object:Gem::Version
22
- version: '5'
18
+ version: '4.0'
23
19
  type: :development
24
20
  prerelease: false
25
21
  version_requirements: !ruby/object:Gem::Requirement
26
22
  requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- version: '3.0'
30
- - - "<"
23
+ - - "~>"
31
24
  - !ruby/object:Gem::Version
32
- version: '5'
25
+ version: '4.0'
33
26
  - !ruby/object:Gem::Dependency
34
- name: hoe-doofus
27
+ name: hoe-halostatue
35
28
  requirement: !ruby/object:Gem::Requirement
36
29
  requirements:
37
30
  - - "~>"
38
31
  - !ruby/object:Gem::Version
39
- version: '1.0'
32
+ version: '3.0'
40
33
  type: :development
41
34
  prerelease: false
42
35
  version_requirements: !ruby/object:Gem::Requirement
43
36
  requirements:
44
37
  - - "~>"
45
38
  - !ruby/object:Gem::Version
46
- version: '1.0'
39
+ version: '3.0'
47
40
  - !ruby/object:Gem::Dependency
48
- name: hoe-gemspec2
41
+ name: minitest
49
42
  requirement: !ruby/object:Gem::Requirement
50
43
  requirements:
51
44
  - - "~>"
52
45
  - !ruby/object:Gem::Version
53
- version: '1.1'
46
+ version: '6.0'
54
47
  type: :development
55
48
  prerelease: false
56
49
  version_requirements: !ruby/object:Gem::Requirement
57
50
  requirements:
58
51
  - - "~>"
59
52
  - !ruby/object:Gem::Version
60
- version: '1.1'
53
+ version: '6.0'
61
54
  - !ruby/object:Gem::Dependency
62
- name: hoe-git2
55
+ name: minitest-autotest
63
56
  requirement: !ruby/object:Gem::Requirement
64
57
  requirements:
65
58
  - - "~>"
66
59
  - !ruby/object:Gem::Version
67
- version: '1.7'
60
+ version: '1.0'
68
61
  type: :development
69
62
  prerelease: false
70
63
  version_requirements: !ruby/object:Gem::Requirement
71
64
  requirements:
72
65
  - - "~>"
73
66
  - !ruby/object:Gem::Version
74
- version: '1.7'
67
+ version: '1.0'
75
68
  - !ruby/object:Gem::Dependency
76
- name: hoe-rubygems
69
+ name: minitest-focus
77
70
  requirement: !ruby/object:Gem::Requirement
78
71
  requirements:
79
72
  - - "~>"
80
73
  - !ruby/object:Gem::Version
81
- version: '1.0'
74
+ version: '1.1'
82
75
  type: :development
83
76
  prerelease: false
84
77
  version_requirements: !ruby/object:Gem::Requirement
85
78
  requirements:
86
79
  - - "~>"
87
80
  - !ruby/object:Gem::Version
88
- version: '1.0'
81
+ version: '1.1'
89
82
  - !ruby/object:Gem::Dependency
90
- name: rspec
83
+ name: rake
91
84
  requirement: !ruby/object:Gem::Requirement
92
85
  requirements:
93
86
  - - ">="
94
87
  - !ruby/object:Gem::Version
95
- version: '2.0'
88
+ version: '10.0'
96
89
  - - "<"
97
90
  - !ruby/object:Gem::Version
98
- version: '4'
91
+ version: '14'
99
92
  type: :development
100
93
  prerelease: false
101
94
  version_requirements: !ruby/object:Gem::Requirement
102
95
  requirements:
103
96
  - - ">="
104
97
  - !ruby/object:Gem::Version
105
- version: '2.0'
98
+ version: '10.0'
106
99
  - - "<"
107
100
  - !ruby/object:Gem::Version
108
- version: '4'
101
+ version: '14'
109
102
  - !ruby/object:Gem::Dependency
110
- name: rake
103
+ name: rdoc
111
104
  requirement: !ruby/object:Gem::Requirement
112
105
  requirements:
113
106
  - - ">="
114
107
  - !ruby/object:Gem::Version
115
- version: '10.0'
108
+ version: '6.0'
116
109
  - - "<"
117
110
  - !ruby/object:Gem::Version
118
- version: '14'
111
+ version: '8'
119
112
  type: :development
120
113
  prerelease: false
121
114
  version_requirements: !ruby/object:Gem::Requirement
122
115
  requirements:
123
116
  - - ">="
124
117
  - !ruby/object:Gem::Version
125
- version: '10.0'
118
+ version: '6.0'
126
119
  - - "<"
127
120
  - !ruby/object:Gem::Version
128
- version: '14'
121
+ version: '8'
129
122
  - !ruby/object:Gem::Dependency
130
- name: rdoc
123
+ name: simplecov
131
124
  requirement: !ruby/object:Gem::Requirement
132
125
  requirements:
133
- - - ">="
126
+ - - "~>"
134
127
  - !ruby/object:Gem::Version
135
- version: 6.3.1
136
- - - "<"
128
+ version: '0.9'
129
+ type: :development
130
+ prerelease: false
131
+ version_requirements: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - "~>"
137
134
  - !ruby/object:Gem::Version
138
- version: '7'
135
+ version: '0.9'
136
+ - !ruby/object:Gem::Dependency
137
+ name: simplecov-lcov
138
+ requirement: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - "~>"
141
+ - !ruby/object:Gem::Version
142
+ version: '0.9'
139
143
  type: :development
140
144
  prerelease: false
141
145
  version_requirements: !ruby/object:Gem::Requirement
142
146
  requirements:
143
- - - ">="
147
+ - - "~>"
144
148
  - !ruby/object:Gem::Version
145
- version: 6.3.1
146
- - - "<"
149
+ version: '0.9'
150
+ - !ruby/object:Gem::Dependency
151
+ name: standard
152
+ requirement: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - "~>"
155
+ - !ruby/object:Gem::Version
156
+ version: '1.50'
157
+ type: :development
158
+ prerelease: false
159
+ version_requirements: !ruby/object:Gem::Requirement
160
+ requirements:
161
+ - - "~>"
162
+ - !ruby/object:Gem::Version
163
+ version: '1.50'
164
+ - !ruby/object:Gem::Dependency
165
+ name: standard-thread_safety
166
+ requirement: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - "~>"
147
169
  - !ruby/object:Gem::Version
148
- version: '7'
149
- description: |-
170
+ version: '1.0'
171
+ type: :development
172
+ prerelease: false
173
+ version_requirements: !ruby/object:Gem::Requirement
174
+ requirements:
175
+ - - "~>"
176
+ - !ruby/object:Gem::Version
177
+ version: '1.0'
178
+ - !ruby/object:Gem::Dependency
179
+ name: fasterer
180
+ requirement: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - "~>"
183
+ - !ruby/object:Gem::Version
184
+ version: '0.11'
185
+ type: :development
186
+ prerelease: false
187
+ version_requirements: !ruby/object:Gem::Requirement
188
+ requirements:
189
+ - - "~>"
190
+ - !ruby/object:Gem::Version
191
+ version: '0.11'
192
+ description: |
150
193
  Diff::LCS computes the difference between two Enumerable sequences using the
151
194
  McIlroy-Hunt longest common subsequence (LCS) algorithm. It includes utilities
152
195
  to create a simple HTML diff output format and a standard diff-like tool.
153
196
 
154
- This is release 1.4.3, providing a simple extension that allows for
155
- Diff::LCS::Change objects to be treated implicitly as arrays and fixes a
156
- number of formatting issues.
197
+ This is release 2.0, which has significant breaking changes (removal of
198
+ deprecations and workarounds) and requires at least Ruby 3.2 or higher. See full
199
+ details in the `CHANGELOG`, but users of diff-lcs should not notice any
200
+ significant changes to the APIs.
157
201
 
158
- Ruby versions below 2.5 are soft-deprecated, which means that older versions
159
- are no longer part of the CI test suite. If any changes have been introduced
160
- that break those versions, bug reports and patches will be accepted, but it
161
- will be up to the reporter to verify any fixes prior to release. The next
162
- major release will completely break compatibility.
202
+ ==== To Install:
163
203
  email:
164
204
  - halostatue@gmail.com
165
205
  executables:
166
- - htmldiff
167
206
  - ldiff
168
207
  extensions: []
169
208
  extra_rdoc_files:
170
- - Code-of-Conduct.md
171
- - Contributing.md
172
- - History.md
173
- - License.md
209
+ - CHANGELOG.md
210
+ - CODE_OF_CONDUCT.md
211
+ - CONTRIBUTING.md
212
+ - CONTRIBUTORS.md
213
+ - LICENCE.md
174
214
  - Manifest.txt
175
- - README.rdoc
176
- - docs/COPYING.txt
177
- - docs/artistic.txt
215
+ - README.md
216
+ - SECURITY.md
217
+ - licenses/COPYING.txt
218
+ - licenses/artistic.txt
219
+ - licenses/dco.txt
178
220
  files:
179
- - ".rspec"
180
- - Code-of-Conduct.md
181
- - Contributing.md
182
- - History.md
183
- - License.md
221
+ - CHANGELOG.md
222
+ - CODE_OF_CONDUCT.md
223
+ - CONTRIBUTING.md
224
+ - CONTRIBUTORS.md
225
+ - LICENCE.md
184
226
  - Manifest.txt
185
- - README.rdoc
227
+ - README.md
186
228
  - Rakefile
187
- - bin/htmldiff
229
+ - SECURITY.md
188
230
  - bin/ldiff
189
- - docs/COPYING.txt
190
- - docs/artistic.txt
231
+ - integration/compare/array_diff_spec.rb
232
+ - integration/compare/hash_diff_spec.rb
233
+ - integration/compare/string_diff_spec.rb
234
+ - integration/rspec_differ_spec.rb
235
+ - integration/rspec_expectations_spec.rb
236
+ - integration/runner
191
237
  - lib/diff-lcs.rb
192
238
  - lib/diff/lcs.rb
193
239
  - lib/diff/lcs/array.rb
194
- - lib/diff/lcs/backports.rb
195
240
  - lib/diff/lcs/block.rb
196
241
  - lib/diff/lcs/callbacks.rb
197
242
  - lib/diff/lcs/change.rb
198
- - lib/diff/lcs/htmldiff.rb
199
243
  - lib/diff/lcs/hunk.rb
200
244
  - lib/diff/lcs/internals.rb
201
245
  - lib/diff/lcs/ldiff.rb
202
246
  - lib/diff/lcs/string.rb
247
+ - lib/diff/lcs/version.rb
248
+ - licenses/COPYING.txt
249
+ - licenses/artistic.txt
250
+ - licenses/dco.txt
203
251
  - spec/change_spec.rb
204
252
  - spec/diff_spec.rb
205
- - spec/fixtures/aX
206
- - spec/fixtures/bXaX
207
- - spec/fixtures/ds1.csv
208
- - spec/fixtures/ds2.csv
209
- - spec/fixtures/ldiff/output.diff
210
- - spec/fixtures/ldiff/output.diff-c
211
- - spec/fixtures/ldiff/output.diff-e
212
- - spec/fixtures/ldiff/output.diff-f
213
- - spec/fixtures/ldiff/output.diff-u
214
- - spec/fixtures/ldiff/output.diff.chef
215
- - spec/fixtures/ldiff/output.diff.chef-c
216
- - spec/fixtures/ldiff/output.diff.chef-e
217
- - spec/fixtures/ldiff/output.diff.chef-f
218
- - spec/fixtures/ldiff/output.diff.chef-u
219
- - spec/fixtures/ldiff/output.diff.chef2
220
- - spec/fixtures/ldiff/output.diff.chef2-c
221
- - spec/fixtures/ldiff/output.diff.chef2-d
222
- - spec/fixtures/ldiff/output.diff.chef2-e
223
- - spec/fixtures/ldiff/output.diff.chef2-f
224
- - spec/fixtures/ldiff/output.diff.chef2-u
225
- - spec/fixtures/new-chef
226
- - spec/fixtures/new-chef2
227
- - spec/fixtures/old-chef
228
- - spec/fixtures/old-chef2
229
253
  - spec/hunk_spec.rb
230
254
  - spec/issues_spec.rb
231
255
  - spec/lcs_spec.rb
@@ -235,35 +259,119 @@ files:
235
259
  - spec/spec_helper.rb
236
260
  - spec/traverse_balanced_spec.rb
237
261
  - spec/traverse_sequences_spec.rb
262
+ - test/fixtures/123_x
263
+ - test/fixtures/456_x
264
+ - test/fixtures/aX
265
+ - test/fixtures/bXaX
266
+ - test/fixtures/ds1.csv
267
+ - test/fixtures/ds2.csv
268
+ - test/fixtures/empty
269
+ - test/fixtures/file1.bin
270
+ - test/fixtures/file2.bin
271
+ - test/fixtures/four_lines
272
+ - test/fixtures/four_lines_with_missing_new_line
273
+ - test/fixtures/ldiff/diff.missing_new_line1-e
274
+ - test/fixtures/ldiff/diff.missing_new_line1-f
275
+ - test/fixtures/ldiff/diff.missing_new_line2-e
276
+ - test/fixtures/ldiff/diff.missing_new_line2-f
277
+ - test/fixtures/ldiff/error.diff.chef-e
278
+ - test/fixtures/ldiff/error.diff.chef-f
279
+ - test/fixtures/ldiff/error.diff.missing_new_line1-e
280
+ - test/fixtures/ldiff/error.diff.missing_new_line1-f
281
+ - test/fixtures/ldiff/error.diff.missing_new_line2-e
282
+ - test/fixtures/ldiff/error.diff.missing_new_line2-f
283
+ - test/fixtures/ldiff/output.diff
284
+ - test/fixtures/ldiff/output.diff-c
285
+ - test/fixtures/ldiff/output.diff-u
286
+ - test/fixtures/ldiff/output.diff.bin1
287
+ - test/fixtures/ldiff/output.diff.bin1-c
288
+ - test/fixtures/ldiff/output.diff.bin1-e
289
+ - test/fixtures/ldiff/output.diff.bin1-f
290
+ - test/fixtures/ldiff/output.diff.bin1-u
291
+ - test/fixtures/ldiff/output.diff.bin2
292
+ - test/fixtures/ldiff/output.diff.bin2-c
293
+ - test/fixtures/ldiff/output.diff.bin2-e
294
+ - test/fixtures/ldiff/output.diff.bin2-f
295
+ - test/fixtures/ldiff/output.diff.bin2-u
296
+ - test/fixtures/ldiff/output.diff.chef
297
+ - test/fixtures/ldiff/output.diff.chef-c
298
+ - test/fixtures/ldiff/output.diff.chef-u
299
+ - test/fixtures/ldiff/output.diff.chef2
300
+ - test/fixtures/ldiff/output.diff.chef2-c
301
+ - test/fixtures/ldiff/output.diff.chef2-d
302
+ - test/fixtures/ldiff/output.diff.chef2-u
303
+ - test/fixtures/ldiff/output.diff.empty.vs.four_lines
304
+ - test/fixtures/ldiff/output.diff.empty.vs.four_lines-c
305
+ - test/fixtures/ldiff/output.diff.empty.vs.four_lines-e
306
+ - test/fixtures/ldiff/output.diff.empty.vs.four_lines-f
307
+ - test/fixtures/ldiff/output.diff.empty.vs.four_lines-u
308
+ - test/fixtures/ldiff/output.diff.four_lines.vs.empty
309
+ - test/fixtures/ldiff/output.diff.four_lines.vs.empty-c
310
+ - test/fixtures/ldiff/output.diff.four_lines.vs.empty-e
311
+ - test/fixtures/ldiff/output.diff.four_lines.vs.empty-f
312
+ - test/fixtures/ldiff/output.diff.four_lines.vs.empty-u
313
+ - test/fixtures/ldiff/output.diff.issue95_trailing_context
314
+ - test/fixtures/ldiff/output.diff.issue95_trailing_context-c
315
+ - test/fixtures/ldiff/output.diff.issue95_trailing_context-e
316
+ - test/fixtures/ldiff/output.diff.issue95_trailing_context-f
317
+ - test/fixtures/ldiff/output.diff.issue95_trailing_context-u
318
+ - test/fixtures/ldiff/output.diff.missing_new_line1
319
+ - test/fixtures/ldiff/output.diff.missing_new_line1-c
320
+ - test/fixtures/ldiff/output.diff.missing_new_line1-e
321
+ - test/fixtures/ldiff/output.diff.missing_new_line1-f
322
+ - test/fixtures/ldiff/output.diff.missing_new_line1-u
323
+ - test/fixtures/ldiff/output.diff.missing_new_line2
324
+ - test/fixtures/ldiff/output.diff.missing_new_line2-c
325
+ - test/fixtures/ldiff/output.diff.missing_new_line2-e
326
+ - test/fixtures/ldiff/output.diff.missing_new_line2-f
327
+ - test/fixtures/ldiff/output.diff.missing_new_line2-u
328
+ - test/fixtures/new-chef
329
+ - test/fixtures/new-chef2
330
+ - test/fixtures/old-chef
331
+ - test/fixtures/old-chef2
332
+ - test/test_block.rb
333
+ - test/test_change.rb
334
+ - test/test_diff.rb
335
+ - test/test_helper.rb
336
+ - test/test_hunk.rb
337
+ - test/test_issues.rb
338
+ - test/test_lcs.rb
339
+ - test/test_ldiff.rb
340
+ - test/test_patch.rb
341
+ - test/test_sdiff.rb
342
+ - test/test_traverse_balanced.rb
343
+ - test/test_traverse_sequences.rb
238
344
  homepage: https://github.com/halostatue/diff-lcs
239
345
  licenses:
240
346
  - MIT
241
- - Artistic-2.0
347
+ - Artistic-1.0-Perl
242
348
  - GPL-2.0-or-later
243
349
  metadata:
244
- homepage_uri: https://github.com/halostatue/diff-lcs
245
350
  source_code_uri: https://github.com/halostatue/diff-lcs
246
351
  bug_tracker_uri: https://github.com/halostatue/diff-lcs/issues
352
+ documentation_uri: https://halostatue.github.io/diff-lcs/
353
+ changelog_uri: https://github.com/halostatue/diff-lcs/blob/main/CHANGELOG.md
247
354
  rubygems_mfa_required: 'true'
248
- post_install_message:
249
355
  rdoc_options:
250
356
  - "--main"
251
- - README.rdoc
357
+ - README.md
252
358
  require_paths:
253
359
  - lib
254
360
  required_ruby_version: !ruby/object:Gem::Requirement
255
361
  requirements:
256
362
  - - ">="
257
363
  - !ruby/object:Gem::Version
258
- version: '1.8'
364
+ version: 3.2.0
365
+ - - "<"
366
+ - !ruby/object:Gem::Version
367
+ version: '5'
259
368
  required_rubygems_version: !ruby/object:Gem::Requirement
260
369
  requirements:
261
370
  - - ">="
262
371
  - !ruby/object:Gem::Version
263
372
  version: '0'
264
373
  requirements: []
265
- rubygems_version: 3.5.3
266
- signing_key:
374
+ rubygems_version: 4.0.4
267
375
  specification_version: 4
268
376
  summary: Diff::LCS computes the difference between two Enumerable sequences using
269
377
  the McIlroy-Hunt longest common subsequence (LCS) algorithm
data/.rspec DELETED
@@ -1 +0,0 @@
1
- --colour
data/Code-of-Conduct.md DELETED
@@ -1,74 +0,0 @@
1
- # Contributor Covenant Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- In the interest of fostering an open and welcoming environment, we as
6
- contributors and maintainers pledge to making participation in our project and
7
- our community a harassment-free experience for everyone, regardless of age, body
8
- size, disability, ethnicity, gender identity and expression, level of experience,
9
- nationality, personal appearance, race, religion, or sexual identity and
10
- orientation.
11
-
12
- ## Our Standards
13
-
14
- Examples of behavior that contributes to creating a positive environment
15
- include:
16
-
17
- * Using welcoming and inclusive language
18
- * Being respectful of differing viewpoints and experiences
19
- * Gracefully accepting constructive criticism
20
- * Focusing on what is best for the community
21
- * Showing empathy towards other community members
22
-
23
- Examples of unacceptable behavior by participants include:
24
-
25
- * The use of sexualized language or imagery and unwelcome sexual attention or
26
- advances
27
- * Trolling, insulting/derogatory comments, and personal or political attacks
28
- * Public or private harassment
29
- * Publishing others' private information, such as a physical or electronic
30
- address, without explicit permission
31
- * Other conduct which could reasonably be considered inappropriate in a
32
- professional setting
33
-
34
- ## Our Responsibilities
35
-
36
- Project maintainers are responsible for clarifying the standards of acceptable
37
- behavior and are expected to take appropriate and fair corrective action in
38
- response to any instances of unacceptable behavior.
39
-
40
- Project maintainers have the right and responsibility to remove, edit, or
41
- reject comments, commits, code, wiki edits, issues, and other contributions
42
- that are not aligned to this Code of Conduct, or to ban temporarily or
43
- permanently any contributor for other behaviors that they deem inappropriate,
44
- threatening, offensive, or harmful.
45
-
46
- ## Scope
47
-
48
- This Code of Conduct applies both within project spaces and in public spaces
49
- when an individual is representing the project or its community. Examples of
50
- representing a project or community include using an official project e-mail
51
- address, posting via an official social media account, or acting as an appointed
52
- representative at an online or offline event. Representation of a project may be
53
- further defined and clarified by project maintainers.
54
-
55
- ## Enforcement
56
-
57
- Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
- reported by contacting the project team at [INSERT EMAIL ADDRESS]. All
59
- complaints will be reviewed and investigated and will result in a response that
60
- is deemed necessary and appropriate to the circumstances. The project team is
61
- obligated to maintain confidentiality with regard to the reporter of an incident.
62
- Further details of specific enforcement policies may be posted separately.
63
-
64
- Project maintainers who do not follow or enforce the Code of Conduct in good
65
- faith may face temporary or permanent repercussions as determined by other
66
- members of the project's leadership.
67
-
68
- ## Attribution
69
-
70
- This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
- available at [http://contributor-covenant.org/version/1/4][version]
72
-
73
- [homepage]: http://contributor-covenant.org
74
- [version]: http://contributor-covenant.org/version/1/4/
data/Contributing.md DELETED
@@ -1,121 +0,0 @@
1
- ## Contributing
2
-
3
- I value any contribution to Diff::LCS you can provide: a bug report, a
4
- feature request, or code contributions. Code contributions to Diff::LCS are
5
- especially <del>welcome</del>encouraged. Because Diff::LCS is a complex
6
- codebase, there are a few guidelines:
7
-
8
- - Code changes _will not_ be accepted without tests. The test suite is
9
- written with [RSpec][].
10
- - Match my coding style.
11
- - Use a thoughtfully-named topic branch that contains your change. Rebase
12
- your commits into logical chunks as necessary.
13
- - Use [quality commit messages][].
14
- - Do not change the version number; when your patch is accepted and a release
15
- is made, the version will be updated at that point.
16
- - Submit a GitHub pull request with your changes.
17
- - New or changed behaviours require appropriate documentation.
18
-
19
- ### Test Dependencies
20
-
21
- Diff::LCS uses Ryan Davis’s [Hoe][] to manage the release process, and it
22
- adds a number of rake tasks. You will mostly be interested in:
23
-
24
- ```sh
25
- $ rake
26
- ```
27
-
28
- which runs the tests the same way that:
29
-
30
- ```sh
31
- $ rake spec
32
- ```
33
-
34
- will do.
35
-
36
- To assist with the installation of the development dependencies, I have
37
- provided a Gemfile pointing to the (generated) `diff-lcs.gemspec` file. This
38
- will permit you to do:
39
-
40
- ```sh
41
- $ bundle install
42
- ```
43
-
44
- to get the development dependencies. If you aleady have `hoe` installed, you
45
- can accomplish the same thing with:
46
-
47
- ```sh
48
- $ rake newb
49
- ```
50
-
51
- This task will install any missing dependencies, run the tests/specs, and
52
- generate the RDoc.
53
-
54
- You can run tests with code coverage analysis by running:
55
-
56
- ```sh
57
- $ rake spec:coverage
58
- ```
59
-
60
- ### Workflow
61
-
62
- Here's the most direct way to get your work merged into the project:
63
-
64
- - Fork the project.
65
- - Clone down your fork (`git clone git://github.com/<username>/diff-lcs.git`).
66
- - Create a topic branch to contain your change (`git checkout -b my_awesome_feature`).
67
- - Hack away, add tests. Not necessarily in that order.
68
- - Make sure everything still passes by running `rake`.
69
- - If necessary, rebase your commits into logical chunks, without errors.
70
- - Push the branch up (`git push origin my_awesome_feature`).
71
- - Create a pull request against halostatue/diff-lcs and describe what your
72
- change does and the why you think it should be merged.
73
-
74
- ### Contributors
75
-
76
- - Austin Ziegler created Diff::LCS.
77
-
78
- Thanks to everyone else who has contributed code or bug reports to Diff::LCS:
79
-
80
- - @ginriki
81
- - @joshbronson
82
- - @kevinmook
83
- - @mckaz
84
- - Akinori Musha
85
- - Artem Ignatyev
86
- - Brandon Fish
87
- - Camille Drapier
88
- - Cédric Boutillier
89
- - Gregg Kellogg
90
- - Jagdeep Singh
91
- - Jason Gladish
92
- - Jon Rowe
93
- - Josef Strzibny
94
- - Josep (@apuratepp)
95
- - Josh Bronson
96
- - Jun Aruga
97
- - Justin Steele
98
- - Kenichi Kamiya
99
- - Kensuke Nagae
100
- - Kevin Ansfield
101
- - Koichi Ito
102
- - Mark Friedgan
103
- - Michael Granger
104
- - Myron Marston
105
- - Nicolas Leger
106
- - Oleg Orlov
107
- - Paul Kunysch
108
- - Pete Higgins
109
- - Peter Goldstein
110
- - Peter Wagenet
111
- - Philippe Lafoucrière
112
- - Ryan Lovelett
113
- - Scott Steele
114
- - Simon Courtois
115
- - Tien (@tiendo1011)
116
- - Tomas Jura
117
- - Vít Ondruch
118
-
119
- [rspec]: http://rspec.info/documentation/
120
- [quality commit messages]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
121
- [hoe]: https://github.com/seattlerb/hoe