Git Product home page Git Product logo

lambdarpc.kt's People

Contributors

winter-yuki avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

lambdarpc.kt's Issues

Cleanup of returned from libservice functions

When libservice function returns a lambda, it saves it to the service's functional registry, and nobody deletes it. This is some kind of memory leak. So service should have a cleanup method that will be called by serviceContext at the end of its life.

Non-pure custom coders (composable coders)

Coders are specified in facade declarations and belong to the responsibility area of facade maintainer. Sometimes it is needed to add some functionality to the coder on the client side: data tracking framework for example.

Use-only facade declarations

When facade is used only for calls (not for libservice instance), there is no need of decoders for arguments and encoder for result.

Make lambda calls sequential by default

In the following case calls of lambda should be sequential:

fun main() = runBlocking {
    val ps = listOf(Point(9.0, 1.0), Point(5.0, 4.0))
    var k = 2
    val res = compute(ps) {
        (it.x.pow(k) + it.y.pow(k)).pow(1.0 / k).also { k++ }
    }
    println(res)
}

To enable parallel invocation add an annotation:

fun main() = runBlocking {
    val ps = listOf(Point(9.0, 1.0), Point(5.0, 4.0))
    val k = AtomicInteger(2)
    val res = compute(ps) @par {
        val k = k.getAndIncrement()
        (it.x.pow(k) + it.y.pow(k)).pow(1.0 / k)
    }
    println(res)
}

Cancelled: Collection of requests completed

Occurs when running lazy example

Exception in thread "DefaultDispatcher-worker-1" io.grpc.StatusException: CANCELLED: Collection of requests completed exceptionally
        at io.grpc.Status.asException(Status.java:550)
        at io.grpc.kotlin.ClientCalls$rpcImpl$1$1$1.onClose(ClientCalls.kt:295)
        at io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:463)
        at io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:427)
        at io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:460)
        at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:562)
        at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:70)
        at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:743)
        at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:722)
        at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
        at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: kotlinx.coroutines.JobCancellationException: StandaloneCoroutine was cancelled; job=StandaloneCoroutine{Cancelled}@6f9c4367

Polymorphism

The type of the two-component (frontend-backend) function is a list of serializers for its arguments and result. So polymorphism means: do not deserialize a value, just pass it through.

The implementation and applications of this mechanism are not clear. Maybe it can be useful in particular cases such as CPS (continuation-passing style: (a -> r) -> r).

Add customizable timeouts

Using gRPC deadlines and coroutine timeouts make it possible to interrupt invocations after some (user-provided) time.
It is needed to add cancellation into libservice interface

The Kotlin Gradle plugin was loaded multiple times

The Kotlin Gradle plugin was loaded multiple times in different subprojects, which is not supported and may break the build. 
This might happen in subprojects that apply the Kotlin plugins with the Gradle 'plugins { ... }' DSL if they specify explicit versions, even if the versions are equal.
Please add the Kotlin plugin to the common parent project or the root project, then remove the versions in the subprojects.
If the parent project does not need the plugin, add 'apply false' to the plugin line.

Customizable exception rethrow

If some exception occurs remotelly, lambdarpc sends it back to the client end rethrows. And facade developer should have an ability to rethrow custom exception (even decerialized remote one).

org.jetbrains.kotlin.util.KotlinFrontEndException: Exception while analyzing expression

Occurred once on build:

$ ./gradlew example.basic.service1                                                     130 ↵

> Task :compileKotlin
'compileJava' task (current target is 11) and 'compileKotlin' task (current target is 1.8) jvm target compatibility should be set to the same Java version.
e: org.jetbrains.kotlin.util.KotlinFrontEndException: Exception while analyzing expression at (32,9) in /home/yukio/Diary/things/jbr/communicator/LambdaRPC.kt/src/main/kotlin/io/lambdarpc/serialization/FunctionSerializer.kt

Attachments:
expression.kt
function {
            if (f is ClientFunction) {
                clientFunction = f.encode()
            } else {
                val name = registry.register(f.toBackendFunction())
                channelFunction = channelFunction { accessName = name.n }
            }
        }
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.logOrThrowException(ExpressionTypingVisitorDispatcher.java:253)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.lambda$getTypeInfo$0(ExpressionTypingVisitorDispatcher.java:224)
        at org.jetbrains.kotlin.util.PerformanceCounter.time(PerformanceCounter.kt:101)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.getTypeInfo(ExpressionTypingVisitorDispatcher.java:164)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.getTypeInfo(ExpressionTypingVisitorDispatcher.java:134)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.getTypeInfo(ExpressionTypingVisitorDispatcher.java:146)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingServices.checkFunctionReturnType(ExpressionTypingServices.java:178)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingServices.checkFunctionReturnType(ExpressionTypingServices.java:165)
        at org.jetbrains.kotlin.resolve.BodyResolver.resolveFunctionBody(BodyResolver.java:1036)
        at org.jetbrains.kotlin.resolve.BodyResolver.resolveFunctionBody(BodyResolver.java:981)
        at org.jetbrains.kotlin.resolve.BodyResolver.resolveFunctionBodies(BodyResolver.java:966)
        at org.jetbrains.kotlin.resolve.BodyResolver.resolveBehaviorDeclarationBodies(BodyResolver.java:126)
        at org.jetbrains.kotlin.resolve.BodyResolver.resolveBodies(BodyResolver.java:253)
        at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations(LazyTopDownAnalyzer.kt:227)
        at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations$default(LazyTopDownAnalyzer.kt:58)
        at org.jetbrains.kotlin.cli.jvm.compiler.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(TopDownAnalyzerFacadeForJVM.kt:127)
        at org.jetbrains.kotlin.cli.jvm.compiler.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration$default(TopDownAnalyzerFacadeForJVM.kt:96)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler$analyze$1.invoke(KotlinToJVMBytecodeCompiler.kt:262)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler$analyze$1.invoke(KotlinToJVMBytecodeCompiler.kt:53)
        at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:113)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.analyze(KotlinToJVMBytecodeCompiler.kt:253)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules$cli(KotlinToJVMBytecodeCompiler.kt:100)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules$cli$default(KotlinToJVMBytecodeCompiler.kt:58)
        at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:170)
        at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:52)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:92)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:44)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:98)
        at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:434)
        at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:120)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally(IncrementalCompilerRunner.kt:357)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally$default(IncrementalCompilerRunner.kt:299)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:159)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:80)
        at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:622)
        at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:100)
        at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1713)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)
        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(Native Method)
        at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.io.FileNotFoundException: /home/yukio/Diary/things/jbr/communicator/LambdaRPC.kt/build/classes/kotlin/main/io/lambdarpc/transport/grpc/FunctionKt.class (No such file or directory)
        at java.base/java.io.FileInputStream.open0(Native Method)
        at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
        at org.jetbrains.kotlin.com.intellij.openapi.util.io.FileUtil.loadFileBytes(FileUtil.java:194)
        at org.jetbrains.kotlin.com.intellij.openapi.vfs.local.CoreLocalVirtualFile.contentsToByteArray(CoreLocalVirtualFile.java:100)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCliJavaFileManagerImpl.findClass(KotlinCliJavaFileManagerImpl.kt:110)
        at org.jetbrains.kotlin.resolve.jvm.KotlinJavaPsiFacade$CliFinder.findClass(KotlinJavaPsiFacade.java:491)
        at org.jetbrains.kotlin.resolve.jvm.KotlinJavaPsiFacade.findClass(KotlinJavaPsiFacade.java:189)
        at org.jetbrains.kotlin.load.java.JavaClassFinderImpl.findClass(JavaClassFinderImpl.kt:38)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope$classes$1.invoke(LazyJavaPackageScope.kt:76)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope$classes$1.invoke(LazyJavaPackageScope.kt:54)
        at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:578)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.findClassifier(LazyJavaPackageScope.kt:142)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.LazyJavaPackageScope.getContributedClassifier(LazyJavaPackageScope.kt:132)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedClassifier(JvmPackageScope.kt:55)
        at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedClassifier(ChainedMemberScope.kt:35)
        at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedClassifier(AbstractScopeAdapter.kt:44)
        at org.jetbrains.kotlin.descriptors.FindClassInModuleKt.findClassifierAcrossModuleDependencies(findClassInModule.kt:26)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.computeClassifierDescriptor(TypeDeserializer.kt:246)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.access$computeClassifierDescriptor(TypeDeserializer.kt:27)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer$classifierDescriptors$1.invoke(TypeDeserializer.kt:36)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer$classifierDescriptors$1.invoke(TypeDeserializer.kt:35)
        at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:578)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.typeConstructor(TypeDeserializer.kt:141)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.simpleType(TypeDeserializer.kt:79)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.type(TypeDeserializer.kt:67)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.typeArgument(TypeDeserializer.kt:277)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.simpleType(TypeDeserializer.kt:92)
        at org.jetbrains.kotlin.serialization.deserialization.TypeDeserializer.type(TypeDeserializer.kt:67)
        at org.jetbrains.kotlin.serialization.deserialization.MemberDeserializer.valueParameters(MemberDeserializer.kt:332)
        at org.jetbrains.kotlin.serialization.deserialization.MemberDeserializer.loadFunction(MemberDeserializer.kt:209)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope$OptimizedImplementation.computeFunctions(DeserializedMemberScope.kt:276)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope$OptimizedImplementation.access$computeFunctions(DeserializedMemberScope.kt:228)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope$OptimizedImplementation$functions$1.invoke(DeserializedMemberScope.kt:251)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope$OptimizedImplementation$functions$1.invoke(DeserializedMemberScope.kt:251)
        at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:578)
        at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:651)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope$OptimizedImplementation.getContributedFunctions(DeserializedMemberScope.kt:329)
        at org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedMemberScope.getContributedFunctions(DeserializedMemberScope.kt:82)
        at org.jetbrains.kotlin.load.java.lazy.descriptors.JvmPackageScope.getContributedFunctions(JvmPackageScope.kt:68)
        at org.jetbrains.kotlin.resolve.scopes.ChainedMemberScope.getContributedFunctions(ChainedMemberScope.kt:41)
        at org.jetbrains.kotlin.resolve.scopes.AbstractScopeAdapter.getContributedFunctions(AbstractScopeAdapter.kt:40)
        at org.jetbrains.kotlin.resolve.LazyExplicitImportScope$getContributedFunctions$1.invoke(LazyExplicitImportScope.kt:52)
        at org.jetbrains.kotlin.resolve.LazyExplicitImportScope$getContributedFunctions$1.invoke(LazyExplicitImportScope.kt:52)
        at org.jetbrains.kotlin.resolve.LazyExplicitImportScope.collectCallableMemberDescriptors(LazyExplicitImportScope.kt:123)
        at org.jetbrains.kotlin.resolve.LazyExplicitImportScope.getContributedFunctions(LazyExplicitImportScope.kt:52)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportScope$getContributedFunctions$1.invoke(LazyImportScope.kt:303)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportScope$getContributedFunctions$1.invoke(LazyImportScope.kt:303)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$collectFromImports$1.invoke(LazyImportScope.kt:116)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver$collectFromImports$1.invoke(LazyImportScope.kt:113)
        at org.jetbrains.kotlin.storage.LockBasedStorageManager.compute(LockBasedStorageManager.java:290)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportResolver.collectFromImports(LazyImportScope.kt:113)
        at org.jetbrains.kotlin.resolve.lazy.LazyImportScope.getContributedFunctions(LazyImportScope.kt:303)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerLevelsKt.getContributedFunctionsAndConstructors(TowerLevels.kt:393)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerLevelsKt.access$getContributedFunctionsAndConstructors(TowerLevels.kt:1)
        at org.jetbrains.kotlin.resolve.calls.tower.ScopeBasedTowerLevel.getFunctions(TowerLevels.kt:281)
        at org.jetbrains.kotlin.resolve.calls.tower.ScopeTowerProcessorsKt$createSimpleFunctionProcessor$1.invoke(ScopeTowerProcessors.kt:234)
        at org.jetbrains.kotlin.resolve.calls.tower.ScopeTowerProcessorsKt$createSimpleFunctionProcessor$1.invoke(ScopeTowerProcessors.kt:234)
        at org.jetbrains.kotlin.resolve.calls.tower.NoExplicitReceiverScopeTowerProcessor.simpleProcess(ScopeTowerProcessors.kt:152)
        at org.jetbrains.kotlin.resolve.calls.tower.SimpleScopeTowerProcessor$DefaultImpls.process(ScopeTowerProcessors.kt:60)
        at org.jetbrains.kotlin.resolve.calls.tower.AbstractSimpleScopeTowerProcessor.process(ScopeTowerProcessors.kt:63)
        at org.jetbrains.kotlin.resolve.calls.tower.PrioritizedCompositeScopeTowerProcessor.process(ScopeTowerProcessors.kt:38)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver.processTowerData(TowerResolver.kt:287)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver.access$processTowerData(TowerResolver.kt:80)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver$Task.process(TowerResolver.kt:161)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver$Task.processImplicitReceiver(TowerResolver.kt:246)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver$Task.run$processScope(TowerResolver.kt:198)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver$Task.run(TowerResolver.kt:209)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver.run(TowerResolver.kt:99)
        at org.jetbrains.kotlin.resolve.calls.tower.TowerResolver.runResolve(TowerResolver.kt:86)
        at org.jetbrains.kotlin.resolve.calls.KotlinCallResolver.resolveCall(KotlinCallResolver.kt:75)
        at org.jetbrains.kotlin.resolve.calls.tower.PSICallResolver.runResolutionAndInference(PSICallResolver.kt:101)
        at org.jetbrains.kotlin.resolve.calls.CallResolver.doResolveCallOrGetCachedResults(CallResolver.java:601)
        at org.jetbrains.kotlin.resolve.calls.CallResolver.lambda$computeTasksAndResolveCall$0(CallResolver.java:213)
        at org.jetbrains.kotlin.util.PerformanceCounter.time(PerformanceCounter.kt:101)
        at org.jetbrains.kotlin.resolve.calls.CallResolver.computeTasksAndResolveCall(CallResolver.java:211)
        at org.jetbrains.kotlin.resolve.calls.CallResolver.computeTasksAndResolveCall(CallResolver.java:199)
        at org.jetbrains.kotlin.resolve.calls.CallResolver.resolveFunctionCall(CallResolver.java:329)
        at org.jetbrains.kotlin.resolve.calls.CallExpressionResolver.getResolvedCallForFunction(CallExpressionResolver.kt:88)
        at org.jetbrains.kotlin.resolve.calls.CallExpressionResolver.getCallExpressionTypeInfoWithoutFinalTypeCheck(CallExpressionResolver.kt:210)
        at org.jetbrains.kotlin.resolve.calls.CallExpressionResolver.getCallExpressionTypeInfo(CallExpressionResolver.kt:187)
        at org.jetbrains.kotlin.types.expressions.BasicExpressionTypingVisitor.visitCallExpression(BasicExpressionTypingVisitor.java:708)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.visitCallExpression(ExpressionTypingVisitorDispatcher.java:388)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher$ForDeclarations.visitCallExpression(ExpressionTypingVisitorDispatcher.java:46)
        at org.jetbrains.kotlin.psi.KtCallExpression.accept(KtCallExpression.java:35)
        at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.lambda$getTypeInfo$0(ExpressionTypingVisitorDispatcher.java:175)
        ... 52 more


> Task :example.basic.service1
581 [main] INFO io.lambdarpc.service.LibService - Lib service f74127d2-d27f-4271-b46e-10b79143260e started on localhost:8088

Functional type kind annotation

Check if user passed proper function as an argument according to the annotations (in facade).
Free-only, non-free only...

Collection of requests completed exceptionally

On stress test evaluation

Exception in thread "main" io.lambdarpc.exceptions.OtherException: CANCELLED: Collection of requests completed exceptionally
        at io.lambdarpc.functions.frontend.AbstractConnectedFunction$invoke$2.invokeSuspend(AbstractConnectedFunction.kt:120)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)

Facade argument mapping

There are different conventions of argument passing in different languages. For instance, in Kotlin lambdas are passed as the last argument, in Julia -- as first.

Detach invocation

Execute frontend function and do not wait for the result.

Can be used in the pipeline construction: every function calls next.

ExecutionChannel reopen on new streaming connection established

ChannelFunction will be able to overlive its connection. It is especially useful for lazy pipelines.

fun f(g: suspend (Int) -> Int): suspend () -> Int {
    // Assume that g is ChannelFunction 
    val res = g(42) // Ok
    return {
        res + g(42) // Execution channel of g is invalidated here
    }
}

Let f :: (a -> b) -> (c -> d) be a libservice function. It's execution is called head execution.
Let h :: a -> b. Function g = f(h) is a client function that remembers h and headExecutionId. On call g(c) it provides it's headExecutionId for a libservice, which reconnects corresponding execution channels.
If d is also a function, it still remembers h and the same headExecutionId as a g.

The problem is how to pass g to some other libservices: libservices communication should still be direct and execution channel should be reconnected. Maybe it can be solved by more complex frontend function.

Channel function returning channel function

Lib:

suspend fun normMap(xs: List<Point>, transformNorm: suspend (Norm) -> Norm): List<Double> =
    xs.map { point -> transformNorm { it.x * it.x + it.y * it.y }(point) }

Client:

normMap(ps) { norm -> { point -> sqrt(norm(point)) } }

If ps points list contains only one point, everything is fine. If ps has more than one element, there is an exception on service

Exception in thread "DefaultDispatcher-worker-1" java.util.NoSuchElementException: Key 7bdf8f30-870a-4af0-a8a4-1cd5b99eaf94 is missing in the map.
        at kotlin.collections.MapsKt__MapWithDefaultKt.getOrImplicitDefaultNullable(MapWithDefault.kt:24)
        at kotlin.collections.MapsKt__MapsKt.getValue(Maps.kt:346)
        at io.lambdarpc.service.LibService.processResponse(LibService.kt:107)
        at io.lambdarpc.service.LibService.access$processResponse(LibService.kt:18)
        at io.lambdarpc.service.LibService$execute$1$invokeSuspend$lambda-1$$inlined$collect$1.emit(Collect.kt:142)
        at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:15)
        at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:15)
        at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:77)
        at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:59)
        at io.grpc.kotlin.ServerCalls$serverCallListener$requests$1.invokeSuspend(ServerCalls.kt:227)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

If working execution channel cleanup is disabled, map duplicates first block result for each input list element.

Frontend cache

Pure frontend functions can cache results to make less network calls.

Kotlin backend internal error

e: org.jetbrains.kotlin.backend.common.BackendException: Backend Internal error: Exception during IR lowering
File being compiled: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/lambdarpc/src/main/kotlin/io/lambdarpc/dsl/ServiceDispatcher.kt
The root cause java.lang.RuntimeException was thrown at: org.jetbrains.kotlin.backend.jvm.codegen.FunctionCodegen.generate(FunctionCodegen.kt:50)
        at org.jetbrains.kotlin.backend.common.CodegenUtil.reportBackendException(CodegenUtil.kt:239)
        at org.jetbrains.kotlin.backend.common.CodegenUtil.reportBackendException$default(CodegenUtil.kt:235)
        at org.jetbrains.kotlin.backend.common.phaser.PerformByIrFilePhase.invokeSequential(performByIrFile.kt:68)
        at org.jetbrains.kotlin.backend.common.phaser.PerformByIrFilePhase.invoke(performByIrFile.kt:55)
        at org.jetbrains.kotlin.backend.common.phaser.PerformByIrFilePhase.invoke(performByIrFile.kt:41)
        at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:96)
        at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:29)
        at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:96)
        at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:29)
        at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:96)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:43)
        at org.jetbrains.kotlin.backend.jvm.JvmIrCodegenFactory.doGenerateFilesInternal(JvmIrCodegenFactory.kt:195)
        at org.jetbrains.kotlin.backend.jvm.JvmIrCodegenFactory.generateModule(JvmIrCodegenFactory.kt:60)
        at org.jetbrains.kotlin.codegen.KotlinCodegenFacade.compileCorrectFiles(KotlinCodegenFacade.java:35)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.generate(KotlinToJVMBytecodeCompiler.kt:331)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules$cli(KotlinToJVMBytecodeCompiler.kt:123)
        at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules$cli$default(KotlinToJVMBytecodeCompiler.kt:58)
        at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:170)
        at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:52)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:92)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:44)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:98)
        at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:434)
        at org.jetbrains.kotlin.incremental.IncrementalJvmCompilerRunner.runCompiler(IncrementalJvmCompilerRunner.kt:120)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally(IncrementalCompilerRunner.kt:357)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileIncrementally$default(IncrementalCompilerRunner.kt:299)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compileImpl(IncrementalCompilerRunner.kt:159)
        at org.jetbrains.kotlin.incremental.IncrementalCompilerRunner.compile(IncrementalCompilerRunner.kt:80)
        at org.jetbrains.kotlin.daemon.CompileServiceImplBase.execIncrementalCompiler(CompileServiceImpl.kt:622)
        at org.jetbrains.kotlin.daemon.CompileServiceImplBase.access$execIncrementalCompiler(CompileServiceImpl.kt:100)
        at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:1713)
        at jdk.internal.reflect.GeneratedMethodAccessor105.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359)
        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(Native Method)
        at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.lang.RuntimeException: Exception while generating code for:
FUN name:ServiceDispatcher visibility:public modality:FINAL <> (endpoints:kotlin.Array<out kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>>) returnType:io.lambdarpc.dsl.ServiceDispatcher
  VALUE_PARAMETER name:endpoints index:0 type:kotlin.Array<out kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>> varargElementType:kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint> [vararg]
  BLOCK_BODY
    VAR name:registry type:io.lambdarpc.transport.MapServiceRegistry [val]
      CONSTRUCTOR_CALL 'public constructor <init> (endpoints: kotlin.collections.Map<io.lambdarpc.utils.ServiceId, kotlin.collections.List<io.lambdarpc.utils.Endpoint>>) [primary] declared in io.lambdarpc.transport.MapServiceRegistry' type=io.lambdarpc.transport.MapServiceRegistry origin=null
        endpoints: CALL 'public final fun associateRepeatable <T, K, V> (transform: kotlin.Function1<T of io.lambdarpc.utils._KotlinKt.associateRepeatable, kotlin.Pair<K of io.lambdarpc.utils._KotlinKt.associateRepeatable, V of io.lambdarpc.utils._KotlinKt.associateRepeatable>>): kotlin.collections.MutableMap<K of io.lambdarpc.utils._KotlinKt.associateRepeatable, out kotlin.collections.MutableList<V of io.lambdarpc.utils._KotlinKt.associateRepeatable>> [inline] declared in io.lambdarpc.utils._KotlinKt' type=kotlin.collections.MutableMap<io.lambdarpc.utils.ServiceId, out kotlin.collections.MutableList<io.lambdarpc.utils.Endpoint>> origin=null
          <T>: kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>
          <K>: io.lambdarpc.utils.ServiceId
          <V>: io.lambdarpc.utils.Endpoint
          $receiver: GET_VAR 'endpoints: kotlin.Array<out kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>> [vararg] declared in io.lambdarpc.dsl.ServiceDispatcherKt.ServiceDispatcher' type=kotlin.Array<out kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>> origin=null
          transform: BLOCK type=kotlin.Function1<kotlin.Nothing, kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>> origin=LAMBDA
            COMPOSITE type=kotlin.Unit origin=null
            FUNCTION_REFERENCE 'private final fun ServiceDispatcher$lambda-0 (it: kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>): kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint> declared in io.lambdarpc.dsl.ServiceDispatcherKt' type=kotlin.Function1<kotlin.Nothing, kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>> origin=INLINE_LAMBDA reflectionTarget=null
    RETURN type=kotlin.Nothing from='public final fun ServiceDispatcher (vararg endpoints: kotlin.Pair<io.lambdarpc.utils.ServiceId, io.lambdarpc.utils.Endpoint>): io.lambdarpc.dsl.ServiceDispatcher declared in io.lambdarpc.dsl.ServiceDispatcherKt'
      CONSTRUCTOR_CALL 'public constructor <init> (registry: io.lambdarpc.transport.ServiceRegistry) [primary] declared in io.lambdarpc.dsl.ServiceDispatcher' type=io.lambdarpc.dsl.ServiceDispatcher origin=null
        registry: GET_VAR 'val registry: io.lambdarpc.transport.MapServiceRegistry [val] declared in io.lambdarpc.dsl.ServiceDispatcherKt.ServiceDispatcher' type=io.lambdarpc.transport.MapServiceRegistry origin=null

        at org.jetbrains.kotlin.backend.jvm.codegen.FunctionCodegen.generate(FunctionCodegen.kt:50)
        at org.jetbrains.kotlin.backend.jvm.codegen.FunctionCodegen.generate$default(FunctionCodegen.kt:43)
        at org.jetbrains.kotlin.backend.jvm.codegen.ClassCodegen.generateMethodNode(ClassCodegen.kt:360)
        at org.jetbrains.kotlin.backend.jvm.codegen.ClassCodegen.generateMethod(ClassCodegen.kt:377)
        at org.jetbrains.kotlin.backend.jvm.codegen.ClassCodegen.generate(ClassCodegen.kt:131)
        at org.jetbrains.kotlin.backend.jvm.JvmLowerKt$codegenPhase$1$1.lower(JvmLower.kt:304)
        at org.jetbrains.kotlin.backend.common.phaser.FileLoweringPhaseAdapter.invoke(PhaseBuilders.kt:120)
        at org.jetbrains.kotlin.backend.common.phaser.FileLoweringPhaseAdapter.invoke(PhaseBuilders.kt:116)
        at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:96)
        at org.jetbrains.kotlin.backend.common.phaser.PerformByIrFilePhase.invokeSequential(performByIrFile.kt:65)
        ... 44 more
Caused by: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't inline method call: CALL 'public final fun associateRepeatable <T, K, V> (transform: kotlin.Function1<T of io.lambdarpc.utils._KotlinKt.associateRepeatable, kotlin.Pair<K of io.lambdarpc.utils._KotlinKt.associateRepeatable, V of io.lambdarpc.utils._KotlinKt.associateRepeatable>>): kotlin.collections.MutableMap<K of io.lambdarpc.utils._KotlinKt.associateRepeatable, out kotlin.collections.MutableList<V of io.lambdarpc.utils._KotlinKt.associateRepeatable>> [inline] declared in io.lambdarpc.utils._KotlinKt' type=kotlin.collections.MutableMap<io.lambdarpc.utils.ServiceId, out kotlin.collections.MutableList<io.lambdarpc.utils.Endpoint>> origin=null
Method: null
File is unknown
The root cause java.io.FileNotFoundException was thrown at: java.base/java.io.FileInputStream.open0(Native Method)
        at org.jetbrains.kotlin.codegen.inline.InlineCodegen.performInline(InlineCodegen.kt:63)
        at org.jetbrains.kotlin.backend.jvm.codegen.IrInlineCodegen.genInlineCall(IrInlineCodegen.kt:159)
        at org.jetbrains.kotlin.backend.jvm.codegen.IrInlineCallGenerator$DefaultImpls.genCall(IrInlineCallGenerator.kt:29)
        at org.jetbrains.kotlin.backend.jvm.codegen.IrInlineCodegen.genCall(IrInlineCodegen.kt:32)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitCall(ExpressionCodegen.kt:495)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitCall(ExpressionCodegen.kt:131)
        at org.jetbrains.kotlin.ir.expressions.impl.IrCallImpl.accept(IrCallImpl.kt:47)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.gen(ExpressionCodegen.kt:211)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.generateConstructorArguments(ExpressionCodegen.kt:615)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitConstructorCall(ExpressionCodegen.kt:603)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitConstructorCall(ExpressionCodegen.kt:131)
        at org.jetbrains.kotlin.ir.expressions.impl.IrConstructorCallImpl.accept(IrConstructorCallImpl.kt:28)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitVariable(ExpressionCodegen.kt:625)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitVariable(ExpressionCodegen.kt:131)
        at org.jetbrains.kotlin.ir.declarations.impl.IrVariableImpl.accept(IrVariableImpl.kt:74)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitStatementContainer(ExpressionCodegen.kt:433)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitBlockBody(ExpressionCodegen.kt:437)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.visitBlockBody(ExpressionCodegen.kt:131)
        at org.jetbrains.kotlin.ir.expressions.IrBlockBody.accept(IrBody.kt:54)
        at org.jetbrains.kotlin.backend.jvm.codegen.ExpressionCodegen.generate(ExpressionCodegen.kt:228)
        at org.jetbrains.kotlin.backend.jvm.codegen.FunctionCodegen.doGenerate(FunctionCodegen.kt:122)
        at org.jetbrains.kotlin.backend.jvm.codegen.FunctionCodegen.generate(FunctionCodegen.kt:48)
        ... 53 more
Caused by: java.io.FileNotFoundException: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/lambdarpc/build/classes/kotlin/main/io/lambdarpc/utils/_KotlinKt.class (No such file or directory)
        at java.base/java.io.FileInputStream.open0(Native Method)
        at java.base/java.io.FileInputStream.open(FileInputStream.java:219)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:157)
        at org.jetbrains.kotlin.com.intellij.openapi.util.io.FileUtil.loadFileBytes(FileUtil.java:194)
        at org.jetbrains.kotlin.com.intellij.openapi.vfs.local.CoreLocalVirtualFile.contentsToByteArray(CoreLocalVirtualFile.java:100)
        at org.jetbrains.kotlin.codegen.inline.SourceCompilerForInlineKt.loadCompiledInlineFunction(SourceCompilerForInline.kt:91)
        at org.jetbrains.kotlin.backend.jvm.codegen.IrSourceCompilerForInline.compileInlineFunction(IrSourceCompilerForInline.kt:91)
        at org.jetbrains.kotlin.codegen.inline.InlineCodegen.performInline(InlineCodegen.kt:47)
        ... 74 more


> Task :examples:compileKotlin FAILED
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (3, 21): Unresolved reference: utils
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (4, 21): Unresolved reference: utils
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (6, 57): Unresolved reference: toSid
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (7, 17): Unresolved reference: Endpoint
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (9, 57): Unresolved reference: toSid
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/Conf.kt: (10, 17): Unresolved reference: Endpoint
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (3, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (4, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (13, 25): Unresolved reference: ServiceDispatcher
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (21, 43): Unresolved reference: it
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (23, 65): Unresolved reference: it
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (29, 79): Cannot infer a type for this parameter. Please specify it explicitly.
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (29, 82): Cannot infer a type for this parameter. Please specify it explicitly.
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (31, 54): Unresolved reference: ff
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (34, 72): Cannot infer a type for this parameter. Please specify it explicitly.
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/client/Main.kt: (34, 82): Cannot infer a type for this parameter. Please specify it explicitly.
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (5, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (6, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (7, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (8, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (13, 20): Unresolved reference: Configuration
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (15, 22): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (15, 32): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (16, 23): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (16, 25): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (16, 35): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (16, 46): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (18, 31): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (18, 41): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (18, 43): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (18, 53): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 31): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 33): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 43): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 54): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 56): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (19, 66): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (21, 26): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (21, 38): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (21, 50): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (24, 5): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 5): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 7): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 19): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 21): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 33): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (25, 47): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (26, 5): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (29, 27): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (29, 45): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (29, 47): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (29, 59): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (29, 73): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (31, 20): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (31, 22): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (31, 34): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (32, 25): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (32, 43): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (32, 58): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Facade.kt: (33, 26): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (4, 21): Unresolved reference: coders
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (6, 21): Unresolved reference: functions
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (7, 36): Unresolved reference: serialization
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (8, 36): Unresolved reference: serialization
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (25, 21): Unresolved reference: CallDisconnectedChannelFunction
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (55, 29): Unresolved reference: DataCoder
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (56, 5): 'encode' overrides nothing
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (56, 50): Unresolved reference: RawData
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (57, 60): Unresolved reference: rd
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (59, 5): 'decode' overrides nothing
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Lib.kt: (59, 31): Unresolved reference: RawData
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Main.kt: (3, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service1/Main.kt: (9, 19): Unresolved reference: LibService
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (5, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (6, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (7, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (8, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (12, 20): Unresolved reference: Configuration
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (14, 23): Unresolved reference: f
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (14, 25): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (14, 37): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (15, 23): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Facade.kt: (15, 35): Unresolved reference: j
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Main.kt: (5, 21): Unresolved reference: dsl
e: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/src/main/kotlin/io/lambdarpc/examples/basic/service2/Main.kt: (10, 19): Unresolved reference: LibService
Caught exception: Couldn't add watch, error = 2: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/build/classes/kotlin/main/META-INF
Unable to watch the file system for changes
net.rubygrapefruit.platform.NativeException: Couldn't add watch, error = 2: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/build/classes/kotlin/main/META-INF
        at net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.startWatching0(Native Method)
        at net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.startWatching(AbstractFileEventFunctions.java:196)
        at org.gradle.internal.watch.registry.impl.NonHierarchicalFileWatcherUpdater.updateWatchedDirectories(NonHierarchicalFileWatcherUpdater.java:151)
        at org.gradle.internal.watch.registry.impl.NonHierarchicalFileWatcherUpdater.virtualFileSystemContentsChanged(NonHierarchicalFileWatcherUpdater.java:83)
        at org.gradle.internal.watch.registry.impl.DefaultFileWatcherRegistry.virtualFileSystemContentsChanged(DefaultFileWatcherRegistry.java:147)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$updateNotifyingListeners$0(WatchingVirtualFileSystem.java:89)
        at org.gradle.internal.watch.registry.SnapshotCollectingDiffListener.publishSnapshotDiff(SnapshotCollectingDiffListener.java:32)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$updateNotifyingListeners$1(WatchingVirtualFileSystem.java:88)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$withWatcherChangeErrorHandling$7(WatchingVirtualFileSystem.java:313)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.withWatcherChangeErrorHandling(WatchingVirtualFileSystem.java:320)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.withWatcherChangeErrorHandling(WatchingVirtualFileSystem.java:312)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.updateNotifyingListeners(WatchingVirtualFileSystem.java:88)
        at org.gradle.internal.vfs.impl.AbstractVirtualFileSystem.lambda$store$1(AbstractVirtualFileSystem.java:46)
        at org.gradle.internal.vfs.impl.VfsRootReference.update(VfsRootReference.java:40)
        at org.gradle.internal.vfs.impl.AbstractVirtualFileSystem.store(AbstractVirtualFileSystem.java:46)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.snapshot(DefaultFileSystemAccess.java:162)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readLocation$6(DefaultFileSystemAccess.java:171)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readSnapshotFromLocation$7(DefaultFileSystemAccess.java:196)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess$StripedProducerGuard.guardByKey(DefaultFileSystemAccess.java:219)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readSnapshotFromLocation$8(DefaultFileSystemAccess.java:193)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readSnapshotFromLocation(DefaultFileSystemAccess.java:193)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readSnapshotFromLocation(DefaultFileSystemAccess.java:178)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readLocation(DefaultFileSystemAccess.java:171)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.read(DefaultFileSystemAccess.java:83)
        at org.gradle.internal.fingerprint.impl.DefaultFileCollectionSnapshotter$SnapshottingVisitor.visitCollection(DefaultFileCollectionSnapshotter.java:61)
        at org.gradle.api.internal.file.AbstractOpaqueFileCollection.visitContents(AbstractOpaqueFileCollection.java:55)
        at org.gradle.api.internal.file.AbstractFileCollection.visitStructure(AbstractFileCollection.java:330)
        at org.gradle.api.internal.file.CompositeFileCollection.lambda$visitContents$0(CompositeFileCollection.java:119)
        at org.gradle.api.internal.file.collections.UnpackingVisitor.visitSingleFile(UnpackingVisitor.java:111)
        at org.gradle.api.internal.file.collections.UnpackingVisitor.add(UnpackingVisitor.java:106)
        at org.gradle.api.internal.file.DefaultFileCollectionFactory$ResolvingFileCollection.visitChildren(DefaultFileCollectionFactory.java:333)
        at org.gradle.api.internal.file.CompositeFileCollection.visitContents(CompositeFileCollection.java:119)
        at org.gradle.api.internal.file.AbstractFileCollection.visitStructure(AbstractFileCollection.java:330)
        at org.gradle.internal.fingerprint.impl.DefaultFileCollectionSnapshotter.snapshot(DefaultFileCollectionSnapshotter.java:51)
        at org.gradle.internal.execution.DefaultOutputSnapshotter$1.visitOutputProperty(DefaultOutputSnapshotter.java:40)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.visitOutputs(ExecuteActionsTaskExecuter.java:338)
        at org.gradle.internal.execution.DefaultOutputSnapshotter.snapshotOutputs(DefaultOutputSnapshotter.java:37)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.captureOutputs(CaptureStateAfterExecutionStep.java:96)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.lambda$execute$0(CaptureStateAfterExecutionStep.java:57)
        at org.gradle.internal.execution.steps.BuildOperationStep$1.call(BuildOperationStep.java:37)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.execution.steps.BuildOperationStep.operation(BuildOperationStep.java:34)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:55)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:35)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:60)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:27)
        at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:174)
        at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:74)
        at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:45)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:40)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:29)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:36)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:22)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:99)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:92)
        at java.base/java.util.Optional.map(Optional.java:265)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:52)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:36)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:85)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:42)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:91)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:106)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:51)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:72)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:46)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:86)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:86)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:32)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:43)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:31)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.lambda$execute$0(AssignWorkspaceStep.java:40)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution$2.withWorkspace(ExecuteActionsTaskExecuter.java:284)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:40)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:30)
        at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:37)
        at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:27)
        at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:44)
        at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:33)
        at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:76)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:185)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:174)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:109)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:79)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:74)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:408)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:395)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:388)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:374)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
        at java.base/java.lang.Thread.run(Thread.java:829)
Stopping file watching and invalidating VFS after an error happened
w: Detected multiple Kotlin daemon sessions at build/kotlin/sessions

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':examples:compileKotlin'.
> Compilation error. See log for more details

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 7s
9 actionable tasks: 4 executed, 5 up-to-date
Gradle was unable to watch the file system for changes
net.rubygrapefruit.platform.NativeException: Couldn't add watch, error = 2: /home/yukio/Diary/things/lambdarpc/LambdaRPC.kt/examples/build/classes/kotlin/main/META-INF
        at net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.startWatching0(Native Method)
        at net.rubygrapefruit.platform.internal.jni.AbstractFileEventFunctions$NativeFileWatcher.startWatching(AbstractFileEventFunctions.java:196)
        at org.gradle.internal.watch.registry.impl.NonHierarchicalFileWatcherUpdater.updateWatchedDirectories(NonHierarchicalFileWatcherUpdater.java:151)
        at org.gradle.internal.watch.registry.impl.NonHierarchicalFileWatcherUpdater.virtualFileSystemContentsChanged(NonHierarchicalFileWatcherUpdater.java:83)
        at org.gradle.internal.watch.registry.impl.DefaultFileWatcherRegistry.virtualFileSystemContentsChanged(DefaultFileWatcherRegistry.java:147)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$updateNotifyingListeners$0(WatchingVirtualFileSystem.java:89)
        at org.gradle.internal.watch.registry.SnapshotCollectingDiffListener.publishSnapshotDiff(SnapshotCollectingDiffListener.java:32)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$updateNotifyingListeners$1(WatchingVirtualFileSystem.java:88)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.lambda$withWatcherChangeErrorHandling$7(WatchingVirtualFileSystem.java:313)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.withWatcherChangeErrorHandling(WatchingVirtualFileSystem.java:320)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.withWatcherChangeErrorHandling(WatchingVirtualFileSystem.java:312)
        at org.gradle.internal.watch.vfs.impl.WatchingVirtualFileSystem.updateNotifyingListeners(WatchingVirtualFileSystem.java:88)
        at org.gradle.internal.vfs.impl.AbstractVirtualFileSystem.lambda$store$1(AbstractVirtualFileSystem.java:46)
        at org.gradle.internal.vfs.impl.VfsRootReference.update(VfsRootReference.java:40)
        at org.gradle.internal.vfs.impl.AbstractVirtualFileSystem.store(AbstractVirtualFileSystem.java:46)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.snapshot(DefaultFileSystemAccess.java:162)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readLocation$6(DefaultFileSystemAccess.java:171)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readSnapshotFromLocation$7(DefaultFileSystemAccess.java:196)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess$StripedProducerGuard.guardByKey(DefaultFileSystemAccess.java:219)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.lambda$readSnapshotFromLocation$8(DefaultFileSystemAccess.java:193)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readSnapshotFromLocation(DefaultFileSystemAccess.java:193)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readSnapshotFromLocation(DefaultFileSystemAccess.java:178)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.readLocation(DefaultFileSystemAccess.java:171)
        at org.gradle.internal.vfs.impl.DefaultFileSystemAccess.read(DefaultFileSystemAccess.java:83)
        at org.gradle.internal.fingerprint.impl.DefaultFileCollectionSnapshotter$SnapshottingVisitor.visitCollection(DefaultFileCollectionSnapshotter.java:61)
        at org.gradle.api.internal.file.AbstractOpaqueFileCollection.visitContents(AbstractOpaqueFileCollection.java:55)
        at org.gradle.api.internal.file.AbstractFileCollection.visitStructure(AbstractFileCollection.java:330)
        at org.gradle.api.internal.file.CompositeFileCollection.lambda$visitContents$0(CompositeFileCollection.java:119)
        at org.gradle.api.internal.file.collections.UnpackingVisitor.visitSingleFile(UnpackingVisitor.java:111)
        at org.gradle.api.internal.file.collections.UnpackingVisitor.add(UnpackingVisitor.java:106)
        at org.gradle.api.internal.file.DefaultFileCollectionFactory$ResolvingFileCollection.visitChildren(DefaultFileCollectionFactory.java:333)
        at org.gradle.api.internal.file.CompositeFileCollection.visitContents(CompositeFileCollection.java:119)
        at org.gradle.api.internal.file.AbstractFileCollection.visitStructure(AbstractFileCollection.java:330)
        at org.gradle.internal.fingerprint.impl.DefaultFileCollectionSnapshotter.snapshot(DefaultFileCollectionSnapshotter.java:51)
        at org.gradle.internal.execution.DefaultOutputSnapshotter$1.visitOutputProperty(DefaultOutputSnapshotter.java:40)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution.visitOutputs(ExecuteActionsTaskExecuter.java:338)
        at org.gradle.internal.execution.DefaultOutputSnapshotter.snapshotOutputs(DefaultOutputSnapshotter.java:37)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.captureOutputs(CaptureStateAfterExecutionStep.java:96)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.lambda$execute$0(CaptureStateAfterExecutionStep.java:57)
        at org.gradle.internal.execution.steps.BuildOperationStep$1.call(BuildOperationStep.java:37)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.execution.steps.BuildOperationStep.operation(BuildOperationStep.java:34)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:55)
        at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:35)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:60)
        at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:27)
        at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:174)
        at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:74)
        at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:45)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:40)
        at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:29)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:36)
        at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:22)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:99)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$0(SkipUpToDateStep.java:92)
        at java.base/java.util.Optional.map(Optional.java:265)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:52)
        at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:36)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:85)
        at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:42)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:91)
        at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:49)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:106)
        at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:51)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:72)
        at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:46)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.lambda$execute$2(SkipEmptyWorkStep.java:86)
        at java.base/java.util.Optional.orElseGet(Optional.java:369)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:86)
        at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:32)
        at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:43)
        at org.gradle.internal.execution.steps.LoadExecutionStateStep.execute(LoadExecutionStateStep.java:31)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.lambda$execute$0(AssignWorkspaceStep.java:40)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$TaskExecution$2.withWorkspace(ExecuteActionsTaskExecuter.java:284)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:40)
        at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:30)
        at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:37)
        at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:27)
        at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:44)
        at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:33)
        at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:76)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:185)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:174)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:109)
        at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:200)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:195)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:75)
        at org.gradle.internal.operations.DefaultBuildOperationRunner$3.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:153)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:68)
        at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:62)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.lambda$call$2(DefaultBuildOperationExecutor.java:79)
        at org.gradle.internal.operations.UnmanagedBuildOperationWrapper.callWithUnmanagedSupport(UnmanagedBuildOperationWrapper.java:54)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:79)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
        at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:74)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:408)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:395)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:388)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:374)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
        at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
        at java.base/java.lang.Thread.run(Thread.java:829)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.