tests/remotefilelog-getflogheads.py
author Pierre-Yves David <pierre-yves.david@octobus.net>
Thu, 20 May 2021 21:48:53 +0200
changeset 47333 f286d715f9ab
parent 46955 3000f2100711
child 48966 6000f5b25c9b
permissions -rw-r--r--
revlogv2: simplify and clarify the processing of each entry As we add more entries and some of them has non trivial processing it seems useful to make the processing leaner and clearly separated to simplify futures patches. Differential Revision: https://phab.mercurial-scm.org/D10773

from __future__ import absolute_import

from mercurial.i18n import _
from mercurial import (
    hg,
    registrar,
)
from mercurial.utils import (
    urlutil,
)

cmdtable = {}
command = registrar.command(cmdtable)


@command(b'getflogheads', [], b'path')
def getflogheads(ui, repo, path):
    """
    Extension printing a remotefilelog's heads

    Used for testing purpose
    """

    dest = urlutil.get_unique_pull_path(b'getflogheads', repo, ui)[0]
    peer = hg.peer(repo, {}, dest)

    try:
        flogheads = peer.x_rfl_getflogheads(path)
    finally:
        peer.close()

    if flogheads:
        for head in flogheads:
            ui.write(head + b'\n')
    else:
        ui.write(_(b'EMPTY\n'))