Since 2.0-RC1, libraries compiled with K2 are no l...
# arrow-contributors
a
Since 2.0-RC1, libraries compiled with K2 are no longer "poisoned", so they can be distributed and consumed as regular libraries. Since we are really close to merging
arrow-2
into
main
, I would like to hear your opinion into also making the move to Kotlin 2.0 for that branch. • there's a new default to generate lambdas which we may benefit from • our main blocking rock, KSP, is officially supported To give the full context, our current setup is to compile with both 1.9.x and 2.0, but only test with 1.9.x and publish those too
c
How much trust to we have that K2-RC1 won't introduce errors into Arrow that won't be caught by CI? If we trust it to be safe, and since they can be consumed by non-K2 users, I see no reason to delay migrating to K2.
a
I know for a fact that Arrow is part of the "user projects" which are checked on each PR of the compiler, so from that standpoint we have quite some guarantees; and then we run CI on every platform ourselves
arrow 1
c
Ah, that's quite a strong guarantee indeed.
y
I think it's worth it to go for the move. Using K2 will obviously only affect the next published version of arrow, so if something goes wrong we'll likely know about it quickly enough . Also, Arrow 2 has some breaking changes anyways, so using K2 will be just another minor concern that consumers updating should be aware of
s
I am okay with this, this will only be for 2.0.0-SNAPSHOT / ALPHA / RC releases. So I am not so much concerned about a breakage downstream either, and hopefully everyone will switch to K2 immediately after release and then we also release Arrow 2 with stable K2.