[PATCH 03 of 16] rebase: move skipped local variable to an object

Kostia Balytskyi ikostia at fb.com
Sun May 29 18:38:34 EDT 2016


# HG changeset patch
# User Kostia Balytskyi <ikostia at fb.com>
# Date 1464518593 -3600
#      Sun May 29 11:43:13 2016 +0100
# Node ID f2cd1dfe743a66a7cf6ebe0abacce1d8e3f4ab87
# Parent  5fe2bf52ba00a0137b78ad7d1cb8698edea68ba0
rebase: move skipped local variable to an object

diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -130,6 +130,7 @@
         self.state = {}
         self.activebookmark = None
         self.target = None
+        self.skipped = set()
 
 @command('rebase',
     [('s', 'source', '',
@@ -242,7 +243,6 @@
 
     """
     rtstate = RebaseRuntimeState()
-    skipped = set()
     targetancestors = set()
 
 
@@ -302,9 +302,9 @@
                 ui.warn(_('tool option will be ignored\n'))
 
             try:
-                (rtstate.originalwd, rtstate.target, rtstate.state, skipped,
-                 collapsef, keepf, keepbranchesf, rtstate.external,
-                 rtstate.activebookmark) = restorestatus(repo)
+                (rtstate.originalwd, rtstate.target, rtstate.state,
+                 rtstate.skipped, collapsef, keepf, keepbranchesf,
+                 rtstate.external, rtstate.activebookmark) = restorestatus(repo)
                 collapsemsg = restorecollapsemsg(repo)
             except error.RepoLookupError:
                 if abortf:
@@ -470,7 +470,7 @@
                     if not collapsef:
                         ui.warn(_('note: rebase of %d:%s created no changes '
                                   'to commit\n') % (rev, ctx))
-                        skipped.add(rev)
+                        rtstate.skipped.add(rev)
                     rtstate.state[rev] = p1
                     ui.debug('next revision set to %s\n' % p1)
             elif rtstate.state[rev] == nullmerge:
@@ -504,7 +504,7 @@
             else:
                 commitmsg = 'Collapsed revision'
                 for rebased in rtstate.state:
-                    if rebased not in skipped and\
+                    if rebased not in rtstate.skipped and\
                        rtstate.state[rebased] > nullmerge:
                         commitmsg += '\n* %s' % repo[rebased].description()
                 editopt = True
@@ -523,7 +523,7 @@
                     rtstate.state[oldrev] = newrev
 
         if 'qtip' in repo.tags():
-            updatemq(repo, rtstate.state, skipped, **opts)
+            updatemq(repo, rtstate.state, rtstate.skipped, **opts)
 
         if currentbookmarks:
             # Nodeids are needed to reset bookmarks
@@ -549,7 +549,7 @@
             collapsedas = None
             if collapsef:
                 collapsedas = newnode
-            clearrebased(ui, repo, rtstate.state, skipped, collapsedas)
+            clearrebased(ui, repo, rtstate.state, rtstate.skipped, collapsedas)
 
         with repo.transaction('bookmark') as tr:
             if currentbookmarks:
@@ -562,8 +562,9 @@
 
         ui.note(_("rebase completed\n"))
         util.unlinkpath(repo.sjoin('undo'), ignoremissing=True)
-        if skipped:
-            ui.note(_("%d revisions have been skipped\n") % len(skipped))
+        if rtstate.skipped:
+            skippedlen = len(rtstate.skipped)
+            ui.note(_("%d revisions have been skipped\n") % skippedlen)
 
         if (rtstate.activebookmark and
             repo['.'].node() == repo._bookmarks[rtstate.activebookmark]):


More information about the Mercurial-devel mailing list