comparison mercurial/context.py @ 27747:54522bbe1597

status: back out changeset 89f49813526c This backs out 89f49813526c (status: change + back out == clean (API), 2016-01-04). Although correct, it turned out that it was just too slow. For example, 'hg status --rev .~1000 --rev .' on the Mozilla repo went from <1s to >30s on cold disk. So we go back to reporting reverted changes as modified instead of clean. These are rare anyway, as suggested by the fact that it had been broken since before Mercurial 2.0.
author Martin von Zweigbergk <martinvonz@google.com>
date Tue, 12 Jan 2016 12:43:36 -0800
parents 89f49813526c
children 81b391a45264
comparison
equal deleted inserted replaced
27746:f0e9f38d250f 27747:54522bbe1597
138 (node1, flag1), (node2, flag2) = value 138 (node1, flag1), (node2, flag2) = value
139 if node1 is None: 139 if node1 is None:
140 added.append(fn) 140 added.append(fn)
141 elif node2 is None: 141 elif node2 is None:
142 removed.append(fn) 142 removed.append(fn)
143 elif node2 != _newnode:
144 # The file was not a new file in mf2, so an entry
145 # from diff is really a difference.
146 modified.append(fn)
143 elif flag1 != flag2: 147 elif flag1 != flag2:
144 modified.append(fn) 148 modified.append(fn)
145 elif self[fn].cmp(other[fn]): 149 elif self[fn].cmp(other[fn]):
150 # node2 was newnode, but the working file doesn't
151 # match the one in mf1.
146 modified.append(fn) 152 modified.append(fn)
147 else: 153 else:
148 clean.append(fn) 154 clean.append(fn)
149 155
150 if removed: 156 if removed: