diff -r 88efb7d6bcb6 -r ddd2165438cd mercurial/phases.py --- a/mercurial/phases.py Sat Jul 14 13:19:18 2018 +0900 +++ b/mercurial/phases.py Sat Jul 14 13:21:49 2018 +0900 @@ -665,9 +665,8 @@ * `heads`: define the first subset * `roots`: define the second we subtract from the first""" repo = repo.unfiltered() - revset = repo.set('heads(::%ln - (%ln::%ln))', heads, roots, heads) - return [c.node() for c in revset] - + revs = repo.revs('heads(::%ln - (%ln::%ln))', heads, roots, heads) + return pycompat.maplist(repo.changelog.node, revs) def newcommitphase(ui): """helper to get the target phase of new commit