Skip to content
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

Lagom 1.6.5 has conflicting transitive dependencies on other lightbend projects #3301

Open
mosaic-matt-bush opened this issue Aug 26, 2021 · 2 comments

Comments

@mosaic-matt-bush
Copy link

mosaic-matt-bush commented Aug 26, 2021

Lagom Version

1.6.5

API

Scala

JDK

openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)

Library Dependencies

Expected Behavior

As a developer who writes microservices that use the latest version of Lagom's scala dsl, I would like to be able to use sbt to identify binary incompatible transitive dependencies of my project with as little noise as possible.

Actual Behavior

When I depend on lagom, sbt flags several evictions as being suspected to be binary incompatible, including transitive dependencies among lightbend-supported projects. I haven't noticed any issues at runtime, so I suspect that they are all false positives, but the false positives make it harder to use the tool to check for real issues.

Reproducible Test Case

Create a new project that uses lagom scaladsl (I haven't checked java):
sbt new lagom/lagom-scala.g8
This generates four sbt projects: hello-world-api, hello-world-stream-api, hello-world-impl, hello-world-stream-impl

Run sbt update in your project and see warnings about evictions.
Run sbt evicted to see details of evictions

Here are the ones that generate warnings as being suspected incompatible. It's not immediately obvious to me which of these four blocks correspond to which of the four sbt projects.

[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] 	* com.typesafe.play:play-json_2.13:2.9.1 is selected over 2.8.1
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.8.1)
[warn] 	* org.pcollections:pcollections:3.0.5 is selected over 2.1.2
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 3.0.5)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-pcollections:2.11.4 (depends on 2.1.2)
[warn] 	* com.google.guava:guava:28.2-jre is selected over 20.0
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 28.2-jre)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 28.2-jre)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.11.4 (depends on 20.0)
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] 	* com.typesafe.play:play-json_2.13:2.9.1 is selected over 2.8.1
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.8.1)
[warn] 	* org.pcollections:pcollections:3.0.5 is selected over 2.1.2
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 3.0.5)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-pcollections:2.11.4 (depends on 2.1.2)
[warn] 	* com.google.guava:guava:28.2-jre is selected over 20.0
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 28.2-jre)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 28.2-jre)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.11.4 (depends on 20.0)
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] 	* com.typesafe.akka:akka-persistence-query_2.13:2.6.14 is selected over 2.5.29
[warn] 	    +- com.typesafe.akka:akka-persistence-typed_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-cassandra_2.13:0.106 () (depends on 2.5.29)
[warn] 	* com.typesafe.akka:akka-cluster-sharding_2.13:2.6.14 is selected over 2.5.23
[warn] 	    +- com.lightbend.lagom:lagom-projection-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.5.23)
[warn] 	    +- com.lightbend.akka.management:akka-management-cluster-http_2.13:1.0.5 (depends on 2.5.23)
[warn] 	    +- com.typesafe.akka:akka-cluster-sharding-typed_2.13:2.6.14 () (depends on 2.5.23)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-core_2.13:1.6.5 (depends on 2.5.23)
[warn] 	* com.typesafe.akka:akka-persistence_2.13:2.6.14 is selected over 2.5.29
[warn] 	    +- com.typesafe.akka:akka-cluster-sharding_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-testkit_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-typed_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-query_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-cassandra_2.13:0.106 () (depends on 2.5.29)
[warn] 	* com.typesafe.akka:akka-cluster-tools_2.13:2.6.14 is selected over 2.5.29
[warn] 	    +- com.typesafe.akka:akka-cluster-sharding_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-cluster-typed_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-cassandra_2.13:0.106 () (depends on 2.5.29)
[warn] 	* com.typesafe.akka:akka-cluster_2.13:2.6.14 is selected over 2.5.23
[warn] 	    +- com.typesafe.akka:akka-cluster-sharding_2.13:2.6.14 () (depends on 2.5.23)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.5.23)
[warn] 	    +- com.typesafe.akka:akka-distributed-data_2.13:2.6.14 () (depends on 2.5.23)
[warn] 	    +- com.lightbend.akka.management:akka-management-cluster-http_2.13:1.0.5 (depends on 2.5.23)
[warn] 	    +- com.lightbend.akka.management:akka-management-cluster-bootstrap_2.13:1.0.5 (depends on 2.5.23)
[warn] 	    +- com.typesafe.akka:akka-cluster-tools_2.13:2.6.14 () (depends on 2.5.23)
[warn] 	    +- com.typesafe.akka:akka-cluster-typed_2.13:2.6.14 () (depends on 2.5.23)
[warn] 	* com.typesafe.akka:akka-discovery_2.13:2.6.14 is selected over 2.5.23
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-dev-mode_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-service-registry-client-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.akka.management:akka-management-cluster-bootstrap_2.13:1.0.5 (depends on 2.5.23)
[warn] 	* io.netty:netty-handler:4.1.63.Final is selected over {4.0.56.Final, 4.1.52.Final}
[warn] 	    +- com.lightbend.lagom:lagom-persistence-cassandra-core_2.13:1.6.5 (depends on 4.1.63.Final)
[warn] 	    +- io.netty:netty-codec-http:4.1.63.Final             (depends on 4.1.52.Final)
[warn] 	    +- com.typesafe.netty:netty-reactive-streams:2.0.5    (depends on 4.1.52.Final)
[warn] 	    +- com.lightbend.lagom:lagom-client_2.13:1.6.5        (depends on 4.1.52.Final)
[warn] 	    +- com.datastax.cassandra:cassandra-driver-core:3.7.2 (depends on 4.0.56.Final)
[warn] 	* com.github.jnr:jnr-constants:0.9.14 is selected over 0.9.12
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-kafka-client_2.13:1.6.5 (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-cassandra-core_2.13:1.6.5 (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-projection-core_2.13:1.6.5 (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 0.9.14)
[warn] 	    +- com.lightbend.lagom:lagom-kafka-broker_2.13:1.6.5  (depends on 0.9.14)
[warn] 	    +- com.github.jnr:jnr-posix:3.0.50                    (depends on 0.9.12)
[warn] 	    +- org.lmdbjava:lmdbjava:0.7.0                        (depends on 0.9.12)
[warn] 	* com.typesafe.play:play-json_2.13:2.9.1 is selected over 2.8.1
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-cluster-core_2.13:1.6.5  (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-core_2.13:1.6.5 (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play-ws-standalone-json_2.13:2.1.3 (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.8.1)
[warn] 	* org.pcollections:pcollections:3.0.5 is selected over 2.1.2
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-kafka-broker_2.13:1.6.5  (depends on 3.0.5)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-pcollections:2.11.4 (depends on 2.1.2)
[warn] 	* com.google.guava:guava:28.2-jre is selected over {27.0.1-jre, 19.0, 20.0}
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-cluster_2.13:1.6.5 (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 28.2-jre)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 28.2-jre)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.11.4 (depends on 20.0)
[warn] 	    +- com.typesafe.akka:akka-persistence-cassandra_2.13:0.106 () (depends on 27.0.1-jre)
[warn] 	    +- com.datastax.cassandra:cassandra-driver-core:3.7.2 (depends on 27.0.1-jre)
[warn] 	* com.typesafe.akka:akka-stream_2.13:2.6.14 is selected over {2.5.29, 2.6.1, 2.5.23}
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence_2.13:2.6.14 ()  (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-stream-typed_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-remote_2.13:2.6.14 ()       (depends on 2.6.14)
[warn] 	    +- com.typesafe.play:play-streams_2.13:2.8.8 ()       (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence-query_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-stream-kafka_2.13:1.1.0     (depends on 2.5.23)
[warn] 	    +- com.lightbend.akka.management:akka-management_2.13:1.0.5 (depends on 2.5.23)
[warn] 	    +- com.typesafe.play:play-ws-standalone_2.13:2.1.3    (depends on 2.6.1)
[warn] 	    +- com.typesafe.akka:akka-persistence-cassandra_2.13:0.106 () (depends on 2.5.29)
[warn] 	* com.typesafe.akka:akka-actor_2.13:2.6.14 is selected over 2.5.23
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-service-registry-client-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-slf4j_2.13:2.6.14 ()        (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-actor-typed_2.13:2.6.14 ()  (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-pki_2.13:2.6.14 ()          (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-stream_2.13:2.6.14 ()       (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-persistence_2.13:2.6.14 ()  (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-coordination_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-remote_2.13:2.6.14 ()       (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-testkit_2.13:2.6.14 ()      (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-serialization-jackson_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-persistence-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-discovery_2.13:2.6.14 ()    (depends on 2.6.14)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.6.14)
[warn] 	    +- com.lightbend.akka.management:akka-management_2.13:1.0.5 (depends on 2.5.23)
[warn] There may be incompatibilities among your library dependencies; run 'evicted' to see detailed eviction warnings.
[warn] Found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[warn] 	* io.netty:netty-handler:4.1.63.Final is selected over 4.1.52.Final
[warn] 	    +- io.netty:netty-codec-http:4.1.63.Final             (depends on 4.1.52.Final)
[warn] 	    +- com.typesafe.netty:netty-reactive-streams:2.0.5    (depends on 4.1.52.Final)
[warn] 	    +- com.lightbend.lagom:lagom-client_2.13:1.6.5        (depends on 4.1.52.Final)
[warn] 	* com.typesafe.play:play-json_2.13:2.9.1 is selected over 2.8.1
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.9.1)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play-ws-standalone-json_2.13:2.1.3 (depends on 2.8.1)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.8.1)
[warn] 	* org.pcollections:pcollections:3.0.5 is selected over 2.1.2
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 3.0.5)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 3.0.5)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-pcollections:2.11.4 (depends on 2.1.2)
[warn] 	* com.google.guava:guava:28.2-jre is selected over 20.0
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 28.2-jre)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 28.2-jre)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 28.2-jre)
[warn] 	    +- com.fasterxml.jackson.datatype:jackson-datatype-guava:2.11.4 (depends on 20.0)
[warn] 	* com.typesafe.akka:akka-stream_2.13:2.6.14 is selected over {2.6.1, 2.5.23}
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-stream-typed_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.typesafe.play:play-streams_2.13:2.8.8 ()       (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.akka.management:akka-management_2.13:1.0.5 (depends on 2.5.23)
[warn] 	    +- com.typesafe.play:play-ws-standalone_2.13:2.1.3    (depends on 2.6.1)
[warn] 	* com.typesafe.akka:akka-actor_2.13:2.6.14 is selected over 2.5.23
[warn] 	    +- com.lightbend.lagom:lagom-logback_2.13:1.6.5       (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-scaladsl-play-json_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-api_2.13:1.6.5           (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-stream_2.13:2.6.14 ()       (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-serialization-jackson_2.13:2.6.14 () (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-service-registry-client-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-slf4j_2.13:2.6.14 ()        (depends on 2.6.14)
[warn] 	    +- com.lightbend.lagom:lagom-akka-management-core_2.13:1.6.5 (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-discovery_2.13:2.6.14 ()    (depends on 2.6.14)
[warn] 	    +- com.typesafe.play:play_2.13:2.8.8 ()               (depends on 2.6.14)
[warn] 	    +- com.typesafe.akka:akka-actor-typed_2.13:2.6.14 ()  (depends on 2.6.14)
[warn] 	    +- com.lightbend.akka.management:akka-management_2.13:1.0.5 (depends on 2.5.23)
@mosaic-matt-bush
Copy link
Author

I don't know if it makes a difference to mention here, but my company has a Lightbend enterprise subscription.

@sebastian-alfers
Copy link

Hi @mosaic-matt-bush Thanks for the note - please feel free to open a support-case as usual to get our prioritized attention on your request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants