diff -r 590ac023c536 -r f597421662f7 hgext/evolve.py --- a/hgext/evolve.py Thu Jun 21 19:24:19 2012 +0200 +++ b/hgext/evolve.py Thu Jun 21 19:58:57 2012 +0200 @@ -142,10 +142,8 @@ bookmarks.write(repo) # add evolution metadata - repo.addobsolete(new.node(), old.node()) - for u in updates: - repo.addobsolete(u.node(), old.node()) - repo.addobsolete(new.node(), u.node()) + collapsed = set([u.node() for u in updates] + [old.node()]) + repo.addcollapsedobsolete(collapsed, new.node()) oldbookmarks = repo.nodebookmarks(old.node()) for book in oldbookmarks: repo._bookmarks[book] = new.node()