Exemplo n.º 1
0
 def _makeworkspacesinfo(workspacesinfos):
     return [
         WorkspaceInfo(
             name=ensurestr(workspacesinfo["name"]),
             archived=bool(workspacesinfo["archived"]),
         ) for workspacesinfo in workspacesinfos["workspaces"]
     ]
Exemplo n.º 2
0
def progresstest(ui, loops, total, **opts):
    loops = int(loops)
    total = int(total)
    if total == -1:
        total = None
    nested = opts.get("nested", None)
    useunicode = opts.get("unicode", False)
    if useunicode:
        topic = pycompat.ensurestr("\u3042\u3044\u3046\u3048")
    else:
        topic = "progress test"
    with progress.bar(ui, topic, "cycles", total) as prog:
        for i in range(loops + 1):
            if useunicode:
                prog.value = (i, unicodeloopitems[i % len(unicodeloopitems)])
            else:
                prog.value = (i, "loop %s" % i)
            syncrender()
            if nested:
                nestedtotal = 5 if i % 6 == 5 else 2
                with progress.bar(ui, "nested progress",
                                  total=nestedtotal) as nestedprog:
                    for j in range(nestedtotal + 1):
                        nestedprog.value = (j, "nest %s" % j)
                        syncrender()
Exemplo n.º 3
0
    def __init__(self, repo, workspacename):
        self.workspacename = workspacename
        self.filename = self._filename(workspacename)
        self.repo = repo
        self.prevstate = None
        if repo.svfs.exists(self.filename):
            with repo.svfs.open(self.filename, "r") as f:
                try:
                    data = json.load(f)
                except Exception:
                    raise ccerror.InvalidWorkspaceDataError(
                        repo.ui,
                        _("failed to parse %s") % self.filename)

                self.version = data["version"]
                self.heads = [ensurestr(h) for h in data["heads"]]
                self.bookmarks = {
                    ensurestr(n): ensurestr(v)
                    for n, v in data["bookmarks"].items()
                }
                self.remotebookmarks = {
                    ensurestr(n): ensurestr(v)
                    for n, v in data.get("remotebookmarks", {}).items()
                }
                self.snapshots = [
                    ensurestr(s) for s in data.get("snapshots", [])
                ]
                self.maxage = data.get("maxage", None)
                self.omittedheads = [
                    ensurestr(h) for h in data.get("omittedheads", ())
                ]
                self.omittedbookmarks = [
                    ensurestr(n) for n in data.get("omittedbookmarks", ())
                ]
                self.omittedremotebookmarks = [
                    ensurestr(n)
                    for n in data.get("omittedremotebookmarks", ())
                ]
                self.lastupdatetime = data.get("lastupdatetime", None)
        else:
            self.version = 0
            self.heads = []
            self.bookmarks = {}
            self.remotebookmarks = {}
            self.snapshots = []
            self.maxage = None
            self.omittedheads = []
            self.omittedbookmarks = []
            self.omittedremotebookmarks = []
            self.lastupdatetime = None
Exemplo n.º 4
0
def _makenodes(data):
    nodes = {}
    for nodeinfo in data["nodes"]:
        node = nodemod.bin(ensurestr(nodeinfo["node"]))
        parents = [nodemod.bin(ensurestr(p)) for p in nodeinfo["parents"]]
        bookmarks = [ensurestr(b) for b in nodeinfo["bookmarks"]]
        author = ensurestr(nodeinfo["author"])
        date = int(nodeinfo["date"])
        message = ensurestr(nodeinfo["message"])
        phase = ensurestr(nodeinfo["phase"])
        if "remote_bookmarks" in nodeinfo:
            bookmarks.extend("%s/%s" %
                             (ensurestr(bm["remote"]), ensurestr(bm["name"]))
                             for bm in nodeinfo["remote_bookmarks"] or [])
        nodes[node] = NodeInfo(node, bookmarks, parents, author, date, message,
                               phase)
    return nodes
Exemplo n.º 5
0
def _makenodes(data):
    nodes = {}
    for nodeinfo in data["nodes"]:
        node = ensurestr(nodeinfo["node"])
        parents = [encodeutf8(ensurestr(p)) for p in nodeinfo["parents"]]
        bookmarks = [ensurestr(b) for b in nodeinfo["bookmarks"]]
        author = ensurestr(nodeinfo["author"])
        date = int(nodeinfo["date"])
        message = ensurestr(nodeinfo["message"])
        phase = ensurestr(nodeinfo["phase"])
        nodes[encodeutf8(node)] = NodeInfo(node, bookmarks, parents, author,
                                           date, message, phase)
    return nodes
Exemplo n.º 6
0
        self.now = 0

    def time(self):
        return self.now

    def increment(self):
        now = self.now
        self.now += 1
        return now


_faketime = faketime()
time.time = _faketime.time

unicodeloopitems = [
    pycompat.ensurestr("\u3042\u3044"),  # 2 x 2 = 4 columns
    pycompat.ensurestr("\u3042\u3044\u3046"),  # 2 x 3 = 6 columns
    pycompat.ensurestr("\u3042\u3044\u3046\u3048"),  # 2 x 4 = 8 columns
]


@command(
    "progresstest",
    [
        ("", "nested", False, "show nested results"),
        ("", "unicode", False, "use unicode topics and items"),
        ("", "output", False, "output text on each iteration"),
    ],
    "hg progresstest loops total",
    norepo=True,
)