[PATCH 08 of 23 v2] rebase: move collapsef and collapsemsg local variables to the class
Kostia Balytskyi
ikostia at fb.com
Tue May 31 19:23:28 EDT 2016
# HG changeset patch
# User Kostia Balytskyi <ikostia at fb.com>
# Date 1464602246 -3600
# Mon May 30 10:57:26 2016 +0100
# Node ID b068d25c46ba2c0e555f29549ae6ba0808132148
# Parent 02f4b29d482f66d1eee5dc6593f9f2ba594d1ac1
rebase: move collapsef and collapsemsg local variables to the class
diff --git a/hgext/rebase.py b/hgext/rebase.py
--- a/hgext/rebase.py
+++ b/hgext/rebase.py
@@ -149,6 +149,8 @@
self.destspace = opts.get('_destspace')
self.contf = opts.get('continue')
self.abortf = opts.get('abort')
+ self.collapsef = opts.get('collapse', False)
+ self.collapsemsg = cmdutil.logmessage(ui, opts)
@command('rebase',
[('s', 'source', '',
@@ -267,8 +269,6 @@
wlock = repo.wlock()
lock = repo.lock()
- collapsef = opts.get('collapse', False)
- collapsemsg = cmdutil.logmessage(ui, opts)
date = opts.get('date', None)
e = opts.get('extrafn') # internal, used by e.g. hgsubversion
extrafns = [_savegraft]
@@ -291,14 +291,14 @@
"'histedit' extension (see \"%s\")") % help
raise error.Abort(msg)
- if collapsemsg and not collapsef:
+ if rtstate.collapsemsg and not rtstate.collapsef:
raise error.Abort(
_('message can only be specified with collapse'))
if rtstate.contf or rtstate.abortf:
if rtstate.contf and rtstate.abortf:
raise error.Abort(_('cannot use both abort and continue'))
- if collapsef:
+ if rtstate.collapsef:
raise error.Abort(
_('cannot use collapse with continue or abort'))
if rtstate.srcf or rtstate.basef or rtstate.destf:
@@ -309,9 +309,9 @@
try:
(rtstate.originalwd, rtstate.target, rtstate.state,
- rtstate.skipped, collapsef, keepf, keepbranchesf,
+ rtstate.skipped, rtstate.collapsef, keepf, keepbranchesf,
rtstate.external, rtstate.activebookmark) = restorestatus(repo)
- collapsemsg = restorecollapsemsg(repo)
+ rtstate.collapsemsg = restorecollapsemsg(repo)
except error.RepoLookupError:
if rtstate.abortf:
clearstatus(repo)
@@ -368,7 +368,7 @@
rebasesetrevs,
rebaseobsskipped)
- result = buildstate(repo, dest, rebaseset, collapsef,
+ result = buildstate(repo, dest, rebaseset, rtstate.collapsef,
obsoletenotrebased)
if not result:
@@ -383,7 +383,7 @@
hint=_('see "hg help phases" for details'))
(rtstate.originalwd, rtstate.target, rtstate.state) = result
- if collapsef:
+ if rtstate.collapsef:
rtstate.targetancestors = repo.changelog.ancestors(
[rtstate.target],
inclusive=True)
@@ -398,7 +398,7 @@
# there's a user-provided extrafn it can clobber branch if
# desired
extrafns.insert(0, _savebranch)
- if collapsef:
+ if rtstate.collapsef:
branches = set()
for rev in rtstate.state:
branches.add(repo[rev].branch())
@@ -439,9 +439,10 @@
rtstate.targetancestors,
obsoletenotrebased)
storestatus(repo, rtstate.originalwd, rtstate.target,
- rtstate.state, collapsef, keepf, keepbranchesf,
- rtstate.external, rtstate.activebookmark)
- storecollapsemsg(repo, collapsemsg)
+ rtstate.state, rtstate.collapsef, keepf,
+ keepbranchesf, rtstate.external,
+ rtstate.activebookmark)
+ storecollapsemsg(repo, rtstate.collapsemsg)
if len(repo[None].parents()) == 2:
repo.ui.debug('resuming interrupted rebase\n')
else:
@@ -449,14 +450,14 @@
ui.setconfig('ui', 'forcemerge', opts.get('tool', ''),
'rebase')
stats = rebasenode(repo, rev, p1, base, rtstate.state,
- collapsef, rtstate.target)
+ rtstate.collapsef, rtstate.target)
if stats and stats[3] > 0:
raise error.InterventionRequired(
_('unresolved conflicts (see hg '
'resolve, then hg rebase --continue)'))
finally:
ui.setconfig('ui', 'forcemerge', '', 'rebase')
- if not collapsef:
+ if not rtstate.collapsef:
merging = p2 != nullrev
editform = cmdutil.mergeeditform(merging, 'rebase')
editor = cmdutil.getcommiteditor(editform=editform, **opts)
@@ -475,7 +476,7 @@
rtstate.state[rev] = repo[newnode].rev()
ui.debug('rebased as %s\n' % short(newnode))
else:
- if not collapsef:
+ if not rtstate.collapsef:
ui.warn(_('note: rebase of %d:%s created no changes '
'to commit\n') % (rev, ctx))
rtstate.skipped.add(rev)
@@ -501,15 +502,15 @@
ui.progress(_('rebasing'), None)
ui.note(_('rebase merging completed\n'))
- if collapsef and not keepopen:
+ if rtstate.collapsef and not keepopen:
p1, p2, _base = defineparents(repo, min(rtstate.state),
rtstate.target, rtstate.state,
rtstate.targetancestors,
obsoletenotrebased)
editopt = opts.get('edit')
editform = 'rebase.collapse'
- if collapsemsg:
- commitmsg = collapsemsg
+ if rtstate.collapsemsg:
+ commitmsg = rtstate.collapsemsg
else:
commitmsg = 'Collapsed revision'
for rebased in rtstate.state:
@@ -556,7 +557,7 @@
if not keepf:
collapsedas = None
- if collapsef:
+ if rtstate.collapsef:
collapsedas = newnode
clearrebased(ui, repo, rtstate.state, rtstate.skipped, collapsedas)
More information about the Mercurial-devel
mailing list