[PATCH V2] record: use patch.diffopts to account for user diffopts

Denis Laxalde denis at laxalde.org
Tue Jan 8 14:52:52 CST 2013


# HG changeset patch
# User Denis Laxalde <denis at laxalde.org>
# Date 1357676199 -3600
# Node ID 843b338c85283778a128e393ea6c34d9f5ef7c64
# Parent  2c1276825e938872ebc099c191eb202f0dbadfcc
record: use patch.diffopts to account for user diffopts

This allows user defined diff options (e.g. showfunc) to be accounted for
when using record. A test has been updated accordingly.

diff --git a/hgext/record.py b/hgext/record.py
--- a/hgext/record.py
+++ b/hgext/record.py
@@ -520,11 +520,11 @@ def dorecord(ui, repo, commitfunc, cmdsu
                                '(use "hg commit" instead)'))
 
         changes = repo.status(match=match)[:3]
-        diffopts = mdiff.diffopts(
+        diffopts = patch.diffopts(ui, opts=dict(
             git=True, nodates=True,
             ignorews=opts.get('ignore_all_space'),
             ignorewsamount=opts.get('ignore_space_change'),
-            ignoreblanklines=opts.get('ignore_blank_lines'))
+            ignoreblanklines=opts.get('ignore_blank_lines')))
         chunks = patch.diff(repo, changes=changes, opts=diffopts)
         fp = cStringIO.StringIO()
         fp.write(''.join(chunks))
diff --git a/tests/test-record.t b/tests/test-record.t
--- a/tests/test-record.t
+++ b/tests/test-record.t
@@ -255,18 +255,18 @@ Modify end of plain file with username u
   [255]
 
 
-Modify end of plain file
+Modify end of plain file, also test that diffopts are accounted for
 
   $ HGUSER="test"
   $ export HGUSER
-  $ hg record -d '8 0' -m end plain <<EOF
+  $ hg record --config diff.showfunc=true -d '8 0' -m end plain <<EOF
   > y
   > y
   > EOF
   diff --git a/plain b/plain
   1 hunks, 1 lines changed
   examine changes to 'plain'? [Ynesfdaq?] 
-  @@ -8,3 +8,4 @@
+  @@ -8,3 +8,4 @@ 7
    8
    9
    10



More information about the Mercurial-devel mailing list