dependabot[bot] opened a new pull request, #3983:
URL: https://github.com/apache/avro/pull/3983

   Bumps `grpc.version` from 1.83.1 to 1.84.0.
   Updates `io.grpc:grpc-core` from 1.83.1 to 1.84.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>io.grpc:grpc-core's 
releases</a>.</em></p>
   <blockquote>
   <h2>V1.84.0</h2>
   <p>In this release we drop support for Android API level 23 or lower 
(Marshmallow or earlier), following <a 
href="https://support.google.com/googleplay/answer/9037938?hl=en";>Google Play 
Service’s now requiring a minimum of API level 24</a> (Android 7.0 Nougat).</p>
   <h3>API Changes</h3>
   <ul>
   <li>xds: Supports injecting custom LDS Resource Name Resolvers (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>xds: Add support for creating <code>XdsServerBuilder</code> with 
<code>SocketAddress</code>es (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>api: Add a Supplier overload to Context (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12935";>#12935</a>) 
(696653600)</li>
   </ul>
   <h3>Behavior Changes</h3>
   <ul>
   <li>core: update SPIFFE certificate extraction to comply with X509-SVID spec 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12961";>#12961</a>) 
(96807d898)<br />
   Ignore all but the first certificate if the x5c JWK parameter contains 
multiple values.<br />
   Skip the JWK entry instead of stopping execution or throwing when x5c is 
missing or contains an empty list, complying with the requirement that entries 
without x5c must be ignored.</li>
   </ul>
   <h3>Bug Fixes</h3>
   <ul>
   <li>core: reference-count shared transport factory for OOB channels (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12985";>#12985</a>) 
(72c6e5f91)<br />
   Fixes a bug whereby an OOB channel shutdown incorrectly shut down the shared 
transport factory with the main channel, and the main channel was unable to 
create subchannels anymore and faced an exception in doing so.</li>
   <li>xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>) 
(3cb700719)</li>
   <li>xds: Add Http11ProxyUpstreamTransport to MessagePrinter (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12971";>#12971</a>) 
(d49a589f4)</li>
   <li>core, xds: Append child channel configurators instead of overwriting (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12921";>#12921</a>) 
(296c007c1) Chains multiple childChannelConfigurator() calls instead of 
overwriting them in ManagedChannelImplBuilder and XdsServerBuilder, ensuring 
all configurators are preserved and executed when child channels are 
created.</li>
   <li>rls: Implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12972";>#12972</a>) 
(7843bd437) Caches header_data received in RouteLookupResponse and sends it 
back as stale_header_data in RouteLookupRequest when refreshing stale cache 
entries, complying with the RLS specification.</li>
   </ul>
   <h3>Improvements</h3>
   <ul>
   <li>netty: Fix client-initiated stream limit bypass in NettyServerHandler 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12933";>#12933</a>) 
(56205f91c) Configure max active streams limit directly upon 
<code>DefaultHttp2Connection</code> initialization. Because 
<code>NettyServerHandler</code> instantiates 
<code>DefaultHttp2Connection</code> directly rather than using Netty's 
<code>AbstractHttp2ConnectionHandlerBuilder</code>, it missed Netty's built-in 
<a href="https://github.com/advisories/GHSA-5x3r-wrvg-rp6q";>CVE-2026-47244</a> 
patch. This left a pre-handshake window where the server's local connection 
allowed up to Integer.MAX_VALUE active client-initiated streams until a 
SETTINGS_ACK was received. Enforcing the limit proactively at startup closes 
this vulnerability window and prevents client-initiated stream floods / 
resource exhaustion.</li>
   <li>servlet: <code>AsyncServletOutputStreamWriter</code> detect and handle 
write when not ready (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12732";>#12732</a>) 
(46f308051) In highly concurrent scenarios, cached servlet container ready to 
write state can become  stale. The servlet container may have already 
transitioned to a 'not ready' state, but the corresponding callback has not yet 
updated gRPC's internal state. This fix makes the ready state to be evaluated 
explicitly before attempting to write directly to the servlet output 
stream.</li>
   <li>okhttp: Move connection window update before stream termination logic 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>) 
(0f859c3bb) By RFC 9113, section 6.9, receivers must take frames into account 
for flow control even if they're errored. This change moves the stream error 
response logic after connection window updates</li>
   <li>core: Coalesce Contiguous Small Buffers for ReadableBuffer to prevent 
OOM (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12924";>#12924</a>) 
(0585d481a)</li>
   <li>s2a: Default to Post Quantum Cryptography key exchange group (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12894";>#12894</a>) 
(bc01994b7)</li>
   <li>binder: Let servers load their SecurityPolicy asynchronously 
(9fdef96dc)</li>
   <li>binder: normalize failed auth future status message (9ffa1e1b7)</li>
   </ul>
   <h3>Dependencies</h3>
   <ul>
   <li>compiler: Update maximum supported edition to EDITION_2026 (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12945";>#12945</a>) 
(6ccd0658e). Update the maximum supported edition in the Java gRPC compiler 
plugin to EDITION_2026 when compiling against Protobuf version 7.35.0 (v35.0) 
or later.</li>
   <li>api: Bump Context to JDK 8 (5d0a012fa)</li>
   <li>netty: Upgrade Netty to 4.2.16 and netty-tcnative to 2.0.81 (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12969";>#12969</a>) 
(1bc2f5a34)</li>
   </ul>
   <h3>Documentation</h3>
   <ul>
   <li>api: Better explain the executors and how to configure them 
(ee08f5337)</li>
   </ul>
   <h3>New Features</h3>
   <ul>
   <li>core, opentelemetry: Implement LB Delay Observability (Proposal A121) 
(<a href="https://redirect.github.com/grpc/grpc-java/pull/12807";>#12807</a>) 
(073fd5ea1) Implements attempt-level RPC delay observability across the core 
delayed transport, built-in load balancers (pick_first, round_robin), RLS, and 
xDS policies, aligned with <a 
href="https://redirect.github.com/grpc/proposal/pull/556";>gRFC A121</a>. Adds 
LoadBalancer.PickResult.withNoResult(delayType, delayReason) and delay tracing 
callbacks on ClientStreamTracer. Records attempt delay duration metrics 
(grpc.client.attempt.delay.duration) and child tracing spans (&quot;Attempt 
Delay&quot;) via the OpenTelemetry plugin.</li>
   </ul>
   <h3>Thanks to</h3>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b3838c0ce83152138aff3979c832225280d7a8d6";><code>b3838c0</code></a>
 Bump version to 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/eb21854905d7e35c5e633543e39f46d9590fc327";><code>eb21854</code></a>
 Update README etc to reference 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/118cb68ed152ab1c203137a6c2eb91c3075ddfcb";><code>118cb68</code></a>
 xds: Make RawMessageClientInterceptor conditional on ext_proc flags (v1.84.x 
...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/e9cfe32b929be82adbe2f05d64e9cf1f28225ad9";><code>e9cfe32</code></a>
 Revert &quot;Implement gRFC A97: xDS JWT Call Credentials (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12951";>#12951</a>)&quot;
 (v1.84.x backp...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/cb66582711b2b4196b6a6135a13c746f56d0b9b1";><code>cb66582</code></a>
 build: Remove global setting to allow empty checksums for Choco (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12993";>#12993</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/0f859c3bb69bbf229c39194ff433a095c630e31c";><code>0f859c3</code></a>
 okhttp: Move connection window update before stream termination logic (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/292a361472e0afe317cdfa190dcf77c649bb6338";><code>292a361</code></a>
 binder,cronet: Handle double-ClientTransportFactory.close()</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7843bd437a38e85c2a3a40a8b9e61fc42d65edbc";><code>7843bd4</code></a>
 rls: implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12972";>#12972</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3cb7007194443a2fb303cc72fca7b9274b7a29f0";><code>3cb7007</code></a>
 xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ab104f8b3f610b588ecc7bafa0502b3b69abfc62";><code>ab104f8</code></a>
 compiler: add retry loop and enable allowEmptyChecksums on Windows (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12962";>#12962</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.83.1...v1.84.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   Updates `io.grpc:grpc-stub` from 1.83.1 to 1.84.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>io.grpc:grpc-stub's 
releases</a>.</em></p>
   <blockquote>
   <h2>V1.84.0</h2>
   <p>In this release we drop support for Android API level 23 or lower 
(Marshmallow or earlier), following <a 
href="https://support.google.com/googleplay/answer/9037938?hl=en";>Google Play 
Service’s now requiring a minimum of API level 24</a> (Android 7.0 Nougat).</p>
   <h3>API Changes</h3>
   <ul>
   <li>xds: Supports injecting custom LDS Resource Name Resolvers (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>xds: Add support for creating <code>XdsServerBuilder</code> with 
<code>SocketAddress</code>es (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>api: Add a Supplier overload to Context (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12935";>#12935</a>) 
(696653600)</li>
   </ul>
   <h3>Behavior Changes</h3>
   <ul>
   <li>core: update SPIFFE certificate extraction to comply with X509-SVID spec 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12961";>#12961</a>) 
(96807d898)<br />
   Ignore all but the first certificate if the x5c JWK parameter contains 
multiple values.<br />
   Skip the JWK entry instead of stopping execution or throwing when x5c is 
missing or contains an empty list, complying with the requirement that entries 
without x5c must be ignored.</li>
   </ul>
   <h3>Bug Fixes</h3>
   <ul>
   <li>core: reference-count shared transport factory for OOB channels (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12985";>#12985</a>) 
(72c6e5f91)<br />
   Fixes a bug whereby an OOB channel shutdown incorrectly shut down the shared 
transport factory with the main channel, and the main channel was unable to 
create subchannels anymore and faced an exception in doing so.</li>
   <li>xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>) 
(3cb700719)</li>
   <li>xds: Add Http11ProxyUpstreamTransport to MessagePrinter (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12971";>#12971</a>) 
(d49a589f4)</li>
   <li>core, xds: Append child channel configurators instead of overwriting (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12921";>#12921</a>) 
(296c007c1) Chains multiple childChannelConfigurator() calls instead of 
overwriting them in ManagedChannelImplBuilder and XdsServerBuilder, ensuring 
all configurators are preserved and executed when child channels are 
created.</li>
   <li>rls: Implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12972";>#12972</a>) 
(7843bd437) Caches header_data received in RouteLookupResponse and sends it 
back as stale_header_data in RouteLookupRequest when refreshing stale cache 
entries, complying with the RLS specification.</li>
   </ul>
   <h3>Improvements</h3>
   <ul>
   <li>netty: Fix client-initiated stream limit bypass in NettyServerHandler 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12933";>#12933</a>) 
(56205f91c) Configure max active streams limit directly upon 
<code>DefaultHttp2Connection</code> initialization. Because 
<code>NettyServerHandler</code> instantiates 
<code>DefaultHttp2Connection</code> directly rather than using Netty's 
<code>AbstractHttp2ConnectionHandlerBuilder</code>, it missed Netty's built-in 
<a href="https://github.com/advisories/GHSA-5x3r-wrvg-rp6q";>CVE-2026-47244</a> 
patch. This left a pre-handshake window where the server's local connection 
allowed up to Integer.MAX_VALUE active client-initiated streams until a 
SETTINGS_ACK was received. Enforcing the limit proactively at startup closes 
this vulnerability window and prevents client-initiated stream floods / 
resource exhaustion.</li>
   <li>servlet: <code>AsyncServletOutputStreamWriter</code> detect and handle 
write when not ready (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12732";>#12732</a>) 
(46f308051) In highly concurrent scenarios, cached servlet container ready to 
write state can become  stale. The servlet container may have already 
transitioned to a 'not ready' state, but the corresponding callback has not yet 
updated gRPC's internal state. This fix makes the ready state to be evaluated 
explicitly before attempting to write directly to the servlet output 
stream.</li>
   <li>okhttp: Move connection window update before stream termination logic 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>) 
(0f859c3bb) By RFC 9113, section 6.9, receivers must take frames into account 
for flow control even if they're errored. This change moves the stream error 
response logic after connection window updates</li>
   <li>core: Coalesce Contiguous Small Buffers for ReadableBuffer to prevent 
OOM (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12924";>#12924</a>) 
(0585d481a)</li>
   <li>s2a: Default to Post Quantum Cryptography key exchange group (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12894";>#12894</a>) 
(bc01994b7)</li>
   <li>binder: Let servers load their SecurityPolicy asynchronously 
(9fdef96dc)</li>
   <li>binder: normalize failed auth future status message (9ffa1e1b7)</li>
   </ul>
   <h3>Dependencies</h3>
   <ul>
   <li>compiler: Update maximum supported edition to EDITION_2026 (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12945";>#12945</a>) 
(6ccd0658e). Update the maximum supported edition in the Java gRPC compiler 
plugin to EDITION_2026 when compiling against Protobuf version 7.35.0 (v35.0) 
or later.</li>
   <li>api: Bump Context to JDK 8 (5d0a012fa)</li>
   <li>netty: Upgrade Netty to 4.2.16 and netty-tcnative to 2.0.81 (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12969";>#12969</a>) 
(1bc2f5a34)</li>
   </ul>
   <h3>Documentation</h3>
   <ul>
   <li>api: Better explain the executors and how to configure them 
(ee08f5337)</li>
   </ul>
   <h3>New Features</h3>
   <ul>
   <li>core, opentelemetry: Implement LB Delay Observability (Proposal A121) 
(<a href="https://redirect.github.com/grpc/grpc-java/pull/12807";>#12807</a>) 
(073fd5ea1) Implements attempt-level RPC delay observability across the core 
delayed transport, built-in load balancers (pick_first, round_robin), RLS, and 
xDS policies, aligned with <a 
href="https://redirect.github.com/grpc/proposal/pull/556";>gRFC A121</a>. Adds 
LoadBalancer.PickResult.withNoResult(delayType, delayReason) and delay tracing 
callbacks on ClientStreamTracer. Records attempt delay duration metrics 
(grpc.client.attempt.delay.duration) and child tracing spans (&quot;Attempt 
Delay&quot;) via the OpenTelemetry plugin.</li>
   </ul>
   <h3>Thanks to</h3>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b3838c0ce83152138aff3979c832225280d7a8d6";><code>b3838c0</code></a>
 Bump version to 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/eb21854905d7e35c5e633543e39f46d9590fc327";><code>eb21854</code></a>
 Update README etc to reference 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/118cb68ed152ab1c203137a6c2eb91c3075ddfcb";><code>118cb68</code></a>
 xds: Make RawMessageClientInterceptor conditional on ext_proc flags (v1.84.x 
...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/e9cfe32b929be82adbe2f05d64e9cf1f28225ad9";><code>e9cfe32</code></a>
 Revert &quot;Implement gRFC A97: xDS JWT Call Credentials (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12951";>#12951</a>)&quot;
 (v1.84.x backp...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/cb66582711b2b4196b6a6135a13c746f56d0b9b1";><code>cb66582</code></a>
 build: Remove global setting to allow empty checksums for Choco (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12993";>#12993</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/0f859c3bb69bbf229c39194ff433a095c630e31c";><code>0f859c3</code></a>
 okhttp: Move connection window update before stream termination logic (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/292a361472e0afe317cdfa190dcf77c649bb6338";><code>292a361</code></a>
 binder,cronet: Handle double-ClientTransportFactory.close()</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7843bd437a38e85c2a3a40a8b9e61fc42d65edbc";><code>7843bd4</code></a>
 rls: implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12972";>#12972</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3cb7007194443a2fb303cc72fca7b9274b7a29f0";><code>3cb7007</code></a>
 xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ab104f8b3f610b588ecc7bafa0502b3b69abfc62";><code>ab104f8</code></a>
 compiler: add retry loop and enable allowEmptyChecksums on Windows (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12962";>#12962</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.83.1...v1.84.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   Updates `io.grpc:grpc-netty` from 1.83.1 to 1.84.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>io.grpc:grpc-netty's 
releases</a>.</em></p>
   <blockquote>
   <h2>V1.84.0</h2>
   <p>In this release we drop support for Android API level 23 or lower 
(Marshmallow or earlier), following <a 
href="https://support.google.com/googleplay/answer/9037938?hl=en";>Google Play 
Service’s now requiring a minimum of API level 24</a> (Android 7.0 Nougat).</p>
   <h3>API Changes</h3>
   <ul>
   <li>xds: Supports injecting custom LDS Resource Name Resolvers (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>xds: Add support for creating <code>XdsServerBuilder</code> with 
<code>SocketAddress</code>es (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12925";>#12925</a>) 
(ac02c6f37)</li>
   <li>api: Add a Supplier overload to Context (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12935";>#12935</a>) 
(696653600)</li>
   </ul>
   <h3>Behavior Changes</h3>
   <ul>
   <li>core: update SPIFFE certificate extraction to comply with X509-SVID spec 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12961";>#12961</a>) 
(96807d898)<br />
   Ignore all but the first certificate if the x5c JWK parameter contains 
multiple values.<br />
   Skip the JWK entry instead of stopping execution or throwing when x5c is 
missing or contains an empty list, complying with the requirement that entries 
without x5c must be ignored.</li>
   </ul>
   <h3>Bug Fixes</h3>
   <ul>
   <li>core: reference-count shared transport factory for OOB channels (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12985";>#12985</a>) 
(72c6e5f91)<br />
   Fixes a bug whereby an OOB channel shutdown incorrectly shut down the shared 
transport factory with the main channel, and the main channel was unable to 
create subchannels anymore and faced an exception in doing so.</li>
   <li>xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>) 
(3cb700719)</li>
   <li>xds: Add Http11ProxyUpstreamTransport to MessagePrinter (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12971";>#12971</a>) 
(d49a589f4)</li>
   <li>core, xds: Append child channel configurators instead of overwriting (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12921";>#12921</a>) 
(296c007c1) Chains multiple childChannelConfigurator() calls instead of 
overwriting them in ManagedChannelImplBuilder and XdsServerBuilder, ensuring 
all configurators are preserved and executed when child channels are 
created.</li>
   <li>rls: Implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12972";>#12972</a>) 
(7843bd437) Caches header_data received in RouteLookupResponse and sends it 
back as stale_header_data in RouteLookupRequest when refreshing stale cache 
entries, complying with the RLS specification.</li>
   </ul>
   <h3>Improvements</h3>
   <ul>
   <li>netty: Fix client-initiated stream limit bypass in NettyServerHandler 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12933";>#12933</a>) 
(56205f91c) Configure max active streams limit directly upon 
<code>DefaultHttp2Connection</code> initialization. Because 
<code>NettyServerHandler</code> instantiates 
<code>DefaultHttp2Connection</code> directly rather than using Netty's 
<code>AbstractHttp2ConnectionHandlerBuilder</code>, it missed Netty's built-in 
<a href="https://github.com/advisories/GHSA-5x3r-wrvg-rp6q";>CVE-2026-47244</a> 
patch. This left a pre-handshake window where the server's local connection 
allowed up to Integer.MAX_VALUE active client-initiated streams until a 
SETTINGS_ACK was received. Enforcing the limit proactively at startup closes 
this vulnerability window and prevents client-initiated stream floods / 
resource exhaustion.</li>
   <li>servlet: <code>AsyncServletOutputStreamWriter</code> detect and handle 
write when not ready (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12732";>#12732</a>) 
(46f308051) In highly concurrent scenarios, cached servlet container ready to 
write state can become  stale. The servlet container may have already 
transitioned to a 'not ready' state, but the corresponding callback has not yet 
updated gRPC's internal state. This fix makes the ready state to be evaluated 
explicitly before attempting to write directly to the servlet output 
stream.</li>
   <li>okhttp: Move connection window update before stream termination logic 
(<a href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>) 
(0f859c3bb) By RFC 9113, section 6.9, receivers must take frames into account 
for flow control even if they're errored. This change moves the stream error 
response logic after connection window updates</li>
   <li>core: Coalesce Contiguous Small Buffers for ReadableBuffer to prevent 
OOM (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12924";>#12924</a>) 
(0585d481a)</li>
   <li>s2a: Default to Post Quantum Cryptography key exchange group (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12894";>#12894</a>) 
(bc01994b7)</li>
   <li>binder: Let servers load their SecurityPolicy asynchronously 
(9fdef96dc)</li>
   <li>binder: normalize failed auth future status message (9ffa1e1b7)</li>
   </ul>
   <h3>Dependencies</h3>
   <ul>
   <li>compiler: Update maximum supported edition to EDITION_2026 (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12945";>#12945</a>) 
(6ccd0658e). Update the maximum supported edition in the Java gRPC compiler 
plugin to EDITION_2026 when compiling against Protobuf version 7.35.0 (v35.0) 
or later.</li>
   <li>api: Bump Context to JDK 8 (5d0a012fa)</li>
   <li>netty: Upgrade Netty to 4.2.16 and netty-tcnative to 2.0.81 (<a 
href="https://redirect.github.com/grpc/grpc-java/pull/12969";>#12969</a>) 
(1bc2f5a34)</li>
   </ul>
   <h3>Documentation</h3>
   <ul>
   <li>api: Better explain the executors and how to configure them 
(ee08f5337)</li>
   </ul>
   <h3>New Features</h3>
   <ul>
   <li>core, opentelemetry: Implement LB Delay Observability (Proposal A121) 
(<a href="https://redirect.github.com/grpc/grpc-java/pull/12807";>#12807</a>) 
(073fd5ea1) Implements attempt-level RPC delay observability across the core 
delayed transport, built-in load balancers (pick_first, round_robin), RLS, and 
xDS policies, aligned with <a 
href="https://redirect.github.com/grpc/proposal/pull/556";>gRFC A121</a>. Adds 
LoadBalancer.PickResult.withNoResult(delayType, delayReason) and delay tracing 
callbacks on ClientStreamTracer. Records attempt delay duration metrics 
(grpc.client.attempt.delay.duration) and child tracing spans (&quot;Attempt 
Delay&quot;) via the OpenTelemetry plugin.</li>
   </ul>
   <h3>Thanks to</h3>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b3838c0ce83152138aff3979c832225280d7a8d6";><code>b3838c0</code></a>
 Bump version to 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/eb21854905d7e35c5e633543e39f46d9590fc327";><code>eb21854</code></a>
 Update README etc to reference 1.84.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/118cb68ed152ab1c203137a6c2eb91c3075ddfcb";><code>118cb68</code></a>
 xds: Make RawMessageClientInterceptor conditional on ext_proc flags (v1.84.x 
...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/e9cfe32b929be82adbe2f05d64e9cf1f28225ad9";><code>e9cfe32</code></a>
 Revert &quot;Implement gRFC A97: xDS JWT Call Credentials (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12951";>#12951</a>)&quot;
 (v1.84.x backp...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/cb66582711b2b4196b6a6135a13c746f56d0b9b1";><code>cb66582</code></a>
 build: Remove global setting to allow empty checksums for Choco (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12993";>#12993</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/0f859c3bb69bbf229c39194ff433a095c630e31c";><code>0f859c3</code></a>
 okhttp: Move connection window update before stream termination logic (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12990";>#12990</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/292a361472e0afe317cdfa190dcf77c649bb6338";><code>292a361</code></a>
 binder,cronet: Handle double-ClientTransportFactory.close()</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7843bd437a38e85c2a3a40a8b9e61fc42d65edbc";><code>7843bd4</code></a>
 rls: implement stale_header_data caching and propagation in RLS (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12972";>#12972</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3cb7007194443a2fb303cc72fca7b9274b7a29f0";><code>3cb7007</code></a>
 xds: Fix <code>shutdownNow()</code> becoming a no-op after 
<code>shutdown()</code> (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12982";>#12982</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ab104f8b3f610b588ecc7bafa0502b3b69abfc62";><code>ab104f8</code></a>
 compiler: add retry loop and enable allowEmptyChecksums on Windows (<a 
href="https://redirect.github.com/grpc/grpc-java/issues/12962";>#12962</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.83.1...v1.84.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   Dependabot will resolve any conflicts with this PR as long as you don't 
alter it yourself. You can also trigger a rebase manually by commenting 
`@dependabot rebase`.
   
   [//]: # (dependabot-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   You can trigger Dependabot actions by commenting on this PR:
   - `@dependabot rebase` will rebase this PR
   - `@dependabot recreate` will recreate this PR, overwriting any edits that 
have been made to it
   - `@dependabot show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@dependabot ignore this major version` will close this PR and stop 
Dependabot creating any more for this major version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop 
Dependabot creating any more for this minor version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop 
Dependabot creating any more for this dependency (unless you reopen the PR or 
upgrade to it yourself)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to