What's the correct version combination lately? Ko...
# kotest
c
What's the correct version combination lately? Kotlin 2.1.21 + Kotest 6.0.0.M3 Kotlin 2.2.0 + Kotest 6.0.0.M3
Copy code
e: java.lang.NoSuchMethodError: 'org.jetbrains.kotlin.ir.expressions.IrCall org.jetbrains.kotlin.ir.builders.ExpressionHelpersKt.irCall(org.jetbrains.kotlin.ir.builders.IrBuilderWithScope, org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol)'
        at io.kotest.framework.multiplatform.embeddablecompiler.Transformer.callLauncher(Transformer.kt:87)
        at io.kotest.framework.multiplatform.embeddablecompiler.JsTransformer.generateLauncher(JsTransformer.kt:25)
        at io.kotest.framework.multiplatform.embeddablecompiler.Transformer.visitModuleFragment(Transformer.kt:69)
        …
Kotlin 2.2.0 + Kotest 6.0.0.M4
Copy code
> Could not resolve all files for configuration ':bson-multiplatform:kotlinCompilerPluginClasspathIosSimulatorArm64Main'.
      > Could not find io.kotest:kotest-framework-multiplatform-plugin-embeddable-compiler:6.0.0.M4.
        Searched in the following locations:
          - <https://repo.maven.apache.org/maven2/io/kotest/kotest-framework-multiplatform-plugin-embeddable-compiler/6.0.0.M4/kotest-framework-multiplatform-plugin-embeddable-compiler-6.0.0.M4.pom>
Kotlin 2.2.0 + Kotest 6.0.0.M5
Copy code
* What went wrong:
Plugin [id: 'io.kotest.multiplatform', version: '6.0.0.M5', apply: false] was not found in any of the following sources:
b
There's no multiplatform plugin for M5, just io.kotest + KSP: https://github.com/JesusMcCloud/KMPotest
c
Hey! Thanks for the simple example repo. However it seems to have a few issues. First, IntelliJ fails to sync it:
Copy code
:shared:watchosDeviceArm64Main: Could not find io.kotest:kotest-framework-engine-watchosdevicearm64:6.0.0.M5.
Searched in the following locations:
  - <https://dl.google.com/dl/android/maven2/io/kotest/kotest-framework-engine-watchosdevicearm64/6.0.0.M5/kotest-framework-engine-watchosdevicearm64-6.0.0.M5.pom>
  - <https://repo.maven.apache.org/maven2/io/kotest/kotest-framework-engine-watchosdevicearm64/6.0.0.M5/kotest-framework-engine-watchosdevicearm64-6.0.0.M5.pom>
Required by:
    project :shared > io.kotest:kotest-framework-engine:6.0.0.M5
If I disable that platform, replace the
3 shouldBe 3
by
3 shouldBe 2
and run
./gradlew build
, then I get a successful build, so tests don't actually run at all.
b
run the test tasks manually. m5 does not run JS tests, but it does run some (but not report correctly. See the reports for this PR, for example. It does contain some magic not yet merged upstream.
c
You're saying that it's expected behavior in 6.0.0.M5 that failed tests won't fail a CI?
b
is the failure reported on stdout?
c
Yes, but only once, even though it should fail for multiple platforms Still, the build is marked successful
b
m5 is messy, but its the only release you can use for Kotlin 2.2. I'm also waiting for the next release to fix things and I contributed what I could to speed up the pocess
c
thanks for the info, at least