Martin von Zweigbergk <martinvonz@google.com> [Fri, 27 Dec 2019 21:11:36 -0800] rev 44047
graft: use revset for intersecting with ancestor set
This addresses a TODO added in a1381eea7c7d (graft: do not use
`.remove` on a smart set (regression), 2014-04-28).
Differential Revision: https://phab.mercurial-scm.org/D7806
Martin von Zweigbergk <martinvonz@google.com> [Fri, 27 Dec 2019 21:11:33 -0800] rev 44046
graft: don't remove from a list in a loop
This addresses a TODO added in a1381eea7c7d (graft: do not use
`.remove` on a smart set (regression), 2014-04-28). I couldn't measure
any speedup.
Differential Revision: https://phab.mercurial-scm.org/D7805
Martin von Zweigbergk <martinvonz@google.com> [Fri, 27 Dec 2019 22:40:52 -0800] rev 44045
tests: avoid grafting the same change over and over
The test case added in a1381eea7c7d (graft: do not use `.remove` on a
smart set (regression), 2014-04-28) added a test case that grafted the
same change (renaming 'a' to 'b') three times over. It had description
"graft works on complex revset", but AFACT, all that it cared about
was that some ancestor of the working copy was in the set of revisions
to graft. So this patch changes the test to do that instead.
(I plan to later make it so that grafting these renames on top of each
won't create the empty commits they currently create.)
Differential Revision: https://phab.mercurial-scm.org/D7804