1.29.5 (June 5, 2024)

Bug fixes

Changes expected to improve the state of the world and are unlikely to have negative effects

  • async http client: Added one option to disable the response body buffering for mirror request. Also introduced a 32MB cap for the response buffer, which can be changed by the runtime flag http.async_response_buffer_limit based on the product needs.

  • decompression: Fixed a bug where Envoy will go into an endless loop when using the brotli decompressor. If the input stream has redundant data, the decompressor will loop forever.

  • quic: Applied 2 QUICHE patches for crash bugs in QuicSpdyStream OnDataAvailable() and OnInitialHeaderComplete().

  • quic: Fixed crash bug when QUIC downstream stream was read closed and then timed out.

  • router: Fix a timing issue when upstream requests are empty when decoding data and send local reply when that happends. This is controlled by envoy_reloadable_features_send_local_reply_when_no_buffer_and_upstream_request.

  • websocket: Only 101 is considered a successful response for websocket handshake for HTTP/1.1, and Envoy as a proxy will proxy the response header from upstream to downstream and then close the request if other status is received. This behavior can be reverted by envoy_reloadable_features_check_switch_protocol_websocket_handshake.