1.11.0 (July 11, 2019)

    • access log: added a new field for route name to file and gRPC access logger.

    • access log: added a new field for response code details in file access logger and .

    • access log: added several new variables for exposing information about the downstream TLS connection to file access logger and .

    • access log: added a new flag for request rejected due to failed strict header check.

    • admin: the administration interface now includes a /ready endpoint for easier readiness checks.

    • admin: extend to support parameters within the request body.

    • admin: the /listener endpoint now returns which includes listener names and ports.

    • admin: added host priority to GET /clusters and endpoint response

    • admin: the /clusters endpoint now shows hostname for each host, useful for DNS based clusters.

    • api: track and report requests issued since last load report.

    • build: releases are built with Clang and linked with LLD.

    • config: added in bootstrap, that can be used to override server.version statistic.

    • control-plane: management servers can respond with HTTP 304 to indicate that config is up to date for Envoy proxies polling a

    • csrf: added support for allowlisting additional source origins.

    • dns: added support for getting DNS record TTL which is used by STRICT_DNS/LOGICAL_DNS cluster as DNS refresh rate.

    • dubbo_proxy: support the dubbo proxy filter.

    • dynamo_request_parser: adding support for transactions. Adds check for new types of dynamodb operations (TransactWriteItems, TransactGetItems) and awareness for new types of dynamodb errors (IdempotentParameterMismatchException, TransactionCanceledException, TransactionInProgressException).

    • eds: added support to specify max time for which endpoints can be used .

    • eds: removed max limit for .

    • event: added loop duration and poll delay statistics.

    • ext_authz: added a x-envoy-auth-partial-body metadata header set to false|true indicating if there is a partial body sent in the authorization request message.

    • ext_authz: added configurable status code that allows customizing HTTP responses on filter check status errors.

    • ext_authz: added option to that allows the filter clearing route cache.

    • grpc-json: added support for .

    • hot restart: stats are no longer shared between hot restart parent/child via shared memory, but rather by RPC. Hot restart version incremented to 11.

    • http: fixed a bug where large unbufferable responses were not tracked in stats and logs correctly.

    • http: fixed a crashing bug where gRPC local replies would cause segfaults when upstream access logging was on.

    • http: mitigated a race condition with the delayed_close_timeout where it could trigger while actively flushing a pending write buffer for a downstream connection.

    • http: added support for that represents whether the x-request-id should not be reset on edge entry inside mesh

    • http: changed sendLocalReply to send percent-encoded GrpcMessage.

    • http: added a header_prefix configuration option to allow Envoy to send and process x-custom- prefixed headers rather than x-envoy.

    • http: added support.

    • http: tracking the active stream and dumping state in Envoy crash handlers. This can be disabled by building with

    • jwt_authn: make filter’s parsing of JWT more flexible, allowing syntax like jwt=eyJhbGciOiJS...ZFnFIw,extra=7,realm=123

    • listener: added source IP and filter chain matching.

    • lua: exposed functions to Lua to verify digital signature.

    • original_src filter: added the filter.

    • outlier_detector: added configuration to distinguish locally and externally generated errors. See Outlier detection for full details.

    • rbac: migrated from v2alpha to v2.

    • redis: add support for Redis cluster custom cluster type.

    • redis: automatically route commands using cluster slots for Redis cluster.

    • redis: added to enable routing commands based on their key’s prefix to different upstream.

    • redis: added request mirror policy to enable shadow traffic and/or dual writes.

    • redis: add support for zpopmax and zpopmin commands.

    • redis: added to batch commands together until the encoder buffer hits a certain size, and buffer_flush_timeout to control how quickly the buffer is flushed if it is not full.

    • redis: added auth support for downstream client authentication, and auth_password to configure authentication passwords for upstream server clusters.

    • retry: added a retry predicate that

    • router: add support for configuring a gRPC timeout offset on incoming requests.

    • router: added ability to control retry back-off intervals via .

    • router: added ability to issue a hedged retry in response to a per try timeout via a hedge policy.

    • router: per try timeouts will no longer start before the downstream request has been received in full by the router.This ensures that the per try timeout does not account for slow downstreams and that will not start before the global timeout.

    • router: added to allow upstream host header substitution with some other header’s value

    • router: added support for UPSTREAM_REMOTE_ADDRESS header formatter.

    • router: add ability to reject a request that includes invalid values for headers configured in

    • runtime: added support for flexible layering configuration.

    • runtime: added support for statically .

    • runtime: Runtime Discovery Service (RTDS) support added to layered runtime configuration.

    • sandbox: added .

    • server: --define manual_stamp=manual_stamp was added to allow server stamping outside of binary rules. more info in the bazel docs.

    • server: added statistic.

    • server: added initialization_time_ms statistic.

    • subset: added option to the subset lb which allows matching metadata against any of the values in a list value on the endpoints.

    • tools: added proto support for tests.

    • tracing: add trace sampling configuration to the route, to override the route level.

    • upstream: added upstream_cx_pool_overflow for the connection pool circuit breaker.

    • upstream: an EDS management server can now force removal of a host that is still passing active health checking by first marking the host as failed via EDS health check and subsequently removing it in a future update. This is a mechanism to work around a race condition in which an EDS implementation may remove a host before it has stopped passing active HC, thus causing the host to become stranded until a future update.

    • upstream: added that allows ignoring new hosts for the purpose of load balancing calculations until they have been health checked for the first time.

    • upstream: added runtime error checking to prevent setting dns type to STRICT_DNS or LOGICAL_DNS when custom resolver name is specified.

    • upstream: added possibility to override fallback_policy per specific selector in subset load balancer.

    • upstream: the now displays the current resolved IP address in admin output instead of 0.0.0.0.

    Deprecated

    • The –max-stats and –max-obj-name-len flags no longer has any effect.

    • Use of in redis_proxy.proto is deprecated. Set a instead.

    • Use of catch_all_cluster in is deprecated. Set a catch_all_route instead.

    • Use of json based schema in router check tool tests. The tests should follow validation .

    • Use of the v1 style route configuration for the TCP proxy filter is now fully replaced with listener . Use this instead.

    • Use of runtime in . Use layered_runtime instead.