# HG changeset patch # User Siddharth Agarwal # Date 1416375499 28800 # Node ID 5fb1fc2e12817be70acf4eb3e630e52daa5e6dc9 # Parent a074eeeabe329a35e4ed7c836c479eea96e4f2ef 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. diff -r a074eeeabe32 -r 5fb1fc2e1281 hgext/hgk.py --- 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: diff -r a074eeeabe32 -r 5fb1fc2e1281 tests/test-hgk.t --- 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 ..