D6932: context: clarify the various mode in the filesremoved method
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Tue Oct 1 12:33:45 UTC 2019
marmoute created this revision.
marmoute added reviewers: martinvonz, durin42.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
The previous code was compact but a bit dense. The new proposed code deal with
each mode separately, there are some duplicated lines, but the meaning of each
mode stand out.
One of the benefit it to make it simpler to add further mode in the future.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D6932
AFFECTED FILES
mercurial/context.py
CHANGE DETAILS
diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -469,11 +469,16 @@
def filesremoved(self):
source = self._repo.ui.config('experimental', 'copies.read-from')
- if (source == 'changeset-only' or
- (source == 'compatibility' and
- self._changeset.filesremoved is not None)):
- return self._changeset.filesremoved or []
- return scmutil.computechangesetfilesremoved(self)
+ filesremoved = self._changeset.filesremoved
+ if source == 'changeset-only':
+ if filesremoved is None:
+ filesremoved = []
+ elif source == 'compatibility':
+ if filesremoved is None:
+ filesremoved = scmutil.computechangesetfilesremoved(self)
+ else:
+ filesremoved = scmutil.computechangesetfilesremoved(self)
+ return filesremoved
@propertycache
def _copies(self):
To: marmoute, martinvonz, durin42, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list