Mercurial > hg
changeset 23451:5fb1fc2e1281
hgk: don't honor whitespace and format-changing diffopts
The diff-tree command is a plumbing command in Git, which means it is expected
to have a stable output format. Ensure that our output is stable too.
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Tue, 18 Nov 2014 21:38:19 -0800 |
parents | a074eeeabe32 |
children | 86c0d8c1484f |
files | hgext/hgk.py tests/test-hgk.t |
diffstat | 2 files changed, 30 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/hgk.py Tue Nov 18 17:36:24 2014 -0800 +++ b/hgext/hgk.py Tue Nov 18 21:38:19 2014 -0800 @@ -95,8 +95,10 @@ if opts['pretty']: catcommit(ui, repo, node2, "") m = scmutil.match(repo[node1], files) + diffopts = patch.difffeatureopts(ui) + diffopts.git = True chunks = patch.diff(repo, node1, node2, match=m, - opts=patch.diffopts(ui, {'git': True})) + opts=diffopts) for chunk in chunks: ui.write(chunk) else:
--- a/tests/test-hgk.t Tue Nov 18 17:36:24 2014 -0800 +++ b/tests/test-hgk.t Tue Nov 18 21:38:19 2014 -0800 @@ -16,5 +16,32 @@ phase draft adda + $ echo b > b + $ hg ci -Am addb + adding b + $ hg log -T '{node}\n' + 102a90ea7b4a3361e4082ed620918c261189a36a + 07f4944404050f47db2e5c5071e0e84e7a27bba9 + + $ hg debug-diff-tree 07f494440405 102a90ea7b4a + :000000 100664 000000000000 1e88685f5dde N b b + $ hg debug-diff-tree 07f494440405 102a90ea7b4a --patch + diff --git a/b b/b + new file mode 100644 + --- /dev/null + +++ b/b + @@ -0,0 +1,1 @@ + +b + +Ensure that diff-tree output isn't affected by diffopts + $ hg --config diff.noprefix=True debug-diff-tree 07f494440405 102a90ea7b4a + :000000 100664 000000000000 1e88685f5dde N b b + $ hg --config diff.noprefix=True debug-diff-tree --patch 07f494440405 102a90ea7b4a + diff --git a/b b/b + new file mode 100644 + --- /dev/null + +++ b/b + @@ -0,0 +1,1 @@ + +b $ cd ..