def _makeworkspacesinfo(workspacesinfos): return [ WorkspaceInfo( name=ensurestr(workspacesinfo["name"]), archived=bool(workspacesinfo["archived"]), ) for workspacesinfo in workspacesinfos["workspaces"] ]
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()
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
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
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
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, )