I just updated to `4.4.3` with kotlin `1.4.32` and...
# kotest
j
I just updated to
4.4.3
with kotlin
1.4.32
and am seeing some method not found exceptions in my build pipeline that I don’t see locally.
Copy code
java.lang.NoSuchMethodError: 'java.lang.Object kotlinx.coroutines.DelayKt.delay-VtjQ1oo(double, kotlin.coroutines.Continuation)'
        at io.kotest.assertions.timing.EventuallyKt.eventually(eventually.kt:123)
        at io.kotest.assertions.timing.EventuallyKt.eventually$default(eventually.kt:77)
        at io.kotest.assertions.timing.EventuallyKt.eventually-rnQQ1Ag(eventually.kt:48)
Dropping back down to Kotest
4.4.1
seemed to work. Building on Java 11.
s
Yeah we've seen this before, duration is experimental in Kotlin and we shouldn't have used it. https://github.com/kotest/kotest/issues/2149 @Jim perhaps its worth getting this into 4.5 after all ?
j
Yeah I can get to that this week
s
I don't mind doing the work, if we agree on an approach
p
s
Yeah that's really annoying
j
😞 just release it already
p
i've been trying 1.5 ... no go 😞
Copy code
Caused by: java.lang.NoSuchMethodError: 'io.kotest.assertions.until.FixedInterval io.kotest.assertions.until.FixedIntervalKt.fixed-LRDsOJo(long)'
(works fine with 4.4.3 and 1.4.32)
s
We're going to add a new eventually package that doesn't use durations at all. Hopefully within a few days
p
🙏
j
Yep gonna start on that tomorrow.. I need a break tonight
s
Slacker ! ;)
p
thanks guys 😄
gents - did these changes make it in?
eventually
seems to be still using kotlin.time.Duration and it’s blowing up at runtime being a value class in kotlin 1.5 - am i doing something wrong?
Caused by: java.lang.NoSuchMethodError: 'java.lang.Object io.kotest.assertions.timing.EventuallyKt.eventually-D5N0EJY(long, kotlin.jvm.functions.Function1, kotlin.coroutines.Continuation)'
first parameter is a
long
looks like code previously built against an
inline class
with 1.4 is not compatible with 1.5 where this particular class was changed to a
value class
? that seems alarming
s
They have changed the durations yes
So we need to rebuild teh eventually support - we're going to add a new package with a fresh implementation that doesn't use durations at all
j
“Slacker” is right 😞 gonna take a look at lunch today
s
now that 4.5 is out, we can do this for a 4.5.1 release
p
🙏