sapling/lib/third-party
Jun Wu 56a738fce4 xdiff: remove patience and histogram diff algorithms
Summary:
Patience diff is the normal diff algorithm, plus some greediness that
unconditionally matches common common unique lines.  That means it is easy to
construct cases to let it generate suboptimal result, like:

```
open('a', 'w').write('\n'.join(list('a' + 'x' * 300 + 'u' + 'x' * 700 + 'a\n')))
open('b', 'w').write('\n'.join(list('b' + 'x' * 700 + 'u' + 'x' * 300 + 'b\n')))
```

Patience diff has been advertised as being able to generate better results for
some C code changes. However, the more scientific way to do that is the
indention heuristic [1].

Since patience diff could generate suboptimal result more easily and its
"better" diff feature could be replaced by the new indention heuristic, let's
just remove it and its variant histogram diff to simplify the code.

[1]: 433860f3d0

Reviewed By: ryanmce

Differential Revision: D7124711

fbshipit-source-id: 127e8de6c75d0262687a1b60814813e660aae3da
2018-04-13 21:51:20 -07:00
..
mman-win32 hg: vendor a third-party implementation of mman library for Windows 2018-04-13 21:51:10 -07:00
sha1dc sha1: add sha1detectcoll library to setup.py 2018-01-08 12:54:57 -08:00
xdiff xdiff: remove patience and histogram diff algorithms 2018-04-13 21:51:20 -07:00