diff --git a/benchmark-java/build.sbt b/benchmark-java/build.sbt
index fb9f93b1..2a8ab2f1 100644
--- a/benchmark-java/build.sbt
+++ b/benchmark-java/build.sbt
@@ -14,7 +14,7 @@ run / javaOptions ++= List("-Xms1g", "-Xmx1g", "-XX:+PrintGCDetails", "-XX:+Prin
// generate both client and server (default) in Java
pekkoGrpcGeneratedLanguages := Seq(PekkoGrpc.Java)
-val grpcVersion = "1.54.2" // checked synced by VersionSyncCheckPlugin
+val grpcVersion = "1.60.0" // checked synced by VersionSyncCheckPlugin
val runtimeProject = ProjectRef(file("../"), "runtime")
diff --git a/build.sbt b/build.sbt
index 603e7532..96605947 100644
--- a/build.sbt
+++ b/build.sbt
@@ -283,6 +283,7 @@ lazy val pluginTesterJava = Project(id = "plugin-tester-java", base = file("plug
.settings(
name := s"$pekkoPrefix-plugin-tester-java",
fork := true,
+ PB.protocVersion := Dependencies.Versions.googleProtoc,
ReflectiveCodeGen.generatedLanguages := Seq("Java"),
crossScalaVersions := Dependencies.Versions.CrossScalaForLib,
scalaVersion := scala212,
diff --git a/gradle-plugin/src/main/groovy/org/apache/pekko/grpc/gradle/PekkoGrpcPluginExtension.groovy b/gradle-plugin/src/main/groovy/org/apache/pekko/grpc/gradle/PekkoGrpcPluginExtension.groovy
index fcfd8f79..0df1f646 100644
--- a/gradle-plugin/src/main/groovy/org/apache/pekko/grpc/gradle/PekkoGrpcPluginExtension.groovy
+++ b/gradle-plugin/src/main/groovy/org/apache/pekko/grpc/gradle/PekkoGrpcPluginExtension.groovy
@@ -14,11 +14,11 @@ import org.gradle.api.Project
class PekkoGrpcPluginExtension {
- static final String PROTOC_VERSION = "3.20.1" // checked synced by VersionSyncCheckPlugin
+ static final String PROTOC_VERSION = "3.24.0" // checked synced by VersionSyncCheckPlugin
static final String PROTOC_PLUGIN_SCALA_VERSION = "2.12"
- static final String GRPC_VERSION = "1.54.2" // checked synced by VersionSyncCheckPlugin
+ static final String GRPC_VERSION = "1.60.0" // checked synced by VersionSyncCheckPlugin
static final String PLUGIN_CODE = 'org.apache.pekko.grpc.gradle'
diff --git a/interop-tests/src/test/scala/org/apache/pekko/grpc/scaladsl/NonBalancingIntegrationSpec.scala b/interop-tests/src/test/scala/org/apache/pekko/grpc/scaladsl/NonBalancingIntegrationSpec.scala
index 6eedbee5..1c3079f8 100644
--- a/interop-tests/src/test/scala/org/apache/pekko/grpc/scaladsl/NonBalancingIntegrationSpec.scala
+++ b/interop-tests/src/test/scala/org/apache/pekko/grpc/scaladsl/NonBalancingIntegrationSpec.scala
@@ -17,7 +17,6 @@ import java.net.InetSocketAddress
import org.apache.pekko
import pekko.actor.ActorSystem
import pekko.grpc.GrpcClientSettings
-import pekko.grpc.internal.ClientConnectionException
import pekko.grpc.scaladsl.tools.MutableServiceDiscovery
import pekko.http.scaladsl.Http
import pekko.stream.{ Materializer, SystemMaterializer }
@@ -184,8 +183,7 @@ class NonBalancingIntegrationSpec(backend: String)
val failure =
client.sayHello(HelloRequest(s"Hello friend")).failed.futureValue.asInstanceOf[StatusRuntimeException]
- failure.getStatus.getCode should be(Code.UNAVAILABLE)
- client.closed.failed.futureValue shouldBe a[ClientConnectionException]
+ failure.getStatus.getCode should (equal(Code.UNKNOWN).or(equal(Code.UNAVAILABLE)))
}
"not fail when no valid endpoints are provided but no limit on attempts is set" in {
diff --git a/maven-plugin/src/main/maven/plugin.xml b/maven-plugin/src/main/maven/plugin.xml
index 00f9767f..6c01eec6 100644
--- a/maven-plugin/src/main/maven/plugin.xml
+++ b/maven-plugin/src/main/maven/plugin.xml
@@ -95,7 +95,7 @@
${pekko-grpc.protoPaths}
${pekko-grpc.outputDirectory}
- ${pekko-grpc.protoc-version}
+ ${pekko-grpc.protoc-version}
@@ -187,7 +187,7 @@
${pekko-grpc.protoPaths}
${pekko-grpc.outputDirectory}
- ${pekko-grpc.protoc-version}
+ ${pekko-grpc.protoc-version}
diff --git a/plugin-tester-java/pom.xml b/plugin-tester-java/pom.xml
index b0c96b03..201addb4 100644
--- a/plugin-tester-java/pom.xml
+++ b/plugin-tester-java/pom.xml
@@ -25,7 +25,7 @@
3.1.2
3.0.0
1.0.0
- 1.54.2
+ 1.60.0
UTF-8
diff --git a/plugin-tester-scala/pom.xml b/plugin-tester-scala/pom.xml
index b8052c33..afba16af 100644
--- a/plugin-tester-scala/pom.xml
+++ b/plugin-tester-scala/pom.xml
@@ -24,7 +24,7 @@
1.8
1.0.2
1.0.0
- 1.54.2
+ 1.60.0
UTF-8
diff --git a/project/Dependencies.scala b/project/Dependencies.scala
index cc713168..6491a035 100644
--- a/project/Dependencies.scala
+++ b/project/Dependencies.scala
@@ -32,12 +32,12 @@ object Dependencies {
val pekkoHttp = PekkoHttpDependency.version
val pekkoHttpBinary = pekkoHttp.take(3)
- val grpc = "1.54.2" // checked synced by VersionSyncCheckPlugin
+ val grpc = "1.60.0" // checked synced by VersionSyncCheckPlugin
// Even referenced explicitly in the sbt-plugin's sbt-tests
// If changing this, remember to update protoc plugin version to align in
// maven-plugin/src/main/maven/plugin.xml and org.apache.pekko.grpc.sbt.PekkoGrpcPlugin
- val googleProtoc = "3.20.1" // checked synced by VersionSyncCheckPlugin
- val googleProtobufJava = "3.21.12"
+ val googleProtoc = "3.24.0" // checked synced by VersionSyncCheckPlugin
+ val googleProtobufJava = "3.24.0"
val scalaTest = "3.2.15"
diff --git a/project/plugins.sbt b/project/plugins.sbt
index 9429feb2..89066d60 100644
--- a/project/plugins.sbt
+++ b/project/plugins.sbt
@@ -51,4 +51,4 @@ libraryDependencies += "org.eclipse.jgit" % "org.eclipse.jgit" % "5.13.1.2022061
// scripted testing
libraryDependencies += "org.scala-sbt" %% "scripted-plugin" % sbtVersion.value
-libraryDependencies += "com.thesamet.scalapb" %% "compilerplugin" % "0.11.15"
+libraryDependencies += "com.thesamet.scalapb" %% "compilerplugin" % "0.11.14"
diff --git a/runtime/src/main/scala/org/apache/pekko/grpc/internal/NettyClientUtils.scala b/runtime/src/main/scala/org/apache/pekko/grpc/internal/NettyClientUtils.scala
index 07b1d8a3..8a9c3f24 100644
--- a/runtime/src/main/scala/org/apache/pekko/grpc/internal/NettyClientUtils.scala
+++ b/runtime/src/main/scala/org/apache/pekko/grpc/internal/NettyClientUtils.scala
@@ -58,6 +58,7 @@ object NettyClientUtils {
new PekkoDiscoveryNameResolverProvider(
settings.serviceDiscovery,
settings.defaultPort,
+ settings.serviceName,
settings.servicePortName,
settings.serviceProtocol,
settings.resolveTimeout))
diff --git a/runtime/src/main/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProvider.scala b/runtime/src/main/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProvider.scala
index 66b5735a..2982ce8d 100644
--- a/runtime/src/main/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProvider.scala
+++ b/runtime/src/main/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProvider.scala
@@ -24,6 +24,7 @@ import scala.concurrent.duration.FiniteDuration
class PekkoDiscoveryNameResolverProvider(
discovery: ServiceDiscovery,
defaultPort: Int,
+ serviceName: String,
portName: Option[String],
protocol: Option[String],
resolveTimeout: FiniteDuration)(implicit ec: ExecutionContext)
@@ -34,8 +35,7 @@ class PekkoDiscoveryNameResolverProvider(
override def getDefaultScheme: String = "http"
- override def newNameResolver(targetUri: URI, args: NameResolver.Args): PekkoDiscoveryNameResolver = {
- require(targetUri.getAuthority != null, s"target uri should not have null authority, got [$targetUri]")
- new PekkoDiscoveryNameResolver(discovery, defaultPort, targetUri.getAuthority, portName, protocol, resolveTimeout)
- }
+ override def newNameResolver(targetUri: URI, args: NameResolver.Args): PekkoDiscoveryNameResolver =
+ new PekkoDiscoveryNameResolver(discovery, defaultPort, serviceName, portName, protocol, resolveTimeout)
+
}
diff --git a/runtime/src/test/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProviderSpec.scala b/runtime/src/test/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProviderSpec.scala
index ba19adbd..aef2c346 100644
--- a/runtime/src/test/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProviderSpec.scala
+++ b/runtime/src/test/scala/org/apache/pekko/grpc/internal/PekkoDiscoveryNameResolverProviderSpec.scala
@@ -61,6 +61,7 @@ class PekkoDiscoveryNameResolverProviderSpec
val provider = new PekkoDiscoveryNameResolverProvider(
discovery,
443,
+ serviceName,
portName = None,
protocol = None,
resolveTimeout = 3.seconds)
diff --git a/sbt-plugin/src/sbt-test/gen-scala-server/00-interop/build.sbt b/sbt-plugin/src/sbt-test/gen-scala-server/00-interop/build.sbt
index 6e6e3523..89d2df4c 100644
--- a/sbt-plugin/src/sbt-test/gen-scala-server/00-interop/build.sbt
+++ b/sbt-plugin/src/sbt-test/gen-scala-server/00-interop/build.sbt
@@ -13,7 +13,7 @@ scalaVersion := "2.12.18"
organization := "org.apache.pekko"
-val grpcVersion = "1.54.2" // checked synced by VersionSyncCheckPlugin
+val grpcVersion = "1.60.0" // checked synced by VersionSyncCheckPlugin
libraryDependencies ++= Seq(
"io.grpc" % "grpc-interop-testing" % grpcVersion % "protobuf-src",