Kotlin/kotlinx.coroutines

Release Kotlin 2.1-compatible version

JakeWharton opened this issue · 2 comments

Per KT-72471 (comment), the current release (1.9.0) depends on an old constructor signature of @SubclassOptInRequired which was changed in Kotlin 2.1 as part of stabilization.

Trying to build a JS binary with -Xpartial-linkage=disable produces the following error:

e: There is still an unbound symbol at the end of IR linkage process:
Unbound public symbol IrConstructorSymbolImpl: kotlin/SubclassOptInRequired.<init>|<init>(kotlin.reflect.KClass<out|kotlin.Annotation>){}[0]

I can enable partial linkage for now to work around the problem, but we generally are wary of doing so (especially for JS). Is it possible to get a new release built with Kotlin 2.1 so that the annotation correctly links against the new vararg-based signature and we can go back to disabling partial linkage? Thanks!