Mercurial > hg
annotate tests/README @ 36672:9e7b14caf67f
xdiff: remove patience and histogram diff algorithms
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]: https://github.com/git/git/commit/433860f3d0beb0c6f205290bd16cda413148f098
Test Plan:
`gcc -fPIC *.c --shared -o xdiff.so` still builds.
Differential Revision: https://phab.mercurial-scm.org/D2573
author | Jun Wu <quark@fb.com> |
---|---|
date | Sat, 03 Mar 2018 10:39:55 -0800 |
parents | 4b0fc75f9403 |
children |
rev | line source |
---|---|
332 | 1 To run the tests, do: |
2 | |
3 cd tests/ | |
2207
8a2a7f7d9df6
Delete the shell version of run-tests
Stephen Darnell <stephen@darnell.plus.com>
parents:
1933
diff
changeset
|
4 python run-tests.py |
332 | 5 |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
8936
diff
changeset
|
6 See https://mercurial-scm.org/wiki/WritingTests for |
3934
d0bbd8ee50c7
Move test suite docs to the wiki
Matt Mackall <mpm@selenic.com>
parents:
3199
diff
changeset
|
7 more information on writing tests. |