Mon, 04 Feb 2019 20:35:21 +0300 merge with stable
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 04 Feb 2019 20:35:21 +0300] rev 41529
merge with stable
Mon, 04 Feb 2019 18:14:03 +0300 match: teach diffmatcher.visitdir() to return 'all' if possible
Pulkit Goyal <pulkit@yandex-team.ru> [Mon, 04 Feb 2019 18:14:03 +0300] rev 41528
match: teach diffmatcher.visitdir() to return 'all' if possible This patch teaches differencematcher.visitdir() to return 'all' when m1.visitdir() returns 'all' and m2 does not matches. Before this patch, from a differencematcher.visitdir(), we always returned either True or False. We never returned 'all' even when we can. This causes problem when m1 and m2 of a differencematcher are themselves differencematcher. In that case, we try to check: `if self._m2_.visitdir(dir) == 'all'` which will never be 'all' even though it can be. This leads to iterating over a lot of sub-directory manifest, even though we don't want to while extending a narrow clone. I am yet to measure the impact of this but calculating manifest was taking ~50-60 seconds, so this should definitely save some of time there. Differential Revision: https://phab.mercurial-scm.org/D5814
Sun, 03 Feb 2019 10:01:43 +0100 py3: use integer division instead of `int(...)` call
Boris Feld <boris.feld@octobus.net> [Sun, 03 Feb 2019 10:01:43 +0100] rev 41527
py3: use integer division instead of `int(...)` call Changeset 38a82e0333c9 and 7f853549823b introduced explicit conversion to integer to work around the division behavior change from python2 to python3. Using the integer division operator is a simpler and clearer way to achieve this.
(0) -30000 -10000 -3000 -1000 -300 -100 -30 -10 -3 +3 +10 +30 +100 +300 +1000 +3000 +10000 tip