diff -r 484e04dc7f42 -r 98f97026fa05 mercurial/phases.py --- a/mercurial/phases.py Thu Jun 04 06:44:00 2020 +0200 +++ b/mercurial/phases.py Sat Jun 20 11:10:23 2020 +0900 @@ -601,10 +601,10 @@ # retracted. minnewroot = min(newroots) aboveroots = [rev for rev in currentroots if rev >= minnewroot] - updatedroots = repo.set(b'roots(%ld::)', aboveroots) + updatedroots = repo.revs(b'roots(%ld::)', aboveroots) finalroots = {rev for rev in currentroots if rev < minnewroot} - finalroots.update(ctx.rev() for ctx in updatedroots) + finalroots.update(updatedroots) if finalroots != oldroots: self._updateroots( targetphase, {tonode(rev) for rev in finalroots}, tr