Skip to content

kara 0.2.1

Compare
Choose a tag to compare
@tehzhed tehzhed released this 23 Feb 11:08
· 4 commits to master since this release
39bb5c9

This release solves two issues:

  • Switches support to circe 0.14.1 (was 0.13.1) to handle binary incompatibility changes which surfaced in generated code.
  • Bump scalate to 1.9.7 (was 1.9.6) to handle a binary incompatibility issue when using sbt 1.5.x/Scala 2.12.13.

Kara has good reasons to rely on scalate-core 1.9.7 (generated source code templating + see above) and finagle-http 20.10.0 (generate HTTP services).

Due to eviction warnings now replaced with errors by default in sbt 1.5.0+, the two dependencies above will cause the following error to surface when sbt reloads the project:

[error] java.lang.RuntimeException: found version conflict(s) in library dependencies; some are suspected to be binary incompatible:
[error] 
[error] 	* org.scala-lang.modules:scala-parser-combinators_2.12:2.0.0 (early-semver) is selected over 1.1.2
[error] 	    +- org.scalatra.scalate:scalate-util_2.12:1.9.7       (depends on 2.0.0)
[error] 	    +- com.twitter:scrooge-generator_2.12:20.10.0         (depends on 1.1.2)
[error] 
[error] 
[error] this can be overridden using libraryDependencySchemes or evictionErrorLevel

As indicated at the bottom of the error, there are different strategies to handle it (more on that here). For example, a quick solution to opt out of these errors for this specific transitive dependency can be to add a build.sbt file under the project folder with the following content:

ThisBuild / libraryDependencySchemes += "org.scala-lang.modules" %% "scala-parser-combinators" % "always"