Skip to content

Upgrade dependencies to reduce downstream conflicts #5132

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
rabbah opened this issue Jun 10, 2021 · 0 comments
Open

Upgrade dependencies to reduce downstream conflicts #5132

rabbah opened this issue Jun 10, 2021 · 0 comments

Comments

@rabbah
Copy link
Member

rabbah commented Jun 10, 2021

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']
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

No branches or pull requests

1 participant