Describe the bug
StackOverflowError occurs when running dokkaHtml Gradle task.
Expected behaviour
Documentation to be built sucessfully
Screenshots
None
To Reproduce
dokkaHtml task. I'm able to reproduce this bug on this project on commit https://github.com/blogify-dev/krate/commit/200bb00fb76fe9f85aa211948a800a66cbfe83ea
Traceback: https://pastify-app.web.app/show/e4A2CI6lXOh1QcQXMBaR
Dokka configuration
Configuration of dokka used to reproduce the bug
dokkaHtml {
outputDirectory = "$buildDir/dokka"
dokkaSourceSets {
configureEach {
includeNonPublic = false
skipDeprecated = true
skipEmptyPackages = true
jdkVersion = 8
includes = listOf("docs/krate.md")
externalDocumentationLink {
url = URL("https://docs.31416.dev/reflectr/")
}
perPackageOption {
prefix = "krate.annotations"
suppress = true
}
perPackageOption {
prefix = "krate.util"
suppress = true
}
sourceLink {
path = "./"
url = "https://github.com/blogify-dev/krate/blob/master/"
lineSuffix = "#L"
}
}
}
}
This configuration in the project used can be found here
Installation
Additional context
None. If I missed anything or need to provide more information, please let me know.
Same here, I am pasting the scan from Gradle https://scans.gradle.com/s/2xxjvct2sxl2s/failure#1 In windows with Gradle 6.6 does not happen on my other project, I will try this on Windows as well to see
Thanks for submitting this issue and thanks for pointing to a project with this issue 鈽猴笍
We will investigate this problem soon!
@Kordyjan
Here is the prepared project you can use for debugging 鈽猴笍
https://github.com/sellmair/krate/tree/dokka-bug-1342
Here is the Stacktrace
> Task :dokkaHtml FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':dokkaHtml'.
> java.lang.StackOverflowError (no error message)
* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':dokkaHtml'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:207)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:263)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:205)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:186)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:114)
at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:62)
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.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:409)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:399)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$1.execute(DefaultBuildOperationExecutor.java:157)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:242)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:150)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:94)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52)
at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:41)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:356)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:343)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:336)
at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:322)
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 org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56)
Caused by: java.lang.StackOverflowError
at org.jetbrains.kotlin.types.ErrorUtils.isError(ErrorUtils.java:547)
at org.jetbrains.kotlin.resolve.DescriptorUtils.getFqNameSafeIfPossible(DescriptorUtils.java:99)
at org.jetbrains.kotlin.resolve.DescriptorUtils.getFqNameSafe(DescriptorUtils.java:92)
at org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt.getFqNameSafe(DescriptorUtils.kt:56)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.getConstructorName(TypeReferenceFactory.kt:51)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:38)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromProjection(TypeReferenceFactory.kt:47)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:39)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.fromPossiblyNullable(TypeReferenceFactory.kt:28)
at org.jetbrains.dokka.analysis.TypeReferenceFactoryKt.from(TypeReferenceFactory.kt:35)
Fixed in builds:
Available in https://maven.pkg.jetbrains.space/kotlin/p/dokka/dev
Thanks very much for the quick fix! 馃