Mercurial > public > mercurial-scm > hg-stable
diff mercurial/wireprototypes.py @ 36112:2f7290555c96
wireproto: introduce type for raw byte responses (API)
Right now we simply return a str/bytes instance for simple
responses. I want all wire protocol response types to be strongly
typed. So let's invent and use a type for raw bytes responses.
.. api::
Wire protocol command handlers now return a
wireprototypes.bytesresponse instead of a raw bytes instance.
Protocol handlers will continue handling bytes instances. However,
any extensions wrapping wire protocol commands will need to handle
the new type.
Differential Revision: https://phab.mercurial-scm.org/D2089
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 07 Feb 2018 20:27:36 -0800 |
parents | cd6ab329c5c7 |
children | 0c231df1ffdc |
line wrap: on
line diff
--- a/mercurial/wireprototypes.py Wed Feb 07 16:29:05 2018 -0800 +++ b/mercurial/wireprototypes.py Wed Feb 07 20:27:36 2018 -0800 @@ -5,6 +5,11 @@ from __future__ import absolute_import +class bytesresponse(object): + """A wire protocol response consisting of raw bytes.""" + def __init__(self, data): + self.data = data + class ooberror(object): """wireproto reply: failure of a batch of operation