Skip to content

chore(deps): Update java minor and patch - #289

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/java-minor-and-patch
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/java-minor-and-patch

Conversation

@renovate

@renovate renovate Bot commented May 1, 2026 •

Copy link
Copy Markdown
Contributor

Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Type Update Change Age Confidence
gradle (source) patch 8.14.2 → 8.14.6 age confidence
org.testng:testng (source) dependencies minor 7.11.0 → 7.12.0 age confidence
com.google.code.gson:gson dependencies minor 2.13.1 → 2.15.0 age confidence
com.google.protobuf:protobuf-java (source) dependencies minor 4.31.1 → 4.36.2 age confidence
com.google.guava:guava dependencies minor 33.4.8-jre → 33.7.2-jre age confidence
org.slf4j:slf4j-simple (source, changelog) dependencies patch 2.0.17 → 2.0.20 age confidence
org.slf4j:slf4j-api (source, changelog) dependencies patch 2.0.17 → 2.0.20 age confidence
com.google.protobuf:protoc (source) dependencies minor 4.31.1 → 4.36.2 age confidence
com.google.code.gson:gson compile minor 2.13.1 → 2.15.0 age confidence
io.grpc:grpc-stub dependencies minor 1.73.0 → 1.85.1 age confidence
io.grpc:grpc-netty dependencies minor 1.73.0 → 1.85.1 age confidence
io.grpc:grpc-protobuf dependencies minor 1.73.0 → 1.85.1 age confidence
io.grpc:protoc-gen-grpc-java dependencies minor 1.73.0 → 1.85.1 age confidence
org.codehaus.mojo:exec-maven-plugin (source) build minor 3.5.1 → 3.6.4 age confidence
com.gradleup.shadow plugin patch 8.3.6 → 8.3.11 age confidence
org.apache.maven.plugins:maven-compiler-plugin (source) build minor 3.14.0 → 3.16.0 age confidence
com.google.protobuf:protobuf-gradle-plugin dependencies minor 0.9.5 → 0.10.0 age confidence

Release Notes

gradle/gradle (gradle)

v8.14.6: 8.14.6

Compare Source

The Gradle team is excited to announce Gradle 8.14.6.

Here are the highlights of this release:

  • Java 24 support
  • GraalVM Native Image toolchain selection
  • Enhancements to test reporting
  • Build Authoring improvements

Read the Release Notes

We would like to thank the following community members for their contributions to this release of Gradle:
Aurimas,
Ben Bader,
Björn Kautler,
chandre92,
Daniel Hammer,
Danish Nawab,
Florian Dreier,
Ivy Chen,
Jendrik Johannes,
jimmy1995-gu,
Madalin Valceleanu,
Na Minhyeok.

Upgrade instructions

Switch your build to use Gradle 8.14.6 by updating your wrapper:

./gradlew :wrapper --gradle-version=8.14.6 && ./gradlew :wrapper

See the Gradle 8.x upgrade guide to learn about deprecations, breaking changes and other considerations when upgrading.

For Java, Groovy, Kotlin and Android compatibility, see the full compatibility notes.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.

v8.14.5: 8.14.5

Compare Source

The Gradle team is excited to announce Gradle 8.14.5.

Here are the highlights of this release:

  • Java 24 support
  • GraalVM Native Image toolchain selection
  • Enhancements to test reporting
  • Build Authoring improvements

Read the Release Notes

We would like to thank the following community members for their contributions to this release of Gradle:
Aurimas,
Ben Bader,
Björn Kautler,
chandre92,
Daniel Hammer,
Danish Nawab,
Florian Dreier,
Ivy Chen,
Jendrik Johannes,
jimmy1995-gu,
Madalin Valceleanu,
Na Minhyeok.

Upgrade instructions

Switch your build to use Gradle 8.14.5 by updating your wrapper:

./gradlew wrapper --gradle-version=8.14.5 && ./gradlew wrapper

See the Gradle 8.x upgrade guide to learn about deprecations, breaking changes and other considerations when upgrading.

For Java, Groovy, Kotlin and Android compatibility, see the full compatibility notes.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.

v8.14.4: 8.14.4

Compare Source

This is a patch release for 8.14. We recommend using 8.14.4 instead of 8.14.

This release addresses two security vulnerabilities:

It also fixes the following issues:

  • #​34365 [Backport] Gradle doesn't stop forked processes
  • #​35125 [Backport] Precompiled script plugin with @​file annotation loses package and breaks
  • #​35184 [Backport] Different fingerprints in the compile classpath for the same dependency
  • #​35228 [Backport] Fix dependency resolution issues
  • #​35288 [Backport] Include GradleDslBaseScriptModel in 8.x
  • #​36326 [Backport] Improve repository disabling logic
  • #​36396 [Backport] Add partial cgroups v2 support
  • #​36420 [Backport] Improve Java 25 support in Gradle 8.14

Read the Release Notes

Upgrade instructions

Switch your build to use Gradle 8.14.4 by updating your wrapper:

./gradlew wrapper --gradle-version=8.14.4 && ./gradlew wrapper

See the Gradle 8.x upgrade guide to learn about deprecations, breaking changes and other considerations when upgrading.

For Java, Groovy, Kotlin and Android compatibility, see the full compatibility notes.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.

v8.14.3: 8.14.3

Compare Source

The Gradle team is excited to announce Gradle 8.14.3.

This is a patch release for 8.14. We recommend using 8.14.3 instead of 8.14.

Here are the highlights of this release:

  • Java 24 support
  • GraalVM Native Image toolchain selection
  • Enhancements to test reporting
  • Build Authoring improvements

Read the Release Notes

We would like to thank the following community members for their contributions to this release of Gradle:
Aurimas,
Ben Bader,
Björn Kautler,
chandre92,
Daniel Hammer,
Danish Nawab,
Florian Dreier,
Ivy Chen,
Jendrik Johannes,
jimmy1995-gu,
Madalin Valceleanu,
Na Minhyeok.

Upgrade instructions

Switch your build to use Gradle 8.14.3 by updating your wrapper:

./gradlew wrapper --gradle-version=8.14.3 && ./gradlew wrapper

See the Gradle 8.x upgrade guide to learn about deprecations, breaking changes and other considerations when upgrading.

For Java, Groovy, Kotlin and Android compatibility, see the full compatibility notes.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines.
If you're not sure you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.

testng-team/testng (org.testng:testng)

v7.12.0

Compare Source

What's Changed

New Contributors

Full Changelog: testng-team/testng@7.11.0...7.12.0

grpc/grpc-java (io.grpc:grpc-stub)

v1.85.1

What's Changed

v1.85.0

gRPC Java 1.85.0 Release Notes

API Changes
  • netty: Support never-indexed metadata keys (#​12976) (e9a8c2b). High-cardinality metadata values provide little compression benefit and can churn the server's dynamic HPACK table. Adds NettyChannelBuilder.neverIndexMetadataKey() and neverIndexMetadataKeys() so callers can mark selected outbound metadata keys for HPACK's never-indexed literal representation.
  • binder: Add Context-based hasPermissions() to SecurityPolicies and deprecate the PackageManager version.
Behavior Changes
  • xds: allow wildcard listener port in LDS (5fda0c7). It now accepts a port of 0 in the LDS listener address as matching any port.
     
Bug Fixes
  •  xds: Make RawMessageClientInterceptor conditional on ext_proc flags (#​13015) (e58489f). Fixes a bug that caused empty payloads on retry attempts for regular xDS channels.
  • core: Reset configSelector on realChannel while entering IDLE state (#​12832) (fc43144). Because of a bug in the config selector, when ManagedChannel entered IDLE state due to resource deletion on the xDS control plane, the channel stayed stuck in IDLE state even after the resource came back online and a new rpc was executed.
  • core: Gracefully handle GOAWAY frames with unrecognized error codes (#​13035) (b3ae801). When a server or proxy sent a GOAWAY with an unrecognized HTTP/2 error code, such as 70007 from Apache httpd, Netty transport clients logged NullPointerException: Http2Error cannot be null for GOAWAY and RPCs could hang until their deadline. Such codes are now treated as INTERNAL_ERROR, so the transport shuts down cleanly.
Improvements
  • netty: make hostname verification configurable (#​13002) (2858db2). This configures HTTPS endpoint identification in GrpcSslContexts and updates ClientTlsHandler to preserve an explicit empty-string opt-out. A null algorithm still falls back to HTTPS, retaining hostname verification for custom contexts that do not select an algorithm.
  • bazel: Adopt proto_lang_toolchain for java_grpc_library() (#​12994) (c9ee3f8). java_grpc_library and java_lite_grpc_library now invoke protoc through Protobuf's proto_lang_toolchain instead of always using @com_google_protobuf//:protoc. They now use the same protoc and protoc options as java_proto_library.
New Features
  • api: Implement custom events framework in gRPC-Java server (#​12980) (dd00881). This adds triggerEvent/onEvent APIs to ServerCall and ServerCall.Listener. This allows events to be triggered on the ServerCall and be delivered as a listener callback.
Dependencies
  • Upgrade protobuf for bazel from 36.0 to 36.0.bcr.1 (#​13013) (9799887)
  • netty: Upgrade Netty to 4.2.17 (#​13036) (61b910b). netty-tcnative remains at 2.0.81.
Documentation

 

Thanks to

@​kkalin68

@​petedmarsh

v1.84.3

Bug Fixes
  • xDS: fix DistributorWatcher thread safety in CertificateProvider- #​13087

v1.84.2

v1.84.1

  • core: Gracefully handle GOAWAY frames with unrecognized error codes (#​13043). Treats unrecognized HTTP/2 GOAWAY error codes as INTERNAL_ERROR instead of throwing NullPointerException.

v1.84.0

In this release we drop support for Android API level 23 or lower (Marshmallow or earlier), following Google Play Service’s now requiring a minimum of API level 24 (Android 7.0 Nougat).

API Changes
Behavior Changes
  • core: update SPIFFE certificate extraction to comply with X509-SVID spec (#​12961) (96807d8)
    Ignore all but the first certificate if the x5c JWK parameter contains multiple values.
    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.
Bug Fixes
  • core: reference-count shared transport factory for OOB channels (#​12985) (72c6e5f)
    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.
  • xds: Fix shutdownNow() becoming a no-op after shutdown() (#​12982) (3cb7007)
  • xds: Add Http11ProxyUpstreamTransport to MessagePrinter (#​12971) (d49a589)
  • core, xds: Append child channel configurators instead of overwriting (#​12921) (296c007) Chains multiple childChannelConfigurator() calls instead of overwriting them in ManagedChannelImplBuilder and XdsServerBuilder, ensuring all configurators are preserved and executed when child channels are created.
  • rls: Implement stale_header_data caching and propagation in RLS (#​12972) (7843bd4) 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.
Improvements
  • netty: Fix client-initiated stream limit bypass in NettyServerHandler (#​12933) (56205f9) Configure max active streams limit directly upon DefaultHttp2Connection initialization. Because NettyServerHandler instantiates DefaultHttp2Connection directly rather than using Netty's AbstractHttp2ConnectionHandlerBuilder, it missed Netty's built-in CVE-2026-47244 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.
  • servlet: AsyncServletOutputStreamWriter detect and handle write when not ready (#​12732) (46f3080) 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.
  • okhttp: Move connection window update before stream termination logic (#​12990) (0f859c3) 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
  • core: Coalesce Contiguous Small Buffers for ReadableBuffer to prevent OOM (#​12924) (0585d48)
  • s2a: Default to Post Quantum Cryptography key exchange group (#​12894) (bc01994)
  • binder: Let servers load their SecurityPolicy asynchronously (9fdef96)
  • binder: normalize failed auth future status message (9ffa1e1)
Dependencies
  • compiler: Update maximum supported edition to EDITION_2026 (#​12945) (6ccd065). 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.
  • api: Bump Context to JDK 8 (5d0a012)
  • netty: Upgrade Netty to 4.2.16 and netty-tcnative to 2.0.81 (#​12969) (1bc2f5a)
Documentation
  • api: Better explain the executors and how to configure them (ee08f53)
New Features
  • core, opentelemetry: Implement LB Delay Observability (Proposal A121) (#​12807) (073fd5e) 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 gRFC A121. 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 ("Attempt Delay") via the OpenTelemetry plugin.
Thanks to

@​Zhengcy05
@​carl-mastrangelo
@​themechbro
@​JasonLunn
@​martinbaillie
@​eado
@​TimurRakhmatullin86

v1.83.1

gRPC Java 1.83.1 Release Notes

Improvements
  • netty: Fix client-initiated stream limit bypass in NettyServerHandler (#​12942). Enforces the limit proactively at startup without waiting for SETTINGS_ACK
  • core: Coalesce Contiguous Small Buffers for ReadableBuffer (#​12944)

v1.83.0

gRPC Java 1.83.0 Release Notes

API Changes
  • api: Turn on RFC 3986 parsing by default and update javadoc. (4456721)
  • api: Add Grpc.newChannelBuilder accepting NameResolverRegistry (#​11901) (2b86f8f). This allows users to explicitly provide a NameResolverRegistry during channel creation rather than relying on the global registry, offering better isolation and control over name resolution per-channel.
Behavior Changes
  • okhttp: enable TLS 1.3 for servers on Android (3018ce3). v1.82.0 enabled TLS 1.3 for clients; this does the same for servers
  • xds: enable orca to lrs propagation by default (#​12836) (1e85674) Enables xDS configuration to control which fields get propagated from ORCA backend metric reports to LRS load reports as per gRFC A85
  • xds: Use leaf cluster name for backend service label in metrics, instead of aggregate cluster name (#​12882) (c8079ee). This only has an effect when using aggregate clusters
  • xds: Hold parsed service config in CdsUpdate (3db3235). Previously, modifications to LoadBalancerRegistry could cause failures in the LB tree
  • xds: Revert "xds: reuse connections to the control plane across channels" added in 1.81.0 (d49c0b1). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript "DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs" or "DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs"
Improvements
  • api: Move attributes to the end of ResolvedAddresses.toString(), for better legibility (103bd4b)
  • core: normalize service config number values (#​12826) (663c505) This updates default service config validation to accept numeric values represented as Number, not only Double. Common JSON parsers may deserialize integer-looking JSON values such as maxAttempts: 4 and backoffMultiplier: 2 as Integer, which previously caused defaultServiceConfig() to fail with IllegalArgumentException. The values are normalized to Double when copied into the validated service config, preserving the existing internal representation expected by the service config parsing code.
  • core: DEADLINE_EXCEEDED before initial name resolution completes will now mention “name_resolver” in the error description (56d2b25). Previously there was not a hint as to what gRPC was delayed on when the deadline was exceeded.
  • netty: Reduce TcpMetrics log from INFO to FINE (4ec83df). This removes unnecessary log noise
  • core: Enable child channel plugins (#​12578) (89aef90). This introduces the ChildChannelConfigurer API to allow intercepting and customizing the configuration (such as injecting interceptors or modifying credentials) of child channels created dynamically by load balancers.
Dependencies
  • Upgrade to Netty 4.2.15 (66c6ab1). If you need Netty 4.1 support, please file an issue
  • Upgrade codegen plugin to C++ Protobuf 35.1 (#​12876) (c886f0a)
  • Upgrade various dependencies (064272c):
    • gson to 2.14.0
    • guava to 33.6.0
    • cel-java to 0.13.0
    • protobuf-java to 3.25.9
    • error-prone-annotations to 2.50.0
    • opentelemetry to 1.63.0
Documentation
  • Document how to build with Bazel and introduce bazel support for building android and binder (#​12811) (f94574e)
Thanks to

tian__mi__mi@
codingkiddo@
Zhengcy05@​

v1.82.4

gRPC Java 1.82.4 Release Notes

Improvements
  • netty: Fix client-initiated stream limit bypass in NettyServerHandler (#​12941). Enforces the limit proactively at startup without waiting for SETTINGS_ACK
  • core: Coalesce Contiguous Small Buffers for ReadableBuffer (#​12943)

v1.82.3

gRPC Java 1.82.3 Release Notes

The fixes that were supposed to go in this release were not included in the patch by mistake. Use 1.82.4 instead.

v1.82.2

  • Revert "xds: reuse connections to the control plane across channels" added in 1.81.0 (#​12886). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript "DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs" or "DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs"

v1.82.1

  • protoc-gen-grpc-java: Fix missing osx-x86_64 binary (#​12878). This fixes a regression in v1.82.0

v1.82.0

This release drops support for Bazel 7. It may still run, but we are no longer testing it. We are testing Bazel 8 and 9.

We are anticipating requiring Netty 4.2 in the next release. Please file an issue if you still need Netty 4.1 support.

Behavior Changes
  • xds: Disable Priority LB child policy retention cache (#​12806). Previously, when a priority became inactive, its associated child load balancer was kept in a deactivated state for potential reuse. Now, inactive child balancers are immediately torn down and removed.
  • xds: skip DiscoveryRequest for unsubscribed types on stream ready (#​12782). When the bootstrap declares more than one xDS server (e.g. a default server for LDS/CDS plus an authority-specific EDS-only server), grpc-java was sending CDS/LDS DiscoveryRequests to the EDS-only server too. That server replies UNIMPLEMENTED, which tears down the stream and EDS data never arrives. This fix makes it skip DiscoveryRequests for resource types we don't actually subscribe to on a given server.
Improvements
  • Remove JSR-305 @ThreadSafe annotation and replace with JavaDoc (#​12762). Removes JSR-305 annotations but instead of replacing it with ErrorProne's ThreadSafe, sticks to adding a JavaDoc comment. This is done only in public non-final classes and interfaces. This allows Java applications that have moved away from javax to compile and avoids a bug in Immutables and Lombok (and possibly other annotation processors) from failing when JSR-305 is not present.
  • core: Reduce per-stream idle memory on the server by 0.5 KB (b38df6c). The main improvement here is not retaining the request Metadata for the life of the RPC. That means RPCs with larger request Metadata would see a larger benefit.
  • core: Clarify missing content-type on HTTP error responses (#​12720). Adjusts the diagnostic for the missing rather than invalid content-type, in the Status description.
  • core: throw IOException when ProxySelector returns null or empty list (#​12793). ProxySelector.select(URI) is required to return a non-null, non-empty list. Some implementations violate this, which previously caused an opaque crash in ProxyDetectorImpl. Now it detects this case explicitly and fails gracefully, naming the offending ProxySelector class to help with debugging.
  • okhttp: enable TLS 1.3 by default for Android clients, retain TLS 1.2-only for desktop JVM (f430131)
  • xds: Reduce per-endpoint memory from CDS LB (cc0d1a8). This is most noticeable when there are many endpoints returned by EDS, but the LB policy only uses a few of them, like pick_first.
  • xds: pre-parse custom metric names in WRR load balancer (#​12773) (324fce7). This reduces the per-RPC overhead of the gRFC A114 support added in v1.81.0
  • xds: Propagate status cause through XdsDepManager (13b4b97). This preserves more information for failures communicating with the control plane.
  • binder: Give clear error when message is larger than parcel (d92ca44)
Bug Fixes
  • xds: Trust Manager fix for certain scenarios where SAN validation shouldn't use the SNI sent (#​12775) (bb153a8).
  • core: Cancel DelayedClientCall when application listener throws (#​12761). Align DelayedClientCall.DelayedListener with ClientCallImpl's existing behavior for listener exceptions. When the application listener throws from onHeaders/onMessage/onReady, catch the Throwable, cancel the call with CANCELLED (cause = the throwable), and swallow subsequent callbacks. Previously, a throw from the application listener escaped to the callExecutor's uncaught-exception handler. The real call was not cancelled and the transport kept delivering callbacks to an already broken listener
  • core,opentelemetry: Fix server metric labels on early close (#​12774). Addresses the server-side OpenTelemetry metric labeling bug where a generated method can be recorded as grpc.method="other" if streamClosed() happens before serverCallStarted().
  • core: Fix pick_first NPE with GRPC_EXPERIMENTAL_ENABLE_NEW_PICK_FIRST=true when accepting resolved addresses and in CONNECTING state (#​12814). It makes sure that whenever PickFirstLeafLoadBalancer transitions into CONNECTING the current address in the addressIndex has a corresponding subchannel. This prevents an NPE in acceptResolvedAddresses in some situations.
  • okhttp: HPACK should fail on varint overflow (ec10992). This should have no visible impact in normal use. It mostly just makes it easier to debug broken implementations
  • xds: When using the file watcher certificate provider, reload cert/key even if only one of them changes (f4125c5)
  • compiler: Avoid compile error on weird proto file names (f021bef)
New Features
  • googleapis: support ?force-xds query parameter in the google-c2p resolver (#​12760) (86fa860). This disables environment checks and uses xDS unconditionally. Please note that this feature has not yet seen comprehensive testing.
Dependencies
  • Upgrade Netty to 4.1.133 (ada087b)
  • bazel: Upgrade googleapis proto repo to commit 1dbb1a1 (ec0a9c9). This fixed a rules_go incompatibility issue with Bazel 9.1. But it also greatly reduced the overall transitive dependencies, as the C++ grpc repo is no longer a dependency
  • bazel: Upgrade workflows to Bazel 8 (039ad77) add Bazel 9.1.0 to our CI matrix (17be0d3)
  • protoc-gen-grpc-java: Linux binaries are now built with Ubuntu 20.04 instead of 18.04 (8802dc3, da98b04)
Thanks to

@​becomeStar
@​bengtsson1-flir
@​jnowjack-lucidchart
@​Kainsin
@​kenkangxgwe
@​mfperminov
@​paulmurhy123
@​schiemon
@​therepanic

v1.81.1

  • Revert "xds: reuse connections to the control plane across channels" added in 1.81.0 (#​12887). If using xds heavily with many targets, then MAX_CONCURRENT_STREAMS to the control plane could be exceeded. This then prevents loading resources for new targets, which causes those channels to hang on name resolution. RPCs would see the nondescript "DEADLINE_EXCEEDED: Deadline Context was exceeded after Xs" or "DEADLINE_EXCEEDED: Deadline CallOptions was exceeded after Xs"

v1.81.0

In this release we drop support for Android API level 22 or lower (Lollipop or earlier), following Google Play Service’s discontinued updates for Lollipop (API levels 21 & 22) and now requires a minimum of API level 23 (Android 6.0 Marshmallow).

API Changes

  • api: Deprecate LoadBalancer.handleResolvedAddresses(). Developers maintaining custom LoadBalancer implementations should transition to using LoadBalancer.acceptResolvedAddresses(). Unlike the deprecated method, acceptResolvedAddresses() returns a Status object, allowing the load balancer to explicitly report success or reject the update if the provided addresses or configuration are invalid. (#​11623)

Behavior Changes

  • core: Enable dns "caching" on Android for 30 seconds to reduce CPU impact of a refresh loop with an LB policy (0675f70). DnsNameResolver ignores re-resolution requests on OpenJDK-like platforms if it has been too soon since the last DNS query because InetAddress.getAllByName() has a cache with a fixed entry lifetime, but this logic was disabled for Android which does not have that style of cache. Android’s cache uses the result TTL, which will rarely be less than 30 seconds. This change would probably be most noticeable when 1) changing to a different network (e.g., from wifi to mobile), 2) the server has different addresses for different networks, and 3) the app is not using AndroidChannelBuilder with an android.context.Context. For reference, it seems Chrome caches for 1 minute
  • xds: reuse connections to the control plane across channels (e39c38b). Previously each channel using the xds name resolver would create its own channel to communicate with the control plane. Now they share control plane channels, while still having separate RPCs

Bug Fixes

  • opentelemetry: Fix baggage propagation, the baggage propagation for opentelemetry introduced in #​12389 was broken. The context is decided once and used for all recording for the call, thus guaranteeing all record()s have consistent information.
  • core: Address a race condition where ManagedChannelOrphanWrapper could incorrectly log a "not shutdown properly" warning during garbage collection when using directExecutor(). (#​12705) (d459338)
  • xds: Fix xDS HTTP CONNECT's transport socket name bug which is now corrected to use typeUrl. (#​12740) (eac9fe9)
  • xds: Fix an issue where subchannel metrics were dropping their association with the backend_service. This ensures xDS load balancing metrics are reported accurately. (#​12735)

New Features

  • netty: Add tcp metrics, by implementing a few of the metrics defined in A80.
  • api: Add a CallOption for a custom label on per-RPC metrics (0e39b29). This CallOption is copied by grpc-opentelemetry to the grpc.client.call.custom label as defined by gRFC A108. See also the gRPC OpenTelemetry Metrics guide (update in-progress)
  • xds: Add support for Weighted Round Robin (WRR) load balancing driven by custom backend metrics, implementing the behavior defined in gRFC A114. (#​12645)
  • utils: Update AdvancedTlsX509KeyManager so that developers can now preserve and use key aliases when dynamically reloading TLS certificates. (#​12686)

Documentation

  • Update the "Outgoing Flow Control" section in the Manual Flow Control example to say onNext() does not block, but rather queues the messages in memory and advises developers to use CallStreamObserver.isReady() to prevent this memory exhaustion (#​12700) (a3a9ffc) (#​12726) (65ae2ef)
  • examples: Clean up Health example, and document need for grpc-services (3ed732f)

Dependencies

  • Upgrade Dependencies (#​12719) (16e17ab). Google-auth-library: 1.42.1, animal-sniffer: 1.27, assertj-core:3.27.7, error_prone_annotations:2.48.0, proto-google-common-protos:2.64.1, google-cloud-logging:3.23.10, jetty-http2-server:12.1.7, jetty-ee10-servlet:12.1.7, lincheck:3.4, opentelemetry-api:1.60.1, opentelemetry-exporter-prometheus:1.60.1-alpha, opentelemetry-gcp-resources:1.54.0-alpha, opentelemetry-sdk-extension-autoconfigure:1.60.1, opentelemetry-sdk-testing:1.60.1, robolectric:4.16.1, tomcat-embed-core:10.1.52, tomcat-embed-core9: 9.0.115,
  • Upgrade Netty to 4.1.132 and netty-tcnative to 2.0.75 (1528f80)

Thanks to

v1.80.0

Compare Source

API Changes

  • core: Added PickResult.copyWithSubchannel() and PickResult.copyWithStreamTracerFactory() to simplify updating PickResult while preserving metadata. Load balancing policies should now ensure ForwardingSubchannel decorators are unwrapped before being returned in a pick result. (#​12658) (eae16b2)

Bug Fixes

  • core: Fixed the retry backoff jitter range to [0.8, 1.2] to align with the gRPC A6 specification. Retries will now occur more consistently around the calculated backoff interval. (#​12639) (024fdd0)
    core: Fixed a race condition in RetriableStream where inFlightSubStreams counting could become inconsistent during concurrent retry and deadline events. This ensures that client calls (such as blockingUnaryCall) do not hang indefinitely and correctly receive a close signal. (#​12649) (73abb48)

Improvements

  • api: Trigger R8's ServiceLoader optimization to reduce necessary configuration when using R8 Full Mode (470219f). This allows g

[!IMPORTANT]
✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 12:00 AM and 03:59 AM, on day 1 of the month (* 0-3 1 * *)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot requested a review from a team as a code owner May 1, 2026 01:08
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 2 times, most recently from fa43cc1 to 81e2de1 Compare May 10, 2026 13:37
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 2 times, most recently from ac2e06f to af2205e Compare May 15, 2026 21:57
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from af2205e to 57a07c0 Compare May 22, 2026 23:11
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 57a07c0 to 7c4e889 Compare May 31, 2026 10:05
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 2 times, most recently from 1b8ac1e to fddc730 Compare June 14, 2026 21:47
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from fddc730 to 2b10757 Compare June 26, 2026 21:32
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 2b10757 to 2834cfd Compare July 12, 2026 22:43
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 2834cfd to e8f921d Compare July 25, 2026 10:03
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from e8f921d to 874d7b0 Compare August 2, 2026 11:00
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 3 times, most recently from 390a771 to 78404d1 Compare August 23, 2026 19:02
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 4 times, most recently from 0b86194 to 803d471 Compare September 7, 2026 10:41
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 803d471 to 528a49e Compare September 14, 2026 21:31
@coderabbitai

coderabbitai Bot commented Sep 14, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: e99e4c0e-5f7e-4ee6-a2cd-cc7609622985

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: cda790d5-9573-4412-b2d6-20fe664a5d64

📥 Commits

Reviewing files that changed from the base of the PR and between 7936a06 and 998723a.

📒 Files selected for processing (9)
  • build.gradle
  • gradle/wrapper/gradle-wrapper.properties
  • samples/DgraphJavaSample/build.gradle
  • samples/DgraphJavaSample/gradle/wrapper/gradle-wrapper.properties
  • samples/DgraphJavaSampleDeadlineInterceptors/build.gradle
  • samples/DgraphJavaSampleDeadlineInterceptors/gradle/wrapper/gradle-wrapper.properties
  • samples/DgraphJavaSampleWithDeadlineAfter/build.gradle
  • samples/DgraphJavaSampleWithDeadlineAfter/gradle/wrapper/gradle-wrapper.properties
  • samples/concurrent-modification/pom.xml

Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review.

Walkthrough

The pull request updates Gradle and Maven tooling, protobuf and gRPC versions, shared Java dependencies, and Gson versions across the main project and sample projects.

Changes: Build and dependency upgrades

Layer / File(s) Summary
Main Gradle tooling and dependencies
build.gradle, gradle/wrapper/gradle-wrapper.properties
Updates Gradle plugins, the Gradle wrapper, gRPC, protobuf, SLF4J, Guava, Gson, and TestNG.
Gradle sample project updates
samples/DgraphJavaSample/..., samples/DgraphJavaSampleDeadlineInterceptors/..., samples/DgraphJavaSampleWithDeadlineAfter/...
Updates Gson to 2.14.0 and the Gradle wrappers to 8.14.5.
Maven sample project updates
samples/concurrent-modification/pom.xml
Updates the Maven Compiler Plugin, Exec Maven Plugin, and Gson.

Priority: Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other

Suggested reviewers: mlwelles

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies a dependency update and matches the pull request's primary purpose of updating Java build and dependency versions.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches: 💡 1
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
🛠️ Fix failing CI checks: 💡
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 2 times, most recently from 998723a to 36a78bc Compare September 25, 2026 20:18
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 36a78bc to a8309b6 Compare October 2, 2026 16:47
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 4 times, most recently from 314458f to 95325d5 Compare October 16, 2026 15:34
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch 2 times, most recently from cfc69b9 to 78adf5c Compare October 23, 2026 08:14
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from 78adf5c to ca88253 Compare October 26, 2026 18:53
@renovate
renovate Bot force-pushed the renovate/java-minor-and-patch branch from ca88253 to 0dcd302 Compare October 27, 2026 05:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant