Mercurial > hg
comparison mercurial/obsolete.py @ 22274:10e87c67f1c7
debugobsolete: add a --rev argument
This argument can be used to list markers relevant to a set of revisions. We
add a test for this option and the relevant computation in the same move.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Tue, 19 Aug 2014 23:22:44 -0700 |
parents | e6d01239f779 |
children | a65697c3f20e |
comparison
equal
deleted
inserted
replaced
22273:e6d01239f779 | 22274:10e87c67f1c7 |
---|---|
492 finally: | 492 finally: |
493 tr.release() | 493 tr.release() |
494 finally: | 494 finally: |
495 lock.release() | 495 lock.release() |
496 | 496 |
497 def getmarkers(repo): | 497 def getmarkers(repo, nodes=None): |
498 """returns markers known in a repository""" | 498 """returns markers known in a repository |
499 for markerdata in repo.obsstore: | 499 |
500 If <nodes> is specified, only markers "relevant" to those nodes are are | |
501 returned""" | |
502 if nodes is None: | |
503 rawmarkers = repo.obsstore | |
504 else: | |
505 rawmarkers = repo.obsstore.relevantmarkers(nodes) | |
506 | |
507 for markerdata in rawmarkers: | |
500 yield marker(repo, markerdata) | 508 yield marker(repo, markerdata) |
509 | |
510 def relevantmarkers(repo, node): | |
511 """all obsolete markers relevant to some revision""" | |
512 for markerdata in repo.obsstore.relevantmarkers(node): | |
513 yield marker(repo, markerdata) | |
514 | |
501 | 515 |
502 def precursormarkers(ctx): | 516 def precursormarkers(ctx): |
503 """obsolete marker marking this changeset as a successors""" | 517 """obsolete marker marking this changeset as a successors""" |
504 for data in ctx._repo.obsstore.precursors.get(ctx.node(), ()): | 518 for data in ctx._repo.obsstore.precursors.get(ctx.node(), ()): |
505 yield marker(ctx._repo, data) | 519 yield marker(ctx._repo, data) |