Linking ballast-debugger doesn't work in kotlin/js...
# ballast
r
Linking ballast-debugger doesn't work in kotlin/js due to https://kotlinlang.slack.com/archives/C01F2HV7868/p1673962920442209?thread_ts=1673905057.816579&cid=C01F2HV7868 -- any plans to release a new version of ballast combined against 1.8 @Casey Brooks?
c
Hmm, that’s disappointing that Kotlin/JS libraries aren’t forward-compatible. I haven’t upgraded any of my projects to 1.8 yet, and didn’t notice this issue yet. I am currently working on a major release, and was planning the update to Kotlin 1.8.0 to also go in Ballast 3.0.0. I was also considering doing these 3.0 breaking changes still on Kotlin 1.7 to maximize backward compatibility and ease transition, then follow it up quickly with a bump to Kotlin 1.8. I don’t have an estimate yet for when 3.0.0 will be ready, though. Regardless, I’ll cut a special release soon to compile the current 2.3.0 version against Kotlin 1.8.0, and figure out a permanent strategy for Ballast 3.0.0 and Kotlin 1.8 later.
r
Yes it is disappointing. And the failure mode is terrible.
Kotlin is supposed to be forward compatible to two major versions, but I guess the Kotlin/JS team hasn't stuck to that
c
I don’t think I’ve specifically seen that “two major versions” compatibility, maybe that’s only for JVM, or only for Stable components? There’s still a lot of non-stable components to MPP. and Kotlin/JS is supposed to be stable from 1.8+ so hopefully they will be able to stick to that promise there. But unfortunately, Native is still in Beta, so until everything is stable there really are no guarantees, and libraries will need to explicitly support each version on all targets. Definitely makes library maintenance more of a burden than I would like
r
Yep, from https://kotlinlang.org/docs/kotlin-evolution.html#evolving-the-binary-format:
Please note that not all target platforms have reached this level of stability (but Kotlin/JVM has).
As you say, hopefully that will change moving forward.