Closed waltkb closed 3 days ago
I just tested the snapshot, but the same error happens with id("love.forte.plugin.suspend-transform") version "2.0.0-0.9.0-dev1"
Hello. Looking at the stack of exceptions alone, there doesn't seem to be anything for this plugin, and I'm not quite sure what's causing it. Maybe try removing the relevant annotations within the companion object, or in the class as a whole, and see what changes?
I also seem to have found some issues with IllegalArgumentException: Failed requirement
on kotlin's YouTrack, so I wonder if they could be related to this issue? Their problems also seem to occur after upgrading Kotlin 2.0:
https://youtrack.jetbrains.com/issue/KT-69211/K2-java.lang.IllegalArgumentException-Failed-requirement
Well, I unfortunately also don't know any more information than that it happens with this single file, and only when I changed id("love.forte.plugin.suspend-transform") version "0.6.0"
to id("love.forte.plugin.suspend-transform") version "0.9.0"
.
In the YouTrack issue you linked someone says upgrading to Kotlin-2.0.20-Beta1
resolved their java.lang.IllegalArgumentException: Failed requirement
exception, so I tried that, and also upgraded to id("love.forte.plugin.suspend-transform") version "2.0.20-Beta1-0.9.1"
,
but unfortunately this didn't change anything, it's still the same exception:
org.jetbrains.kotlin.util.FileAnalysisException: While analysing waltid-identity/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/oci/OCIKeyRestApi.kt:270:5: java.lang.IllegalArgumentException: Failed requirement.
When I downgrade the plugin back to id("love.forte.plugin.suspend-transform") version "0.6.0"
for the single module it compiles fine without exception, but of course does not produce the java blocking and java async functions, as the Kotlin version mismatches.
I now tried to remove all love.forte.plugin.suspendtrans.annotation.JsPromise
, love.forte.plugin.suspendtrans.annotation.JvmAsync
, love.forte.plugin.suspendtrans.annotation.JvmBlocking
annotations from the file, and then it compiles without the exception.
I am now trying to add as many of the annotations back without the compilation failing, and in this file https://github.com/walt-id/waltid-identity/blob/main/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt it fails in 3 places in which it didn't before:
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14
'@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members:
@JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun getPublicKeyAsync(): Promise<out Key>
The following declaration is incompatible because return type is different:
@JsPromise() @Api4Js() actual fun getPublicKeyAsync(): Promise<out JWKKey>
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14
'@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members:
@JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun getMetaAsync(): Promise<out KeyMeta>
The following declaration is incompatible because return type is different:
@JsPromise() @Api4Js() actual fun getMetaAsync(): Promise<out JwkKeyMeta>
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14
'@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members:
@JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun signRawAsync(plaintext: ByteArray): Promise<out Any>
The following declaration is incompatible because return type is different:
@JsPromise() @Api4Js() actual fun signRawAsync(plaintext: ByteArray): Promise<out ByteArray>
All the return types that are not accepted are more specific instead of more general, so it should work fine? In this case it's not taking the return types from the expect class though (it has the same return types, not any more general ones), but the superclass that the expect class implements.
I was able to add back all @JvmBlocking/@JvmAsync/@JsPromise annotations to the other file that had the FileAnalysisException: While analysing ... IllegalArgumentException: Failed requirement
exception, even in the companion object, except for one exception that I can pinpoint to this function: https://github.com/walt-id/waltid-identity/blob/update-suspendtransform/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/oci/OCIKeyRestApi.kt#L286 suspend fun generateKey(type: KeyType, config: OCIKeyMetadata): OCIKeyRestApi
.
When any of @JvmBlocking
or @JvmAsync
or @JsPromise
is applied to this function, the above mentioned FileAnalysisException: While analysing ... IllegalArgumentException: Failed requirement
exception occurs during compilation.
It also seems not do have to do anything with the actual function content, just the function definition, because the exception even happens with:
@OptIn(ExperimentalSerializationApi::class)
@JvmBlocking
@JsExport.Ignore
suspend fun generateKey(type: KeyType, config: OCIKeyMetadata): OCIKeyRestApi? {
return null
}
@OptIn(ExperimentalSerializationApi::class)
@JsPromise
@JsExport.Ignore
suspend fun generateKey(type: KeyType, config: OCIKeyMetadata): Any? {
return null
}
And when @JvmBlocking
and @JvmAsync
and @JsPromise
is removed, it compiles without failing.
Ok, so it seems to have to do something with combining @OptIn(ExperimentalSerializationApi::class)
and any of @JvmBlocking
/@JvmAsync
/@JsPromise
.
So this works:
@JvmBlocking
@JsExport.Ignore
suspend fun generateKey(type: KeyType, config: OCIKeyMetadata): OCIKeyRestApi? {
return null
}
And this fails with the exception org.jetbrains.kotlin.util.FileAnalysisException: While analysing <file> java.lang.IllegalArgumentException: Failed requirement.
@OptIn(ExperimentalSerializationApi::class)
@JvmBlocking
@JsExport.Ignore
suspend fun generateKey(type: KeyType, config: OCIKeyMetadata): OCIKeyRestApi? {
return null
}
I was indeed able to fix the org.jetbrains.kotlin.util.FileAnalysisException: While analysing <file> java.lang.IllegalArgumentException: Failed requirement.
exception by simply removing the @OptIn(ExperimentalSerializationApi::class)
annotation from the specific function.
Do you know why this exception might occur with just these multiple annotations on the same function definition?
I guess this just leaves these compilation exceptions with @JsPromise
open?
I am now trying to add as many of the annotations back without the compilation failing, and in this file https://github.com/walt-id/waltid-identity/blob/main/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt it fails in 3 places in which it didn't before:
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14 '@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members: @JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun getPublicKeyAsync(): Promise<out Key> The following declaration is incompatible because return type is different: @JsPromise() @Api4Js() actual fun getPublicKeyAsync(): Promise<out JWKKey>
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14 '@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members: @JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun getMetaAsync(): Promise<out KeyMeta> The following declaration is incompatible because return type is different: @JsPromise() @Api4Js() actual fun getMetaAsync(): Promise<out JwkKeyMeta>
e: waltid-identity/waltid-libraries/waltid-crypto/src/jsMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.js.kt:30:14 '@OptIn(...) @JsExport() @Serializable() @SerialName(...) actual class JWKKey : Key' has no corresponding members for expected class members: @JvmBlocking() @JvmAsync() @JsPromise() @Api4Js() fun signRawAsync(plaintext: ByteArray): Promise<out Any> The following declaration is incompatible because return type is different: @JsPromise() @Api4Js() actual fun signRawAsync(plaintext: ByteArray): Promise<out ByteArray>
All the return types that are not accepted are more specific instead of more general, so it should work fine? In this case it's not taking the return types from the expect class though (it has the same return types, not any more general ones), but the superclass that the expect class implements.
There's something about not being able to work with @OptIn(xxx::class)
, I did some simple testing and it seems that when making a copy of an annotation, any annotation that has a KClass
type parameter present produces Failed requirement
, for example:
annotation class Values(val target: KClass<*>)
class OptInTest {
@Values(OptInTest::class) // error
@JvmBlocking
@JvmAsync
suspend fun run(): Int = 1
}
So far I seem to have found a way to fix it, but it's also possible to just disable copying it by excluding OptIn
.
build.gradle.kts
:
extensions.getByType<SuspendTransformGradleExtension>().apply {
// useJvmDefault()
// replace to:
transformers[TargetPlatform.JVM] = mutableListOf(
// Add `kotlin.OptIn` to copyAnnotationExcludes
jvmBlockingTransformer.copy(
copyAnnotationExcludes = buildList {
addAll(jvmBlockingTransformer.copyAnnotationExcludes)
add(ClassInfo("kotlin", "OptIn"))
}
),
// Add `kotlin.OptIn` to copyAnnotationExcludes
jvmAsyncTransformer.copy(
copyAnnotationExcludes = buildList {
addAll(jvmAsyncTransformer.copyAnnotationExcludes)
add(ClassInfo("kotlin", "OptIn"))
}
)
)
}
But it's also true that OptIn
doesn't need to be copied 🤔, so maybe it will be added directly to jvmDefault later as well.
About the expect/actual
classes, if you mark @JsPromise
in Key
, JWKKKey
and JWKKey.js
, that seems to solve the problem for now.
commonMain
:
// Key.kt
@JsExport
abstract class Key {
@JsPromise
@JsExport.Ignore
abstract suspend fun run(): Any
}
// KeyImpl.kt
expect class KeyImpl : Key {
@JsPromise
override suspend fun run(): ByteArray
}
jsMain
:
// KeyImpl.js.kt
@JsExport
actual class KeyImpl : Key() {
@JsExport.Ignore
@JsPromise
actual override suspend fun run(): ByteArray {
TODO("Not yet implemented")
}
}
I would like to add adding @Throws(Exception::class)
annonation - because of iOS error handling - will cause the the plugin not working correctly
I'll try to show an example regarding this @Throws(Exception::class)
issue here:
https://github.com/walt-id/waltid-identity/commit/785e2cd9d609583d91227d9ff9d71b27bef1b12e#diff-90007ea059844737a1e4ad7c74a672b56fe4ed6b2d84660851f47c137d5a3a07 - This is an abstract class (Key
) with a set of abstract methods. When adding the annotation @Throws(Exception::class)
to any of the abstract methods, a compilation error occurs, however not in Key
, but the subclass JwkKey
, which is an expect class
, with actual class
implementations in jvmMain and jsMain.
This only happens when id("love.forte.plugin.suspend-transform") version "0.9.0"
or id("love.forte.plugin.suspend-transform") version "2.0.20-Beta1-0.9.1"
is applied, with id("love.forte.plugin.suspend-transform") version "0.6.0"
this does not come up (but of course this will not create any Java and JavaScipt blocking & async methods with Kotlin 2.0.0 / 2.0.20-Beta1).
This is the stack trace when adding @Throws(Exception::class)
to any method in Key
:
> Task :waltid-libraries:waltid-crypto:compileKotlinJvm FAILED
e: org.jetbrains.kotlin.util.FileAnalysisException: While analysing waltid-identity/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.kt:14:1: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.util.AnalysisExceptionsKt.wrapIntoFileAnalysisExceptionIfNeeded(AnalysisExceptions.kt:56)
at org.jetbrains.kotlin.fir.FirCliExceptionHandler.handleExceptionOnFileAnalysis(Utils.kt:180)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:46)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.resolveAndCheckFir(firUtils.kt:77)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.buildResolveAndCheckFirViaLightTree(firUtils.kt:88)
at org.jetbrains.kotlin.cli.jvm.compiler.pipeline.JvmCompilerPipelineKt.compileModuleToAnalyzedFir(jvmCompilerPipeline.kt:314)
at org.jetbrains.kotlin.cli.jvm.compiler.pipeline.JvmCompilerPipelineKt.compileModulesUsingFrontendIrAndLightTree(jvmCompilerPipeline.kt:116)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:155)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:50)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:104)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:48)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:101)
at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:453)
at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:62)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.doCompile(IncrementalCompilerRunner.kt:506)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:423)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:301)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:129)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:676)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:92)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1661)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:598)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:844)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:721)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:720)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1589)
Caused by: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:47)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirArgumentList.accept(FirArgumentList.kt:25)
at org.jetbrains.kotlin.fir.expressions.impl.FirGetClassCallImpl.acceptChildren(FirGetClassCallImpl.kt:35)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitGetClassCall(FirVisitor.kt:354)
at org.jetbrains.kotlin.fir.expressions.FirGetClassCall.accept(FirGetClassCall.kt:29)
at org.jetbrains.kotlin.fir.expressions.impl.FirVarargArgumentsExpressionImpl.acceptChildren(FirVarargArgumentsExpressionImpl.kt:37)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
org.jetbrains.kotlin.util.FileAnalysisException: While analysing waltid-identity/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.kt:14:1: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.util.AnalysisExceptionsKt.wrapIntoFileAnalysisExceptionIfNeeded(AnalysisExceptions.kt:56)
at org.jetbrains.kotlin.fir.FirCliExceptionHandler.handleExceptionOnFileAnalysis(Utils.kt:180)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:46)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.resolveAndCheckFir(firUtils.kt:77)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.buildResolveAndCheckFirViaLightTree(firUtils.kt:88)
at org.jetbrains.kotlin.cli.jvm.compiler.pipeline.JvmCompilerPipelineKt.compileModuleToAnalyzedFir(jvmCompilerPipeline.kt:314)
at org.jetbrains.kotlin.cli.jvm.compiler.pipeline.JvmCompilerPipelineKt.compileModulesUsingFrontendIrAndLightTree(jvmCompilerPipeline.kt:116)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:155)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:50)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:104)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:48)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:101)
at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:453)
at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:62)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.doCompile(IncrementalCompilerRunner.kt:506)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:423)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:301)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:129)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:676)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:92)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1661)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:598)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:844)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:721)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:720)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1589)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitAnnotationContainer(FirVisitor.kt:27)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitStatement(FirDefaultVisitor.kt:33)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitExpression(FirDefaultVisitor.kt:36)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitVarargArgumentsExpression(FirDefaultVisitor.kt:180)
at org.jetbrains.kotlin.fir.expressions.FirVarargArgumentsExpression.accept(FirVarargArgumentsExpression.kt:42)
at org.jetbrains.kotlin.fir.expressions.impl.FirResolvedArgumentList.acceptChildren(FirResolvedArgumentList.kt:35)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:48)
Caused by: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirArgumentList.accept(FirArgumentList.kt:25)
at org.jetbrains.kotlin.fir.expressions.impl.FirAnnotationCallImpl.acceptChildren(FirAnnotationCallImpl.kt:48)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitAnnotationCall(GeneratedDeclarationValidation.kt:39)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitAnnotationCall(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirAnnotationCall.accept(FirAnnotationCall.kt:40)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.acceptChildren(FirSimpleFunctionImpl.kt:69)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitSimpleFunction(FirVisitor.kt:138)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.accept(FirSimpleFunction.kt:51)
at org.jetbrains.kotlin.fir.declarations.GeneratedDeclarationValidationKt.validate(GeneratedDeclarationValidation.kt:21)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage.generateMemberFunctions(FirGeneratedScopes.kt:199)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage.access$generateMemberFunctions(FirGeneratedScopes.kt:175)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage$special$$inlined$createCache$1.invoke(FirCachesFactory.kt:71)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage$special$$inlined$createCache$1.invoke(FirCachesFactory.kt:69)
at org.jetbrains.kotlin.fir.caches.FirThreadUnsafeCache.getValue(FirThreadUnsafeCachesFactory.kt:40)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedClassDeclaredMemberScope.processFunctionsByName(FirGeneratedScopes.kt:281)
at org.jetbrains.kotlin.fir.scopes.FirCompositeScope.processFunctionsByName(FirCompositeScope.kt:55)
at org.jetbrains.kotlin.fir.scopes.FirNameAwareCompositeScope.processFunctionsByName(FirCompositeScope.kt:82)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectDeclaredFunctions(AbstractFirUseSiteMemberScope.kt:78)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctions(AbstractFirUseSiteMemberScope.kt:72)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.processFunctionsByName(AbstractFirUseSiteMemberScope.kt:63)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.getFunctionsFromSupertypesByName(AbstractFirUseSiteMemberScope.kt:148)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctionsFromSupertypes(AbstractFirUseSiteMemberScope.kt:98)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctions(AbstractFirUseSiteMemberScope.kt:74)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.processFunctionsByName(AbstractFirUseSiteMemberScope.kt:63)
at org.jetbrains.kotlin.fir.scopes.FirContainingNamesAwareScopeKt.processAllFunctions(FirContainingNamesAwareScope.kt:19)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:44)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker$ForExpectClass.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:39)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker$ForExpectClass.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:36)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.check(DeclarationCheckersDiagnosticComponent.kt:133)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.visitRegularClass(DeclarationCheckersDiagnosticComponent.kt:57)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.visitRegularClass(DeclarationCheckersDiagnosticComponent.kt:19)
at org.jetbrains.kotlin.fir.declarations.FirRegularClass.accept(FirRegularClass.kt:48)
at org.jetbrains.kotlin.fir.analysis.collectors.CheckerRunningDiagnosticCollectorVisitor.checkElement(CheckerRunningDiagnosticCollectorVisitor.kt:24)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.access$checkElement(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitWithDeclarationAndReceiver(AbstractDiagnosticCollectorVisitor.kt:1349)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitClassAndChildren(AbstractDiagnosticCollectorVisitor.kt:86)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitRegularClass(AbstractDiagnosticCollectorVisitor.kt:91)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitRegularClass(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.declarations.FirRegularClass.accept(FirRegularClass.kt:48)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.acceptChildren(FirFileImpl.kt:56)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitNestedElements(AbstractDiagnosticCollectorVisitor.kt:37)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitFile(AbstractDiagnosticCollectorVisitor.kt:1124)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitFile(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.declarations.FirFile.accept(FirFile.kt:42)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollector.collectDiagnostics(AbstractDiagnosticCollector.kt:36)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:34)
... 33 more
> Task :waltid-libraries:waltid-crypto:compileKotlinJs FAILED
e: org.jetbrains.kotlin.util.FileAnalysisException: While analysing waltid-identity/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.kt:14:1: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.util.AnalysisExceptionsKt.wrapIntoFileAnalysisExceptionIfNeeded(AnalysisExceptions.kt:56)
at org.jetbrains.kotlin.fir.FirCliExceptionHandler.handleExceptionOnFileAnalysis(Utils.kt:180)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:46)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.resolveAndCheckFir(firUtils.kt:77)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.buildResolveAndCheckFirViaLightTree(firUtils.kt:88)
at org.jetbrains.kotlin.cli.js.klib.JsCompilerPipelineKt.compileModulesToAnalyzedFirWithLightTree(jsCompilerPipeline.kt:190)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.processSourceModuleWithK2(K2JsIrCompiler.kt:584)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.produceSourceModule(K2JsIrCompiler.kt:485)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.doExecute(K2JsIrCompiler.kt:325)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:109)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:72)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:104)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:48)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:101)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:211)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:86)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.doCompile(IncrementalCompilerRunner.kt:506)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:423)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:301)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:129)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile$default(IncrementalCompilerRunner.kt:113)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execJsIncrementalCompiler(CompileServiceImpl.kt:609)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execJsIncrementalCompiler(CompileServiceImpl.kt:92)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1759)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:598)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:844)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:721)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:720)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1589)
Caused by: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:47)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirArgumentList.accept(FirArgumentList.kt:25)
at org.jetbrains.kotlin.fir.expressions.impl.FirGetClassCallImpl.acceptChildren(FirGetClassCallImpl.kt:35)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitGetClassCall(FirVisitor.kt:354)
at org.jetbrains.kotlin.fir.expressions.FirGetClassCall.accept(FirGetClassCall.kt:29)
at org.jetbrains.kotlin.fir.expressions.impl.FirVarargArgumentsExpressionImpl.acceptChildren(FirVarargArgumentsExpressionImpl.kt:37)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitAnnotationContainer(FirVisitor.kt:27)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitStatement(FirDefaultVisitor.kt:33)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitExpression(FirDefaultVisitor.kt:36)
at org.jetbrains.kotlin.fir.visitors.FirDefaultVisitor.visitVarargArgumentsExpression(FirDefaultVisitor.kt:180)
org.jetbrains.kotlin.util.FileAnalysisException: While analysing waltid-identity/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/jwk/JWKKey.kt:14:1: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.util.AnalysisExceptionsKt.wrapIntoFileAnalysisExceptionIfNeeded(AnalysisExceptions.kt:56)
at org.jetbrains.kotlin.fir.FirCliExceptionHandler.handleExceptionOnFileAnalysis(Utils.kt:180)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:46)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.resolveAndCheckFir(firUtils.kt:77)
at org.jetbrains.kotlin.fir.pipeline.FirUtilsKt.buildResolveAndCheckFirViaLightTree(firUtils.kt:88)
at org.jetbrains.kotlin.cli.js.klib.JsCompilerPipelineKt.compileModulesToAnalyzedFirWithLightTree(jsCompilerPipeline.kt:190)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.processSourceModuleWithK2(K2JsIrCompiler.kt:584)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.produceSourceModule(K2JsIrCompiler.kt:485)
at org.jetbrains.kotlin.cli.js.K2JsIrCompiler.doExecute(K2JsIrCompiler.kt:325)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:109)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:72)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:104)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:48)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:101)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:211)
at org.jetbrains.kotlin.incremental.IncrementalJsCompilerRunner.runCompiler(IncrementalJsCompilerRunner.kt:86)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.doCompile(IncrementalCompilerRunner.kt:506)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:423)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileNonIncrementally(IncrementalCompilerRunner.kt:301)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:129)
at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile$default(IncrementalCompilerRunner.kt:113)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execJsIncrementalCompiler(CompileServiceImpl.kt:609)
at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execJsIncrementalCompiler(CompileServiceImpl.kt:92)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1759)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:578)
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:598)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:844)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:721)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:720)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1589)
at org.jetbrains.kotlin.fir.expressions.FirVarargArgumentsExpression.accept(FirVarargArgumentsExpression.kt:42)
at org.jetbrains.kotlin.fir.expressions.impl.FirResolvedArgumentList.acceptChildren(FirResolvedArgumentList.kt:35)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:48)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitArgumentList(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirArgumentList.accept(FirArgumentList.kt:25)
at org.jetbrains.kotlin.fir.expressions.impl.FirAnnotationCallImpl.acceptChildren(FirAnnotationCallImpl.kt:48)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitAnnotationCall(GeneratedDeclarationValidation.kt:39)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitAnnotationCall(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.expressions.FirAnnotationCall.accept(FirAnnotationCall.kt:40)
at org.jetbrains.kotlin.fir.declarations.impl.FirSimpleFunctionImpl.acceptChildren(FirSimpleFunctionImpl.kt:69)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:31)
at org.jetbrains.kotlin.fir.declarations.FirGeneratedElementsValidator.visitElement(GeneratedDeclarationValidation.kt:29)
at org.jetbrains.kotlin.fir.visitors.FirVisitor.visitSimpleFunction(FirVisitor.kt:138)
at org.jetbrains.kotlin.fir.declarations.FirSimpleFunction.accept(FirSimpleFunction.kt:51)
at org.jetbrains.kotlin.fir.declarations.GeneratedDeclarationValidationKt.validate(GeneratedDeclarationValidation.kt:21)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage.generateMemberFunctions(FirGeneratedScopes.kt:199)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage.access$generateMemberFunctions(FirGeneratedScopes.kt:175)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage$special$$inlined$createCache$1.invoke(FirCachesFactory.kt:71)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedMemberDeclarationsStorage$CallableStorage$special$$inlined$createCache$1.invoke(FirCachesFactory.kt:69)
at org.jetbrains.kotlin.fir.caches.FirThreadUnsafeCache.getValue(FirThreadUnsafeCachesFactory.kt:40)
at org.jetbrains.kotlin.fir.scopes.impl.FirGeneratedClassDeclaredMemberScope.processFunctionsByName(FirGeneratedScopes.kt:281)
at org.jetbrains.kotlin.fir.scopes.FirCompositeScope.processFunctionsByName(FirCompositeScope.kt:55)
at org.jetbrains.kotlin.fir.scopes.FirNameAwareCompositeScope.processFunctionsByName(FirCompositeScope.kt:82)
at org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider$PlatformDependentFilteringScope.processFunctionsByName(FirKotlinScopeProvider.kt:144)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectDeclaredFunctions(AbstractFirUseSiteMemberScope.kt:78)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctions(AbstractFirUseSiteMemberScope.kt:72)
Caused by: java.lang.IllegalArgumentException: Failed requirement.
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.processFunctionsByName(AbstractFirUseSiteMemberScope.kt:63)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.getFunctionsFromSupertypesByName(AbstractFirUseSiteMemberScope.kt:148)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctionsFromSupertypes(AbstractFirUseSiteMemberScope.kt:98)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.collectFunctions(AbstractFirUseSiteMemberScope.kt:74)
at org.jetbrains.kotlin.fir.scopes.impl.AbstractFirUseSiteMemberScope.processFunctionsByName(AbstractFirUseSiteMemberScope.kt:63)
at org.jetbrains.kotlin.fir.scopes.FirContainingNamesAwareScopeKt.processAllFunctions(FirContainingNamesAwareScope.kt:19)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:44)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker$ForExpectClass.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:39)
at org.jetbrains.kotlin.fir.analysis.checkers.declaration.FirMultipleDefaultsInheritedFromSupertypesChecker$ForExpectClass.check(FirMultipleDefaultsInheritedFromSupertypesChecker.kt:36)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.check(DeclarationCheckersDiagnosticComponent.kt:133)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.visitRegularClass(DeclarationCheckersDiagnosticComponent.kt:57)
at org.jetbrains.kotlin.fir.analysis.collectors.components.DeclarationCheckersDiagnosticComponent.visitRegularClass(DeclarationCheckersDiagnosticComponent.kt:19)
at org.jetbrains.kotlin.fir.declarations.FirRegularClass.accept(FirRegularClass.kt:48)
at org.jetbrains.kotlin.fir.analysis.collectors.CheckerRunningDiagnosticCollectorVisitor.checkElement(CheckerRunningDiagnosticCollectorVisitor.kt:24)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.access$checkElement(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitWithDeclarationAndReceiver(AbstractDiagnosticCollectorVisitor.kt:1349)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitClassAndChildren(AbstractDiagnosticCollectorVisitor.kt:86)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitRegularClass(AbstractDiagnosticCollectorVisitor.kt:91)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitRegularClass(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.declarations.FirRegularClass.accept(FirRegularClass.kt:48)
at org.jetbrains.kotlin.fir.declarations.impl.FirFileImpl.acceptChildren(FirFileImpl.kt:56)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitNestedElements(AbstractDiagnosticCollectorVisitor.kt:37)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitFile(AbstractDiagnosticCollectorVisitor.kt:1124)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollectorVisitor.visitFile(AbstractDiagnosticCollectorVisitor.kt:29)
at org.jetbrains.kotlin.fir.declarations.FirFile.accept(FirFile.kt:42)
at org.jetbrains.kotlin.fir.analysis.collectors.AbstractDiagnosticCollector.collectDiagnostics(AbstractDiagnosticCollector.kt:36)
at org.jetbrains.kotlin.fir.pipeline.AnalyseKt.runCheckers(analyse.kt:34)
... 36 more
Ao! I did try to fix this in #60 but I seem to have forgotten to release it .... I've released version v2.0.20-Beta1-0.9.2, it should be fixed in #60, let me know if there are still problems!
Maybe I need to consider configuring a CI that automatically publishes snapshot versions for this kind of issue?
Hi, I just tried id("love.forte.plugin.suspend-transform") version "2.0.20-Beta1-0.9.2"
and I can confirm that compilation does indeed not fail there.
So it looks like the problem should be solved ~ this issue might be completed, or are there any other errors?
So it looks like the problem should be solved ~ this issue might be completed, or are there any other errors?
Yes indeed, I finally got around to try the generated functions, and they work great for the most part. So this issue is fixed from what I can see, I will close it now. Thank you very much for your help!
Hi,
since updating to Kotlin 2.0.0 and the suspend-transform plugin, a issue came up. It worked with
id("love.forte.plugin.suspend-transform") version "0.6.0"
and Kotlin 1.9.21.But when upgrading to Kotlin 2.0.0 and
id("love.forte.plugin.suspend-transform") version "0.9.0"
, I get an error at build for this file: https://github.com/walt-id/waltid-identity/blob/main/waltid-libraries/waltid-crypto/src/commonMain/kotlin/id/walt/crypto/keys/oci/OCIKeyRestApi.ktThe error is:
So it seems to happen for both compileKotlinJs and compileKotlinJvm tasks. The line number and character seems to indicate the error happens at
companion object {
of the file?Do you have any idea what this could be? Thanks for your help.