1.36.0 (Pending)

Removed config or runtime

Normally occurs at the end of the deprecation period

  • dynamic_forward_proxy: Removed runtime guard envoy.reloadable_features.avoid_dfp_cluster_removal_on_cds_update and legacy code paths.

  • http_connection_manager: Removed runtime guard envoy.reloadable_features.explicit_internal_address_config and legacy code paths.

  • oauth2: Removed runtime guard envoy.reloadable_features.oauth2_use_refresh_token and legacy code paths.

  • router: Removed runtime guard envoy.reloadable_features.shadow_policy_inherit_trace_sampling and legacy code paths.

New features

  • dns_filter, redis_proxy and prefix_matcher_map: Switch to using Radix Tree instead of Trie for performance improvements.

  • health_check: Added support for request payloads in HTTP health checks. The send field in HttpHealthCheck can now be used to specify a request body to be sent during health checking. This feature supports both hex-encoded text and binary payloads, similar to TCP health checks. The payload can only be used with HTTP methods that support request bodies (POST, PUT, PATCH, OPTIONS). Methods that must not have request bodies (GET, HEAD, DELETE, TRACE) are validated and will throw an error if combined with payloads. The implementation is optimized to process the payload once during configuration and reuse it for all health check requests. See HttpHealthCheck for configuration details.

  • lua: Added a new filterState() on streamInfo() which provides access to filter state objects stored during request processing. This allows Lua scripts to retrieve string, boolean, and numeric values stored by various filters for use in routing decisions, header modifications, and other processing logic. See Filter State API for more details.

  • ratelimit: Add the rate_limits field to generate rate limit descriptors. If this field is set, the VirtualHost.rate_limits or RouteAction.rate_limits fields will be ignored. However, RateLimitPerRoute.rate_limits will take precedence over this field.

  • router_check_tool: Added support for testing routes with dynamic metadata matchers in the router check tool. The tool now accepts a dynamic_metadata field in test input to set metadata that can be matched by route configuration. This allows comprehensive testing of routes that depend on dynamic metadata for routing decisions.