Skip to content

Conversation

renovate-bot
Copy link
Contributor

@renovate-bot renovate-bot commented Jul 8, 2025

This PR contains the following updates:

Package Change Age Confidence
com.google.api.grpc:proto-google-common-protos 2.59.0 -> 2.61.1 age confidence
com.google.api:gax-grpc 2.68.0 -> 2.70.1 age confidence
com.google.truth:truth 1.4.4 -> 1.4.5 age confidence
io.grpc:grpc-bom 1.73.0 -> 1.75.0 age confidence
com.google.cloud:google-cloud-alloydb-connectors-bom 0.45.0 -> 0.52.0 age confidence
com.google.cloud:google-cloud-alloydb-bom 0.56.0 -> 0.63.0 age confidence
com.google.cloud:google-cloud-shared-dependencies 3.50.0 -> 3.52.1 age confidence
com.google.errorprone:error_prone_annotations (source) 2.39.0 -> 2.41.0 age confidence

Release Notes

googleapis/sdk-platform-java (com.google.api.grpc:proto-google-common-protos)

v2.61.0

Compare Source

Features
  • mtls: Add support for X.509-based mTLS-transport in Java GAX lib (#​3852) (2d02344)
Bug Fixes

v2.60.0

Compare Source

Features
Dependencies

v2.59.2

Compare Source

Bug Fixes
  • update googleapis commit at Thu Jun 12 02:34:24 UTC 2025 (f3a5d87)
  • update googleapis commit at Thu Jun 12 02:34:24 UTC 2025 (#​3833) (f3a5d87)

v2.59.1

Compare Source

Bug Fixes
Dependencies
google/truth (com.google.truth:truth)

v1.4.5: 1.4.5

  • Changed assertions like assertThat(nullMap).isEmpty() to fail with a useful failure message instead of throwing NullPointerException (and similarly for other "bogus" values, such as negative sizes). (da5d6e9)
  • Made Kotlin's isInstanceOf(Int::class.java) (and Java's isInstanceOf(int.class)) a valid way to check for Int/Integer instances. (974ef19)
  • Improved isWithin to pretty-print numbers in its failure messages. (de78553, 07318c2)
  • Improved some assertions that print class names to print simpler names (e.g., Integer instead of java.lang.Integer). (0ba72d6)
  • Changed ExpectFailure to never generate "value of" lines based on bytecode. This slightly simplifies writing new tests with ExpectFailure and prevents future behavior changes in some ExpectFailure tests that already exist. However, it may also require changes to other existing ExpectFailure tests to remove or change any assertions about the "value of" line. (3caa0e8)
  • Our Android minSdkVersion is now 23 (Marshmallow). This follows the minimum of Google's foundational Android libraries, and we expect it to have no practical impact on users. (c85c75c)
  • Changed our GWT/J2CL artifact to omit usages of @NullMarked. This was making all our types non-null in those environments, since we don't yet use @Nullable in the GWT/J2CL artifact. (6392d37)
grpc/grpc-java (io.grpc:grpc-bom)

v1.75.0

Compare Source

Behavior Changes
  • binder: Introduce server pre-authorization (#​12127). grpc-binder clients authorize servers by checking the UID of the sender of the SETUP_TRANSPORT Binder transaction against some SecurityPolicy. But merely binding to an unauthorized server to learn its UID can enable "keep-alive" and "background activity launch" abuse, even if security policy ultimately causes the grpc connection to fail. Pre-authorization mitigates this kind of abuse by resolving addresses and authorizing a candidate server Application's UID before binding to it. Pre-auth is especially important when the server's address is not fixed in advance but discovered by PackageManager lookup.
Bug Fixes
  • core: grpc-timeout should always be positive (#​12201) (6dfa03c). There is a local race between when the deadline is checked before sending the RPC and when the timeout is calculated to put on-the-wire. The code replaced negative timeouts with 0 nanoseconds. gRPC’s PROTOCOL-HTTP2 spec states that timeouts should be positive, so now non-positive values are replaced with 1 nanosecond

  • core: Improved DEADLINE_EXCEEDED message for delayed calls (6ff8eca). Delayed calls are the first calls on a Channel before name resolution has resolved addresses. Previously you could see confusing errors saying the deadline “will be exceeded in” X time. The message tense was simply wrong, and now will be correct: deadline “was exceeded after” X time.

  • xds: PriorityLB now only uses the failOverTimer to start additional priorities, not fail RPCs (c4256ad). You should no longer see “Connection timeout for priority” errors.

Improvements
  • netty: Count sent RST_STREAMs against NettyServerBuilder.maxRstFramesPerWindow() limit (#​12288). This extends the Rapid Reset tool to also cover MadeYouReset. the reset stream count will cause a 420 "Enhance your calm response" to be sent. This depends on Netty 4.1.124 for a bug fix to actually call the encoder by the frame writer.

  • xds: Convert CdsLb to XdsDepManager (297ab05). This is part of gRFC A74 to have atomic xDS config updates. This is an internal change, but does change the error description seen in certain cases, especially DEADLINE_EXCEEDED on a brand-new channel.

  • census: APIs for stats and tracing (#​12050) (9193701). Client channel and server builders with interceptors and factories respectively for stats and tracing.

  • stub: simplify BlockingClientCall infinite blocking (#​12217) (ba0a732). Move deadline computation into overloads with finite timeouts. Blocking calls without timeouts now do not have to read the clock.

  • xds: Do RLS fallback policy eagar start (#​12211) (42e1829). In gRPC-Java, the xDS clusters were lazily subscribed, which meant the fallback target which is returned in the RLS config wasn’t subscribed until a RPC actually falls back to it. The delayed resource subscription process in gRPC Java made it more susceptible to the effects of the INITIAL_RESOURCE_FETCH_TIMEOUT compared to other programming languages. It also had impact beyond the RLS cache expiration case, for example, when the first time the client initialized the channel, we couldn't fallback when the intended target times out, because of the lazy subscription. This change starts the fallback LB policy for the default target at the start of RLS policy instead of only when falling back to the default target, which fixes the above mentioned problems.

  • xds: Aggregate cluster fixes (A75) (#​12186) (7e982e4). The earlier implementation of aggregate clusters concatenated the priorities from the underlying clusters into a single list, so that it could use a single LB policy defined at the aggregate cluster layer to choose a priority from that combined list. However, it turns out that aggregate clusters don't actually define the LB policy in the aggregate cluster; instead, the aggregate cluster uses a special cluster-provided LB policy that first chooses the underlying cluster and then delegates to the LB policy of the underlying cluster. This change implements that.

  • api: set size correctly for sets and maps in handling Metadata values to be exchanged during a call (#​12229) (8021727)

  • xds: xdsClient cache transient error for new watchers (#​12291). When a resource update is NACKed, cache the error and update new watchers that get added with that error instead of making them hang.

  • xds: Avoid PriorityLb re-enabling timer on duplicate CONNECTING (#​12289). If a LB policy gives extraneous updates with state CONNECTING, then it was possible to re-create failOverTimer which would then wait the 10 seconds for the child to finish CONNECTING. We only want to give the child one opportunity after transitioning out of READY/IDLE.

  • xds: Use a different log name for XdsClientImpl and ControlPlaneClient (#​12287). ControlPlaneClient uses "xds-cp-client" now instead of "xds-client" while logging.

Dependencies Changes
  • Upgrade to Netty 4.1.124.Final (#​12286). This implicitly disables NettyAdaptiveCumulator (#​11284), which can have a performance impact. We delayed upgrading Netty to give time to rework the optimization, but we've gone too long already without upgrading which causes problems for vulnerability tracking.

  • bazel: Use jar_jar to avoid xds deps (#​12243) (8f09b96). The //xds and //xds:orca targets now use jar_jar to shade the protobuf generated code. This allows them to use their own private copy of the protos and drop direct Bazel dependencies on cel-spec, grpc, rules_go, com_github_cncf_xds, envoy_api, com_envoyproxy_protoc_gen_validate, and opencensus_proto. This mirrors the shading of protobuf messages done for grpc-xds provided on Maven Central and should simplify dependency management

Documentation
  • Clarify requirements for creating a cross-user Channel. (#​12181). The @SystemApi runtime visibility requirement isn't really new. It has always been implicit in the required INTERACT_ACROSS_USERS permission, which can only be held by system apps in production. Now deprecated BinderChannelBuilder#bindAsUser has always required SDK_INT >= 30. This change just copies that requirement forward to its replacement APIs in AndroidComponentAddress and the TARGET_ANDROID_USER NameResolver.Args.

  • api: Add more Javadoc for NameResolver.Listener2 interface (#​12220) (d352540)

Thanks to

@​benjaminp
@​werkt
@​kilink
@​vimanikag

v1.74.0

Compare Source

Behavior Changes
  • compiler: Default to @generated=omit (f8700a1). This omits javax.annotation.Generated from the generated code and makes the org.apache.tomcat:annotations-api compile-only dependency unnecessary (README and examples changes forthcoming; we delayed those changes until the release landed). You can use the option @generated=javax for the previous behavior, but please also file an issue so we can develop alternatives
  • compiler: generate blocking v2 unary calls that throw StatusException (#​12126) (a16d655). Previously, the new blocking stub API was identical to the older blocking stub for unary RPCs and used the unchecked StatusRuntimeException. However, feedback demonstrated it was confusing to mix that with the checked StatusException in BlockingClientCall. Now the new blocking stub uses StatusException throughout. grpc-java continues to support the old generated code, but the version of protoc-gen-grpc-java will dictate which API you see. If you support multiple generated code versions, you can use the older blocking v1 stub for unary RPCs
Bug Fixes
  • netty: Fix a race that caused RPCs to hang on start when a GOAWAY was received while the RPCs’ headers were being written to the OS (b04c673, 15c7573). This was a very old race, not a recent regression. All streams should now properly fail instead of hanging, although in some cases they may be transparently retried
  • util: OutlierDetection should use nanoTime, not currentTimeMillis (#​12110) (1c43098). Previously, changes in the wall time would impact its accounting
  • xds: Don't allow hostnames in address field in EDS (#​12123) (482dc5c). Only IP addresses were handled properly, and only IP addresses should be handled per gRFC A27
  • xds: In resource handling, call onError() for RDS and EDS NACKs (#​12122) (efe9ccc). Previously the resource was NACKed, but gRPC would continue waiting for the resource until a timeout was reached and claim the control plane didn’t send the resource. Now it will fail quickly with an informative error
  • xds: Implement equals in RingHashConfig (a5eaa66). Previously all configuration refreshes were considered a new config, which had the potential for causing unexpected inefficiency problems. This was noticed by new code for gRFC A74 xDS Config Tears that is not yet enabled, so there are no known problems that this caused
  • LBs should avoid calling LBs after lb.shutdown() (1df2a33). This fixed pick_first and ring_hash behavior that could cause rare and “random” races in parent load balancers like a NullPointerException in ClusterImplLoadBalancer.createSubchannel(), which had a ring_hash child. This is most likely to help xDS, as it heavily uses hierarchical LB policies
Improvements
  • util: Deliver addresses in a random order to shuffle connection creation ordering (f07eb47). Previously, connections were created in-order (but non-blocking), so in a fast network the first address could be more likely to connect first given a "microsecond" headstart. That first connection then receives all the buffered RPCs, which could cause temporary, but repeated, load imbalances of the same backend when all clients receive the same list of addresses in the same order. This has been seen in practice, but it is unclear how often it happens. Shuffling has the potential to improve load distribution of new clients when using round_robin, weighted_round_robin, and least_request, which connect simultaneously to multiple addresses
  • core: Use lazy message formatting in checkState (#​12144) (26bd0ee). This avoids the potential of unnecessarily formatting an exception as a string when a subchannel fails to connect
  • bazel: Migrate java_grpc_library to use DefaultInfo (#​12148) (6f69363). This adds compatibility for --incompatible_disable_target_default_provider_fields
  • binder: Rationalize @​ThreadSafe-ty inside BinderTransport (#​12130) (c206428)
  • binder: Cancel checkAuthorization() request if still pending upon termination (#​12167) (30d40a6)
Dependencies
  • compiler: Upgrade Protobuf C++ to 22.5 (#​11961) (46485c8). This is used by the pre-built protoc-gen-grpc-java plugin on Maven Central. This should have no visible benefit, but gets us closer to upgrading to Protobuf 27 which added edition 2023 support
  • release: Migrate artifacts publishing changed from legacy OSSRH to Central Portal (#​12156) (f99b2aa). We aren’t aware of any visible changes to the results on Maven Central
googleapis/google-cloud-java (com.google.cloud:google-cloud-alloydb-connectors-bom)

v0.52.0: 0.52.0

Compare Source

BigQuery
  • Add samples for managing tables. (#​3361)
  • Batch sample now reflects Go and Python versions (#​3359)
  • Removes old sample (#​3364)
BigTable
  • Bigtable: enable JWT tokens (#​3351)
Compute
  • Add GAPIC Compute java library (#​3100)
Firestore
  • Exposing TransportChannelProvider & CredentialsProvider (#​3320)
Monitoring
  • Bumping monitoring-v3 to GA (#​3365)
Spanner
  • spanner: add support for struct-typed parameters. (#​3287)
Web Security Scanner
  • update websecurityscanner readme (#​3352)
dependencies
  • bump grpc version to 1.12.0 (#​3374)
  • Bumping gax to 1.28.0 (bidi streaming updates) (#​3375)
testing

v0.51.0: 0.51.0

Compare Source

BigQuery

  • Allow deleting partition expiration by setting the value to null

FireStore

  • Return dates as com.google.cloud.Timestamps.

Logging

  • Set tracing information in the appropriate place.
  • Add spanId to LogEntry
  • Add SourceLocation.newBuilder()

Storage

  • Batch requests now honor options.getHost()

Examples

  • New examples for GCS and KMS integration

v0.50.0: 0.50.0

Compare Source

Text-to-Speech
  • Add v1 client
Core
  • Make MetadataConfig.getAttribute() public
  • Add Timestamp.toDate() method
Storage
  • Add port to upload URL
Documentation
  • Update README.md
Misc
  • Update gax-java, api-common dependencies

v0.49.0: 0.49.0

Compare Source

BigQuery
  • Correct ITBigQueryTest
  • Add support for NUMERIC type
  • Add missing query statistics
Documentation
  • Update README.md
Pubsub
  • Add missing region tags
  • Update region tags to standard
  • Declare GA
  • Add the publisher error handler sample.
Spanner
  • Use method getters
Storage
  • Fix integration test
  • Storage kms integration

v0.48.0: 0.48.0

Compare Source

All
  • Move grpc and proto artifacts to google-cloud-java from api-client-staging (second part) (#​3251)
  • Fix integration CI (#​3222), (#​3262)
BigQuery
  • Unbox Boolean in examples (#​3248)
  • Let users contruct TableResult for testing (#​3242)
Spanner
Translate
Pub/Sub
New and regenerated GAPIC clients
  • Add IoT and Web Security Scanner clients (#​3282)
  • Regenerate existing clients for updated APIs (#​3282)
Redis
Misc
  • Post-release cleanup and fixes (specific to recent repository restructure) (#​3290)
  • Adjust documentation creation to new repo structure (#​3274)
  • Fix README API link (#​3273)
  • Add new clients to README.md (#​3266)
  • Versions: fix typos in versions and docs (#​3261)
  • Remove dead assignment (#​3247)

v0.46.0: 0.46.0

Compare Source

dependencies/regeneration
  • bump auth library version (#​3197)
  • Regenerating GAPIC clients, updating deps (#​3208)
BigQuery
  • bigquery: remove QueryParameterValue validation #​3179
  • BigQuery: Standardizes region tags and adds query snippets from java-docs-samples #​3180
  • BigQuery: Add extended statistics to QueryStage. (#​3185)
Bigtable
  • Bigtable: Expose an API to allow users to create their own batches for MutateRows (#​3129)
  • Fixing javadoc (#​3209)
Firestore
  • firestore: use the right compare function for FieldPaths (#​3189)
  • Census tracing integration for Firestore. (#​2729)
  • firestore: fixing bug in QuerySnapshot (#​3195)
  • firestore: allow non-POJO classes to be subclassed for mocking. (#​3176)
  • Java Format PR (#​3200)
  • Updating Watch conformance tests (#​3202)
Spanner
  • spanner: make TransactionManager.close() idempotent (#​3183)
etc
google/error-prone (com.google.errorprone:error_prone_annotations)

v2.41.0: Error Prone 2.41.0

New checks:

  • EffectivelyPrivate: Detect declarations that have public or protected modifiers, but are effectively private

Changes:

  • Skip BooleanLiteral findings if the target type is boxed (#​5134)

Full changelog: google/error-prone@v2.40.0...v2.41.0

v2.40.0: Error Prone 2.40.0

Changes:

Full changelog: google/error-prone@v2.39.0...v2.40.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), 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-bot renovate-bot requested a review from a team as a code owner July 8, 2025 21:55
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 26 times, most recently from e4aa6c0 to 71b8d4f Compare July 15, 2025 16:02
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from cde58ba to 2b9a382 Compare July 24, 2025 18:08
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from dc668d6 to 8180a6e Compare July 31, 2025 03:07
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from c288161 to e94f952 Compare August 8, 2025 22:41
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from 77c1bb4 to 1b1fff7 Compare August 19, 2025 23:34
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from 20bb43d to d20ee85 Compare August 26, 2025 04:36
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch 2 times, most recently from 0947314 to 505c52d Compare September 10, 2025 14:57
@renovate-bot renovate-bot force-pushed the renovate/non-major-dependencies branch from 505c52d to 2175b60 Compare September 12, 2025 07:50
@enocom enocom merged commit 2d8d2f6 into GoogleCloudPlatform:main Sep 12, 2025
15 checks passed
@renovate-bot renovate-bot deleted the renovate/non-major-dependencies branch September 12, 2025 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants