apache / pekko-persistence-r2dbc

Asynchronously writes journal and snapshot entries to configured R2DBC databases so that Apache Pekko Actors can recover state
https://pekko.apache.org/
Apache License 2.0
13 stars 6 forks source link

migration module is not published for Scala 3 #83

Open pjfanning opened 6 months ago

pjfanning commented 6 months ago

https://github.com/apache/incubator-pekko-persistence-r2dbc/blob/main/project/Dependencies.scala#L100

pekko-persistence-jdbc is a test dependency - this does not support Scala 3 yet and when it does it will be a 1.1.0 release

I think the simplest is just to upgrade to pekko-persistence-jdbc 1.1.0 when released.

Alternatives include testing a Scala 3 build but use the pekko-persistence-jdbc_2.13 jar.

cross CrossVersion.for3Use2_13 in sbt

pjfanning commented 6 months ago

wdyt @mdedetrich @raboof @He-Pin @Roiocam @samueleresca @gmethvin @nvollmar ?

raboof commented 6 months ago

I might not have all context, but from what I've seen I'd lean towards upgrading to pekko-persistence-jdbc 1.1.0 when released. Is there any particular downside to that approach?

CrossVersion.for3Use2_13 is great for 'leaf' projects but can lead to problems 'downstream' when used in libraries: for example when the transitive library releases a version for Scala 3 but the library using for3Use2_13 is still using the cross-built version, a project could get in trouble trying to load both. Also I'm not sure how moving from using for3Use2_13 to not using for3Use2_13 in a later version might impact binary compatibility.