kotlin-language-server
kotlin-language-server copied to clipboard
Too many error messages and exceptions.
Some of the messages, I noticed. Is it excepted? Should it be printing to stderr by default?
[stderr] Attachments:
[stderr] causeThrowable
[stderr] java.lang.UnsupportedOperationException: Should not be called
[stderr] at org.jetbrains.kotlin.resolve.lazy.NoTopLevelDescriptorProvider.shouldNotBeCalled(TopLevelDescriptorProvider.kt:36)
[stderr] at org.jetbrains.kotlin.resolve.lazy.NoTopLevelDescriptorProvider.getPackageFragment(TopLevelDescriptorProvider.kt:39)
[stderr] at org.jetbrains.kotlin.resolve.DeclarationResolver.getTopLevelDescriptorsByFqName(DeclarationResolver.kt:107)
[stderr] at org.jetbrains.kotlin.resolve.DeclarationResolver.checkRedeclarationsInPackages(DeclarationResolver.kt:86)
[stderr] at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations(LazyTopDownAnalyzer.kt:216)
[stderr] at org.jetbrains.kotlin.types.expressions.LocalClassifierAnalyzer.processClassOrObject(LocalClassifierAnalyzer.kt:121)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorForStatements.visitClass(ExpressionTypingVisitorForStatements.java:172)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorForStatements.visitClass(ExpressionTypingVisitorForStatements.java:73)
[stderr] at org.jetbrains.kotlin.psi.KtClass.accept(KtClass.kt:22)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.lambda$getTypeInfo$0(ExpressionTypingVisitorDispatcher.java:176)
[stderr] at org.jetbrains.kotlin.util.PerformanceCounter.time(PerformanceCounter.kt:90)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.getTypeInfo(ExpressionTypingVisitorDispatcher.java:165)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingVisitorDispatcher.getTypeInfo(ExpressionTypingVisitorDispatcher.java:148)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingServices.getTypeInfo(ExpressionTypingServices.java:121)
[stderr] at org.jetbrains.kotlin.types.expressions.ExpressionTypingServices.getTypeInfo(ExpressionTypingServices.java:96)
[stderr] at org.javacs.kt.compiler.Compiler.compileKtExpression(Compiler.kt:561)
[stderr] at org.javacs.kt.CompiledFile.bindingContextOf(CompiledFile.kt:51)
[stderr] at org.javacs.kt.CompiledFile.referenceAtPoint(CompiledFile.kt:76)
[stderr] at org.javacs.kt.hover.HoversKt.hoverAt(Hovers.kt:26)
[stderr] at org.javacs.kt.KotlinTextDocumentService$hover$1.invoke(KotlinTextDocumentService.kt:114)
[stderr] at org.javacs.kt.KotlinTextDocumentService$hover$1.invoke(KotlinTextDocumentService.kt:109)
[stderr] at org.javacs.kt.util.AsyncExecutor.compute$lambda$2(AsyncExecutor.kt:19)
[stderr] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[stderr] at java.base/java.lang.Thread.run(Thread.java:840)
[stderr] Mar 30, 2024 5:58:49 PM org.eclipse.lsp4j.jsonrpc.RemoteEndpoint fallbackResponseError
[stderr] SEVERE: Internal error: java.lang.StringIndexOutOfBoundsException: begin 0, end 20, length 13
[stderr] java.util.concurrent.CompletionException: java.lang.StringIndexOutOfBoundsException: begin 0, end 20, length 13
[stderr] at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315)
[stderr] at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320)
[stderr] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[stderr] at java.base/java.lang.Thread.run(Thread.java:840)
[stderr] Caused by: java.lang.StringIndexOutOfBoundsException: begin 0, end 20, length 13
[stderr] at java.base/java.lang.String.checkBoundsBeginEnd(String.java:4606)
[stderr] at java.base/java.lang.String.substring(String.java:2709)
[stderr] at java.base/java.lang.String.subSequence(String.java:2747)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.activeParameter(SignatureHelp.kt:138)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.getSignatureTriplet(SignatureHelp.kt:52)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.fetchSignatureHelpAt(SignatureHelp.kt:25)
[stderr] at org.javacs.kt.KotlinTextDocumentService$signatureHelp$1.invoke(KotlinTextDocumentService.kt:204)
[stderr] at org.javacs.kt.KotlinTextDocumentService$signatureHelp$1.invoke(KotlinTextDocumentService.kt:199)
[stderr] at org.javacs.kt.util.AsyncExecutor.compute$lambda$2(AsyncExecutor.kt:19)
[stderr] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
[stderr] ... 3 more
[stderr]
[stderr] SEVERE: Internal error: java.lang.StringIndexOutOfBoundsException: begin 0, end 17, length 13
[stderr] java.util.concurrent.CompletionException: java.lang.StringIndexOutOfBoundsException: begin 0, end 17, length 13
[stderr] at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315)
[stderr] at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320)
[stderr] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1770)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[stderr] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[stderr] at java.base/java.lang.Thread.run(Thread.java:840)
[stderr] Caused by: java.lang.StringIndexOutOfBoundsException: begin 0, end 17, length 13
[stderr] at java.base/java.lang.String.checkBoundsBeginEnd(String.java:4606)
[stderr] at java.base/java.lang.String.substring(String.java:2709)
[stderr] at java.base/java.lang.String.subSequence(String.java:2747)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.activeParameter(SignatureHelp.kt:138)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.getSignatureTriplet(SignatureHelp.kt:52)
[stderr] at org.javacs.kt.signaturehelp.SignatureHelpKt.fetchSignatureHelpAt(SignatureHelp.kt:25)
[stderr] at org.javacs.kt.KotlinTextDocumentService$signatureHelp$1.invoke(KotlinTextDocumentService.kt:204)
[stderr] at org.javacs.kt.KotlinTextDocumentService$signatureHelp$1.invoke(KotlinTextDocumentService.kt:199)
[stderr] at org.javacs.kt.util.AsyncExecutor.compute$lambda$2(AsyncExecutor.kt:19)
[stderr] at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
[stderr] ... 3 more
[stderr]
Same thing here. A lot of errors being thrown.
Same here.
The UnsupportedOperationException
s originating deeply within the Kotlin compiler are usually pretty hard to track down, since the Kotlin compiler API lacks documentation about how it is intended to be used.
The out of bounds exceptions in SignatureHelpKt
look fixable, could you provide a minimal reproducible example (i.e. a small demo project where this happens)?