comparison mercurial/bookmarks.py @ 17827:612db9d7e76a

obsolete: have `allsuccessors` takes a list of nodes Additional logic, used to detect mutable history troubles, will need to quickly compute successors of a whole set of changeset.
author Pierre-Yves David <pierre-yves.david@logilab.fr>
date Tue, 16 Oct 2012 15:49:58 +0200
parents 46e1a4e24225
children daf32ebfde6b
comparison
equal deleted inserted replaced
17826:46e1a4e24225 17827:612db9d7e76a
265 succs = set(c.node() for c in validdests) 265 succs = set(c.node() for c in validdests)
266 for c in validdests: 266 for c in validdests:
267 if c.phase() > phases.public: 267 if c.phase() > phases.public:
268 # obsolescence marker does not apply to public changeset 268 # obsolescence marker does not apply to public changeset
269 succs.update(obsolete.allsuccessors(repo.obsstore, 269 succs.update(obsolete.allsuccessors(repo.obsstore,
270 c.node())) 270 [c.node()]))
271 validdests = set(repo.set('%ln::', succs)) 271 validdests = set(repo.set('%ln::', succs))
272 validdests.remove(old) 272 validdests.remove(old)
273 return new in validdests 273 return new in validdests
274 else: 274 else:
275 return old.descendant(new) 275 return old.descendant(new)