From d116dd3b956ed860a1033e65e7c283f3d74c1688 Mon Sep 17 00:00:00 2001 From: Jeremy Grunert Date: Wed, 12 Nov 2025 15:11:31 +0100 Subject: [PATCH 1/2] bump grpc and protobuf versions - small fix in deadlineExceeded test, description was renamed - remove annotation api as new annotation comes from protobuf-java dependency - add protobuf-java dependency as transitive dependency --- gradle/libs.versions.toml | 25 +++++++++---------- .../integration/AbstractInteropTest.kt | 2 +- stub/build.gradle.kts | 2 +- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 79d88f0c..4f81c664 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -10,16 +10,16 @@ kotlin-power-assert = { id = "com.bnorm.power.kotlin-power-assert", version = "0 [libraries] kotlinx-coroutines-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version = "1.10.2" } kotlinx-coroutines-core-jvm = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core-jvm", version = "1.10.2" } -grpc-protobuf = { group = "io.grpc", name = "grpc-protobuf", version = "1.62.2" } -grpc-protobuf-lite = { group = "io.grpc", name = "grpc-protobuf-lite", version = "1.62.2" } -grpc-alts = { group = "io.grpc", name = "grpc-alts", version = "1.62.2" } -grpc-auth = { group = "io.grpc", name = "grpc-auth", version = "1.62.2" } -grpc-netty = { group = "io.grpc", name = "grpc-netty", version = "1.62.2" } -grpc-okhttp = { group = "io.grpc", name = "grpc-okhttp", version = "1.62.2" } -grpc-testing = { group = "io.grpc", name = "grpc-testing", version = "1.62.2" } -grpc-stub = { group = "io.grpc", name = "grpc-stub", version = "1.62.2" } -grpc-inprocess = { group = "io.grpc", name = "grpc-inprocess", version = "1.62.2" } -protoc-gen-grpc-java = { group = "io.grpc", name = "protoc-gen-grpc-java", version = "1.62.2" } +grpc-protobuf = { group = "io.grpc", name = "grpc-protobuf", version = "1.76.0" } +grpc-protobuf-lite = { group = "io.grpc", name = "grpc-protobuf-lite", version = "1.76.0" } +grpc-alts = { group = "io.grpc", name = "grpc-alts", version = "1.76.0" } +grpc-auth = { group = "io.grpc", name = "grpc-auth", version = "1.76.0" } +grpc-netty = { group = "io.grpc", name = "grpc-netty", version = "1.76.0" } +grpc-okhttp = { group = "io.grpc", name = "grpc-okhttp", version = "1.76.0" } +grpc-testing = { group = "io.grpc", name = "grpc-testing", version = "1.76.0" } +grpc-stub = { group = "io.grpc", name = "grpc-stub", version = "1.76.0" } +grpc-inprocess = { group = "io.grpc", name = "grpc-inprocess", version = "1.76.0" } +protoc-gen-grpc-java = { group = "io.grpc", name = "protoc-gen-grpc-java", version = "1.76.0" } kotlinpoet = { group = "com.squareup", name = "kotlinpoet", version = "2.2.0" } junit = { group = "junit", name = "junit", version = "4.13.2" } junit-platform-launcher = { group = "org.junit.platform", name = "junit-platform-launcher", version = "1.10.2" } @@ -29,12 +29,11 @@ protobuf-gradle-plugin = { group = "com.google.protobuf", name = "protobuf-gradl junit-jupiter = { group = "org.junit.jupiter", name = "junit-jupiter", version = "5.13.4" } junit-jupiter-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine", version = "5.13.4" } mockito-core = { group = "org.mockito", name = "mockito-core", version = "5.17.0" } -protoc = { group = "com.google.protobuf", name = "protoc", version = "3.25.3" } -protobuf-java = { group = "com.google.protobuf", name = "protobuf-java", version = "3.25.3" } +protoc = { group = "com.google.protobuf", name = "protoc", version = "4.33.0" } +protobuf-java = { group = "com.google.protobuf", name = "protobuf-java", version = "4.33.0" } truth = { group = "com.google.truth", name = "truth", version = "1.4.4" } truth-proto-extension = { group = "com.google.truth.extensions", name = "truth-proto-extension", version = "1.4.4" } okhttp = { group = "com.squareup.okhttp", name = "okhttp", version = "2.7.5" } -javax-annotation-api = { group = "javax.annotation", name = "javax.annotation-api", version = "1.3.2" } testcontainers = { group = "org.testcontainers", name = "testcontainers", version = "1.21.3" } slf4j-simple = { group = "org.slf4j", name = "slf4j-simple", version = "2.0.17" } gradle-test-kit = { group = "org.gradle", name = "gradle-test-kit", version = "6.1" } diff --git a/interop_testing/src/main/java/io/grpc/testing/integration/AbstractInteropTest.kt b/interop_testing/src/main/java/io/grpc/testing/integration/AbstractInteropTest.kt index e29b6f2a..bde6ccb6 100644 --- a/interop_testing/src/main/java/io/grpc/testing/integration/AbstractInteropTest.kt +++ b/interop_testing/src/main/java/io/grpc/testing/integration/AbstractInteropTest.kt @@ -810,7 +810,7 @@ abstract class AbstractInteropTest { Pattern.matches("deadline exceeded after .*s. \\[.*\\]", desc!!) || // If server expires first, it'd reset the stream and client would generate a different // message - desc.startsWith("ClientCall was cancelled at or after deadline.") + desc.startsWith("CallOptions deadline exceeded") ) } assertStatsTrace("grpc.testing.TestService/EmptyCall", Status.Code.OK) diff --git a/stub/build.gradle.kts b/stub/build.gradle.kts index 6e00b59a..3b8a332c 100644 --- a/stub/build.gradle.kts +++ b/stub/build.gradle.kts @@ -19,7 +19,7 @@ dependencies { api(libs.grpc.stub) // Java - api(libs.javax.annotation.api) + api(libs.protobuf.java) // Testing testImplementation(libs.junit) From d3062285fe3e9ea63fe498a3c0444a3719262a1f Mon Sep 17 00:00:00 2001 From: Jeremy Grunert Date: Wed, 12 Nov 2025 15:27:30 +0100 Subject: [PATCH 2/2] improve libs.versions.toml --- gradle/libs.versions.toml | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4f81c664..95c4ef05 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,3 +1,7 @@ +[versions] +grpc-java = "1.76.0" +protobuf-java = "4.33.0" + [plugins] kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version = "2.2.20" } protobuf = { id = "com.google.protobuf", version = "0.9.5" } @@ -10,16 +14,21 @@ kotlin-power-assert = { id = "com.bnorm.power.kotlin-power-assert", version = "0 [libraries] kotlinx-coroutines-core = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core", version = "1.10.2" } kotlinx-coroutines-core-jvm = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-core-jvm", version = "1.10.2" } -grpc-protobuf = { group = "io.grpc", name = "grpc-protobuf", version = "1.76.0" } -grpc-protobuf-lite = { group = "io.grpc", name = "grpc-protobuf-lite", version = "1.76.0" } -grpc-alts = { group = "io.grpc", name = "grpc-alts", version = "1.76.0" } -grpc-auth = { group = "io.grpc", name = "grpc-auth", version = "1.76.0" } -grpc-netty = { group = "io.grpc", name = "grpc-netty", version = "1.76.0" } -grpc-okhttp = { group = "io.grpc", name = "grpc-okhttp", version = "1.76.0" } -grpc-testing = { group = "io.grpc", name = "grpc-testing", version = "1.76.0" } -grpc-stub = { group = "io.grpc", name = "grpc-stub", version = "1.76.0" } -grpc-inprocess = { group = "io.grpc", name = "grpc-inprocess", version = "1.76.0" } -protoc-gen-grpc-java = { group = "io.grpc", name = "protoc-gen-grpc-java", version = "1.76.0" } + +grpc-protobuf = { group = "io.grpc", name = "grpc-protobuf", version.ref = "grpc-java" } +grpc-protobuf-lite = { group = "io.grpc", name = "grpc-protobuf-lite", version.ref = "grpc-java" } +grpc-alts = { group = "io.grpc", name = "grpc-alts", version.ref = "grpc-java" } +grpc-auth = { group = "io.grpc", name = "grpc-auth", version.ref = "grpc-java" } +grpc-netty = { group = "io.grpc", name = "grpc-netty", version.ref = "grpc-java" } +grpc-okhttp = { group = "io.grpc", name = "grpc-okhttp", version.ref = "grpc-java" } +grpc-testing = { group = "io.grpc", name = "grpc-testing", version.ref = "grpc-java" } +grpc-stub = { group = "io.grpc", name = "grpc-stub", version.ref = "grpc-java" } +grpc-inprocess = { group = "io.grpc", name = "grpc-inprocess", version.ref = "grpc-java" } +protoc-gen-grpc-java = { group = "io.grpc", name = "protoc-gen-grpc-java", version.ref = "grpc-java" } + +protoc = { group = "com.google.protobuf", name = "protoc", version.ref = "protobuf-java" } +protobuf-java = { group = "com.google.protobuf", name = "protobuf-java", version.ref = "protobuf-java" } + kotlinpoet = { group = "com.squareup", name = "kotlinpoet", version = "2.2.0" } junit = { group = "junit", name = "junit", version = "4.13.2" } junit-platform-launcher = { group = "org.junit.platform", name = "junit-platform-launcher", version = "1.10.2" } @@ -29,8 +38,6 @@ protobuf-gradle-plugin = { group = "com.google.protobuf", name = "protobuf-gradl junit-jupiter = { group = "org.junit.jupiter", name = "junit-jupiter", version = "5.13.4" } junit-jupiter-engine = { group = "org.junit.jupiter", name = "junit-jupiter-engine", version = "5.13.4" } mockito-core = { group = "org.mockito", name = "mockito-core", version = "5.17.0" } -protoc = { group = "com.google.protobuf", name = "protoc", version = "4.33.0" } -protobuf-java = { group = "com.google.protobuf", name = "protobuf-java", version = "4.33.0" } truth = { group = "com.google.truth", name = "truth", version = "1.4.4" } truth-proto-extension = { group = "com.google.truth.extensions", name = "truth-proto-extension", version = "1.4.4" } okhttp = { group = "com.squareup.okhttp", name = "okhttp", version = "2.7.5" }