I have a library project I'm looking to get upgraded to 1.5 kotlin(targeting 1.4 api still). As part of that upgrade I'll be using kotlinx.coroutines 1.5.2 so I can use the
ReceiveChannel.onReceiveCatching
new goodness. But this project will be used by 1.4 people. Via the magic of gradle, they'll be upgraded to 1.5.2 coroutines lib running on 1.4. Is that kosher?
👀 1
g
Gerard Klijs
10/22/2021, 5:11 PM
Not really gradle magic, just how transitive depencies are managed. Not sure about the details with gradle, but I think it goes wrong if they have a direct depency on coroutines.
b
bezrukov
10/22/2021, 8:03 PM
It shouldn't be a problem, since new versions of coroutines are binary compatible with the older versions. That means the code compiled with 1.4 will work with 1.5.2.
I'm not sure about
@ExperimentalCoroutinesApi
though, so if they use it, it could be a problem
🙏 1
t
taer
10/25/2021, 2:44 PM
That is what I wanted to make sure of. 1.4 kotlin compilers using the 1.5 Kotlix-couroutines.
taer
10/25/2021, 2:45 PM
We didnt use any experimental APIs, and if anyone downstream did, well, they opted into it. 🙂