Mercurial > hg
comparison mercurial/hgweb/webcommands.py @ 34809:3a65012be661
webcommands: replace str(ctx) etc with pycompat.bytestr(ctx) etc
hgweb can now serve the graph view in Python 3.
Differential Revision: https://phab.mercurial-scm.org/D1138
author | Augie Fackler <augie@google.com> |
---|---|
date | Mon, 16 Oct 2017 22:51:58 -0400 |
parents | e178fcaa3933 |
children | 4bc74bc78efd |
comparison
equal
deleted
inserted
replaced
34808:e87e62b7fc0b | 34809:3a65012be661 |
---|---|
29 archival, | 29 archival, |
30 dagop, | 30 dagop, |
31 encoding, | 31 encoding, |
32 error, | 32 error, |
33 graphmod, | 33 graphmod, |
34 pycompat, | |
34 revset, | 35 revset, |
35 revsetlang, | 36 revsetlang, |
36 scmutil, | 37 scmutil, |
37 smartset, | 38 smartset, |
38 templatefilters, | 39 templatefilters, |
1245 | 1246 |
1246 row = 0 | 1247 row = 0 |
1247 for (id, type, ctx, vtx, edges) in tree: | 1248 for (id, type, ctx, vtx, edges) in tree: |
1248 if type != graphmod.CHANGESET: | 1249 if type != graphmod.CHANGESET: |
1249 continue | 1250 continue |
1250 node = str(ctx) | 1251 node = pycompat.bytestr(ctx) |
1251 age = encodestr(templatefilters.age(ctx.date())) | 1252 age = encodestr(templatefilters.age(ctx.date())) |
1252 desc = templatefilters.firstline(encodestr(ctx.description())) | 1253 desc = templatefilters.firstline(encodestr(ctx.description())) |
1253 desc = url.escape(templatefilters.nonempty(desc)) | 1254 desc = url.escape(templatefilters.nonempty(desc)) |
1254 user = url.escape(templatefilters.person(encodestr(ctx.user()))) | 1255 user = url.escape(templatefilters.person(encodestr(ctx.user()))) |
1255 branch = url.escape(encodestr(ctx.branch())) | 1256 branch = url.escape(encodestr(ctx.branch())) |
1301 canvaswidth=(cols + 1) * bg_height, | 1302 canvaswidth=(cols + 1) * bg_height, |
1302 truecanvasheight=rows * bg_height, | 1303 truecanvasheight=rows * bg_height, |
1303 canvasheight=canvasheight, bg_height=bg_height, | 1304 canvasheight=canvasheight, bg_height=bg_height, |
1304 # {jsdata} will be passed to |json, so it must be in utf-8 | 1305 # {jsdata} will be passed to |json, so it must be in utf-8 |
1305 jsdata=lambda **x: graphdata(True, encoding.fromlocal), | 1306 jsdata=lambda **x: graphdata(True, encoding.fromlocal), |
1306 nodes=lambda **x: graphdata(False, str), | 1307 nodes=lambda **x: graphdata(False, pycompat.bytestr), |
1307 node=ctx.hex(), changenav=changenav) | 1308 node=ctx.hex(), changenav=changenav) |
1308 | 1309 |
1309 def _getdoc(e): | 1310 def _getdoc(e): |
1310 doc = e[0].__doc__ | 1311 doc = e[0].__doc__ |
1311 if doc: | 1312 if doc: |