376 raise ErrorResponse(HTTP_BAD_REQUEST, pycompat.bytestr(exc)) |
376 raise ErrorResponse(HTTP_BAD_REQUEST, pycompat.bytestr(exc)) |
377 |
377 |
378 def formatlinerange(fromline, toline): |
378 def formatlinerange(fromline, toline): |
379 return '%d:%d' % (fromline + 1, toline) |
379 return '%d:%d' % (fromline + 1, toline) |
380 |
380 |
381 def succsandmarkers(context, mapping): |
381 def _succsandmarkersgen(context, mapping): |
382 repo = context.resource(mapping, 'repo') |
382 repo = context.resource(mapping, 'repo') |
383 itemmappings = templatekw.showsuccsandmarkers(context, mapping) |
383 itemmappings = templatekw.showsuccsandmarkers(context, mapping) |
384 for item in itemmappings.tovalue(context, mapping): |
384 for item in itemmappings.tovalue(context, mapping): |
385 item['successors'] = _siblings(repo[successor] |
385 item['successors'] = _siblings(repo[successor] |
386 for successor in item['successors']) |
386 for successor in item['successors']) |
387 yield item |
387 yield item |
|
388 |
|
389 def succsandmarkers(context, mapping): |
|
390 return templateutil.mappinggenerator(_succsandmarkersgen, args=(mapping,)) |
388 |
391 |
389 # teach templater succsandmarkers is switched to (context, mapping) API |
392 # teach templater succsandmarkers is switched to (context, mapping) API |
390 succsandmarkers._requires = {'repo', 'ctx'} |
393 succsandmarkers._requires = {'repo', 'ctx'} |
391 |
394 |
392 def whyunstable(context, mapping): |
395 def whyunstable(context, mapping): |