v1.69.0
New Features
- api: Allow
LoadBalancer
s to specify an authority per-RPC.(#11631) (c167ead) CallOptions.withAuthority() has higher precedence. - netty: Add soft Metadata size limit enforcement. (#11603) (735b3f3) The soft limit is a lower size limit that fails an increasing percentage of RPCs as the Metadata size approaches the upper limit. This can be used as an “early warning” that the Metadata size is growing too large
- alts: support altsCallCredentials in
GoogleDefaultChannelCredentials
(#11634) (ba8ab79) - xds: Add grpc.xds_client metrics, as documented by OpenTelemetry Metrics (#11661) (20d09ce).
grpc.xds.authority
is not yet available
Bug Fixes
- api: When forwarding from
Listener
onAddresses toListener2
continue to use onResult (#11666) (dae078c). This fixes a 1.68.1 "IllegalStateException: Not called from the SynchronizationContext" regression (#11662) that could be seen in certain custom NameResolvers - okhttp: If the frame handler thread is null do not schedule it on the executor (ef1fe87). This fixes a 1.68.1 NullPointerException regression when a custom transportExecutor was provided to the channel and it did not have enough threads to run new tasks
Improvements
- api: Add
java.time.Duration
overloads toCallOptions
,AbstractStub
methods that take TimeUnit and a time value (#11562) (766b923) - core: Make timestamp usage in Channelz use nanos from Java.time.Instant when available (#11604) (9176b55). This increases the timestamp precision from milliseconds
- okhttp: Fix for ipv6 link local with scope (#11725) (e98e7445b)
- binder: Let
AndroidComponentAddress
specify a target UserHandle (#11670) (e58c998) - servlet: Deframe failures should be logged on the server as warnings (#11645) (a5db67d)
- s2a: Rename the Bazel target s2av2_credentials to s2a (29dd9ba). The target s2a had been referenced by IO_GRPC_GRPC_JAVA_OVERRIDE_TARGETS but didn’t previously exist
- services: Make channelz work with proto lite (#11685) (b170334). This compatibility is on the source level. There is not a pre-built binary on Maven Central that supports proto lite
- services: Deprecate ProtoReflectionService (#11681) (921f88a). The class implements the deprecated v1alpha of the reflection protocol. Prefer ProtoReflectionServiceV1, which implements the v1 version of the reflection protocol
Dependencies
- Upgrade proto-google-common-protos to 2.48.0 (1993e68)
- Upgrade google-auth-library to 1.24.1 (1993e68)
- Upgrade error_prone_annotations to 2.30.0 (1993e68)
- Upgrade Guava to 33.3.1-android (1993e68)
- Upgrade opentelemetry-api to 1.43.0 (1993e68)
- xds: Remove Bazel dependency on xds v2 (664f1fc). This had been done for the Maven Central binaries in 1.63.0, but had been missed for Bazel builds
Documentation
- binder: Update error codes doc for new "Safer Intent" rules. (#11639) (fe350cf)
- examples: Use xds-enabled server and xds credentials in example-gcp-csm-observability (#11706) (a79982c)
Thanks to
@niloc132
@rockspore
@SreeramdasLavanya
@vinodhabib