wireproto: review fixups
Capture various TODOs and return an explicit value. This
represents feedback from Yuya and Augie on various commits.
Differential Revision: https://phab.mercurial-scm.org/D2944
--- a/mercurial/help/internals/wireprotocol.txt Mon Mar 26 10:22:13 2018 -0700
+++ b/mercurial/help/internals/wireprotocol.txt Mon Mar 26 09:21:07 2018 -0700
@@ -711,6 +711,8 @@
* 0 or more UTF-8 strings that will be used as arguments to the
formatting string.
+TODO use ASCII for formatting string.
+
All data to be printed MUST be encoded into a single frame: this frame
does not support spanning data across multiple frames.
--- a/mercurial/wireprotoserver.py Mon Mar 26 10:22:13 2018 -0700
+++ b/mercurial/wireprotoserver.py Mon Mar 26 09:21:07 2018 -0700
@@ -353,6 +353,7 @@
res.setbodybytes(_('invalid wire protocol command: %s') % command)
return
+ # TODO consider cases where proxies may add additional Accept headers.
if req.headers.get(b'Accept') != FRAMINGTYPE:
res.status = b'406 Not Acceptable'
res.headers[b'Content-Type'] = b'text/plain'
@@ -507,6 +508,7 @@
command['command'])
return True
+ # TODO don't use assert here, since it may be elided by -O.
assert authedperm in (b'ro', b'rw')
wirecommand = wireproto.commands[command['command']]
assert wirecommand.permission in ('push', 'pull')
@@ -556,7 +558,7 @@
res.setbodygen(meta['framegen'])
return True
elif action == 'noop':
- pass
+ return False
else:
raise error.ProgrammingError('unhandled event from reactor: %s' %
action)