Skip to content
This repository was archived by the owner on Dec 19, 2023. It is now read-only.

Commit acbd561

Browse files
authored
Upgrade to Dokka 0.9.18 (#307)
* Upgrade to Dokka 0.9.18 * Upgrade Jackson to 2.9.8 * Remove unused import * Update Kotlin example project
1 parent 71ce3b4 commit acbd561

File tree

8 files changed

+128
-89
lines changed

8 files changed

+128
-89
lines changed

samples/kotlin-webmvc/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ buildscript {
44
springAutoRestDocsVersion = "2.0.5-SNAPSHOT"
55
springRestDocsVersion = "2.0.3.RELEASE"
66
springBootVersion = "2.1.3.RELEASE"
7-
dokkaVersion = "0.9.17"
7+
dokkaVersion = "0.9.18"
88
}
99
repositories {
1010
jcenter()

samples/kotlin-webmvc/generated-docs/index.html

Lines changed: 105 additions & 66 deletions
Large diffs are not rendered by default.

samples/kotlin-webmvc/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
<spring-restdocs.version>2.0.3.RELEASE</spring-restdocs.version>
3737
<spring-auto-restdocs.version>2.0.5-SNAPSHOT</spring-auto-restdocs.version>
3838
<kotlin.version>1.3.21</kotlin.version>
39-
<dokka.version>0.9.17</dokka.version>
39+
<dokka.version>0.9.18</dokka.version>
4040
<jsonDirectory>${project.build.directory}/generated-javadoc-json</jsonDirectory>
4141
</properties>
4242

spring-auto-restdocs-dokka-json/pom.xml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,10 @@
1818

1919
<properties>
2020
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
21-
<kotlin.version>1.3.0</kotlin.version>
21+
<kotlin.version>1.3.21</kotlin.version>
2222
<junit.version>4.12</junit.version>
23-
<dokka.version>0.9.17</dokka.version>
23+
<jackson.version>2.9.8</jackson.version>
24+
<dokka.version>0.9.18</dokka.version>
2425
<kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
2526
</properties>
2627

@@ -50,12 +51,12 @@
5051
<dependency>
5152
<groupId>com.fasterxml.jackson.core</groupId>
5253
<artifactId>jackson-core</artifactId>
53-
<version>2.9.4</version>
54+
<version>${jackson.version}</version>
5455
</dependency>
5556
<dependency>
5657
<groupId>com.fasterxml.jackson.module</groupId>
5758
<artifactId>jackson-module-kotlin</artifactId>
58-
<version>2.9.4.1</version>
59+
<version>${jackson.version}</version>
5960
</dependency>
6061
</dependencies>
6162

spring-auto-restdocs-dokka-json/src/main/kotlin/capital/scalable/dokka/json/JsonFormatDescriptor.kt

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,22 +23,21 @@ import com.google.inject.Binder
2323
import org.jetbrains.dokka.DefaultPackageListService
2424
import org.jetbrains.dokka.FormatService
2525
import org.jetbrains.dokka.Formats.DefaultAnalysisComponent
26+
import org.jetbrains.dokka.Formats.DefaultAnalysisComponentServices
27+
import org.jetbrains.dokka.Formats.KotlinAsKotlin
2628
import org.jetbrains.dokka.Formats.FormatDescriptor
2729
import org.jetbrains.dokka.Generator
28-
import org.jetbrains.dokka.Kotlin.KotlinDescriptorSignatureProvider
29-
import org.jetbrains.dokka.KotlinJavaDocumentationBuilder
3030
import org.jetbrains.dokka.KotlinLanguageService
31-
import org.jetbrains.dokka.KotlinPackageDocumentationBuilder
3231
import org.jetbrains.dokka.LanguageService
3332
import org.jetbrains.dokka.NodeLocationAwareGenerator
3433
import org.jetbrains.dokka.PackageListService
35-
import org.jetbrains.dokka.Samples.DefaultSampleProcessingService
36-
import org.jetbrains.dokka.Samples.SampleProcessingService
3734
import org.jetbrains.dokka.Utilities.bind
3835
import org.jetbrains.dokka.Utilities.toType
39-
import kotlin.reflect.KClass
4036

41-
class JsonFormatDescriptor : FormatDescriptor, DefaultAnalysisComponent {
37+
class JsonFormatDescriptor
38+
: FormatDescriptor,
39+
DefaultAnalysisComponent,
40+
DefaultAnalysisComponentServices by KotlinAsKotlin {
4241

4342
override fun configureOutput(binder: Binder): Unit = with(binder) {
4443
bind<Generator>() toType NodeLocationAwareGenerator::class
@@ -47,9 +46,4 @@ class JsonFormatDescriptor : FormatDescriptor, DefaultAnalysisComponent {
4746
bind<FormatService>() toType JsonFormatService::class
4847
bind<PackageListService>() toType DefaultPackageListService::class
4948
}
50-
51-
override val javaDocumentationBuilderClass = KotlinJavaDocumentationBuilder::class
52-
override val descriptorSignatureProvider = KotlinDescriptorSignatureProvider::class
53-
override val packageDocumentationBuilderClass = KotlinPackageDocumentationBuilder::class
54-
override val sampleProcessingService: KClass<out SampleProcessingService> = DefaultSampleProcessingService::class
5549
}

spring-auto-restdocs-dokka-json/src/main/kotlin/capital/scalable/dokka/json/JsonFormatService.kt

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,10 @@ open class JsonOutputBuilder(
118118
}
119119

120120
private fun extractContent(content: List<ContentNode>): String {
121-
return content.mapIndexed { index, it -> extractContent(it, topLevel = index == 0) }.joinToString("")
121+
return content
122+
.mapIndexed { index, it -> extractContent(it, topLevel = index == 0) }
123+
.joinToString("")
124+
.trim()
122125
}
123126

124127
private fun extractContent(content: ContentNode, topLevel: Boolean): String {
@@ -161,7 +164,9 @@ open class JsonOutputBuilder(
161164
private fun wrap(prefix: String, suffix: String, body: String): String = "$prefix$body$suffix"
162165

163166
private fun joinChildren(block: ContentBlock): String =
164-
block.children.joinToString("") { extractContent(it, topLevel = false) }
167+
block.children
168+
.joinToString("") { extractContent(it, topLevel = false) }
169+
.trim()
165170
}
166171

167172
open class JsonFormatService @Inject constructor(private val logger: DokkaLogger) : FormatService {

spring-auto-restdocs-dokka-json/src/test/kotlin/capital/scalable/dokka/json/TestAPI.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ import com.intellij.openapi.util.Disposer
2626
import com.intellij.openapi.util.io.FileUtil
2727
import org.jetbrains.dokka.*
2828
import org.jetbrains.dokka.Utilities.DokkaAnalysisModule
29+
import org.jetbrains.kotlin.cli.common.config.ContentRoot
30+
import org.jetbrains.kotlin.cli.common.config.KotlinSourceRoot
2931
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageLocation
3032
import org.jetbrains.kotlin.cli.common.messages.CompilerMessageSeverity
3133
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
3234
import org.jetbrains.kotlin.cli.jvm.config.JavaSourceRoot
33-
import org.jetbrains.kotlin.config.ContentRoot
34-
import org.jetbrains.kotlin.config.KotlinSourceRoot
3535
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
3636
import org.junit.Assert
3737
import java.io.File

spring-auto-restdocs-dokka-json/testdata/JavaClass.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"comment" : "Javadoc on a Java class <p> Next paragraph </p><ul> <li>Item 1</li> <li>Item 2</li> </ul>",
2+
"comment" : "Javadoc on a Java class<p>Next paragraph</p><ul><li>Item 1</li> <li>Item 2</li></ul>",
33
"fields" : {
44
"someField" : {
55
"comment" : "A Java field",

0 commit comments

Comments
 (0)