[PATCH 1 of 2 stable] mq: refactor makepatchname into class method

Mads Kiilerich mads at kiilerich.com
Tue Jan 19 05:01:51 UTC 2016


# HG changeset patch
# User Mads Kiilerich <madski at unity3d.com>
# Date 1453179630 -3600
#      Tue Jan 19 06:00:30 2016 +0100
# Branch stable
# Node ID 8e01eb2737b8cdaaf1c8aacdd7fe90664b9c6836
# Parent  d2c5ad3deccb5a504e2553652b66a4110db68afb
mq: refactor makepatchname into class method

diff --git a/hgext/mq.py b/hgext/mq.py
--- a/hgext/mq.py
+++ b/hgext/mq.py
@@ -396,19 +396,6 @@ def newcommit(repo, phase, *args, **kwar
 class AbortNoCleanup(error.Abort):
     pass
 
-def makepatchname(existing, title, fallbackname):
-    """Return a suitable filename for title, adding a suffix to make
-    it unique in the existing list"""
-    namebase = re.sub('[\s\W_]+', '_', title.lower()).strip('_')
-    if not namebase:
-        namebase = fallbackname
-    name = namebase
-    i = 0
-    while name in existing:
-        i += 1
-        name = '%s__%s' % (namebase, i)
-    return name
-
 class queue(object):
     def __init__(self, ui, baseui, path, patchdir=None):
         self.basepath = path
@@ -1126,6 +1113,19 @@ class queue(object):
             else:
                 raise error.Abort(_('patch "%s" already exists') % name)
 
+    def makepatchname(self, title, fallbackname):
+        """Return a suitable filename for title, adding a suffix to make
+        it unique in the existing list"""
+        namebase = re.sub('[\s\W_]+', '_', title.lower()).strip('_')
+        if not namebase:
+            namebase = fallbackname
+        name = namebase
+        i = 0
+        while name in self.fullseries:
+            i += 1
+            name = '%s__%s' % (namebase, i)
+        return name
+
     def checkkeepchanges(self, keepchanges, force):
         if force and keepchanges:
             raise error.Abort(_('cannot use both --force and --keep-changes'))
@@ -2097,7 +2097,7 @@ class queue(object):
                     lastparent = p1
 
                     if not patchname:
-                        patchname = makepatchname(self.fullseries,
+                        patchname = self.makepatchname(
                             repo[r].description().split('\n', 1)[0],
                             '%d.diff' % r)
                     checkseries(patchname)


More information about the Mercurial-devel mailing list