# HG changeset patch # User Pierre-Yves David # Date 1412667494 25200 # Node ID 9271630f472068bcf85130c7020c685cd908e078 # Parent 18ac67b0814cba7c54bfa17e9005663325691ac7 strip: stop calling `remove` on smartset The `remove` method is not part of the smartset specification. We use a plain old list comprehension instead. diff -r 18ac67b0814c -r 9271630f4720 mercurial/commands.py --- a/mercurial/commands.py Tue Oct 07 00:31:53 2014 -0700 +++ b/mercurial/commands.py Tue Oct 07 00:38:14 2014 -0700 @@ -3381,10 +3381,12 @@ raise util.Abort(_('no revisions specified')) revs = scmutil.revrange(repo, revs) + skipped = set() # check for merges for rev in repo.revs('%ld and merge()', revs): ui.warn(_('skipping ungraftable merge revision %s\n') % rev) - revs.remove(rev) + skipped.add(rev) + revs = [r for r in revs if r not in skipped] if not revs: return -1