mercurial/hgweb/webutil.py
changeset 38043 5989261a8356
parent 37993 623dc2651d26
child 38057 f0ee627162f4
--- a/mercurial/hgweb/webutil.py	Wed May 16 22:44:27 2018 -0400
+++ b/mercurial/hgweb/webutil.py	Thu May 17 12:23:38 2018 -0700
@@ -457,6 +457,22 @@
     )
     return entry
 
+def changelistentries(web, revs, maxcount, parityfn):
+    """Emit up to N records for an iterable of revisions."""
+    repo = web.repo
+
+    count = 0
+    for rev in revs:
+        if count >= maxcount:
+            break
+
+        count += 1
+
+        entry = changelistentry(web, repo[rev])
+        entry['parity'] = next(parityfn)
+
+        yield entry
+
 def symrevorshortnode(req, ctx):
     if 'node' in req.qsparams:
         return templatefilters.revescape(req.qsparams['node'])