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


   Bumps `grpc.version` from 1.36.1 to 1.37.0.
   Updates `grpc-core` from 1.36.1 to 1.37.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>grpc-core's 
releases</a>.</em></p>
   <blockquote>
   <h2>v1.37.0</h2>
   <h2>Behavior Changes</h2>
   <ul>
   <li>alts: make both <code>GoogleDefaultChannelCredentials</code> and 
<code>ComputeEngineChannelCredentials</code> choose ALTS for backends given by 
xDS TD. Changes for <code>ComputeEngineChannelCredentials</code> were missing, 
but they really should be the same.</li>
   <li>api: added a convenient <code>ServerBuilder.addServices()</code> API 
that allows adding a list of services instead of iterating through list and 
calling <code>addService()</code>.</li>
   <li>api: deleted some <code>NameResolver</code> APIs that have been marked 
as deprecated since 1.21 release.</li>
   <li>api: implemented admin interface API, which automatically loads 
available admin services in a given binary. Currently, it only includes <a 
href="https://github.com/grpc/proposal/blob/master/A14-channelz.md";><code>Channelz</code></a>
 and <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";><code>CSDS</code></a>
 with dependencies required at runtime.</li>
   <li>context: move <code>pendingDeadline.cancel</code> out of synchronized 
block.</li>
   <li>netty: allow connection handshakes (e.g., TCP, TLS) to be interrupted by 
<code>channel.shutdown()</code>. Previously <code>shutdownNow()</code> was 
required for prompt shutdown if a connection was handshaking.</li>
   <li>xds: change in parsing ADS responses for LDS, RDS, CDS, and EDS 
resources. Before this release, gRPC parsing logic for ADS response containing 
multiple resources was to stop resource processing on the first encountered 
error, followed by NACK with the details of this single error. With this 
change, the parsing logic processes all resources and collects all processing 
errors. If any error occurred, a NACK is issued with concatenated error 
messages of all errors encountered. The rationale and the detailed design can 
be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md#ads-parsing-logic-update-continue-after-first-error";>gRFC
 A40 — ADS Parsing Logic Update: Continue After First Error</a>.</li>
   <li>xds: change system property name for reading bootstrap config from 
io.grpc.xds.bootstrapValue to <code>io.grpc.xds.bootstrapConfig</code>.</li>
   <li>xds: circuit breaking, timeout and fault injection are enabled by 
default. Previously they were protected by environment variables.</li>
   <li>xds: use the new <code>server_listener_resource_name_template</code> 
property from the bootstrap file for server side xDS processing as per the gRFC 
<a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   </ul>
   <h2>New Features</h2>
   <ul>
   <li>api: <code>TlsChannelCredentials</code> and 
<code>TlsServerCredentials</code> now support client certificates and custom 
KeyManagers/TrustManagers. grpc-netty fully supports these options. grpc-okhttp 
does not support keyfile-based configuration; you’d need to use a KeyManager. 
Most users of Netty’s SslContext and GrpcSslContexts should be able to migrate 
and are encouraged to do so, because this API does not have a Netty dependency 
and so is planned to become stable.</li>
   <li>netty: added support for OpenJSSE.</li>
   <li>okhttp: support compiling with okio 2.x API for Bazel users. grpc-okhttp 
was already compatible with okio 2 at runtime.</li>
   <li>xds: <code>XdsServingStatusListener</code> has been implemented as per 
the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: add proto leakage check at gradle build. Create a new Gradle task 
depends on shadowJar. It examines the outputs of shadowJar package prefix to 
make sure it is inside within the package.</li>
   <li>xds: added <code>CsdsService</code>. It is safe for production but are 
Experimental APIs to resolve issues discovered as they see usage. The rationale 
and description of the new API can be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";>gRFC 
A40: xDS Configuration Dump via Client Status Discovery Service in 
gRPC</a>.</li>
   <li>xds: implement gRPC server side validations and filterChain match of xDS 
configuration as per the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: <code>WeightedTargetLoadBalancer</code> collect all failure child 
pickers to log more error details.</li>
   </ul>
   <h2>Bug Fixes</h2>
   <ul>
   <li>grpclb: gRPCLB would buffer RPCs indefinitely if failing to fallback 
because the resolver provides no fallback addresses. Now it turns into 
<code>TRANSIENT_FAILURE</code> for such cases.</li>
   <li>xds: fix <code>CdsLoadBalancer2</code> childLb shutdown behavior. 
Previously these childLbs are not properly shutdown, which might cause channel 
panic as client channel is referenced by those childLbs.</li>
   <li>Fixed an <code>UnsupportedOperationException</code> incompatibility with 
Netty 4.1.60.Final (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7953";>#7953</a>).
 This allows users of grpc-netty that may be using Netty elsewhere in their 
application to upgrade their Netty version to avoid exposure to recent Netty 
CVEs. gRPC itself is not impacted by those CVEs.</li>
   <li>grpclb: fixed a race between address update and LB stream recreation, 
which would cause channel panic if the resolver refreshes the result while 
gRPCLB is in LB stream backoff.</li>
   <li>grpclb: gRPCLB ignored <code>CONNECTING</code> subchannels when 
aggregating the overall LB state, which would cause RPCs to fail prematurely if 
there are subchannels in its initial connection.</li>
   <li>grpclb: now we allow multiple authorities in lb backends instead of 
flattening to the first authority.</li>
   <li>interop-testing: fix alts handshaking race: add proper synchronization 
on the <code>AltsTestServer</code> object lock, this way, alts client and alts 
server won’t race on the <code>AltsTestServer</code> during Alts handshake 
negotiation.</li>
   <li>xds: fixed a bug that would drop some node information (e.g., 
user-agent) when reporting to LRS (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7964";>#7964</a>).</li>
   <li>xds: the xDS resolver did not clear its state when control plane 
resources were revoked before offloading the xDS LB plugin. It would treat the 
next update as duplicate if the control plane recovers and never comes back to 
use those resources. Now this is fixed.</li>
   </ul>
   <h2>Documentation</h2>
   <ul>
   <li>example-tls: ported to 
<code>TlsChannelCredentials</code>/<code>TlsServerCredentials</code> and no 
longer depends on Netty at compile time.</li>
   <li>examples: add ALTS example README.md.</li>
   </ul>
   <h2>Dependencies</h2>
   <ul>
   <li>gradle: bumped protobuf-gradle-plugin version to 0.8.15</li>
   <li>xds: envoy proto updated to commit <a 
href="https://github.com/envoyproxy/envoy/commit/ac9a2637336decdcc52c24add5e8fc39edebb962";><code>ac9a26373</code></a>.
 Added xDS v3 csds.proto with dependencies.</li>
   </ul>
   <h2>Acknowledgements</h2>
   <p><a href="https://github.com/spkrka";><code>@​spkrka</code></a> Kristofer 
Karlsson
   <a href="https://github.com/njhill";><code>@​njhill</code></a> Nick Hill
   <a href="https://github.com/ulfjack";><code>@​ulfjack</code></a> Ulf Adams</p>
   </blockquote>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3836caa9d445e2f8d4918767426a4506057f27b9";><code>3836caa</code></a>
 Bump version to 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/731d4ec6172923610a83a3e2f30273eb3f8e8683";><code>731d4ec</code></a>
 Update README etc to reference 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/52a84507a12e546a7fffe656c90b1142cc13532f";><code>52a8450</code></a>
 xds: cache bootstrapInfo in the SslContextProviderFactory to prevent 
rereadin...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/c5fa257cea0a0bc69af7d3d5d4c7f25c034b0cd0";><code>c5fa257</code></a>
 bom: Do not include grpc-binder (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8038";>#8038</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/50903827480448e0f31e25eeae92f276c38b15f8";><code>5090382</code></a>
 xds: Fix validation of HCM filter and Router httpFilter (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8039";>#8039</a>)
 (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8046";>#8046</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7590bd148f3274408ddc9db50989f8ab75c6a00e";><code>7590bd1</code></a>
 netty: Add support for OpenJSSE</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/80585a41549aaa9ecc46403a0d40decd9e8d5a5b";><code>80585a4</code></a>
 xds: move the state check logic to delegate and eliminate boilerplate code 
(#...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/828b03da27aec6b18675f069f9927e7d68aaae68";><code>828b03d</code></a>
 xds: add CsdsService</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b417b70db1bfb2393c0e0c2cbd527b49bcaf5439";><code>b417b70</code></a>
 xds: add csds.proto (v3) with dependencies, generated code</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ad2b26436ccd64cb394127ebc0cd3323817dd8a3";><code>ad2b264</code></a>
 xds: update (local) configurations atomically for each LDS/RDS resource 
updat...</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.36.1...v1.37.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   Updates `grpc-stub` from 1.36.1 to 1.37.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>grpc-stub's 
releases</a>.</em></p>
   <blockquote>
   <h2>v1.37.0</h2>
   <h2>Behavior Changes</h2>
   <ul>
   <li>alts: make both <code>GoogleDefaultChannelCredentials</code> and 
<code>ComputeEngineChannelCredentials</code> choose ALTS for backends given by 
xDS TD. Changes for <code>ComputeEngineChannelCredentials</code> were missing, 
but they really should be the same.</li>
   <li>api: added a convenient <code>ServerBuilder.addServices()</code> API 
that allows adding a list of services instead of iterating through list and 
calling <code>addService()</code>.</li>
   <li>api: deleted some <code>NameResolver</code> APIs that have been marked 
as deprecated since 1.21 release.</li>
   <li>api: implemented admin interface API, which automatically loads 
available admin services in a given binary. Currently, it only includes <a 
href="https://github.com/grpc/proposal/blob/master/A14-channelz.md";><code>Channelz</code></a>
 and <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";><code>CSDS</code></a>
 with dependencies required at runtime.</li>
   <li>context: move <code>pendingDeadline.cancel</code> out of synchronized 
block.</li>
   <li>netty: allow connection handshakes (e.g., TCP, TLS) to be interrupted by 
<code>channel.shutdown()</code>. Previously <code>shutdownNow()</code> was 
required for prompt shutdown if a connection was handshaking.</li>
   <li>xds: change in parsing ADS responses for LDS, RDS, CDS, and EDS 
resources. Before this release, gRPC parsing logic for ADS response containing 
multiple resources was to stop resource processing on the first encountered 
error, followed by NACK with the details of this single error. With this 
change, the parsing logic processes all resources and collects all processing 
errors. If any error occurred, a NACK is issued with concatenated error 
messages of all errors encountered. The rationale and the detailed design can 
be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md#ads-parsing-logic-update-continue-after-first-error";>gRFC
 A40 — ADS Parsing Logic Update: Continue After First Error</a>.</li>
   <li>xds: change system property name for reading bootstrap config from 
io.grpc.xds.bootstrapValue to <code>io.grpc.xds.bootstrapConfig</code>.</li>
   <li>xds: circuit breaking, timeout and fault injection are enabled by 
default. Previously they were protected by environment variables.</li>
   <li>xds: use the new <code>server_listener_resource_name_template</code> 
property from the bootstrap file for server side xDS processing as per the gRFC 
<a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   </ul>
   <h2>New Features</h2>
   <ul>
   <li>api: <code>TlsChannelCredentials</code> and 
<code>TlsServerCredentials</code> now support client certificates and custom 
KeyManagers/TrustManagers. grpc-netty fully supports these options. grpc-okhttp 
does not support keyfile-based configuration; you’d need to use a KeyManager. 
Most users of Netty’s SslContext and GrpcSslContexts should be able to migrate 
and are encouraged to do so, because this API does not have a Netty dependency 
and so is planned to become stable.</li>
   <li>netty: added support for OpenJSSE.</li>
   <li>okhttp: support compiling with okio 2.x API for Bazel users. grpc-okhttp 
was already compatible with okio 2 at runtime.</li>
   <li>xds: <code>XdsServingStatusListener</code> has been implemented as per 
the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: add proto leakage check at gradle build. Create a new Gradle task 
depends on shadowJar. It examines the outputs of shadowJar package prefix to 
make sure it is inside within the package.</li>
   <li>xds: added <code>CsdsService</code>. It is safe for production but are 
Experimental APIs to resolve issues discovered as they see usage. The rationale 
and description of the new API can be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";>gRFC 
A40: xDS Configuration Dump via Client Status Discovery Service in 
gRPC</a>.</li>
   <li>xds: implement gRPC server side validations and filterChain match of xDS 
configuration as per the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: <code>WeightedTargetLoadBalancer</code> collect all failure child 
pickers to log more error details.</li>
   </ul>
   <h2>Bug Fixes</h2>
   <ul>
   <li>grpclb: gRPCLB would buffer RPCs indefinitely if failing to fallback 
because the resolver provides no fallback addresses. Now it turns into 
<code>TRANSIENT_FAILURE</code> for such cases.</li>
   <li>xds: fix <code>CdsLoadBalancer2</code> childLb shutdown behavior. 
Previously these childLbs are not properly shutdown, which might cause channel 
panic as client channel is referenced by those childLbs.</li>
   <li>Fixed an <code>UnsupportedOperationException</code> incompatibility with 
Netty 4.1.60.Final (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7953";>#7953</a>).
 This allows users of grpc-netty that may be using Netty elsewhere in their 
application to upgrade their Netty version to avoid exposure to recent Netty 
CVEs. gRPC itself is not impacted by those CVEs.</li>
   <li>grpclb: fixed a race between address update and LB stream recreation, 
which would cause channel panic if the resolver refreshes the result while 
gRPCLB is in LB stream backoff.</li>
   <li>grpclb: gRPCLB ignored <code>CONNECTING</code> subchannels when 
aggregating the overall LB state, which would cause RPCs to fail prematurely if 
there are subchannels in its initial connection.</li>
   <li>grpclb: now we allow multiple authorities in lb backends instead of 
flattening to the first authority.</li>
   <li>interop-testing: fix alts handshaking race: add proper synchronization 
on the <code>AltsTestServer</code> object lock, this way, alts client and alts 
server won’t race on the <code>AltsTestServer</code> during Alts handshake 
negotiation.</li>
   <li>xds: fixed a bug that would drop some node information (e.g., 
user-agent) when reporting to LRS (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7964";>#7964</a>).</li>
   <li>xds: the xDS resolver did not clear its state when control plane 
resources were revoked before offloading the xDS LB plugin. It would treat the 
next update as duplicate if the control plane recovers and never comes back to 
use those resources. Now this is fixed.</li>
   </ul>
   <h2>Documentation</h2>
   <ul>
   <li>example-tls: ported to 
<code>TlsChannelCredentials</code>/<code>TlsServerCredentials</code> and no 
longer depends on Netty at compile time.</li>
   <li>examples: add ALTS example README.md.</li>
   </ul>
   <h2>Dependencies</h2>
   <ul>
   <li>gradle: bumped protobuf-gradle-plugin version to 0.8.15</li>
   <li>xds: envoy proto updated to commit <a 
href="https://github.com/envoyproxy/envoy/commit/ac9a2637336decdcc52c24add5e8fc39edebb962";><code>ac9a26373</code></a>.
 Added xDS v3 csds.proto with dependencies.</li>
   </ul>
   <h2>Acknowledgements</h2>
   <p><a href="https://github.com/spkrka";><code>@​spkrka</code></a> Kristofer 
Karlsson
   <a href="https://github.com/njhill";><code>@​njhill</code></a> Nick Hill
   <a href="https://github.com/ulfjack";><code>@​ulfjack</code></a> Ulf Adams</p>
   </blockquote>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3836caa9d445e2f8d4918767426a4506057f27b9";><code>3836caa</code></a>
 Bump version to 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/731d4ec6172923610a83a3e2f30273eb3f8e8683";><code>731d4ec</code></a>
 Update README etc to reference 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/52a84507a12e546a7fffe656c90b1142cc13532f";><code>52a8450</code></a>
 xds: cache bootstrapInfo in the SslContextProviderFactory to prevent 
rereadin...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/c5fa257cea0a0bc69af7d3d5d4c7f25c034b0cd0";><code>c5fa257</code></a>
 bom: Do not include grpc-binder (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8038";>#8038</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/50903827480448e0f31e25eeae92f276c38b15f8";><code>5090382</code></a>
 xds: Fix validation of HCM filter and Router httpFilter (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8039";>#8039</a>)
 (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8046";>#8046</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7590bd148f3274408ddc9db50989f8ab75c6a00e";><code>7590bd1</code></a>
 netty: Add support for OpenJSSE</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/80585a41549aaa9ecc46403a0d40decd9e8d5a5b";><code>80585a4</code></a>
 xds: move the state check logic to delegate and eliminate boilerplate code 
(#...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/828b03da27aec6b18675f069f9927e7d68aaae68";><code>828b03d</code></a>
 xds: add CsdsService</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b417b70db1bfb2393c0e0c2cbd527b49bcaf5439";><code>b417b70</code></a>
 xds: add csds.proto (v3) with dependencies, generated code</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ad2b26436ccd64cb394127ebc0cd3323817dd8a3";><code>ad2b264</code></a>
 xds: update (local) configurations atomically for each LDS/RDS resource 
updat...</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.36.1...v1.37.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   Updates `grpc-netty` from 1.36.1 to 1.37.0
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/grpc/grpc-java/releases";>grpc-netty's 
releases</a>.</em></p>
   <blockquote>
   <h2>v1.37.0</h2>
   <h2>Behavior Changes</h2>
   <ul>
   <li>alts: make both <code>GoogleDefaultChannelCredentials</code> and 
<code>ComputeEngineChannelCredentials</code> choose ALTS for backends given by 
xDS TD. Changes for <code>ComputeEngineChannelCredentials</code> were missing, 
but they really should be the same.</li>
   <li>api: added a convenient <code>ServerBuilder.addServices()</code> API 
that allows adding a list of services instead of iterating through list and 
calling <code>addService()</code>.</li>
   <li>api: deleted some <code>NameResolver</code> APIs that have been marked 
as deprecated since 1.21 release.</li>
   <li>api: implemented admin interface API, which automatically loads 
available admin services in a given binary. Currently, it only includes <a 
href="https://github.com/grpc/proposal/blob/master/A14-channelz.md";><code>Channelz</code></a>
 and <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";><code>CSDS</code></a>
 with dependencies required at runtime.</li>
   <li>context: move <code>pendingDeadline.cancel</code> out of synchronized 
block.</li>
   <li>netty: allow connection handshakes (e.g., TCP, TLS) to be interrupted by 
<code>channel.shutdown()</code>. Previously <code>shutdownNow()</code> was 
required for prompt shutdown if a connection was handshaking.</li>
   <li>xds: change in parsing ADS responses for LDS, RDS, CDS, and EDS 
resources. Before this release, gRPC parsing logic for ADS response containing 
multiple resources was to stop resource processing on the first encountered 
error, followed by NACK with the details of this single error. With this 
change, the parsing logic processes all resources and collects all processing 
errors. If any error occurred, a NACK is issued with concatenated error 
messages of all errors encountered. The rationale and the detailed design can 
be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md#ads-parsing-logic-update-continue-after-first-error";>gRFC
 A40 — ADS Parsing Logic Update: Continue After First Error</a>.</li>
   <li>xds: change system property name for reading bootstrap config from 
io.grpc.xds.bootstrapValue to <code>io.grpc.xds.bootstrapConfig</code>.</li>
   <li>xds: circuit breaking, timeout and fault injection are enabled by 
default. Previously they were protected by environment variables.</li>
   <li>xds: use the new <code>server_listener_resource_name_template</code> 
property from the bootstrap file for server side xDS processing as per the gRFC 
<a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   </ul>
   <h2>New Features</h2>
   <ul>
   <li>api: <code>TlsChannelCredentials</code> and 
<code>TlsServerCredentials</code> now support client certificates and custom 
KeyManagers/TrustManagers. grpc-netty fully supports these options. grpc-okhttp 
does not support keyfile-based configuration; you’d need to use a KeyManager. 
Most users of Netty’s SslContext and GrpcSslContexts should be able to migrate 
and are encouraged to do so, because this API does not have a Netty dependency 
and so is planned to become stable.</li>
   <li>netty: added support for OpenJSSE.</li>
   <li>okhttp: support compiling with okio 2.x API for Bazel users. grpc-okhttp 
was already compatible with okio 2 at runtime.</li>
   <li>xds: <code>XdsServingStatusListener</code> has been implemented as per 
the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: add proto leakage check at gradle build. Create a new Gradle task 
depends on shadowJar. It examines the outputs of shadowJar package prefix to 
make sure it is inside within the package.</li>
   <li>xds: added <code>CsdsService</code>. It is safe for production but are 
Experimental APIs to resolve issues discovered as they see usage. The rationale 
and description of the new API can be found in <a 
href="https://github.com/grpc/proposal/blob/master/A40-csds-support.md";>gRFC 
A40: xDS Configuration Dump via Client Status Discovery Service in 
gRPC</a>.</li>
   <li>xds: implement gRPC server side validations and filterChain match of xDS 
configuration as per the gRFC <a 
href="https://github.com/grpc/proposal/blob/master/A36-xds-for-servers.md";>A36-xds-for-servers.md</a>.</li>
   <li>xds: <code>WeightedTargetLoadBalancer</code> collect all failure child 
pickers to log more error details.</li>
   </ul>
   <h2>Bug Fixes</h2>
   <ul>
   <li>grpclb: gRPCLB would buffer RPCs indefinitely if failing to fallback 
because the resolver provides no fallback addresses. Now it turns into 
<code>TRANSIENT_FAILURE</code> for such cases.</li>
   <li>xds: fix <code>CdsLoadBalancer2</code> childLb shutdown behavior. 
Previously these childLbs are not properly shutdown, which might cause channel 
panic as client channel is referenced by those childLbs.</li>
   <li>Fixed an <code>UnsupportedOperationException</code> incompatibility with 
Netty 4.1.60.Final (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7953";>#7953</a>).
 This allows users of grpc-netty that may be using Netty elsewhere in their 
application to upgrade their Netty version to avoid exposure to recent Netty 
CVEs. gRPC itself is not impacted by those CVEs.</li>
   <li>grpclb: fixed a race between address update and LB stream recreation, 
which would cause channel panic if the resolver refreshes the result while 
gRPCLB is in LB stream backoff.</li>
   <li>grpclb: gRPCLB ignored <code>CONNECTING</code> subchannels when 
aggregating the overall LB state, which would cause RPCs to fail prematurely if 
there are subchannels in its initial connection.</li>
   <li>grpclb: now we allow multiple authorities in lb backends instead of 
flattening to the first authority.</li>
   <li>interop-testing: fix alts handshaking race: add proper synchronization 
on the <code>AltsTestServer</code> object lock, this way, alts client and alts 
server won’t race on the <code>AltsTestServer</code> during Alts handshake 
negotiation.</li>
   <li>xds: fixed a bug that would drop some node information (e.g., 
user-agent) when reporting to LRS (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/7964";>#7964</a>).</li>
   <li>xds: the xDS resolver did not clear its state when control plane 
resources were revoked before offloading the xDS LB plugin. It would treat the 
next update as duplicate if the control plane recovers and never comes back to 
use those resources. Now this is fixed.</li>
   </ul>
   <h2>Documentation</h2>
   <ul>
   <li>example-tls: ported to 
<code>TlsChannelCredentials</code>/<code>TlsServerCredentials</code> and no 
longer depends on Netty at compile time.</li>
   <li>examples: add ALTS example README.md.</li>
   </ul>
   <h2>Dependencies</h2>
   <ul>
   <li>gradle: bumped protobuf-gradle-plugin version to 0.8.15</li>
   <li>xds: envoy proto updated to commit <a 
href="https://github.com/envoyproxy/envoy/commit/ac9a2637336decdcc52c24add5e8fc39edebb962";><code>ac9a26373</code></a>.
 Added xDS v3 csds.proto with dependencies.</li>
   </ul>
   <h2>Acknowledgements</h2>
   <p><a href="https://github.com/spkrka";><code>@​spkrka</code></a> Kristofer 
Karlsson
   <a href="https://github.com/njhill";><code>@​njhill</code></a> Nick Hill
   <a href="https://github.com/ulfjack";><code>@​ulfjack</code></a> Ulf Adams</p>
   </blockquote>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/3836caa9d445e2f8d4918767426a4506057f27b9";><code>3836caa</code></a>
 Bump version to 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/731d4ec6172923610a83a3e2f30273eb3f8e8683";><code>731d4ec</code></a>
 Update README etc to reference 1.37.0</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/52a84507a12e546a7fffe656c90b1142cc13532f";><code>52a8450</code></a>
 xds: cache bootstrapInfo in the SslContextProviderFactory to prevent 
rereadin...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/c5fa257cea0a0bc69af7d3d5d4c7f25c034b0cd0";><code>c5fa257</code></a>
 bom: Do not include grpc-binder (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8038";>#8038</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/50903827480448e0f31e25eeae92f276c38b15f8";><code>5090382</code></a>
 xds: Fix validation of HCM filter and Router httpFilter (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8039";>#8039</a>)
 (<a 
href="https://github-redirect.dependabot.com/grpc/grpc-java/issues/8046";>#8046</a>)</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/7590bd148f3274408ddc9db50989f8ab75c6a00e";><code>7590bd1</code></a>
 netty: Add support for OpenJSSE</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/80585a41549aaa9ecc46403a0d40decd9e8d5a5b";><code>80585a4</code></a>
 xds: move the state check logic to delegate and eliminate boilerplate code 
(#...</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/828b03da27aec6b18675f069f9927e7d68aaae68";><code>828b03d</code></a>
 xds: add CsdsService</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/b417b70db1bfb2393c0e0c2cbd527b49bcaf5439";><code>b417b70</code></a>
 xds: add csds.proto (v3) with dependencies, generated code</li>
   <li><a 
href="https://github.com/grpc/grpc-java/commit/ad2b26436ccd64cb394127ebc0cd3323817dd8a3";><code>ad2b264</code></a>
 xds: update (local) configurations atomically for each LDS/RDS resource 
updat...</li>
   <li>Additional commits viewable in <a 
href="https://github.com/grpc/grpc-java/compare/v1.36.1...v1.37.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 merge` will merge this PR after your CI passes on it
   - `@dependabot squash and merge` will squash and merge this PR after your CI 
passes on it
   - `@dependabot cancel merge` will cancel a previously requested merge and 
block automerging
   - `@dependabot reopen` will reopen this PR if it is closed
   - `@dependabot close` will close this PR and stop Dependabot recreating it. 
You can achieve the same result by closing it manually
   
   
   </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.

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


Reply via email to