From: Tom Christie Date: Thu, 12 Dec 2019 11:57:53 +0000 (+0000) Subject: Bump up flow control defaults (#629) X-Git-Tag: 0.9.4~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=52c2c9762f400986fbc0164c918fc3ea5a0593ac;p=thirdparty%2Fhttpx.git Bump up flow control defaults (#629) * Bump up flow control defaults * Linting * Simplify mock HTTP/2 stream in tests --- diff --git a/httpx/dispatch/http2.py b/httpx/dispatch/http2.py index e0ddf235..43ea8df7 100644 --- a/httpx/dispatch/http2.py +++ b/httpx/dispatch/http2.py @@ -96,6 +96,7 @@ class HTTP2Connection(OpenConnection): del self.state.local_settings[h2.settings.SettingCodes.ENABLE_CONNECT_PROTOCOL] self.state.initiate_connection() + self.state.increment_flow_control_window(2 ** 24) data_to_send = self.state.data_to_send() await self.socket.write(data_to_send, timeout) @@ -165,6 +166,7 @@ class HTTP2Connection(OpenConnection): timeout: Timeout, ) -> None: self.state.send_headers(stream_id, headers) + self.state.increment_flow_control_window(2 ** 24, stream_id=stream_id) data_to_send = self.state.data_to_send() await self.socket.write(data_to_send, timeout) diff --git a/tests/dispatch/utils.py b/tests/dispatch/utils.py index 00565289..3d24ac74 100644 --- a/tests/dispatch/utils.py +++ b/tests/dispatch/utils.py @@ -41,7 +41,6 @@ class MockHTTP2Server(BaseSocketStream): self.requests = {} self.close_connection = False self.return_data = {} - self.returning = {} self.settings_changed = [] # Socket stream interface @@ -75,14 +74,6 @@ class MockHTTP2Server(BaseSocketStream): self.buffer += self.conn.data_to_send() elif isinstance(event, h2.events.StreamEnded): self.stream_complete(event.stream_id) - elif isinstance(event, h2.events.WindowUpdated): - if event.stream_id == 0: - for key, value in self.returning.items(): - if value: - self.send_return_data(key) - # This will throw an error if the event is for a not-yet created stream - elif self.returning[event.stream_id]: - self.send_return_data(event.stream_id) elif isinstance(event, h2.events.RemoteSettingsChanged): self.settings_changed.append(event) @@ -141,7 +132,6 @@ class MockHTTP2Server(BaseSocketStream): self.conn.send_headers(stream_id, response_headers) self.buffer += self.conn.data_to_send() self.return_data[stream_id] = response.content - self.returning[stream_id] = True self.send_return_data(stream_id) def send_return_data(self, stream_id): @@ -161,7 +151,6 @@ class MockHTTP2Server(BaseSocketStream): ) self.conn.send_data(stream_id, chunk) self.buffer += self.conn.data_to_send() - self.returning[stream_id] = False self.conn.end_stream(stream_id) self.buffer += self.conn.data_to_send()