From patchwork Sun Jun 5 17:46:20 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [6, of, 7, v4] rebase: move local variables 'contf', 'abortf' and 'destspace' to the RRS From: Kostia Balytskyi X-Patchwork-Id: 15416 Message-Id: To: Date: Sun, 5 Jun 2016 18:46:20 +0100 # HG changeset patch # User Kostia Balytskyi # Date 1465135652 -3600 # Sun Jun 05 15:07:32 2016 +0100 # Node ID d35690b8021ac8be0b3e33c9a7865cb36b4b49f8 # Parent d55ee8750f35e50a4005cf2cc160a22035217d2a rebase: move local variables 'contf', 'abortf' and 'destspace' to the RRS The variables this commit touches are command line options of the rebase operation. Two of them ('contf' and 'abortf') are responsible for 'abort' and 'continue' phases of rebase lifecycle, while 'destspace' is used to search for default rebase destination. Commit moves these variables to the previously introduced RebaseRuntimeState class. diff --git a/hgext/rebase.py b/hgext/rebase.py --- a/hgext/rebase.py +++ b/hgext/rebase.py @@ -139,6 +139,12 @@ class RebaseRuntimeState(object): self.basef = opts.get('base', None) self.revf = opts.get('rev', []) + # search default destination in this space + # used in the 'hg pull --rebase' case, see issue 5214. + self.destspace = opts.get('_destspace') + self.contf = opts.get('continue') + self.abortf = opts.get('abort') + @command('rebase', [('s', 'source', '', _('rebase the specified changeset and descendants'), _('REV')), @@ -256,11 +262,6 @@ def rebase(ui, repo, **opts): wlock = repo.wlock() lock = repo.lock() - # search default destination in this space - # used in the 'hg pull --rebase' case, see issue 5214. - destspace = opts.get('_destspace') - contf = opts.get('continue') - abortf = opts.get('abort') collapsef = opts.get('collapse', False) collapsemsg = cmdutil.logmessage(ui, opts) date = opts.get('date', None) @@ -289,8 +290,8 @@ def rebase(ui, repo, **opts): raise error.Abort( _('message can only be specified with collapse')) - if contf or abortf: - if contf and abortf: + if rtstate.contf or rtstate.abortf: + if rtstate.contf and rtstate.abortf: raise error.Abort(_('cannot use both abort and continue')) if collapsef: raise error.Abort( @@ -298,7 +299,7 @@ def rebase(ui, repo, **opts): if rtstate.srcf or rtstate.basef or rtstate.destf: raise error.Abort( _('abort and continue do not allow specifying revisions')) - if abortf and opts.get('tool', False): + if rtstate.abortf and opts.get('tool', False): ui.warn(_('tool option will be ignored\n')) try: @@ -307,7 +308,7 @@ def rebase(ui, repo, **opts): rtstate.external, rtstate.activebookmark) = restorestatus(repo) collapsemsg = restorecollapsemsg(repo) except error.RepoLookupError: - if abortf: + if rtstate.abortf: clearstatus(repo) clearcollapsemsg(repo) repo.ui.warn(_('rebase aborted (no revision is removed,' @@ -317,7 +318,7 @@ def rebase(ui, repo, **opts): msg = _('cannot continue inconsistent rebase') hint = _('use "hg rebase --abort" to clear broken state') raise error.Abort(msg, hint=hint) - if abortf: + if rtstate.abortf: return abort(repo, rtstate.originalwd, rtstate.target, rtstate.state, activebookmark=rtstate.activebookmark) @@ -336,7 +337,7 @@ def rebase(ui, repo, **opts): else: dest, rebaseset = _definesets(ui, repo, rtstate.destf, rtstate.srcf, rtstate.basef, rtstate.revf, - destspace=destspace) + destspace=rtstate.destspace) if dest is None: return _nothingtorebase()