Skip to content

Upgrade dependencies to reduce downstream conflicts #5132

@rabbah

Description

@rabbah

There are some libraries that use older akka related libraries and this causes downstream (e.g., runtimes repos) to fail during the build step. Several of these dependencies can be resolved by removing unused artifacts (e.g., #5131) but not all.

In particular these two import older version of akka-http (10.1.10) and should be updated:

  • akka-grpc-runtime_2.12:0.7.2
  • com.lightbend.akka:akka-stream-alpakka-s3_2.12:1.1.2

As a workaround for downstream projects once PR #5130 is merged: apply the following patch:

add explicit dependencies to tests/build.gradle:

+gradle.ext.akka_http = [version : '10.2.4']
diff --git a/tests/build.gradle b/tests/build.gradle
index 1ae5a4b..b300fa0 100644
--- a/tests/build.gradle
+++ b/tests/build.gradle
@@ -37,6 +37,8 @@ dependencies {
     compile "org.scala-lang:scala-library:${gradle.scala.version}"
     compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:tests"
     compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:test-sources"
+    implementation group: 'com.typesafe.akka', name: "akka-http2-support_${gradle.scala.depVersion}", version: "${gradle.akka_http.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-http-xml_${gradle.scala.depVersion}", version: "${gradle.akka_http.version}"
 }

declare some variables in settings.grade

diff --git a/settings.gradle b/settings.gradle
index 9af38c8..1d50fa6 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -29,6 +29,7 @@ gradle.ext.openwhisk = [
 
 gradle.ext.scala = [
     version: '2.12.7',
+    depVersion  : '2.12',

Without the PR, you also to apply the same to these libraries:

  • akka-cluster-metrics
  • akka-discovery
  • akka-protobuf
  • akka-remote
  • akka-cluster
  • akka-distributed-data
  • akka-cluster-tools
diff --git a/tests/build.gradle b/tests/build.gradle
index 1ae5a4b..9df67dd 100644
--- a/tests/build.gradle
+++ b/tests/build.gradle
@@ -37,6 +37,15 @@ dependencies {
     compile "org.scala-lang:scala-library:${gradle.scala.version}"
     compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:tests"
     compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:test-sources"
+    implementation group: 'com.typesafe.akka', name: "akka-http2-support_${gradle.scala.depVersion}", version: "${gradle.akka_http.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-http-xml_${gradle.scala.depVersion}", version: "${gradle.akka_http.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-discovery_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-protobuf_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-remote_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-cluster-metrics_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-cluster_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-cluster-tools_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
+    implementation group: 'com.typesafe.akka', name: "akka-distributed-data_${gradle.scala.depVersion}", version: "${gradle.akka.version}"
 }

and an additional variable is needed in settings.gradle

diff --git a/settings.gradle b/settings.gradle
index 9af38c8..838ba1f 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -29,6 +29,7 @@ gradle.ext.openwhisk = [
 
 gradle.ext.scala = [
     version: '2.12.7',
+    depVersion  : '2.12',
     compileFlags: ['-feature', '-unchecked', '-deprecation', '-Xfatal-warnings', '-Ywarn-unused-import']
 ]
 
@@ -36,3 +37,6 @@ gradle.ext.scalafmt = [
     version: '1.5.0',
     config: new File(rootProject.projectDir, '.scalafmt.conf')
 ]
+
+gradle.ext.akka = [version : '2.6.12']
+gradle.ext.akka_http = [version : '10.2.4']

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions