[Gradle] Add a check that KGP API has consistent KDoc

^KT-58858 In Progress
This commit is contained in:
Yahor Berdnikau
2023-09-13 17:50:30 +02:00
committed by Space Team
parent 01e9ad1680
commit aeaaf6dd8e
17 changed files with 124 additions and 7 deletions
@@ -7,7 +7,17 @@ plugins {
configureDokkaPublication(
shouldLinkGradleApi = true,
configurePublishingToKotlinlang = true,
)
) {
dokkaSourceSets.configureEach {
reportUndocumented.set(true)
failOnWarning.set(true)
perPackageOption {
matchingRegex.set("org\\.jetbrains\\.kotlin\\.gradle\\.plugin.*")
suppress.set(true)
}
}
}
dependencies {
commonApi(platform(project(":kotlin-gradle-plugins-bom")))
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Common compiler options for all Kotlin platforms.
*/
interface KotlinCommonCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions {
/**
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Common options for all Kotlin platforms' compilations and tools.
*/
interface KotlinCommonCompilerToolOptions {
/**
@@ -5,7 +5,13 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Common compiler options for all Kotlin platforms.
*/
interface KotlinCommonOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions {
/**
* @suppress
*/
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
private val kotlin.String?.apiVersionCompilerOption get() = if (this != null) org.jetbrains.kotlin.gradle.dsl.KotlinVersion.fromVersion(this) else null
@@ -5,7 +5,13 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Common options for all Kotlin platforms' compilations and tools.
*/
interface KotlinCommonToolOptions {
/**
* @suppress
*/
val options: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions
/**
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for Kotlin/JS.
*/
interface KotlinJsCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
/**
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Options for the Kotlin JavaScript dead code elimination tool.
*/
interface KotlinJsDceCompilerToolOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions {
/**
@@ -5,7 +5,13 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Options for the Kotlin JavaScript dead code elimination tool.
*/
interface KotlinJsDceOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions {
/**
* @suppress
*/
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions
/**
@@ -5,7 +5,13 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for Kotlin/JS.
*/
interface KotlinJsOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
/**
* @suppress
*/
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
/**
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for Kotlin/JVM.
*/
interface KotlinJvmCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
/**
@@ -5,7 +5,13 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for Kotlin/JVM.
*/
interface KotlinJvmOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
/**
* @suppress
*/
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
/**
@@ -5,5 +5,8 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for the Kotlin common platform.
*/
interface KotlinMultiplatformCommonCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
}
@@ -5,6 +5,12 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for the Kotlin common platform.
*/
interface KotlinMultiplatformCommonOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
/**
* @suppress
*/
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions
}
@@ -5,6 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
/**
* Compiler options for Kotlin Native.
*/
interface KotlinNativeCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
/**
@@ -67,9 +67,19 @@ interface KotlinCompileTool : PatternFilterable, Task {
@get:OutputDirectory
val destinationDirectory: DirectoryProperty
/**
* Returns the set of exclude patterns.
*
* @return The exclude patterns. Returns an empty set when there are no exclude patterns.
*/
@Internal
override fun getExcludes(): MutableSet<String>
/**
* Returns the set of include patterns.
*
* @return The include patterns. Returns an empty set when there are no include patterns.
*/
@Internal
override fun getIncludes(): MutableSet<String>
}