Skip to content
Merged
Show file tree
Hide file tree
Changes from 28 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
51effdd
deps: Bump grpc-java to v1.76.0
lqiu96 Oct 15, 2025
d8fb3ce
Merge branch 'main' into upgrade-grpc-java
lqiu96 Oct 16, 2025
e7a9b3a
deps: update google auth library dependencies to v1.40.0 (#3945)
renovate-bot Oct 16, 2025
d879011
chore: Upper bound file deps change has chore type (#3949)
lqiu96 Oct 16, 2025
0aead11
chore: Update dependencies.properties and cloudbuild docker files
lqiu96 Oct 16, 2025
d1ead1f
Merge branch 'main' into upgrade-grpc-java
lqiu96 Oct 16, 2025
01d3b8b
chore: generate libraries at Thu Oct 16 15:45:27 UTC 2025
cloud-java-bot Oct 16, 2025
cb6ffdc
chore: Resolve bazel issue
lqiu96 Oct 16, 2025
e7a59b3
Merge branch 'main' into upgrade-grpc-java
lqiu96 Oct 27, 2025
e80c3aa
chore: Update config for constructor access for MpscUnpaddedArrayQueue
lqiu96 Oct 28, 2025
8e3d904
chore: Update config for constructor access for MpscUnpaddedArrayQueue
lqiu96 Oct 28, 2025
9dbadae
chore: Remove netty graalvm configs
lqiu96 Oct 29, 2025
cf8d479
chore: Register MpscUnpaddedArrayQueue's constructors
lqiu96 Oct 29, 2025
e99a52d
chore: Register all super class constructors
lqiu96 Oct 29, 2025
7e9a4e1
chore: Fix lint issues
lqiu96 Oct 29, 2025
c069bcd
chore: Add class to be initialized at runtime
lqiu96 Oct 29, 2025
6f788c0
chore: Add PlatformDependent class to the runtime declaration
lqiu96 Oct 30, 2025
9954a2f
chore: Register PlatformDependent class
lqiu96 Oct 30, 2025
524f90e
chore: Add platform dependenent for runtime
lqiu96 Oct 30, 2025
e317c38
chore: Add explicit configuraitons for classes
lqiu96 Oct 30, 2025
2eee060
chore: Add missing slash
lqiu96 Oct 30, 2025
5ca594e
chore: Try multiple args in native-image.properties file
lqiu96 Oct 30, 2025
b76820d
chore: Add the unpadded versions to be registered for unsafe access
lqiu96 Oct 30, 2025
50b1690
chore: Add the unpadded versions to be registered for unsafe access
lqiu96 Oct 30, 2025
e96f5e1
chore: Add the unpadded versions to be registered for unsafe access
lqiu96 Oct 30, 2025
ba207e7
chore: Use the correct unpadded package
lqiu96 Oct 30, 2025
bca799b
chore: Fix lint issues
lqiu96 Oct 30, 2025
8bb82fa
chore: Update the hermetic build ITs to use generator v2.63.0
lqiu96 Oct 30, 2025
4756e8b
chore: Update WORKSPACE file with comments about new jar_jar changes
lqiu96 Oct 30, 2025
e989297
chore: Fix comments in WORKSPACE file
lqiu96 Oct 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,10 @@ steps:
- |
mvn dependency:copy \
-B -ntp \
-Dartifact=com.google.api:gapic-generator-java:2.55.1 \
-Dartifact=com.google.api:gapic-generator-java:2.63.0 \
-DoutputDirectory=/workspace
cd /workspace
mv gapic-generator-java-2.55.1.jar gapic-generator-java.jar
mv gapic-generator-java-2.63.0.jar gapic-generator-java.jar
id: prepare-generator-jar
waitFor: [ "-" ]

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ FROM docker.io/library/python:3.13.2-slim@sha256:6b3223eb4d93718828223966ad31690

ARG OWLBOT_CLI_COMMITTISH=3a68a9c0de318784b3aefadcc502a6521b3f1bc5
ARG PROTOC_VERSION=25.8
ARG GRPC_VERSION=1.71.0
ARG GRPC_VERSION=1.76.0
ENV HOME=/home
ENV OS_ARCHITECTURE="linux-x86_64"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ FROM us-docker.pkg.dev/artifact-foundry-prod/docker-3p-trusted/python@sha256:afc

ARG OWLBOT_CLI_COMMITTISH=3a68a9c0de318784b3aefadcc502a6521b3f1bc5
ARG PROTOC_VERSION=25.8
ARG GRPC_VERSION=1.71.0
ARG GRPC_VERSION=1.76.0
ENV HOME=/home
ENV OS_ARCHITECTURE="linux-x86_64"

Expand Down
11 changes: 9 additions & 2 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -97,9 +97,16 @@ load("@io_grpc_grpc_java//:repositories.bzl", "grpc_java_repositories")

grpc_java_repositories()

load("@envoy_api//bazel:repositories.bzl", "api_dependencies")
load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: would it make sense to add a quick explainer on how grpc needs this and maybe reference grpc/grpc-java#12243?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a few comments above about the changes

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the WORKSPACE file in googleapis needs this change as well, can we follow up on that once this change is released?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes! That is the plan!


api_dependencies()
git_repository(
name = "bazel_jar_jar",
commit = "4e7bf26da8bc8c955578fd8c8a2c763757d344df", # Latest commit SHA as of 2023/10/31
remote = "https://github.com/bazeltools/bazel_jar_jar.git",
)

load("@bazel_jar_jar//:jar_jar.bzl", "jar_jar_repositories")
jar_jar_repositories()

_disco_to_proto3_converter_commit = "ce8d8732120cdfb5bf4847c3238b5be8acde87e3"

Expand Down
2 changes: 1 addition & 1 deletion gapic-generator-java-pom-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<!-- External dependencies, especially gRPC and Protobuf version, should be
consistent across modules in this repository -->
<javax.annotation-api.version>1.3.2</javax.annotation-api.version>
<grpc.version>1.71.0</grpc.version>
<grpc.version>1.76.0</grpc.version>
<google.auth.version>1.40.0</google.auth.version>
<google.http-client.version>2.0.2</google.http-client.version>
<gson.version>2.12.1</gson.version>
Expand Down
2 changes: 1 addition & 1 deletion gax-java/dependencies.properties
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ version.gax_httpjson=2.71.1-SNAPSHOT

version.com_google_protobuf=3.25.8
version.google_java_format=1.15.0
version.io_grpc=1.71.0
version.io_grpc=1.76.0

# Maven artifacts.
# Note, the actual name of each property matters (bazel build scripts depend on it).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,21 @@ private static void loadGrpcNettyClasses(BeforeAnalysisAccess access) {
access,
NETTY_SHADED_PACKAGE + "org.jctools.queues.MpscArrayQueueConsumerIndexField",
"consumerIndex");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.MpscUnpaddedArrayQueueProducerIndexField",
"producerIndex");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.MpscUnpaddedArrayQueueProducerLimitField",
"producerLimit");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.MpscUnpaddedArrayQueueConsumerIndexField",
"consumerIndex");
Comment on lines +151 to +165
Copy link
Member Author

@lqiu96 lqiu96 Oct 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are essentially copies of the padded versions of above Mpsc classes. I think it's possible just to replace the padded above since new version of netty shaded within gRPC doesn't call the padded variant anymore.

I have kept both padded and unpadded for now as I don't know the impact if I just replace it. I don't think there is any harm is "overregistering" for GraalVM but can remove if there is.

registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE + "org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
Expand All @@ -160,6 +175,21 @@ private static void loadGrpcNettyClasses(BeforeAnalysisAccess access) {
access,
NETTY_SHADED_PACKAGE + "org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
"consumerIndex");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.BaseMpscLinkedUnpaddedArrayQueueProducerFields",
"producerIndex");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.BaseMpscLinkedUnpaddedArrayQueueColdProducerFields",
"producerLimit");
registerForUnsafeFieldAccess(
access,
NETTY_SHADED_PACKAGE
+ "org.jctools.queues.unpadded.BaseMpscLinkedUnpaddedArrayQueueConsumerFields",
"consumerIndex");
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,6 @@
* [Location.metadata][google.cloud.location.Location.metadata] field.
* </pre>
*/
@javax.annotation.Generated(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think everything here comes strictly from grpc-gen, right? Otherwise I wonder if some postprocessing step stopped adding this annotation.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is from grpc gen code. grpc/grpc-java@f8700a1

value = "by gRPC proto compiler",
comments = "Source: google/cloud/location/locations.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class LocationsGrpc {

Expand Down Expand Up @@ -315,8 +312,8 @@ protected LocationsBlockingV2Stub build(
* </pre>
*/
public com.google.cloud.location.ListLocationsResponse listLocations(
com.google.cloud.location.ListLocationsRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.cloud.location.ListLocationsRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getListLocationsMethod(), getCallOptions(), request);
}

Expand All @@ -328,8 +325,8 @@ public com.google.cloud.location.ListLocationsResponse listLocations(
* </pre>
*/
public com.google.cloud.location.Location getLocation(
com.google.cloud.location.GetLocationRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.cloud.location.GetLocationRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getGetLocationMethod(), getCallOptions(), request);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,6 @@
* developers can have a consistent client experience.
* </pre>
*/
@javax.annotation.Generated(
value = "by gRPC proto compiler",
comments = "Source: google/longrunning/operations.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class OperationsGrpc {

Expand Down Expand Up @@ -602,8 +599,8 @@ protected OperationsBlockingV2Stub build(
* </pre>
*/
public com.google.longrunning.ListOperationsResponse listOperations(
com.google.longrunning.ListOperationsRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.longrunning.ListOperationsRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getListOperationsMethod(), getCallOptions(), request);
}

Expand All @@ -617,8 +614,8 @@ public com.google.longrunning.ListOperationsResponse listOperations(
* </pre>
*/
public com.google.longrunning.Operation getOperation(
com.google.longrunning.GetOperationRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.longrunning.GetOperationRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getGetOperationMethod(), getCallOptions(), request);
}

Expand All @@ -633,8 +630,8 @@ public com.google.longrunning.Operation getOperation(
* </pre>
*/
public com.google.protobuf.Empty deleteOperation(
com.google.longrunning.DeleteOperationRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.longrunning.DeleteOperationRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getDeleteOperationMethod(), getCallOptions(), request);
}

Expand All @@ -656,8 +653,8 @@ public com.google.protobuf.Empty deleteOperation(
* </pre>
*/
public com.google.protobuf.Empty cancelOperation(
com.google.longrunning.CancelOperationRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.longrunning.CancelOperationRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getCancelOperationMethod(), getCallOptions(), request);
}

Expand All @@ -677,8 +674,8 @@ public com.google.protobuf.Empty cancelOperation(
* </pre>
*/
public com.google.longrunning.Operation waitOperation(
com.google.longrunning.WaitOperationRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.longrunning.WaitOperationRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getWaitOperationMethod(), getCallOptions(), request);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,6 @@
* attached.
* </pre>
*/
@javax.annotation.Generated(
value = "by gRPC proto compiler",
comments = "Source: google/iam/v1/iam_policy.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class IAMPolicyGrpc {

Expand Down Expand Up @@ -473,8 +470,9 @@ protected IAMPolicyBlockingV2Stub build(
* Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.
* </pre>
*/
public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request)
throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getSetIamPolicyMethod(), getCallOptions(), request);
}

Expand All @@ -487,8 +485,9 @@ public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyReque
* set.
* </pre>
*/
public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request)
throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getGetIamPolicyMethod(), getCallOptions(), request);
}

Expand All @@ -505,8 +504,8 @@ public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyReque
* </pre>
*/
public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(
com.google.iam.v1.TestIamPermissionsRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v1.TestIamPermissionsRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getTestIamPermissionsMethod(), getCallOptions(), request);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,6 @@
* An interface for managing Identity and Access Management (IAM) policies.
* </pre>
*/
@javax.annotation.Generated(
value = "by gRPC proto compiler",
comments = "Source: google/iam/v2/policy.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class PoliciesGrpc {

Expand Down Expand Up @@ -525,8 +522,8 @@ protected PoliciesBlockingV2Stub build(
* </pre>
*/
public com.google.iam.v2.ListPoliciesResponse listPolicies(
com.google.iam.v2.ListPoliciesRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2.ListPoliciesRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getListPoliciesMethod(), getCallOptions(), request);
}

Expand All @@ -537,8 +534,9 @@ public com.google.iam.v2.ListPoliciesResponse listPolicies(
* Gets a policy.
* </pre>
*/
public com.google.iam.v2.Policy getPolicy(com.google.iam.v2.GetPolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
public com.google.iam.v2.Policy getPolicy(com.google.iam.v2.GetPolicyRequest request)
throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getGetPolicyMethod(), getCallOptions(), request);
}

Expand All @@ -550,8 +548,8 @@ public com.google.iam.v2.Policy getPolicy(com.google.iam.v2.GetPolicyRequest req
* </pre>
*/
public com.google.longrunning.Operation createPolicy(
com.google.iam.v2.CreatePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2.CreatePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getCreatePolicyMethod(), getCallOptions(), request);
}

Expand All @@ -569,8 +567,8 @@ public com.google.longrunning.Operation createPolicy(
* </pre>
*/
public com.google.longrunning.Operation updatePolicy(
com.google.iam.v2.UpdatePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2.UpdatePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getUpdatePolicyMethod(), getCallOptions(), request);
}

Expand All @@ -582,8 +580,8 @@ public com.google.longrunning.Operation updatePolicy(
* </pre>
*/
public com.google.longrunning.Operation deletePolicy(
com.google.iam.v2.DeletePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2.DeletePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getDeletePolicyMethod(), getCallOptions(), request);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,6 @@
* An interface for managing Identity and Access Management (IAM) policies.
* </pre>
*/
@javax.annotation.Generated(
value = "by gRPC proto compiler",
comments = "Source: google/iam/v2beta/policy.proto")
@io.grpc.stub.annotations.GrpcGenerated
public final class PoliciesGrpc {

Expand Down Expand Up @@ -526,8 +523,8 @@ protected PoliciesBlockingV2Stub build(
* </pre>
*/
public com.google.iam.v2beta.ListPoliciesResponse listPolicies(
com.google.iam.v2beta.ListPoliciesRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2beta.ListPoliciesRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getListPoliciesMethod(), getCallOptions(), request);
}

Expand All @@ -538,8 +535,9 @@ public com.google.iam.v2beta.ListPoliciesResponse listPolicies(
* Gets a policy.
* </pre>
*/
public com.google.iam.v2beta.Policy getPolicy(com.google.iam.v2beta.GetPolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
public com.google.iam.v2beta.Policy getPolicy(com.google.iam.v2beta.GetPolicyRequest request)
throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getGetPolicyMethod(), getCallOptions(), request);
}

Expand All @@ -551,8 +549,8 @@ public com.google.iam.v2beta.Policy getPolicy(com.google.iam.v2beta.GetPolicyReq
* </pre>
*/
public com.google.longrunning.Operation createPolicy(
com.google.iam.v2beta.CreatePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2beta.CreatePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getCreatePolicyMethod(), getCallOptions(), request);
}

Expand All @@ -570,8 +568,8 @@ public com.google.longrunning.Operation createPolicy(
* </pre>
*/
public com.google.longrunning.Operation updatePolicy(
com.google.iam.v2beta.UpdatePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2beta.UpdatePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getUpdatePolicyMethod(), getCallOptions(), request);
}

Expand All @@ -583,8 +581,8 @@ public com.google.longrunning.Operation updatePolicy(
* </pre>
*/
public com.google.longrunning.Operation deletePolicy(
com.google.iam.v2beta.DeletePolicyRequest request) {
return io.grpc.stub.ClientCalls.blockingUnaryCall(
com.google.iam.v2beta.DeletePolicyRequest request) throws io.grpc.StatusException {
return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
getChannel(), getDeletePolicyMethod(), getCallOptions(), request);
}
}
Expand Down
Loading
Loading