--- a/mercurial/wireprotoframing.py Thu Oct 04 15:08:42 2018 -0700
+++ b/mercurial/wireprotoframing.py Thu Oct 04 14:05:16 2018 -0700
@@ -49,7 +49,8 @@
FRAME_TYPE_ERROR_RESPONSE = 0x05
FRAME_TYPE_TEXT_OUTPUT = 0x06
FRAME_TYPE_PROGRESS = 0x07
-FRAME_TYPE_STREAM_SETTINGS = 0x08
+FRAME_TYPE_SENDER_PROTOCOL_SETTINGS = 0x08
+FRAME_TYPE_STREAM_SETTINGS = 0x09
FRAME_TYPES = {
b'command-request': FRAME_TYPE_COMMAND_REQUEST,
@@ -58,6 +59,7 @@
b'error-response': FRAME_TYPE_ERROR_RESPONSE,
b'text-output': FRAME_TYPE_TEXT_OUTPUT,
b'progress': FRAME_TYPE_PROGRESS,
+ b'sender-protocol-settings': FRAME_TYPE_SENDER_PROTOCOL_SETTINGS,
b'stream-settings': FRAME_TYPE_STREAM_SETTINGS,
}
@@ -89,6 +91,22 @@
b'eos': FLAG_COMMAND_RESPONSE_EOS,
}
+FLAG_SENDER_PROTOCOL_SETTINGS_CONTINUATION = 0x01
+FLAG_SENDER_PROTOCOL_SETTINGS_EOS = 0x02
+
+FLAGS_SENDER_PROTOCOL_SETTINGS = {
+ b'continuation': FLAG_SENDER_PROTOCOL_SETTINGS_CONTINUATION,
+ b'eos': FLAG_SENDER_PROTOCOL_SETTINGS_EOS,
+}
+
+FLAG_STREAM_ENCODING_SETTINGS_CONTINUATION = 0x01
+FLAG_STREAM_ENCODING_SETTINGS_EOS = 0x02
+
+FLAGS_STREAM_ENCODING_SETTINGS = {
+ b'continuation': FLAG_STREAM_ENCODING_SETTINGS_CONTINUATION,
+ b'eos': FLAG_STREAM_ENCODING_SETTINGS_EOS,
+}
+
# Maps frame types to their available flags.
FRAME_TYPE_FLAGS = {
FRAME_TYPE_COMMAND_REQUEST: FLAGS_COMMAND_REQUEST,
@@ -97,7 +115,8 @@
FRAME_TYPE_ERROR_RESPONSE: {},
FRAME_TYPE_TEXT_OUTPUT: {},
FRAME_TYPE_PROGRESS: {},
- FRAME_TYPE_STREAM_SETTINGS: {},
+ FRAME_TYPE_SENDER_PROTOCOL_SETTINGS: FLAGS_SENDER_PROTOCOL_SETTINGS,
+ FRAME_TYPE_STREAM_SETTINGS: FLAGS_STREAM_ENCODING_SETTINGS,
}
ARGUMENT_RECORD_HEADER = struct.Struct(r'<HH')