Incompatibility with SlickSession class and Slick v3.5.0

I’ve been attempting to upgrade from Slick v3.4.0 to v3.5.0.

The Incompatibilty Report from the upgrade notes for Slick here: Incompatible changes · Slick It states that:

… different result type in current version, where it is slick.jdbc.JdbcBackend#JdbcDatabaseDef rather than slick.jdbc.JdbcBackend#DatabaseDef

When trying to compile the code after the upgrade getting the following error:

Symbol 'type slick.jdbc.JdbcBackend.DatabaseDef' is missing from the classpath.
This symbol is required by 'value'

Looking at the SlickSesesion class (akka-stream-alpakka-slick_2.13-7.0.2.jar!/akka/stream/alpakka/slick/javadsl/SlickSession.class), it appears to continue to reference the slick.jdbc.JdbcBackend#DatabaseDef:


sealed abstract class SlickSession {
  val db: _root_.slick.jdbc.JdbcBackend#DatabaseDef

  val profile: _root_.slick.jdbc.JdbcProfile

  def close(): _root_.scala.Unit = ???

I believe the issue is that the SlickSession class has not been re-generated since Alpakka was upgraded to Slick v3.5.0. I tried re-generating the SlickSession class locally with the v3.5.0 Slick and the SlickSession class referenced JdbcBackend#JdbcDatabaseDef.

Am I correct? If so when will a new release of Alpakka be released with the new generated version of the SlickSession class included, referencing the correct Slick v3.5.0 classes?

1 Like

The Slick 3.5.0 release breaks binary (and source) compatibility, so it requires changes in the Alpakka Slick module. The good news is that we have already updated Slick in Alpakka and made the needed changes, we haven’t made a release yet but next Alpakka release will be working with Slick 3.5.0.

1 Like

OK. Thanks for the update :+1:

@johanandren Thanks for the update, we are aiming to bump Slick to 3.5.0 in our project too, is there any ETA for the new release?

There will be a release sometime the coming month. We publish snapshots for alpakka main, so if you want to try it out early via a snapshot that is also possible (see Akka docs for details on snapshot repository: Project • Akka Documentation)