# HG changeset patch # User Gregory Szorc # Date 2018-03-26 16:21:07 # Node ID aaabd709df720e456d7f93a1c790a0dbed051b38 # Parent 1236beb5d150996ced1e317de5f6a5543ac1d63e 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 diff --git a/mercurial/help/internals/wireprotocol.txt b/mercurial/help/internals/wireprotocol.txt --- a/mercurial/help/internals/wireprotocol.txt +++ b/mercurial/help/internals/wireprotocol.txt @@ -711,6 +711,8 @@ size of the data that follows: * 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. diff --git a/mercurial/wireprotoserver.py b/mercurial/wireprotoserver.py --- a/mercurial/wireprotoserver.py +++ b/mercurial/wireprotoserver.py @@ -353,6 +353,7 @@ def _handlehttpv2request(rctx, req, res, 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 @@ def _httpv2runcommand(ui, repo, req, res 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 @@ def _httpv2runcommand(ui, repo, req, res res.setbodygen(meta['framegen']) return True elif action == 'noop': - pass + return False else: raise error.ProgrammingError('unhandled event from reactor: %s' % action)