Alternative scalajs/scala-native distribution mechanisms

To be clear, if you only support Scala.js then its really not that much of an issue (at worst you have to use a single environment variable for the scalaJS plugin version since you can’t crossbuild against scala plugins). Things however get a lot more complicated if you want to support Scala.js and scala-native and you are publishing a library that is designed to be very stable and takes binary compatibility very seriously (i.e. if we suppose that akka was cross compiling against scala-js and scala-native, it would have the exact same issues).

This is where you have to form some sought of a build matrix or do very tedious manual publishing (which will probably work fine in my case because I never expect to publish after 1.0.0 of scalajson is released, but for other libraries which are expected to release more then one version this is going to be a PITA)

1 Like