Mercurial > hg
changeset 45525:590a840fa367
mergestate: define NO_OP_ACTION in module scope instead of inside mergeresult
This makes sure it isn't intended to be overridden by subclasses.
Thanks to Yuya for the nice suggestion.
Differential Revision: https://phab.mercurial-scm.org/D9025
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Wed, 16 Sep 2020 18:09:32 +0530 |
parents | 6877b0ee5f9d |
children | 26c53ee51c68 |
files | mercurial/merge.py mercurial/mergestate.py mercurial/sparse.py |
diffstat | 3 files changed, 12 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/merge.py Wed Sep 09 16:49:19 2020 +0530 +++ b/mercurial/merge.py Wed Sep 16 18:09:32 2020 +0530 @@ -526,7 +526,7 @@ pass elif not branchmerge: mresult.removefile(f) # just updating, ignore changes outside clone - elif action[0] in mergeresult.NO_OP_ACTIONS: + elif action[0] in mergestatemod.NO_OP_ACTIONS: mresult.removefile(f) # merge does not affect file elif action[0] in nonconflicttypes: raise error.Abort( @@ -549,12 +549,6 @@ It has information about what actions need to be performed on dirstate mapping of divergent renames and other such cases. ''' - NO_OP_ACTIONS = ( - mergestatemod.ACTION_KEEP, - mergestatemod.ACTION_KEEP_ABSENT, - mergestatemod.ACTION_KEEP_NEW, - ) - def __init__(self): """ filemapping: dict of filename as keys and action related info as values @@ -707,7 +701,7 @@ mergestatemod.ACTION_PATH_CONFLICT_RESOLVE, ) and self._actionmapping[a] - and a not in self.NO_OP_ACTIONS + and a not in mergestatemod.NO_OP_ACTIONS ): return True @@ -1398,7 +1392,7 @@ # mergestate so that it can be reused on commit ms.addcommitinfo(f, op) - numupdates = mresult.len() - mresult.len(mergeresult.NO_OP_ACTIONS) + numupdates = mresult.len() - mresult.len(mergestatemod.NO_OP_ACTIONS) progress = repo.ui.makeprogress( _(b'updating'), unit=_(b'files'), total=numupdates ) @@ -1502,7 +1496,7 @@ progress.increment(item=f) # keep (noop, just log it) - for a in mergeresult.NO_OP_ACTIONS: + for a in mergestatemod.NO_OP_ACTIONS: for f, args, msg in mresult.getactions((a,), sort=True): repo.ui.debug(b" %s: %s -> %s\n" % (f, msg, a)) # no progress
--- a/mercurial/mergestate.py Wed Sep 09 16:49:19 2020 +0530 +++ b/mercurial/mergestate.py Wed Sep 16 18:09:32 2020 +0530 @@ -123,6 +123,13 @@ ACTION_EXEC = b'e' ACTION_CREATED_MERGE = b'cm' +# actions which are no op +NO_OP_ACTIONS = ( + ACTION_KEEP, + ACTION_KEEP_ABSENT, + ACTION_KEEP_NEW, +) + class _mergestate_base(object): '''track 3-way merge state of individual files
--- a/mercurial/sparse.py Wed Sep 09 16:49:19 2020 +0530 +++ b/mercurial/sparse.py Wed Sep 16 18:09:32 2020 +0530 @@ -399,7 +399,7 @@ temporaryfiles.append(file) prunedactions[file] = action elif branchmerge: - if type not in mergemod.mergeresult.NO_OP_ACTIONS: + if type not in mergestatemod.NO_OP_ACTIONS: temporaryfiles.append(file) prunedactions[file] = action elif type == mergestatemod.ACTION_FORGET: