winter-yuki / lambdarpc.kt Goto Github PK
View Code? Open in Web Editor NEWSimple native RPC with high-order functions support
Simple native RPC with high-order functions support
Cache value on the backend side.
Use #48 instead
tbd
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.
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.
When facade is used only for calls (not for libservice instance), there is no need of decoders for arguments and encoder for result.
Now JSON serialization is used, it can be not as fast for serialization of lots of numbers.
Coder of the function that creates a new FrontendFunction
that behaves as a partially applied provided one.
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)
}
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
Add -Xexplicit-api=strict
compiler arg
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
).
Generated sources cant be marked as internal
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
Get context from suspend
implicit
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.
Only ServiceId
is required for all facade declarations.
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).
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
High-order functions and native implementations support for protobuf.
Check if user passed proper function as an argument according to the annotations (in facade).
Free-only, non-free only...
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)
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.
Increasing message MutableSharedFlows
replay
and extraBufferCapacity
values does not help.
Execute frontend function and do not wait for the result.
Can be used in the pipeline construction: every function calls next.
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.
Add gRPC generated sources and proto
to the path
Return function from function registry instead of FrontendFunction creation
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.
Pure frontend functions can cache results to make less network calls.
To send a list of functions for instance
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)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.