Mercurial > public > mercurial-scm > hg-stable
diff mercurial/setdiscovery.py @ 41894:3ba9ca537f57
discovery: clarify why the caching of children is valid
Yuya Nishihara pointed out that the code looks wrong without this clarification.
(And, unsurprisingly, Yuya is right)
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 07 Mar 2019 01:28:24 +0100 |
parents | a05f0bbefdd9 |
children | 0d467e4de4ae |
line wrap: on
line diff
--- a/mercurial/setdiscovery.py Wed Mar 06 15:43:52 2019 -0800 +++ b/mercurial/setdiscovery.py Thu Mar 07 01:28:24 2019 +0100 @@ -175,6 +175,10 @@ def _childrengetter(self): if self._childrenmap is not None: + # During discovery, the `undecided` set keep shrinking. + # Therefore, the map computed for an iteration N will be + # valid for iteration N+1. Instead of computing the same + # data over and over we cached it the first time. return self._childrenmap.__getitem__ # _updatesample() essentially does interaction over revisions to look