diff-lcs 1.4.4 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Contributing.md +3 -0
- data/History.md +219 -107
- data/License.md +6 -4
- data/Manifest.txt +15 -1
- data/Rakefile +81 -25
- data/bin/htmldiff +4 -4
- data/lib/diff/lcs/array.rb +1 -1
- data/lib/diff/lcs/backports.rb +2 -2
- data/lib/diff/lcs/block.rb +4 -4
- data/lib/diff/lcs/callbacks.rb +9 -7
- data/lib/diff/lcs/change.rb +19 -19
- data/lib/diff/lcs/htmldiff.rb +24 -16
- data/lib/diff/lcs/hunk.rb +35 -30
- data/lib/diff/lcs/internals.rb +24 -20
- data/lib/diff/lcs/ldiff.rb +37 -35
- data/lib/diff/lcs.rb +77 -75
- data/lib/diff-lcs.rb +1 -1
- data/spec/change_spec.rb +50 -50
- data/spec/diff_spec.rb +14 -14
- data/spec/fixtures/ldiff/output.diff.chef +4 -0
- data/spec/fixtures/ldiff/output.diff.chef-c +15 -0
- data/spec/fixtures/ldiff/output.diff.chef-e +3 -0
- data/spec/fixtures/ldiff/output.diff.chef-f +3 -0
- data/spec/fixtures/ldiff/output.diff.chef-u +9 -0
- data/spec/fixtures/ldiff/output.diff.chef2 +7 -0
- data/spec/fixtures/ldiff/output.diff.chef2-c +20 -0
- data/spec/fixtures/ldiff/output.diff.chef2-d +7 -0
- data/spec/fixtures/ldiff/output.diff.chef2-e +7 -0
- data/spec/fixtures/ldiff/output.diff.chef2-f +7 -0
- data/spec/fixtures/ldiff/output.diff.chef2-u +16 -0
- data/spec/fixtures/new-chef +4 -0
- data/spec/fixtures/new-chef2 +17 -0
- data/spec/fixtures/old-chef +4 -0
- data/spec/fixtures/old-chef2 +14 -0
- data/spec/hunk_spec.rb +19 -19
- data/spec/issues_spec.rb +48 -42
- data/spec/lcs_spec.rb +11 -11
- data/spec/ldiff_spec.rb +13 -11
- data/spec/patch_spec.rb +84 -84
- data/spec/sdiff_spec.rb +111 -109
- data/spec/spec_helper.rb +77 -76
- data/spec/traverse_balanced_spec.rb +191 -189
- data/spec/traverse_sequences_spec.rb +31 -33
- metadata +50 -23
- data/autotest/discover.rb +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3538bd306feb87c5a2d957b3956a9b8ede2a2782db387f9f253115053c2066a1
|
4
|
+
data.tar.gz: af8dd06512d39de79534212726c6ed9beba9560e110a1026666181a21dbb5dcb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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,11 +106,13 @@ 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
|
111
113
|
- Scott Steele
|
112
114
|
- Simon Courtois
|
115
|
+
- Tien (@tiendo1011)
|
113
116
|
- Tomas Jura
|
114
117
|
- Vít Ondruch
|
115
118
|
|
data/History.md
CHANGED
@@ -1,52 +1,115 @@
|
|
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
|
+
|
26
|
+
## 1.5.0 / 2021-12-23
|
27
|
+
|
28
|
+
- Updated the CI configuration and monkey-patch Hoe.
|
29
|
+
|
30
|
+
- Kenichi Kamiya fixed a test configuration deprecation in SimpleCov. [#69][]
|
31
|
+
|
32
|
+
- Tien introduced several corrections and code improvements:
|
33
|
+
|
34
|
+
- Removed an off-by-one error when calculating an index value by embracing
|
35
|
+
Ruby iteration properly. This had a side-effect of fixing a long-standing
|
36
|
+
bug in `#traverse_sequences` where the traversal would not be transitive.
|
37
|
+
That is, `LCS(s2, s1)` should produce a sequence that is transitive with
|
38
|
+
`LCS(s1, s2)` on traversal, and applying the diff computed from those
|
39
|
+
results would result in equivalent changes that could be played forward or
|
40
|
+
backward as appropriate. [#71][], [#75][]
|
41
|
+
|
42
|
+
- The above fix resulted in a changed order of the longest common subsequence
|
43
|
+
when callbacks were applied. After analysis, it was determined that the
|
44
|
+
computed subsequence was _equivalent_ to the prior version, so the test was
|
45
|
+
updated. This also resulted in the clarification of documentation when
|
46
|
+
traversing the subsequences. [#79][]
|
47
|
+
|
48
|
+
- An infinite loop case in the case where Diff::LCS would be included into an
|
49
|
+
enumerable class has been fixed. [#73][]
|
50
|
+
|
51
|
+
- Clarified the purpose of a threshold test in calculation of LCS. [#72][],
|
52
|
+
[#80][]
|
53
|
+
|
54
|
+
- Removed autotest directory
|
55
|
+
|
3
56
|
## 1.4.4 / 2020-07-01
|
4
57
|
|
5
58
|
- Fixed an issue reported by Jun Aruga in the Diff::LCS::Ldiff binary text
|
6
59
|
detection. [#44][]
|
60
|
+
|
7
61
|
- Fixed a theoretical issue reported by Jun Aruga in Diff::LCS::Hunk to raise
|
8
62
|
a more useful exception. [#43][]
|
63
|
+
|
9
64
|
- Added documentation that should address custom object issues as reported in
|
10
65
|
[#35][].
|
11
66
|
|
12
67
|
- Fixed more diff errors, in part reported in [#65][].
|
13
68
|
|
14
|
-
- The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`.
|
15
|
-
|
69
|
+
- The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`. The
|
70
|
+
diff size _must_ be accurate for correct change placement.
|
71
|
+
|
16
72
|
- When selecting @max_diff_size in Diff::LCS::Hunk, choose it based on
|
17
73
|
`block.diff_size.abs`.
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
74
|
+
|
75
|
+
- Made a number of changes that will, unfortunately, increase allocations at
|
76
|
+
the cost of being safe with frozen strings.
|
77
|
+
|
78
|
+
- Add some knowledge that when `Diff::LCS::Hunk#diff` is called, that we are
|
79
|
+
processing the _last_ hunk, so some changes will be made to how the output
|
80
|
+
is generated.
|
23
81
|
|
24
82
|
- `old`, `ed`, and `reverse_ed` formats have no differences.
|
83
|
+
|
25
84
|
- `unified` format will report `` given the
|
26
|
-
correct conditions, at most once. Unified range reporting also
|
27
|
-
|
28
|
-
|
85
|
+
correct conditions, at most once. Unified range reporting also differs for
|
86
|
+
the last hunk such that the `length` of the range is reduced by one.
|
87
|
+
|
29
88
|
- `context` format will report `\No newline at end of file` given the
|
30
89
|
correct conditions, up to once per "file". Context range reporting also
|
31
|
-
differs for the last hunk such that the `end` part of the range is
|
32
|
-
|
90
|
+
differs for the last hunk such that the `end` part of the range is reduced
|
91
|
+
by one to a minimum of one.
|
33
92
|
|
34
|
-
- Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so
|
35
|
-
|
93
|
+
- Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so that
|
94
|
+
the phrase being compared isn't nonsense French.
|
36
95
|
|
37
96
|
- Updated formatting.
|
97
|
+
|
38
98
|
- Added a Rake task to assist with manual testing on Ruby 1.8.
|
39
99
|
|
40
100
|
## 1.4.3 / 2020-06-29
|
41
101
|
|
42
102
|
- Fixed several issues with the 1.4 on Rubies older than 2.0. Some of this was
|
43
|
-
providing useful shim functions to Hoe 3.x (which dropped these older
|
44
|
-
|
103
|
+
providing useful shim functions to Hoe 3.x (which dropped these older Rubies
|
104
|
+
a while ago). Specifically:
|
45
105
|
|
46
106
|
- Removed Array#lazy from a method in Diff::LCS::Hunk.
|
107
|
+
|
47
108
|
- Changed some unit tests to use old-style Symbol-keyed hashes.
|
48
|
-
|
49
|
-
|
109
|
+
|
110
|
+
- Changed some unit test helper functions to no longer use keyword parameters,
|
111
|
+
but only a trailing options hash.
|
112
|
+
|
50
113
|
- Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`.
|
51
114
|
|
52
115
|
Resolves [#63][].
|
@@ -54,6 +117,7 @@
|
|
54
117
|
## 1.4.2 / 2020-06-23
|
55
118
|
|
56
119
|
- Camille Drapier fixed a small issue with RuboCop configuration. [#59][]
|
120
|
+
|
57
121
|
- Applied another fix (and unit test) to fix an issue for the Chef team.
|
58
122
|
[#60][], [#61][]
|
59
123
|
|
@@ -64,20 +128,25 @@
|
|
64
128
|
|
65
129
|
## 1.4 / 2020-06-23
|
66
130
|
|
67
|
-
- Ruby versions lower than 2.4 are soft-deprecated and will not be run as
|
68
|
-
|
131
|
+
- Ruby versions lower than 2.4 are soft-deprecated and will not be run as part
|
132
|
+
of the CI process any longer.
|
133
|
+
|
69
134
|
- Akinora MUSHA (knu) added the ability for Diff::LCS::Change objects to be
|
70
|
-
implicitly treated arrays. Originally provided as pull request [#47][],
|
71
|
-
|
72
|
-
|
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][].
|
138
|
+
|
73
139
|
- Resolved [#5][] with some tests comparing output from `system` calls to
|
74
|
-
`bin/ldiff` with some pre-generated output. Resolved [#6][] with these
|
75
|
-
|
76
|
-
- Resolved a previously undetected `bin/ldiff` issue with `--context` output
|
77
|
-
|
140
|
+
`bin/ldiff` with some pre-generated output. Resolved [#6][] with these tests.
|
141
|
+
|
142
|
+
- Resolved a previously undetected `bin/ldiff` issue with `--context` output not
|
143
|
+
matching `diff --context` output.
|
144
|
+
|
78
145
|
- Resolved an issue with later versions of Ruby not working with an `OptParse`
|
79
146
|
specification of `Numeric`; this has been changed to `Integer`.
|
147
|
+
|
80
148
|
- Brandon Fish added truffleruby in [#52][].
|
149
|
+
|
81
150
|
- Fixed two missing classes as reported in [#53][].
|
82
151
|
|
83
152
|
## 1.3 / 2017-01-18
|
@@ -85,23 +154,31 @@
|
|
85
154
|
- Bugs fixed:
|
86
155
|
|
87
156
|
- Fixed an error for bin/ldiff --version. Fixes issue [#21][].
|
157
|
+
|
88
158
|
- Force Diff::LCS::Change and Diff::LCS::ContextChange to only perform
|
89
|
-
equality comparisons against themselves. Provided by Kevin Mook in
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
-
|
96
|
-
|
97
|
-
|
98
|
-
|
159
|
+
equality comparisons against themselves. Provided by Kevin Mook in pull
|
160
|
+
request [#29][].
|
161
|
+
|
162
|
+
- Fix tab expansion in htmldiff, provided by Mark Friedgan in pull request
|
163
|
+
[#25][].
|
164
|
+
|
165
|
+
- Silence Ruby 2.4 Fixnum deprecation warnings. Fixes issue [#38][] and pull
|
166
|
+
request [#36][].
|
167
|
+
|
168
|
+
- Ensure that test dependencies are loaded properly. Fixes issue [#33][] and
|
169
|
+
pull request [#34][].
|
170
|
+
|
171
|
+
- Fix issue [#1][] with incorrect intuition of patch direction. Tentative fix,
|
172
|
+
but the previous failure cases pass now.
|
99
173
|
|
100
174
|
- Tooling changes:
|
101
175
|
|
102
176
|
- Added SimpleCov and Coveralls support.
|
177
|
+
|
103
178
|
- Change the homepage (temporarily) to the GitHub repo.
|
179
|
+
|
104
180
|
- Updated testing and gem infrastructure.
|
181
|
+
|
105
182
|
- Modernized the specs.
|
106
183
|
|
107
184
|
- Cleaned up documentation.
|
@@ -112,20 +189,20 @@
|
|
112
189
|
|
113
190
|
- Bugs fixed:
|
114
191
|
|
115
|
-
- Comparing arrays flattened them too far, especially with
|
116
|
-
|
192
|
+
- Comparing arrays flattened them too far, especially with Diff::LCS.sdiff.
|
193
|
+
Fixed by Josh Bronson in pull request [#23][].
|
117
194
|
|
118
195
|
## 1.2.4 / 2013-04-20
|
119
196
|
|
120
197
|
- Bugs fixed:
|
121
198
|
|
122
|
-
- A bug was introduced after 1.1.3 when pruning common sequences at the
|
123
|
-
|
124
|
-
|
199
|
+
- A bug was introduced after 1.1.3 when pruning common sequences at the start
|
200
|
+
of comparison. Paul Kunysch (@pck) fixed this in pull request [#18][].
|
201
|
+
Thanks!
|
125
202
|
|
126
|
-
- The Rubinius (1.9 mode) bug in [rubinius/rubinius#2268][] has been
|
127
|
-
|
128
|
-
|
203
|
+
- The Rubinius (1.9 mode) bug in [rubinius/rubinius#2268][] has been fixed by
|
204
|
+
the Rubinius team two days after it was filed. Thanks for fixing this so
|
205
|
+
quickly!
|
129
206
|
|
130
207
|
- Switching to Raggi's hoe-gemspec2 for gemspec generation.
|
131
208
|
|
@@ -136,92 +213,104 @@
|
|
136
213
|
- The new encoding detection for diff output generation (added in 1.2.2)
|
137
214
|
introduced a bug if the left side of the comparison was the empty set.
|
138
215
|
Originally found in [rspec/rspec-expectations#238][] and
|
139
|
-
[rspec/rspec-expectations#239][]. Jon Rowe developed a reasonable
|
140
|
-
|
141
|
-
|
216
|
+
[rspec/rspec-expectations#239][]. Jon Rowe developed a reasonable heuristic
|
217
|
+
(left side, right side, empty string literal) to avoid this bug.
|
218
|
+
|
142
219
|
- There is a known issue with Rubinius in 1.9 mode reported in
|
143
|
-
[rubinius/rubinius#2268][] and demonstrated in the Travis CI builds.
|
144
|
-
|
145
|
-
|
146
|
-
|
220
|
+
[rubinius/rubinius#2268][] and demonstrated in the Travis CI builds. For all
|
221
|
+
other tested platforms, diff-lcs is considered stable. As soon as a suitably
|
222
|
+
small test-case can be created for the Rubinius team to examine, this will
|
223
|
+
be added to the Rubinius issue around this.
|
147
224
|
|
148
225
|
## 1.2.2 / 2013-03-30
|
149
226
|
|
150
227
|
- Bugs Fixed:
|
151
228
|
|
152
|
-
- Diff::LCS::Hunk could not properly generate a difference for comparison
|
153
|
-
|
154
|
-
|
155
|
-
[rspec/rspec-expectations#219][] and provided a first pass
|
156
|
-
|
157
|
-
|
158
|
-
the
|
159
|
-
|
229
|
+
- Diff::LCS::Hunk could not properly generate a difference for comparison sets
|
230
|
+
that are not US-ASCII-compatible because of the use of literal regular
|
231
|
+
expressions and strings. Jon Rowe found this in
|
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
|
234
|
+
when running in Ruby 1.9 mode. This coerces the added values to the encoding
|
235
|
+
of the old dataset (as determined by the first piece of the old dataset).
|
236
|
+
|
160
237
|
- Adding Travis CI testing for Ruby 2.0.
|
161
238
|
|
162
239
|
## 1.2.1 / 2013-02-09
|
163
240
|
|
164
241
|
- Bugs Fixed:
|
165
242
|
|
166
|
-
- As seen in [rspec/rspec-expectations#200][], the release of
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
old #unshift behaviour was incorrect and will not be restored.
|
243
|
+
- As seen in [rspec/rspec-expectations#200][], the release of Diff::LCS 1.2
|
244
|
+
introduced an unnecessary public API change to Diff::LCS::Hunk (see the
|
245
|
+
change at [rspec/rspec-expectations@3d6fc82c][] for details). The new method
|
246
|
+
name (and behaviour) is more correct, but I should not have renamed the
|
247
|
+
function or should have at least provided an alias. This release restores
|
248
|
+
Diff::LCS::Hunk#unshift as an alias to #merge. Note that the old #unshift
|
249
|
+
behaviour was incorrect and will not be restored.
|
174
250
|
|
175
251
|
## 1.2.0 / 2013-01-21
|
176
252
|
|
177
253
|
- Minor Enhancements:
|
178
254
|
|
179
|
-
- Added special case handling for Diff::LCS.patch so that it handles
|
180
|
-
|
181
|
-
|
182
|
-
|
255
|
+
- Added special case handling for Diff::LCS.patch so that it handles patches
|
256
|
+
that are empty or contain no changes.
|
257
|
+
|
258
|
+
- Added two new methods (#patch_me and #unpatch_me) to the includable module.
|
183
259
|
|
184
260
|
- Bugs Fixed:
|
185
261
|
|
186
262
|
- Fixed issue [#1][] patch direction detection.
|
263
|
+
|
187
264
|
- Resolved issue [#2][] by handling `string[string.size, 1]` properly (it
|
188
265
|
returns `""` not `nil`).
|
189
|
-
|
190
|
-
|
266
|
+
|
267
|
+
- Michael Granger (ged) fixed an implementation error in Diff::LCS::Change and
|
268
|
+
added specs in pull request [#8][]. Thanks!
|
269
|
+
|
191
270
|
- Made the code auto-testable.
|
192
|
-
|
193
|
-
|
271
|
+
|
272
|
+
- Vít Ondruch (voxik) provided the latest version of the GPL2 license file in
|
273
|
+
pull request [#10][]. Thanks!
|
274
|
+
|
194
275
|
- Fixed a documentation issue with the includable versions of #patch! and
|
195
|
-
#unpatch! where they implied that they would replace the original
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
Thanks!
|
276
|
+
#unpatch! where they implied that they would replace the original value.
|
277
|
+
Given that Diff::LCS.patch always returns a copy, the documentation was
|
278
|
+
incorrect and has been corrected. To provide the behaviour that was
|
279
|
+
originally documented, two new methods were added to provide this behaviour.
|
280
|
+
Found by scooter-dangle in issue [#12][]. Thanks!
|
201
281
|
|
202
282
|
- Code Style Changes:
|
203
283
|
|
204
284
|
- Removed trailing spaces.
|
285
|
+
|
205
286
|
- Calling class methods using `.` instead of `::`.
|
287
|
+
|
206
288
|
- Vít Ondruch (voxik) removed unnecessary shebangs in pull request [#9][].
|
207
289
|
Thanks!
|
290
|
+
|
208
291
|
- Kenichi Kamiya (kachick) removed some warnings of an unused variable in
|
209
292
|
lucky pull request [#13][]. Thanks!
|
210
|
-
|
211
|
-
|
293
|
+
|
294
|
+
- Embarked on a major refactoring to make the files a little more manageable
|
295
|
+
and understand the code on a deeper level.
|
296
|
+
|
212
297
|
- Adding to http://travis-ci.org.
|
213
298
|
|
214
299
|
## 1.1.3 / 2011-08-27
|
215
300
|
|
216
301
|
- Converted to 'hoe' for release.
|
302
|
+
|
217
303
|
- Converted tests to RSpec 2.
|
218
|
-
|
219
|
-
|
304
|
+
|
305
|
+
- Extracted the body of htmldiff into a class available from diff/lcs/htmldiff.
|
306
|
+
|
220
307
|
- Migrated development and issue tracking to GitHub.
|
308
|
+
|
221
309
|
- Bugs fixed:
|
222
310
|
|
223
|
-
- Eliminated the explicit use of RubyGems in both bin/htmldiff and
|
224
|
-
|
311
|
+
- Eliminated the explicit use of RubyGems in both bin/htmldiff and bin/ldiff.
|
312
|
+
Resolves issue [#4][].
|
313
|
+
|
225
314
|
- Eliminated Ruby warnings. Resolves issue [#3][].
|
226
315
|
|
227
316
|
## 1.1.2 / 2004-10-20
|
@@ -232,31 +321,38 @@
|
|
232
321
|
|
233
322
|
- Fixed bug #891 (Set returned from patch command does not contain last equal
|
234
323
|
part).
|
324
|
+
|
235
325
|
- Fixed a problem with callback initialisation code (it assumed that all
|
236
|
-
callbacks passed as classes can be initialised; now, it rescues
|
237
|
-
|
326
|
+
callbacks passed as classes can be initialised; now, it rescues NoMethodError
|
327
|
+
in the event of private :new being called).
|
328
|
+
|
238
329
|
- Modified the non-initialisable callbacks to have a private #new method.
|
330
|
+
|
239
331
|
- Moved ldiff core code to Diff::LCS::Ldiff (diff/lcs/ldiff.rb).
|
240
332
|
|
241
|
-
## 1.1.0
|
333
|
+
## 1.1.0
|
242
334
|
|
243
335
|
- Eliminated the need for Diff::LCS::Event and removed it.
|
336
|
+
|
244
337
|
- Added a contextual diff callback, Diff::LCS::ContextDiffCallback.
|
245
|
-
|
246
|
-
|
338
|
+
|
339
|
+
- Implemented patching/unpatching for standard Diff callback output formats with
|
340
|
+
both #diff and #sdiff.
|
341
|
+
|
247
342
|
- Extensive documentation changes.
|
248
343
|
|
249
344
|
## 1.0.4
|
250
345
|
|
251
|
-
- Fixed a problem with bin/ldiff output, especially for unified format.
|
252
|
-
|
253
|
-
|
254
|
-
|
346
|
+
- Fixed a problem with bin/ldiff output, especially for unified format. Newlines
|
347
|
+
that should have been present weren't.
|
348
|
+
|
349
|
+
- Changed the .tar.gz installer to generate Windows batch files if ones do not
|
350
|
+
exist already. Removed the existing batch files as they didn't work.
|
255
351
|
|
256
352
|
## 1.0.3
|
257
353
|
|
258
|
-
- Fixed a problem with #traverse_sequences where the first difference from
|
259
|
-
|
354
|
+
- Fixed a problem with #traverse_sequences where the first difference from the
|
355
|
+
left sequence might not be appropriately captured.
|
260
356
|
|
261
357
|
## 1.0.2
|
262
358
|
|
@@ -266,8 +362,10 @@
|
|
266
362
|
## 1.0.1
|
267
363
|
|
268
364
|
- Minor modifications to the gemspec, the README.
|
269
|
-
|
270
|
-
|
365
|
+
|
366
|
+
- Renamed the diff program to ldiff (as well as the companion batch file) so as
|
367
|
+
to not collide with the standard diff program.
|
368
|
+
|
271
369
|
- Fixed issues with RubyGems. Requires RubyGems > 0.6.1 or >= 0.6.1 with the
|
272
370
|
latest CVS version.
|
273
371
|
|
@@ -275,12 +373,6 @@
|
|
275
373
|
|
276
374
|
- Initial release based mostly on Perl's Algorithm::Diff.
|
277
375
|
|
278
|
-
[rubinius/rubinius#2268]: https://github.com/rubinius/rubinius/issues/2268
|
279
|
-
[rspec/rspec-expectations#239]: https://github.com/rspec/rspec-expectations/issues/239
|
280
|
-
[rspec/rspec-expectations#238]: https://github.com/rspec/rspec-expectations/issues/238
|
281
|
-
[rspec/rspec-expectations#219]: https://github.com/rspec/rspec-expectations/issues/219
|
282
|
-
[rspec/rspec-expectations@3d6fc82c]: https://github.com/rspec/rspec-expectations/commit/3d6fc82c
|
283
|
-
[rspec/rspec-expectations#200]: https://github.com/rspec/rspec-expectations/pull/200
|
284
376
|
[#1]: https://github.com/halostatue/diff-lcs/issues/1
|
285
377
|
[#2]: https://github.com/halostatue/diff-lcs/issues/2
|
286
378
|
[#3]: https://github.com/halostatue/diff-lcs/issues/3
|
@@ -317,3 +409,23 @@
|
|
317
409
|
[#61]: https://github.com/halostatue/diff-lcs/pull/61
|
318
410
|
[#63]: https://github.com/halostatue/diff-lcs/issues/63
|
319
411
|
[#65]: https://github.com/halostatue/diff-lcs/issues/65
|
412
|
+
[#69]: https://github.com/halostatue/diff-lcs/issues/69
|
413
|
+
[#71]: https://github.com/halostatue/diff-lcs/issues/71
|
414
|
+
[#72]: https://github.com/halostatue/diff-lcs/issues/72
|
415
|
+
[#73]: https://github.com/halostatue/diff-lcs/issues/73
|
416
|
+
[#75]: https://github.com/halostatue/diff-lcs/issues/75
|
417
|
+
[#79]: https://github.com/halostatue/diff-lcs/issues/79
|
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
|
-
|
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
|
-
|
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
|
-
|
35
|
+
## Perl Artistic License
|
36
|
+
|
36
37
|
See the file docs/artistic.txt in the main distribution.
|
37
38
|
|
38
|
-
|
39
|
+
## GNU GPL version 2
|
40
|
+
|
39
41
|
See the file docs/COPYING.txt in the main distribution.
|
data/Manifest.txt
CHANGED
@@ -6,7 +6,6 @@ License.md
|
|
6
6
|
Manifest.txt
|
7
7
|
README.rdoc
|
8
8
|
Rakefile
|
9
|
-
autotest/discover.rb
|
10
9
|
bin/htmldiff
|
11
10
|
bin/ldiff
|
12
11
|
docs/COPYING.txt
|
@@ -34,6 +33,21 @@ spec/fixtures/ldiff/output.diff-c
|
|
34
33
|
spec/fixtures/ldiff/output.diff-e
|
35
34
|
spec/fixtures/ldiff/output.diff-f
|
36
35
|
spec/fixtures/ldiff/output.diff-u
|
36
|
+
spec/fixtures/ldiff/output.diff.chef
|
37
|
+
spec/fixtures/ldiff/output.diff.chef-c
|
38
|
+
spec/fixtures/ldiff/output.diff.chef-e
|
39
|
+
spec/fixtures/ldiff/output.diff.chef-f
|
40
|
+
spec/fixtures/ldiff/output.diff.chef-u
|
41
|
+
spec/fixtures/ldiff/output.diff.chef2
|
42
|
+
spec/fixtures/ldiff/output.diff.chef2-c
|
43
|
+
spec/fixtures/ldiff/output.diff.chef2-d
|
44
|
+
spec/fixtures/ldiff/output.diff.chef2-e
|
45
|
+
spec/fixtures/ldiff/output.diff.chef2-f
|
46
|
+
spec/fixtures/ldiff/output.diff.chef2-u
|
47
|
+
spec/fixtures/new-chef
|
48
|
+
spec/fixtures/new-chef2
|
49
|
+
spec/fixtures/old-chef
|
50
|
+
spec/fixtures/old-chef2
|
37
51
|
spec/hunk_spec.rb
|
38
52
|
spec/issues_spec.rb
|
39
53
|
spec/lcs_spec.rb
|