diff-lcs 1.5.1 → 1.6.0

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: 3538bd306feb87c5a2d957b3956a9b8ede2a2782db387f9f253115053c2066a1
4
- data.tar.gz: af8dd06512d39de79534212726c6ed9beba9560e110a1026666181a21dbb5dcb
3
+ metadata.gz: 5809a8a19bbbf227168d81fa0dcfe681aff17a494b16cd6af723f7dd665ed0d0
4
+ data.tar.gz: 844c07fe8cdc69183f0c0bb8f16cdfadae58d099eb3ab5927ac2aa9b50133948
5
5
  SHA512:
6
- metadata.gz: 3598cd0dc37b22112495d82949a3d846751ca2dc3717dffe313acf6740761df98ed6d9f158ebc1fc7be6739bb3ac774ee3d8a0c4ccb4f2f651aaa5c45b49e9d9
7
- data.tar.gz: 77f4c9705752143e88953395b991d4105de3e744f524421ff9a3933aa18febf82854462835ede955b72c62884143f27b9278f968f4629f40bbce2192ca44aa5b
6
+ metadata.gz: 219465ac1abcd2636a39e4425a0a84d64759b6818fa7b885ebfdd941af52344658568b52485c343e74b6dab7a300cf2109a38094ff94aca3f51bef31a3e13987
7
+ data.tar.gz: '082bd353ec1fb53cb848a435162ed9dd152f526cab697353de8fd8b9b319fdd319d90a7b1ec45f1259f2cf525fe81aba88f892c43712ff92d09da411391ace76'
data/CHANGELOG.md ADDED
@@ -0,0 +1,491 @@
1
+ # Changelog
2
+
3
+ ## 1.6.0 / 2025-02-13
4
+
5
+ - Baptiste Courtois (@annih) has done significant work on making `bin/ldiff`
6
+ work better, contributing a number of issues and pull requests. These include:
7
+
8
+ - Separation of command parsing from diff-generation in `Diff::LCS::Ldiff`
9
+ code extraction making it easier to use separately from the `bin/ldiff`
10
+ command in [#103][pull-103]. This partially resolves [#46][issue-46].
11
+
12
+ - Improvement of binary and empty file detection and tests in [#104][pull-104]
13
+ and [#105][pull-105]. This resolves issues [#100][issue-100],
14
+ [#102][issue-102].
15
+
16
+ - Various ldiff fixes for output [#101][pull-101] resolves issues
17
+ [#106][issue-106] (ldiff ed scripts are inverted), [#107][issue-107] (ldiff
18
+ hunk ranges are incorrect; regression or incorrect fix for [#60][issue-60]),
19
+ and [#95][issue-95].
20
+
21
+ - Patrick Linnane fixed various minor typos. [#93][pull-93]
22
+
23
+ - Mark Young added a Changelog link to the RubyGems metadata. [#92][pull-92]
24
+ This has been modified to incorporate it into the README.
25
+
26
+ - Updated the documentation on `Diff::LCS#lcs` to be clearer about the
27
+ requirements for object equality comparison. This resolves [#70][issue-70].
28
+
29
+ - Governance:
30
+
31
+ Changes described here are effective 2024-12-31.
32
+
33
+ - Update gem management details to use markdown files for everything, enabled
34
+ in part by [flavorjones/hoe-markdown][hoe-markdown]. Several files were
35
+ renamed to be more consistent with standard practices.
36
+
37
+ - Updated security notes with an [age][age] public key rather than pointing to
38
+ Keybase.io and a PGP public key which I no longer use. The use of the
39
+ [Tidelift security contact][tidelift] is recommended over direct disclosure.
40
+
41
+ ## 1.5.1 / 2024-01-31
42
+
43
+ - Peter Goldstein updated CI configuration to add Ruby 3.1 and Masato Nakamura
44
+ added Ruby 3.2 and 3.3. [#82][pull-82], [#89][pull-89]
45
+
46
+ - Switched to [standard ruby][standard ruby] formatting.
47
+
48
+ - Justin Steele converted the licence file to Markdown. [#84][pull-84]
49
+
50
+ - Updated the gem SPDX identifier for GPL 2.0 or later, resolving [#86][pull-86]
51
+ by Vit Ondruch.
52
+
53
+ - Resolve a potential security issue with `ldiff` in its use of `IO.read`
54
+ instead of `File.read`. [#91][issue-91]
55
+
56
+ - Added MFA authentication requirement for release to RubyGems. [#90][pull-90]
57
+
58
+ - Added Dependabot management for actions and gems. [#90][pull-90]
59
+
60
+ - Updated CodeQL configuration. [#90][pull-90]
61
+
62
+ ## 1.5.0 / 2021-12-23
63
+
64
+ - Updated the CI configuration and monkey-patch Hoe.
65
+
66
+ - Kenichi Kamiya fixed a test configuration deprecation in SimpleCov.
67
+ [#69][pull-69]
68
+
69
+ - Tien introduced several corrections and code improvements:
70
+
71
+ - Removed an off-by-one error when calculating an index value by embracing
72
+ Ruby iteration properly. This had a side-effect of fixing a long-standing
73
+ bug in `#traverse_sequences` where the traversal would not be transitive.
74
+ That is, `LCS(s2, s1)` should produce a sequence that is transitive with
75
+ `LCS(s1, s2)` on traversal, and applying the diff computed from those
76
+ results would result in equivalent changes that could be played forward or
77
+ backward as appropriate. [#71][pull-71], [#75][pull-75]
78
+
79
+ - The above fix resulted in a changed order of the longest common subsequence
80
+ when callbacks were applied. After analysis, it was determined that the
81
+ computed subsequence was _equivalent_ to the prior version, so the test was
82
+ updated. This also resulted in the clarification of documentation when
83
+ traversing the sub-sequences. [#79][pull-79]
84
+
85
+ - An infinite loop case in the case where `Diff::LCS` would be included into
86
+ an enumerable class has been fixed. [#73][pull-73]
87
+
88
+ - Clarified the purpose of a threshold test in calculation of LCS.
89
+ [#72][pull-72], [#80][pull-80]
90
+
91
+ - Removed autotest directory
92
+
93
+ ## 1.4.4 / 2020-07-01
94
+
95
+ - Fixed an issue reported by Jun Aruga in the `Diff::LCS::Ldiff` binary text
96
+ detection. [#44][issue-44]
97
+
98
+ - Fixed a theoretical issue reported by Jun Aruga in `Diff::LCS::Hunk` to raise
99
+ a more useful exception. [#43][issue-43]
100
+
101
+ - Added documentation that should address custom object issues as reported in
102
+ [#35][issue-35].
103
+
104
+ - Fixed more diff errors, in part reported in [#65][issue-65].
105
+
106
+ - The use of `Numeric#abs` is incorrect in `Diff::LCS::Block#diff_size`. The
107
+ diff size _must_ be accurate for correct change placement.
108
+
109
+ - When selecting `@max_diff_size` in `Diff::LCS::Hunk`, choose it based on
110
+ `block.diff_size.abs`.
111
+
112
+ - Made a number of changes that will, unfortunately, increase allocations at
113
+ the cost of being safe with frozen strings.
114
+
115
+ - Add some knowledge that when `Diff::LCS::Hunk#diff` is called, that we are
116
+ processing the _last_ hunk, so some changes will be made to how the output
117
+ is generated.
118
+
119
+ - `old`, `ed`, and `reverse_ed` formats have no differences.
120
+
121
+ - `unified` format will report `` given the
122
+ correct conditions, at most once. Unified range reporting also differs for
123
+ the last hunk such that the `length` of the range is reduced by one.
124
+
125
+ - `context` format will report `\No newline at end of file` given the
126
+ correct conditions, up to once per "file". Context range reporting also
127
+ differs for the last hunk such that the `end` part of the range is reduced
128
+ by one to a minimum of one.
129
+
130
+ - Added a bunch more tests for the cases above, and fixed `hunk_spec.rb` so that
131
+ the phrase being compared isn't nonsense French.
132
+
133
+ - Updated formatting.
134
+
135
+ - Added a Rake task to assist with manual testing on Ruby 1.8.
136
+
137
+ ## 1.4.3 / 2020-06-29
138
+
139
+ - Fixed several issues with 1.4 on Rubies older than 2.0. Some of this was
140
+ providing useful shim functions to Hoe 3.x (which dropped these older Rubies a
141
+ while ago). Specifically:
142
+
143
+ - Removed Array#lazy from a method in `Diff::LCS::Hunk`.
144
+
145
+ - Changed some unit tests to use old-style Symbol-keyed hashes.
146
+
147
+ - Changed some unit test helper functions to no longer use keyword parameters,
148
+ but only a trailing options hash.
149
+
150
+ - Made the use of `psych` dependent on `RUBY_VERSION >= 1.9`.
151
+
152
+ Resolves [#63][issue-63].
153
+
154
+ ## 1.4.2 / 2020-06-23
155
+
156
+ - Camille Drapier fixed a small issue with RuboCop configuration. [#59][pull-59]
157
+
158
+ - Applied another fix (and unit test) to fix an issue for the Chef team.
159
+ [#60][issue-60], [#61][pull-61]
160
+
161
+ ## 1.4.1 / 2020-06-23
162
+
163
+ - Fix an issue where diff sizes could be negative, and they should be.
164
+ [#57][issue-57], [#58][pull-58]
165
+
166
+ ## 1.4 / 2020-06-23
167
+
168
+ - Ruby versions lower than 2.4 are soft-deprecated and will not be run as part
169
+ of the CI process any longer.
170
+
171
+ - Akinora MUSHA (knu) added the ability for `Diff::LCS::Change` objects to be
172
+ implicitly treated arrays. Originally provided as pull request [#47][pull-47],
173
+ but it introduced a number of test failures as documented in [#48][issue-48],
174
+ and remediation of `Diff::LCS` itself was introduced in [#49][pull-49].
175
+
176
+ - Resolved [#5][issue-05] with some tests comparing output from `system` calls
177
+ to `bin/ldiff` with some pre-generated output. Resolved [#6][issue-06] with
178
+ these tests.
179
+
180
+ - Resolved a previously undetected `bin/ldiff` issue with `--context` output not
181
+ matching `diff --context` output.
182
+
183
+ - Resolved an issue with later versions of Ruby not working with an `OptParse`
184
+ specification of `Numeric`; this has been changed to `Integer`.
185
+
186
+ - Brandon Fish added TruffleRuby in [#52][pull-52].
187
+
188
+ - Fixed two missing classes as reported in [#53][issue-53].
189
+
190
+ ## 1.3 / 2017-01-18
191
+
192
+ - Bugs fixed:
193
+
194
+ - Fixed an error for `bin/ldiff --version`. Fixes issue [#21][issue-21].
195
+
196
+ - Force `Diff::LCS::Change` and `Diff::LCS::ContextChange` to only perform
197
+ equality comparisons against themselves. Provided by Kevin Mook in pull
198
+ request [#29][pull-29].
199
+
200
+ - Fix tab expansion in `htmldiff`, provided by Mark Friedgan in pull request
201
+ [#25][pull-25].
202
+
203
+ - Silence Ruby 2.4 `Fixnum` deprecation warnings. Fixes issue [#38][issue-38]
204
+ and pull request [#36][pull-36].
205
+
206
+ - Ensure that test dependencies are loaded properly. Fixes issue
207
+ [#33][issue-33] and pull request [#34][pull-34].
208
+
209
+ - Fix issue [#1][issue-01] with incorrect intuition of patch direction.
210
+ Tentative fix, but the previous failure cases pass now.
211
+
212
+ - Tooling changes:
213
+
214
+ - Added SimpleCov and Coveralls support.
215
+
216
+ - Change the homepage (temporarily) to the GitHub repo.
217
+
218
+ - Updated testing and gem infrastructure.
219
+
220
+ - Modernized the specs.
221
+
222
+ - Cleaned up documentation.
223
+
224
+ - Added a Code of Conduct.
225
+
226
+ ## 1.2.5 / 2013-11-08
227
+
228
+ - Bugs fixed:
229
+
230
+ - Comparing arrays flattened them too far, especially with `Diff::LCS.sdiff`.
231
+ Fixed by Josh Bronson in pull request [#23][pull-23].
232
+
233
+ ## 1.2.4 / 2013-04-20
234
+
235
+ - Bugs fixed:
236
+
237
+ - A bug was introduced after 1.1.3 when pruning common sequences at the start
238
+ of comparison. Paul Kunysch (@pck) fixed this in pull request
239
+ [#18][pull-18]. Thanks!
240
+
241
+ - The Rubinius (1.9 mode) bug in [rubinius/rubinius#2268][rubinius#2268] has
242
+ been fixed by the Rubinius team two days after it was filed. Thanks for
243
+ fixing this so quickly!
244
+
245
+ - Switching to Raggi's hoe-gemspec2 for gemspec generation.
246
+
247
+ ## 1.2.3 / 2013-04-11
248
+
249
+ - Bugs Fixed:
250
+
251
+ - The new encoding detection for diff output generation (added in 1.2.2)
252
+ introduced a bug if the left side of the comparison was the empty set.
253
+ Originally found in [rspec/rspec-expectations#238][rspec-expectations#238]
254
+ and [rspec/rspec-expectations#239][rspec-expectations#239]. Jon Rowe
255
+ developed a reasonable heuristic (left side, right side, empty string
256
+ literal) to avoid this bug.
257
+
258
+ - There is a known issue with Rubinius in 1.9 mode reported in
259
+ [rubinius/rubinius#2268][rubinius#2268] and demonstrated in the Travis CI
260
+ builds. For all other tested platforms, diff-lcs is considered stable. As
261
+ soon as a suitably small test-case can be created for the Rubinius team to
262
+ examine, this will be added to the Rubinius issue around this.
263
+
264
+ ## 1.2.2 / 2013-03-30
265
+
266
+ - Bugs Fixed:
267
+
268
+ - `Diff::LCS::Hunk` could not properly generate a difference for comparison
269
+ sets that are not US-ASCII-compatible because of the use of literal regular
270
+ expressions and strings. Jon Rowe found this in
271
+ [rspec/rspec-expectations#219][rspec-expectations#219] and provided a first
272
+ pass implementation in pull request [#15][pull-15]. I've reworked it because
273
+ of test failures in Rubinius when running in Ruby 1.9 mode. This coerces the
274
+ added values to the encoding of the old dataset (as determined by the first
275
+ piece of the old dataset).
276
+
277
+ - Adding Travis CI testing for Ruby 2.0.
278
+
279
+ ## 1.2.1 / 2013-02-09
280
+
281
+ - Bugs Fixed:
282
+
283
+ - As seen in [rspec/rspec-expectations#200][rspec-expectations#200], the
284
+ release of `Diff::LCS` 1.2 introduced an unnecessary public API change to
285
+ `Diff::LCS::Hunk` (see the change at
286
+ [rspec/rspec-expectations@3d6fc82c][rspec-expectations@3d6fc82c] for
287
+ details). The new method name (and behaviour) is more correct, but I should
288
+ not have renamed the function or should have at least provided an alias.
289
+ This release restores `Diff::LCS::Hunk#unshift` as an alias to #merge. Note
290
+ that the old `#unshift` behaviour was incorrect and will not be restored.
291
+
292
+ ## 1.2.0 / 2013-01-21
293
+
294
+ - Minor Enhancements:
295
+
296
+ - Added special case handling for `Diff::LCS.patch` so that it handles patches
297
+ that are empty or contain no changes.
298
+
299
+ - Added two new methods (`#patch_me` and `#unpatch_me`) to the include-able
300
+ module.
301
+
302
+ - Bugs Fixed:
303
+
304
+ - Fixed issue [#1][issue-01] patch direction detection.
305
+
306
+ - Resolved issue [#2][issue-02] by handling `string[string.size, 1]` properly
307
+ (it returns `""` not `nil`).
308
+
309
+ - Michael Granger (ged) fixed an implementation error in `Diff::LCS::Change`
310
+ and added specs in pull request [#8][pull-08]. Thanks!
311
+
312
+ - Made the code auto-testable.
313
+
314
+ - Vít Ondruch (voxik) provided the latest version of the GPL2 license file in
315
+ pull request [#10][pull-10]. Thanks!
316
+
317
+ - Fixed a documentation issue with the include-able versions of `#patch!` and
318
+ `#unpatch!` where they implied that they would replace the original value.
319
+ Given that `Diff::LCS.patch` always returns a copy, the documentation was
320
+ incorrect and has been corrected. To provide the behaviour that was
321
+ originally documented, two new methods were added to provide this behaviour.
322
+ Found by scooter-dangle in issue [#12][issue-12]. Thanks!
323
+
324
+ - Code Style Changes:
325
+
326
+ - Removed trailing spaces.
327
+
328
+ - Calling class methods using `.` instead of `::`.
329
+
330
+ - Vít Ondruch (voxik) removed unnecessary shebangs in pull request
331
+ [#9][pull-09]. Thanks!
332
+
333
+ - Kenichi Kamiya (kachick) removed some warnings of an unused variable in
334
+ lucky pull request [#13][pull-13]. Thanks!
335
+
336
+ - Embarked on a major refactoring to make the files a little more manageable
337
+ and understand the code on a deeper level.
338
+
339
+ - Adding CI via Travis CI.
340
+
341
+ ## 1.1.3 / 2011-08-27
342
+
343
+ - Converted to 'hoe' for release.
344
+
345
+ - Converted tests to RSpec 2.
346
+
347
+ - Extracted the body of `htmldiff` into a class available from
348
+ `diff/lcs/htmldiff`.
349
+
350
+ - Migrated development and issue tracking to GitHub.
351
+
352
+ - Bugs fixed:
353
+
354
+ - Eliminated the explicit use of RubyGems in both `bin/htmldiff` and
355
+ `bin/ldiff`. Resolves issue [#4][issue-04].
356
+
357
+ - Eliminated Ruby warnings. Resolves issue [#3][issue-03].
358
+
359
+ ## 1.1.2 / 2004-10-20
360
+
361
+ - Fixed a problem reported by Mauricio Fernandez in `htmldiff`.
362
+
363
+ ## 1.1.1 / 2004-09-25
364
+
365
+ - Fixed bug #891 (Set returned from patch command does not contain last equal
366
+ part).
367
+
368
+ - Fixed a problem with callback initialisation code (it assumed that all
369
+ callbacks passed as classes can be initialised; now, it rescues NoMethodError
370
+ in the event of private :new being called).
371
+
372
+ - Modified the non-initialisable callbacks to have a private `#new` method.
373
+
374
+ - Moved `ldiff` core code to `Diff::LCS::Ldiff` (`diff/lcs/ldiff.rb`).
375
+
376
+ ## 1.1.0
377
+
378
+ - Eliminated the need for `Diff::LCS::Event` and removed it.
379
+
380
+ - Added a contextual diff callback, `Diff::LCS::ContextDiffCallback`.
381
+
382
+ - Implemented (un-)patching for standard diff callback output formats with both
383
+ `#diff` and `#sdiff`.
384
+
385
+ - Extensive documentation changes.
386
+
387
+ ## 1.0.4
388
+
389
+ - Fixed a problem with `bin/ldiff` output, especially for unified format.
390
+ Newlines that should have been present weren't.
391
+
392
+ - Changed the `.tar.gz` installer to generate Windows batch files if ones do not
393
+ exist already. Removed the existing batch files as they didn't work.
394
+
395
+ ## 1.0.3
396
+
397
+ - Fixed a problem with `#traverse_sequences` where the first difference from the
398
+ left sequence might not be appropriately captured.
399
+
400
+ ## 1.0.2
401
+
402
+ - Fixed an issue with `ldiff` not working because actions were changed from
403
+ symbols to strings.
404
+
405
+ ## 1.0.1
406
+
407
+ - Minor modifications to the `gemspec`, the `README`.
408
+
409
+ - Renamed the diff program to `ldiff` (as well as the companion batch file) so
410
+ as to not collide with the standard diff program.
411
+
412
+ - Fixed issues with RubyGems. Requires RubyGems > 0.6.1 or >= 0.6.1 with the
413
+ latest CVS version.
414
+
415
+ ## 1.0
416
+
417
+ - Initial release based mostly on Perl's Algorithm::Diff.
418
+
419
+ [age]: https://github.com/FiloSottile/age
420
+ [hoe-halostatue]: https://github.com/halostatue/hoe-halostatue
421
+ [hoe-markdown]: https://github.com/flavorjones/hoe-markdown
422
+ [issue-01]: https://github.com/halostatue/diff-lcs/issues/1
423
+ [issue-02]: https://github.com/halostatue/diff-lcs/issues/2
424
+ [issue-03]: https://github.com/halostatue/diff-lcs/issues/3
425
+ [issue-04]: https://github.com/halostatue/diff-lcs/issues/4
426
+ [issue-05]: https://github.com/halostatue/diff-lcs/issues/5
427
+ [issue-06]: https://github.com/halostatue/diff-lcs/issues/6
428
+ [issue-12]: https://github.com/halostatue/diff-lcs/issues/12
429
+ [issue-21]: https://github.com/halostatue/diff-lcs/issues/21
430
+ [issue-33]: https://github.com/halostatue/diff-lcs/issues/33
431
+ [issue-35]: https://github.com/halostatue/diff-lcs/issues/35
432
+ [issue-38]: https://github.com/halostatue/diff-lcs/issues/38
433
+ [issue-43]: https://github.com/halostatue/diff-lcs/issues/43
434
+ [issue-44]: https://github.com/halostatue/diff-lcs/issues/44
435
+ [issue-46]: https://github.com/halostatue/diff-lcs/issues/46
436
+ [issue-48]: https://github.com/halostatue/diff-lcs/issues/48
437
+ [issue-53]: https://github.com/halostatue/diff-lcs/issues/53
438
+ [issue-57]: https://github.com/halostatue/diff-lcs/issues/57
439
+ [issue-60]: https://github.com/halostatue/diff-lcs/issues/60
440
+ [issue-63]: https://github.com/halostatue/diff-lcs/issues/63
441
+ [issue-65]: https://github.com/halostatue/diff-lcs/issues/65
442
+ [issue-70]: https://github.com/halostatue/diff-lcs/issues/70
443
+ [issue-91]: https://github.com/halostatue/diff-lcs/issues/91
444
+ [issue-95]: https://github.com/halostatue/diff-lcs/issues/95
445
+ [issue-100]: https://github.com/halostatue/diff-lcs/issues/100
446
+ [issue-102]: https://github.com/halostatue/diff-lcs/issues/102
447
+ [issue-106]: https://github.com/halostatue/diff-lcs/issues/106
448
+ [issue-107]: https://github.com/halostatue/diff-lcs/issues/107
449
+ [pull-08]: https://github.com/halostatue/diff-lcs/pull/8
450
+ [pull-09]: https://github.com/halostatue/diff-lcs/pull/9
451
+ [pull-10]: https://github.com/halostatue/diff-lcs/pull/10
452
+ [pull-13]: https://github.com/halostatue/diff-lcs/pull/13
453
+ [pull-15]: https://github.com/halostatue/diff-lcs/pull/15
454
+ [pull-18]: https://github.com/halostatue/diff-lcs/pull/18
455
+ [pull-23]: https://github.com/halostatue/diff-lcs/pull/23
456
+ [pull-25]: https://github.com/halostatue/diff-lcs/pull/25
457
+ [pull-29]: https://github.com/halostatue/diff-lcs/pull/29
458
+ [pull-34]: https://github.com/halostatue/diff-lcs/pull/34
459
+ [pull-36]: https://github.com/halostatue/diff-lcs/pull/36
460
+ [pull-47]: https://github.com/halostatue/diff-lcs/pull/47
461
+ [pull-49]: https://github.com/halostatue/diff-lcs/pull/49
462
+ [pull-52]: https://github.com/halostatue/diff-lcs/pull/52
463
+ [pull-58]: https://github.com/halostatue/diff-lcs/pull/58
464
+ [pull-59]: https://github.com/halostatue/diff-lcs/pull/59
465
+ [pull-61]: https://github.com/halostatue/diff-lcs/pull/61
466
+ [pull-69]: https://github.com/halostatue/diff-lcs/pull/69
467
+ [pull-71]: https://github.com/halostatue/diff-lcs/pull/71
468
+ [pull-72]: https://github.com/halostatue/diff-lcs/pull/72
469
+ [pull-73]: https://github.com/halostatue/diff-lcs/pull/73
470
+ [pull-75]: https://github.com/halostatue/diff-lcs/pull/75
471
+ [pull-79]: https://github.com/halostatue/diff-lcs/pull/79
472
+ [pull-80]: https://github.com/halostatue/diff-lcs/pull/80
473
+ [pull-82]: https://github.com/halostatue/diff-lcs/pull/82
474
+ [pull-84]: https://github.com/halostatue/diff-lcs/pull/84
475
+ [pull-86]: https://github.com/halostatue/diff-lcs/pull/86
476
+ [pull-89]: https://github.com/halostatue/diff-lcs/pull/89
477
+ [pull-90]: https://github.com/halostatue/diff-lcs/pull/90
478
+ [pull-92]: https://github.com/halostatue/diff-lcs/pull/92
479
+ [pull-93]: https://github.com/halostatue/diff-lcs/pull/93
480
+ [pull-101]: https://github.com/halostatue/diff-lcs/pull/101
481
+ [pull-103]: https://github.com/halostatue/diff-lcs/pull/103
482
+ [pull-104]: https://github.com/halostatue/diff-lcs/pull/104
483
+ [pull-105]: https://github.com/halostatue/diff-lcs/pull/105
484
+ [rspec-expectations#200]: https://github.com/rspec/rspec-expectations/pull/200
485
+ [rspec-expectations#219]: https://github.com/rspec/rspec-expectations/issues/219
486
+ [rspec-expectations#238]: https://github.com/rspec/rspec-expectations/issues/238
487
+ [rspec-expectations#239]: https://github.com/rspec/rspec-expectations/issues/239
488
+ [rspec-expectations@3d6fc82c]: https://github.com/rspec/rspec-expectations/commit/3d6fc82c
489
+ [rubinius#2268]: https://github.com/rubinius/rubinius/issues/2268
490
+ [standard ruby]: https://github.com/standardrb/standard
491
+ [tidelift]: https://tidelift.com/security
@@ -0,0 +1,128 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, caste, color, religion, or sexual
10
+ identity and orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment for our
18
+ community include:
19
+
20
+ - Demonstrating empathy and kindness toward other people
21
+ - Being respectful of differing opinions, viewpoints, and experiences
22
+ - Giving and gracefully accepting constructive feedback
23
+ - Accepting responsibility and apologizing to those affected by our mistakes,
24
+ and learning from the experience
25
+ - Focusing on what is best not just for us as individuals, but for the overall
26
+ community
27
+
28
+ Examples of unacceptable behavior include:
29
+
30
+ - The use of sexualized language or imagery, and sexual attention or advances of
31
+ any kind
32
+ - Trolling, insulting or derogatory comments, and personal or political attacks
33
+ - Public or private harassment
34
+ - Publishing others' private information, such as a physical or email address,
35
+ without their explicit permission
36
+ - Other conduct which could reasonably be considered inappropriate in a
37
+ professional setting
38
+
39
+ ## Enforcement Responsibilities
40
+
41
+ Community leaders are responsible for clarifying and enforcing our standards of
42
+ acceptable behavior and will take appropriate and fair corrective action in
43
+ response to any behavior that they deem inappropriate, threatening, offensive,
44
+ or harmful.
45
+
46
+ Community leaders have the right and responsibility to remove, edit, or reject
47
+ comments, commits, code, wiki edits, issues, and other contributions that are
48
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
49
+ decisions when appropriate.
50
+
51
+ ## Scope
52
+
53
+ This Code of Conduct applies within all community spaces, and also applies when
54
+ an individual is officially representing the community in public spaces.
55
+ Examples of representing our community include using an official email address,
56
+ posting via an official social media account, or acting as an appointed
57
+ representative at an online or offline event.
58
+
59
+ ## Enforcement
60
+
61
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
62
+ reported to the community leaders responsible for enforcement at [INSERT CONTACT
63
+ METHOD]. All complaints will be reviewed and investigated promptly and fairly.
64
+
65
+ All community leaders are obligated to respect the privacy and security of the
66
+ reporter of any incident.
67
+
68
+ ## Enforcement Guidelines
69
+
70
+ Community leaders will follow these Community Impact Guidelines in determining
71
+ the consequences for any action they deem in violation of this Code of Conduct:
72
+
73
+ ### 1. Correction
74
+
75
+ **Community Impact**: Use of inappropriate language or other behavior deemed
76
+ unprofessional or unwelcome in the community.
77
+
78
+ **Consequence**: A private, written warning from community leaders, providing
79
+ clarity around the nature of the violation and an explanation of why the
80
+ behavior was inappropriate. A public apology may be requested.
81
+
82
+ ### 2. Warning
83
+
84
+ **Community Impact**: A violation through a single incident or series of
85
+ actions.
86
+
87
+ **Consequence**: A warning with consequences for continued behavior. No
88
+ interaction with the people involved, including unsolicited interaction with
89
+ those enforcing the Code of Conduct, for a specified period of time. This
90
+ includes avoiding interactions in community spaces as well as external channels
91
+ like social media. Violating these terms may lead to a temporary or permanent
92
+ ban.
93
+
94
+ ### 3. Temporary Ban
95
+
96
+ **Community Impact**: A serious violation of community standards, including
97
+ sustained inappropriate behavior.
98
+
99
+ **Consequence**: A temporary ban from any sort of interaction or public
100
+ communication with the community for a specified period of time. No public or
101
+ private interaction with the people involved, including unsolicited interaction
102
+ with those enforcing the Code of Conduct, is allowed during this period.
103
+ Violating these terms may lead to a permanent ban.
104
+
105
+ ### 4. Permanent Ban
106
+
107
+ **Community Impact**: Demonstrating a pattern of violation of community
108
+ standards, including sustained inappropriate behavior, harassment of an
109
+ individual, or aggression toward or disparagement of classes of individuals.
110
+
111
+ **Consequence**: A permanent ban from any sort of public interaction within the
112
+ community.
113
+
114
+ ## Attribution
115
+
116
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
117
+ version 2.1, available at
118
+ <https://www.contributor-covenant.org/version/2/1/code_of_conduct.html>.
119
+
120
+ Community Impact Guidelines were inspired by
121
+ [Mozilla's code of conduct enforcement ladder][Mozilla CoC].
122
+
123
+ For answers to common questions about this code of conduct, see the FAQ at
124
+ <https://www.contributor-covenant.org/faq>. Translations are available at
125
+ <https://www.contributor-covenant.org/translations>.
126
+
127
+ [homepage]: https://www.contributor-covenant.org
128
+ [Mozilla CoC]: https://github.com/mozilla/diversity