diff: move diffline to patch module
authorGuillermo Pérez <bisho@fb.com>
Thu, 15 Nov 2012 12:19:03 -0800
changeset 17941 9a6e4d5d7ea8
parent 17940 c84ef0047a94
child 17942 5e655418aa8d
diff: move diffline to patch module diffline is not part of diff computation, so it makes more sense to place it with other header generation in patch module. In upcoming patches we will generalize this approach for all headers added in the patch, including the git index header.
mercurial/mdiff.py
mercurial/patch.py
--- a/mercurial/mdiff.py	Thu Nov 15 12:16:08 2012 -0800
+++ b/mercurial/mdiff.py	Thu Nov 15 12:19:03 2012 -0800
@@ -143,19 +143,6 @@
             yield s, type
         yield s1, '='
 
-def diffline(revs, a, b, opts):
-    parts = ['diff']
-    if opts.git:
-        parts.append('--git')
-    if revs and not opts.git:
-        parts.append(' '.join(["-r %s" % rev for rev in revs]))
-    if opts.git:
-        parts.append('a/%s' % a)
-        parts.append('b/%s' % b)
-    else:
-        parts.append(a)
-    return ' '.join(parts) + '\n'
-
 def unidiff(a, ad, b, bd, fn1, fn2, opts=defaultopts):
     def datetag(date, fn=None):
         if not opts.git and not opts.nodates:
--- a/mercurial/patch.py	Thu Nov 15 12:16:08 2012 -0800
+++ b/mercurial/patch.py	Thu Nov 15 12:19:03 2012 -0800
@@ -1664,6 +1664,19 @@
     def join(f):
         return os.path.join(prefix, f)
 
+    def diffline(revs, a, b, opts):
+        parts = ['diff']
+        if opts.git:
+            parts.append('--git')
+        if revs and not opts.git:
+            parts.append(' '.join(["-r %s" % rev for rev in revs]))
+        if opts.git:
+            parts.append('a/%s' % a)
+            parts.append('b/%s' % b)
+        else:
+            parts.append(a)
+        return ' '.join(parts) + '\n'
+
     date1 = util.datestr(ctx1.date())
     man1 = ctx1.manifest()
 
@@ -1749,7 +1762,7 @@
 
         if dodiff:
             if opts.git or revs:
-                header.insert(0, mdiff.diffline(revs, join(a), join(b), opts))
+                header.insert(0, diffline(revs, join(a), join(b), opts))
             if dodiff == 'binary':
                 text = mdiff.b85diff(to, tn)
             else: