##// END OF EJS Templates
httppeer: wrap HTTPResponse.read() globally...
httppeer: wrap HTTPResponse.read() globally There were a handful of places in the code where HTTPResponse.read() was called with no explicit error handling or with inconsistent error handling. In order to eliminate this class of bug, we globally swap out HTTPResponse.read() with a unified error handler. I initially attempted to fix all call sites. However, after going down that rabbit hole, I figured it was best to just change read() to do what we want. This appears to be a worthwhile change, as the tests demonstrate many of our uncaught exceptions go away. To better represent this class of failure, we introduce a new error type. The main benefit over IOError is it can hold a hint. I'm receptive to tweaking its name or inheritance.

File last commit:

r31702:00f996f0 default
r32002:bf855efe default
Show More
map-cmdline.default
82 lines | 3.2 KiB | text/plain | TextLexer
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 # Base templates. Due to name clashes with existing keywords, we have
# to replace some keywords with 'lkeyword', for 'labelled keyword'
Denis Laxalde
templates: display evolution "troubles" in command line style
r30713 changeset = '{cset}{branches}{bookmarks}{tags}{parents}{user}{ldate}{ltroubles}{summary}\n'
Yuya Nishihara
templates: fix "log -q" output of default style...
r24304 changeset_quiet = '{lnode}'
Denis Laxalde
templates: display evolution "troubles" in command line style
r30713 changeset_verbose = '{cset}{branches}{bookmarks}{tags}{parents}{user}{ldate}{ltroubles}{lfiles}{lfile_copies_switch}{description}\n'
changeset_debug = '{fullcset}{branches}{bookmarks}{tags}{lphase}{parents}{manifest}{user}{ldate}{ltroubles}{lfile_mods}{lfile_adds}{lfile_dels}{lfile_copies_switch}{extras}{description}\n'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
# File templates
lfiles = '{if(files,
label("ui.note log.files",
"files: {files}\n"))}'
lfile_mods = '{if(file_mods,
label("ui.debug log.files",
"files: {file_mods}\n"))}'
lfile_adds = '{if(file_adds,
label("ui.debug log.files",
"files+: {file_adds}\n"))}'
lfile_dels = '{if(file_dels,
label("ui.debug log.files",
"files-: {file_dels}\n"))}'
lfile_copies_switch = '{if(file_copies_switch,
label("ui.note log.copies",
"copies: {file_copies_switch
% ' {name} ({source})'}\n"))}'
# General templates
Denis Laxalde
templates: display evolution "troubles" in command line style
r30713 _trouble_label = 'trouble.{trouble}'
Denis Laxalde
templates: shorten definition of changeset labels in command-line style...
r31701 _troubles_labels = '{if(troubles, "changeset.troubled {troubles%_trouble_label}")}'
Denis Laxalde
templates: add "changeset.obsolete" label in command line style...
r31702 _obsolete_label = '{if(obsolete, "changeset.obsolete")}'
_cset_labels = '{separate(" ", "log.changeset", "changeset.{phase}", "{_obsolete_label}", "{_troubles_labels}")}'
Denis Laxalde
templates-default: factor out definition of changeset labels...
r30696 cset = '{label("{_cset_labels}",
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 "changeset: {rev}:{node|short}")}\n'
lphase = '{label("log.phase",
"phase: {phase}")}\n'
Denis Laxalde
templates-default: factor out definition of changeset labels...
r30696 fullcset = '{label("{_cset_labels}",
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 "changeset: {rev}:{node}")}\n'
parent = '{label("log.parent changeset.{phase}",
"parent: {rev}:{node|formatnode}")}\n'
Yuya Nishihara
templates: fix "log -q" output of default style...
r24304 lnode = '{label("log.node",
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 "{rev}:{node|short}")}\n'
manifest = '{label("ui.debug log.manifest",
"manifest: {rev}:{node}")}\n'
branch = '{label("log.branch",
"branch: {branch}")}\n'
tag = '{label("log.tag",
"tag: {tag}")}\n'
bookmark = '{label("log.bookmark",
"bookmark: {bookmark}")}\n'
user = '{label("log.user",
"user: {author}")}\n'
Yuya Nishihara
templates-default: do not show description or summary if empty...
r24637 summary = '{if(desc|strip, "{label('log.summary',
'summary: {desc|firstline}')}\n")}'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766
ldate = '{label("log.date",
"date: {date|date}")}\n'
Denis Laxalde
log: drop unnecessary ui.note label from "trouble: " line...
r30720 ltroubles = '{if(troubles, "{label('log.trouble',
Denis Laxalde
templates: display evolution "troubles" in command line style
r30713 'trouble: {join(troubles, ", ")}')}\n")}'
Jordi Gutiérrez Hermoso
log: rewrite default template to use labels (issue2866)...
r22766 extra = '{label("ui.debug log.extra",
"extra: {key}={value|stringescape}")}\n'
Yuya Nishihara
templates-default: do not show description or summary if empty...
r24637 description = '{if(desc|strip, "{label('ui.note log.description',
'description:')}
{label('ui.note log.description',
'{desc|strip}')}\n\n")}'
Matt Mackall
templates: add a default template style for status...
r25514
status = '{status} {path}\n{if(copy, " {copy}\n")}'