# HG changeset patch # User Yuya Nishihara # Date 2018-04-01 13:20:44 # Node ID 876d54f800cf80748e715289ea2b383dbc4d2172 # Parent cb7b275c0cd02797e1b804acccb31c723d22554c hgweb: wrap {labels} by hybridlist() This one is a simple list of strings, which can support map operation. diff --git a/mercurial/hgweb/hgwebdir_mod.py b/mercurial/hgweb/hgwebdir_mod.py --- a/mercurial/hgweb/hgwebdir_mod.py +++ b/mercurial/hgweb/hgwebdir_mod.py @@ -190,7 +190,7 @@ def rawindexentries(ui, repos, req, subd 'lastchange_sort': d[1] - d[0], 'archives': [], 'isdirectory': True, - 'labels': [], + 'labels': templateutil.hybridlist([], name='label'), } seendirs.add(name) @@ -231,6 +231,7 @@ def rawindexentries(ui, repos, req, subd description = get("web", "description") seenrepos.add(name) name = get("web", "name", name) + labels = u.configlist('web', 'labels', untrusted=True) row = {'contact': contact or "unknown", 'contact_sort': contact.upper() or "unknown", 'name': name, @@ -242,7 +243,7 @@ def rawindexentries(ui, repos, req, subd 'lastchange_sort': d[1] - d[0], 'archives': archivelist(u, "tip", url), 'isdirectory': None, - 'labels': u.configlist('web', 'labels', untrusted=True), + 'labels': templateutil.hybridlist(labels, name='label'), } yield row diff --git a/mercurial/hgweb/webcommands.py b/mercurial/hgweb/webcommands.py --- a/mercurial/hgweb/webcommands.py +++ b/mercurial/hgweb/webcommands.py @@ -765,6 +765,7 @@ def summary(web): desc = web.config("web", "description") if not desc: desc = 'unknown' + labels = web.configlist('web', 'labels') return web.sendtemplate( 'summary', @@ -779,7 +780,7 @@ def summary(web): node=tip.hex(), symrev='tip', archives=web.archivelist('tip'), - labels=web.configlist('web', 'labels')) + labels=templateutil.hybridlist(labels, name='label')) @webcommand('filediff') def filediff(web):