aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--examples/gradle/dokka-customFormat-example/build.gradle.kts2
-rw-r--r--examples/gradle/dokka-gradle-example/build.gradle.kts2
-rw-r--r--examples/gradle/dokka-kotlinAsJava-example/build.gradle.kts2
-rw-r--r--examples/gradle/dokka-library-publishing-example/build.gradle.kts2
-rw-r--r--examples/gradle/dokka-multimodule-example/gradle.properties2
-rw-r--r--examples/gradle/dokka-multiplatform-example/build.gradle.kts4
-rw-r--r--examples/gradle/dokka-versioning-multimodule-example/build.gradle.kts2
-rw-r--r--examples/maven/pom.xml2
-rw-r--r--examples/plugin/hide-internal-api/build.gradle.kts2
-rw-r--r--gradle.properties4
-rw-r--r--integration-tests/gradle/projects/coroutines/coroutines.diff58
m---------integration-tests/gradle/projects/coroutines/kotlinx-coroutines0
-rw-r--r--integration-tests/gradle/projects/it-android-0/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-basic-groovy/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-basic/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-collector-0/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-js-ir-0/gradle.properties4
-rw-r--r--integration-tests/gradle/projects/it-multimodule-0/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-multimodule-1/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-multimodule-versioning-0/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-multiplatform-0/build.gradle.kts2
-rw-r--r--integration-tests/gradle/projects/it-multiplatform-0/gradle.properties2
-rw-r--r--integration-tests/gradle/projects/it-sequential-tasks-execution-stress/gradle.properties4
-rw-r--r--integration-tests/gradle/projects/it-wasm-basic/gradle.properties2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicCachingIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGradleIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGroovyIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Collector0IntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/GradleRelocatedCachingIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/JsIRGradleIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule0IntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule1IntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Multiplatform0GradleIntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/TestedVersions.kt30
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Versioning0IntegrationTest.kt2
-rw-r--r--integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/kotlin/CoroutinesGradleIntegrationTest.kt2
-rw-r--r--integration-tests/maven/projects/it-maven/pom.xml2
-rw-r--r--plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt1
-rw-r--r--runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersion.kt30
-rw-r--r--runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/kotlinClasspathUtils.kt44
-rw-r--r--runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersionTest.kt75
41 files changed, 224 insertions, 90 deletions
diff --git a/examples/gradle/dokka-customFormat-example/build.gradle.kts b/examples/gradle/dokka-customFormat-example/build.gradle.kts
index 0c845572..f9a84bd9 100644
--- a/examples/gradle/dokka-customFormat-example/build.gradle.kts
+++ b/examples/gradle/dokka-customFormat-example/build.gradle.kts
@@ -3,7 +3,7 @@ import org.jetbrains.dokka.base.DokkaBase
import org.jetbrains.dokka.base.DokkaBaseConfiguration
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version ("1.7.20")
}
diff --git a/examples/gradle/dokka-gradle-example/build.gradle.kts b/examples/gradle/dokka-gradle-example/build.gradle.kts
index db3d91b9..29d0e714 100644
--- a/examples/gradle/dokka-gradle-example/build.gradle.kts
+++ b/examples/gradle/dokka-gradle-example/build.gradle.kts
@@ -2,7 +2,7 @@ import org.jetbrains.dokka.gradle.DokkaTask
import java.net.URL
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version ("1.7.20")
}
diff --git a/examples/gradle/dokka-kotlinAsJava-example/build.gradle.kts b/examples/gradle/dokka-kotlinAsJava-example/build.gradle.kts
index d45be539..f047d196 100644
--- a/examples/gradle/dokka-kotlinAsJava-example/build.gradle.kts
+++ b/examples/gradle/dokka-kotlinAsJava-example/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version ("1.7.20")
}
diff --git a/examples/gradle/dokka-library-publishing-example/build.gradle.kts b/examples/gradle/dokka-library-publishing-example/build.gradle.kts
index 153276b6..dd49f165 100644
--- a/examples/gradle/dokka-library-publishing-example/build.gradle.kts
+++ b/examples/gradle/dokka-library-publishing-example/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version ("1.7.20")
`java-library`
`maven-publish`
diff --git a/examples/gradle/dokka-multimodule-example/gradle.properties b/examples/gradle/dokka-multimodule-example/gradle.properties
index 664b5f0e..81b732be 100644
--- a/examples/gradle/dokka-multimodule-example/gradle.properties
+++ b/examples/gradle/dokka-multimodule-example/gradle.properties
@@ -1,2 +1,2 @@
-kotlinVersion=1.7.20
+kotlinVersion=1.8.10
dokkaVersion=1.7.20
diff --git a/examples/gradle/dokka-multiplatform-example/build.gradle.kts b/examples/gradle/dokka-multiplatform-example/build.gradle.kts
index 64b5a003..7ab3bc1c 100644
--- a/examples/gradle/dokka-multiplatform-example/build.gradle.kts
+++ b/examples/gradle/dokka-multiplatform-example/build.gradle.kts
@@ -4,7 +4,7 @@ import org.jetbrains.dokka.gradle.DokkaTask
import org.jetbrains.dokka.Platform
plugins {
- kotlin("multiplatform") version "1.7.20"
+ kotlin("multiplatform") version "1.8.10"
id("org.jetbrains.dokka") version "1.7.20"
}
@@ -19,7 +19,7 @@ kotlin {
jvm() // Creates a JVM target with the default name "jvm"
linuxX64("linux")
macosX64("macos")
- js()
+ js(BOTH)
sourceSets {
val commonMain by getting {
dependencies {
diff --git a/examples/gradle/dokka-versioning-multimodule-example/build.gradle.kts b/examples/gradle/dokka-versioning-multimodule-example/build.gradle.kts
index e14e7394..a989c691 100644
--- a/examples/gradle/dokka-versioning-multimodule-example/build.gradle.kts
+++ b/examples/gradle/dokka-versioning-multimodule-example/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version ("1.7.20") apply false
}
diff --git a/examples/maven/pom.xml b/examples/maven/pom.xml
index 7c9de827..a5b45922 100644
--- a/examples/maven/pom.xml
+++ b/examples/maven/pom.xml
@@ -8,7 +8,7 @@
<artifactId>kotlin-maven-example</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
- <kotlin.version>1.7.20</kotlin.version>
+ <kotlin.version>1.8.10</kotlin.version>
<dokka.version>1.7.20</dokka.version>
</properties>
diff --git a/examples/plugin/hide-internal-api/build.gradle.kts b/examples/plugin/hide-internal-api/build.gradle.kts
index a6dec0e0..8d335b11 100644
--- a/examples/plugin/hide-internal-api/build.gradle.kts
+++ b/examples/plugin/hide-internal-api/build.gradle.kts
@@ -2,7 +2,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.net.URI
plugins {
- kotlin("jvm") version "1.7.20"
+ kotlin("jvm") version "1.8.10"
id("org.jetbrains.dokka") version "1.7.20"
`maven-publish`
signing
diff --git a/gradle.properties b/gradle.properties
index 8d7cc49f..a1861e28 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -2,10 +2,10 @@
dokka_version=1.8.0-SNAPSHOT
dokka_integration_test_parallelism=2
# Versions
-kotlin_version=1.7.20
+kotlin_version=1.8.10
coroutines_version=1.6.3
kotlinx_html_version=0.7.5
-kotlin_plugin_version=213-1.7.20-199-IJ6777.52
+kotlin_plugin_version=213-1.8.10-release-430-IJ6777.52
jsoup_version=1.15.3
idea_version=213.6777.52
language_version=1.4
diff --git a/integration-tests/gradle/projects/coroutines/coroutines.diff b/integration-tests/gradle/projects/coroutines/coroutines.diff
index 239fb43a..4d95307c 100644
--- a/integration-tests/gradle/projects/coroutines/coroutines.diff
+++ b/integration-tests/gradle/projects/coroutines/coroutines.diff
@@ -1,62 +1,60 @@
diff --git a/build.gradle b/build.gradle
-index ba6d5c18c..bd31bca29 100644
+index 934d4c220..38321990e 100644
--- a/build.gradle
+++ b/build.gradle
-@@ -125,6 +125,7 @@ allprojects {
- * transitive dependencies was removed from jcenter, thus breaking gradle dependency resolution
- */
+@@ -131,6 +131,7 @@ allprojects {
google()
-+ mavenLocal()
mavenCentral()
- maven { url "https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev" }
+ CommunityProjectsBuild.addDevRepositoryIfEnabled(delegate, project)
++ mavenLocal()
}
+ }
+
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
-index eaa03f2f1..deae8d40d 100644
+index 785d13fdb..7fb19f467 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
-@@ -19,6 +19,7 @@ repositories {
- maven("https://plugins.gradle.org/m2")
- }
- maven("https://maven.pkg.jetbrains.space/kotlin/p/kotlin/dev")
-+ mavenLocal()
+@@ -25,6 +25,7 @@ repositories {
if (buildSnapshotTrain) {
mavenLocal()
}
++ mavenLocal()
+ }
+
+ kotlinDslPluginOptions {
diff --git a/buildSrc/settings.gradle.kts b/buildSrc/settings.gradle.kts
-index c2e859f65..80163ff95 100644
+index c2e859f65..43dc4f749 100644
--- a/buildSrc/settings.gradle.kts
+++ b/buildSrc/settings.gradle.kts
-@@ -4,6 +4,7 @@
- pluginManagement {
- val build_snapshot_train: String? by settings
- repositories {
+@@ -14,5 +14,6 @@ pluginManagement {
+ if (build_snapshot_train?.toBoolean() == true) {
+ mavenLocal()
+ }
+ mavenLocal()
- val cacheRedirectorEnabled = System.getenv("CACHE_REDIRECTOR")?.toBoolean() == true
- if (cacheRedirectorEnabled) {
- println("Redirecting repositories for buildSrc buildscript")
+ }
+ }
diff --git a/gradle.properties b/gradle.properties
-index e452a07ee..471285c20 100644
+index db7cf099b..9c13c46fd 100644
--- a/gradle.properties
+++ b/gradle.properties
-@@ -14,7 +14,7 @@ atomicfu_version=0.17.3
+@@ -14,7 +14,7 @@ atomicfu_version=0.18.5
knit_version=0.4.0
html_version=0.7.2
- lincheck_version=2.14
--dokka_version=1.6.21
+ lincheck_version=2.14.1
+-dokka_version=1.7.20
+dokka_version=for-integration-tests-SNAPSHOT
byte_buddy_version=1.10.9
reactor_version=3.4.1
reactive_streams_version=1.0.3
diff --git a/settings.gradle b/settings.gradle
-index f0a764898..1cc45fdf6 100644
+index 151c087fd..e578bdb93 100644
--- a/settings.gradle
+++ b/settings.gradle
-@@ -12,7 +12,7 @@ pluginManagement {
- }
-
+@@ -11,6 +11,7 @@ pluginManagement {
repositories {
-- maven { url "https://maven.pkg.jetbrains.space/kotlin/p/dokka/dev/" }
-+ mavenLocal()
+ maven { url "https://maven.pkg.jetbrains.space/kotlin/p/dokka/dev/" }
gradlePluginPortal()
++ mavenLocal()
}
}
+
diff --git a/integration-tests/gradle/projects/coroutines/kotlinx-coroutines b/integration-tests/gradle/projects/coroutines/kotlinx-coroutines
-Subproject d88a8c227a295f91251960c8fe6b21a02ddf704
+Subproject b74e039196711512764add6f94af92f99d09d3a
diff --git a/integration-tests/gradle/projects/it-android-0/gradle.properties b/integration-tests/gradle/projects/it-android-0/gradle.properties
index 6c0d7406..8f0204a1 100644
--- a/integration-tests/gradle/projects/it-android-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-android-0/gradle.properties
@@ -1,3 +1,3 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
dokka_it_android_gradle_plugin_version=4.0.0
android.useAndroidX=true
diff --git a/integration-tests/gradle/projects/it-basic-groovy/gradle.properties b/integration-tests/gradle/projects/it-basic-groovy/gradle.properties
index fa6c65f6..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-basic-groovy/gradle.properties
+++ b/integration-tests/gradle/projects/it-basic-groovy/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-basic/gradle.properties b/integration-tests/gradle/projects/it-basic/gradle.properties
index fa6c65f6..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-basic/gradle.properties
+++ b/integration-tests/gradle/projects/it-basic/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-collector-0/gradle.properties b/integration-tests/gradle/projects/it-collector-0/gradle.properties
index fa6c65f6..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-collector-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-collector-0/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-js-ir-0/gradle.properties b/integration-tests/gradle/projects/it-js-ir-0/gradle.properties
index 6df9a408..2fe2706a 100644
--- a/integration-tests/gradle/projects/it-js-ir-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-js-ir-0/gradle.properties
@@ -1,2 +1,2 @@
-dokka_it_kotlin_version=1.7.20
-react_version=18.1.0-pre.345
+dokka_it_kotlin_version=1.8.10
+react_version=18.2.0-pre.467
diff --git a/integration-tests/gradle/projects/it-multimodule-0/gradle.properties b/integration-tests/gradle/projects/it-multimodule-0/gradle.properties
index fa6c65f6..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-multimodule-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-multimodule-0/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-multimodule-1/gradle.properties b/integration-tests/gradle/projects/it-multimodule-1/gradle.properties
index fa6c65f6..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-multimodule-1/gradle.properties
+++ b/integration-tests/gradle/projects/it-multimodule-1/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-multimodule-versioning-0/gradle.properties b/integration-tests/gradle/projects/it-multimodule-versioning-0/gradle.properties
index 731bcb72..bc379f9a 100644
--- a/integration-tests/gradle/projects/it-multimodule-versioning-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-multimodule-versioning-0/gradle.properties
@@ -1,2 +1,2 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/projects/it-multiplatform-0/build.gradle.kts b/integration-tests/gradle/projects/it-multiplatform-0/build.gradle.kts
index cf180f48..ec24e720 100644
--- a/integration-tests/gradle/projects/it-multiplatform-0/build.gradle.kts
+++ b/integration-tests/gradle/projects/it-multiplatform-0/build.gradle.kts
@@ -12,7 +12,7 @@ kotlin {
jvm()
linuxX64("linux")
macosX64("macos")
- js()
+ js(BOTH)
//TODO Add wasm when kx.coroutines will be supported and published into the main repo
sourceSets {
val commonMain by sourceSets.getting
diff --git a/integration-tests/gradle/projects/it-multiplatform-0/gradle.properties b/integration-tests/gradle/projects/it-multiplatform-0/gradle.properties
index 9d87e55a..9e67e4d0 100644
--- a/integration-tests/gradle/projects/it-multiplatform-0/gradle.properties
+++ b/integration-tests/gradle/projects/it-multiplatform-0/gradle.properties
@@ -1,4 +1,4 @@
-dokka_it_kotlin_version=1.7.20
+dokka_it_kotlin_version=1.8.10
#these flags are enabled by default since 1.6.20.
#remove when this test is executed with Kotlin >= 1.6.20
kotlin.mpp.enableGranularSourceSetsMetadata=true
diff --git a/integration-tests/gradle/projects/it-sequential-tasks-execution-stress/gradle.properties b/integration-tests/gradle/projects/it-sequential-tasks-execution-stress/gradle.properties
index 5cc792c8..bf73b621 100644
--- a/integration-tests/gradle/projects/it-sequential-tasks-execution-stress/gradle.properties
+++ b/integration-tests/gradle/projects/it-sequential-tasks-execution-stress/gradle.properties
@@ -1,2 +1,2 @@
-dokka_it_kotlin_version=1.7.20
-task_number=100 \ No newline at end of file
+dokka_it_kotlin_version=1.8.10
+task_number=100
diff --git a/integration-tests/gradle/projects/it-wasm-basic/gradle.properties b/integration-tests/gradle/projects/it-wasm-basic/gradle.properties
index 7c5e618d..0fe2eafa 100644
--- a/integration-tests/gradle/projects/it-wasm-basic/gradle.properties
+++ b/integration-tests/gradle/projects/it-wasm-basic/gradle.properties
@@ -1 +1 @@
-dokka_it_kotlin_version=1.7.20 \ No newline at end of file
+dokka_it_kotlin_version=1.8.10
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicCachingIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicCachingIntegrationTest.kt
index ada6c26c..66a13f7e 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicCachingIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicCachingIntegrationTest.kt
@@ -10,7 +10,7 @@ class BasicCachingIntegrationTest(override val versions: BuildVersions) : Abstra
companion object {
@get:JvmStatic
@get:Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGradleIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGradleIntegrationTest.kt
index 2e48447a..50ab213c 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGradleIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGradleIntegrationTest.kt
@@ -10,7 +10,7 @@ class BasicGradleIntegrationTest(override val versions: BuildVersions) : Abstrac
companion object {
@get:JvmStatic
@get:Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGroovyIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGroovyIntegrationTest.kt
index 2a038f37..e54a140c 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGroovyIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/BasicGroovyIntegrationTest.kt
@@ -14,7 +14,7 @@ class BasicGroovyIntegrationTest(override val versions: BuildVersions) : Abstrac
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Collector0IntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Collector0IntegrationTest.kt
index 54035061..0a0a48f7 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Collector0IntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Collector0IntegrationTest.kt
@@ -9,7 +9,7 @@ class Collector0IntegrationTest(override val versions: BuildVersions) : Abstract
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/GradleRelocatedCachingIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/GradleRelocatedCachingIntegrationTest.kt
index 2ac129af..b45caf77 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/GradleRelocatedCachingIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/GradleRelocatedCachingIntegrationTest.kt
@@ -10,7 +10,7 @@ class GradleRelocatedCachingIntegrationTest(override val versions: BuildVersions
companion object {
@get:JvmStatic
@get:Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/JsIRGradleIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/JsIRGradleIntegrationTest.kt
index 241dc732..25986c88 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/JsIRGradleIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/JsIRGradleIntegrationTest.kt
@@ -10,7 +10,7 @@ class JsIRGradleIntegrationTest(override val versions: BuildVersions) : Abstract
companion object {
@get:JvmStatic
@get:Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
private val ignoredKotlinVersions = setOf(
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule0IntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule0IntegrationTest.kt
index 3c0bc5a5..497dee0e 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule0IntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule0IntegrationTest.kt
@@ -9,7 +9,7 @@ class MultiModule0IntegrationTest(override val versions: BuildVersions) : Abstra
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule1IntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule1IntegrationTest.kt
index ffc4705a..8786e0da 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule1IntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/MultiModule1IntegrationTest.kt
@@ -12,7 +12,7 @@ class MultiModule1IntegrationTest(override val versions: BuildVersions) : Abstra
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Multiplatform0GradleIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Multiplatform0GradleIntegrationTest.kt
index 55f4ce64..e73f6c82 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Multiplatform0GradleIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Multiplatform0GradleIntegrationTest.kt
@@ -10,7 +10,7 @@ class Multiplatform0GradleIntegrationTest(override val versions: BuildVersions)
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/TestedVersions.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/TestedVersions.kt
index 2b8e5b3c..82dc79e2 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/TestedVersions.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/TestedVersions.kt
@@ -2,19 +2,29 @@ package org.jetbrains.dokka.it.gradle
internal object TestedVersions {
- val LATEST = BuildVersions("7.4.2", "1.7.20")
- val BASE =
+ val LATEST = BuildVersions("7.4.2", "1.8.10")
+
+ /**
+ * All supported Gradle/Kotlin versions, including [LATEST]
+ *
+ * [Kotlin/Gradle compatibility matrix](https://docs.gradle.org/current/userguide/compatibility.html#kotlin)
+ */
+ val ALL_SUPPORTED =
BuildVersions.permutations(
- gradleVersions = listOf("7.4.2", "6.9"),
+ gradleVersions = listOf("6.9"),
kotlinVersions = listOf("1.7.20", "1.6.21", "1.5.31", "1.4.32"),
) + BuildVersions.permutations(
gradleVersions = listOf(*ifExhaustive("7.0", "6.1.1")),
- kotlinVersions = listOf(*ifExhaustive("1.6.0", "1.5.0", "1.4.0"))
- )
+ kotlinVersions = listOf(*ifExhaustive("1.7.0", "1.6.0", "1.5.0", "1.4.0"))
+ ) + LATEST
/**
- * Starting with version 7, major android gradle plugin versions are aligned
- * with major gradle versions, i.e android plugin 7.0.0 will not work with gradle 6.9
+ * Supported Android/Gradle/Kotlin versions, including [LATEST]
+ *
+ * Starting with version 7, major Android Gradle Plugin versions are aligned
+ * with major Gradle versions, i.e AGP 7.X will only work with Gradle 7.X
+ *
+ * [AGP/Gradle compatibility matrix](https://developer.android.com/studio/releases/gradle-plugin#updating-gradle)
*/
val ANDROID =
BuildVersions.permutations(
@@ -23,9 +33,9 @@ internal object TestedVersions {
androidGradlePluginVersions = listOf("7.2.0")
) + BuildVersions.permutations(
gradleVersions = listOf("6.9", *ifExhaustive("6.1.1", "5.6.4")),
- kotlinVersions = listOf("1.7.20", "1.6.21", "1.5.31", "1.4.32"),
+ kotlinVersions = listOf("1.8.0", "1.7.0", "1.6.0", "1.5.0", "1.4.0"),
androidGradlePluginVersions = listOf("4.0.0", *ifExhaustive("3.6.3"))
- )
+ ) + LATEST
// https://mvnrepository.com/artifact/org.jetbrains.kotlin-wrappers/kotlin-react
val KT_REACT_WRAPPER_MAPPING = mapOf(
@@ -34,5 +44,7 @@ internal object TestedVersions {
"1.5.31" to "17.0.2-pre.265-kotlin-1.5.31",
"1.6.21" to "18.0.0-pre.332-kotlin-1.6.21",
"1.7.20" to "18.2.0-pre.391",
+ "1.8.0" to "18.2.0-pre.467",
+ "1.8.10" to "18.2.0-pre.490",
)
}
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Versioning0IntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Versioning0IntegrationTest.kt
index b9cd7c29..d6b23981 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Versioning0IntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/Versioning0IntegrationTest.kt
@@ -10,7 +10,7 @@ class Versioning0IntegrationTest(override val versions: BuildVersions) : Abstrac
companion object {
@get:JvmStatic
@get:Parameterized.Parameters(name = "{0}")
- val versions = TestedVersions.BASE
+ val versions = TestedVersions.ALL_SUPPORTED
}
@BeforeTest
diff --git a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/kotlin/CoroutinesGradleIntegrationTest.kt b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/kotlin/CoroutinesGradleIntegrationTest.kt
index 0b727a29..65055623 100644
--- a/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/kotlin/CoroutinesGradleIntegrationTest.kt
+++ b/integration-tests/gradle/src/integrationTest/kotlin/org/jetbrains/dokka/it/gradle/kotlin/CoroutinesGradleIntegrationTest.kt
@@ -16,7 +16,7 @@ class CoroutinesGradleIntegrationTest(override val versions: BuildVersions) : Ab
@get:Parameterized.Parameters(name = "{0}")
val versions = BuildVersions.permutations(
gradleVersions = listOf("7.4.2"),
- kotlinVersions = listOf("1.7.10")
+ kotlinVersions = listOf("1.8.10")
)
}
diff --git a/integration-tests/maven/projects/it-maven/pom.xml b/integration-tests/maven/projects/it-maven/pom.xml
index dec891bd..e2db4e82 100644
--- a/integration-tests/maven/projects/it-maven/pom.xml
+++ b/integration-tests/maven/projects/it-maven/pom.xml
@@ -7,7 +7,7 @@
<version>1.0-SNAPSHOT</version>
<properties>
- <kotlin.version>1.7.20</kotlin.version>
+ <kotlin.version>1.8.10</kotlin.version>
</properties>
<build>
<plugins>
diff --git a/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt b/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt
index 9de85eb0..41ab2039 100644
--- a/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt
+++ b/plugins/base/src/main/kotlin/translators/descriptors/DefaultDescriptorToDocumentableTranslator.kt
@@ -310,6 +310,7 @@ private class DokkaDescriptorVisitor(
// synthetic values() and valueOf() functions are not present among average class functions
val enumSyntheticFunctions = staticScopeForKotlinEnum.getContributedDescriptors { true }
+ .filterIsInstance<FunctionDescriptor>()
return descriptorsWithKind.copy(functions = descriptorsWithKind.functions + enumSyntheticFunctions)
}
diff --git a/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersion.kt b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersion.kt
new file mode 100644
index 00000000..bd2de4bd
--- /dev/null
+++ b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersion.kt
@@ -0,0 +1,30 @@
+package org.jetbrains.dokka.gradle.kotlin
+
+import org.gradle.api.Project
+import org.jetbrains.kotlin.gradle.plugin.getKotlinPluginVersion
+
+internal typealias KotlinGradlePluginVersion = KotlinVersion
+
+internal fun Project.getKgpVersion(): KotlinGradlePluginVersion? = parseKotlinVersion(this.getKotlinPluginVersion())
+
+/**
+ * Accepts a full version string that contains the major, minor
+ * and patch versions divided by dots, such as "1.7.10".
+ *
+ * Does NOT parse and store custom suffixes, so `1.8.20-RC2`
+ * or `1.8.20-dev-42` will be viewed as `1.8.20`.
+ */
+internal fun parseKotlinVersion(fullVersionString: String): KotlinVersion? {
+ val versionParts = fullVersionString
+ .split(".", "-", limit = 4)
+ .takeIf { parts -> parts.size >= 3 && parts.subList(0, 3).all { it.isNumeric() } }
+ ?: return null
+
+ return KotlinVersion(
+ major = versionParts[0].toInt(),
+ minor = versionParts[1].toInt(),
+ patch = versionParts[2].toInt()
+ )
+}
+
+private fun String.isNumeric() = this.isNotEmpty() && this.all { it.isDigit() }
diff --git a/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/kotlinClasspathUtils.kt b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/kotlinClasspathUtils.kt
index 9ef268f2..ed77324f 100644
--- a/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/kotlinClasspathUtils.kt
+++ b/runners/gradle-plugin/src/main/kotlin/org/jetbrains/dokka/gradle/kotlin/kotlinClasspathUtils.kt
@@ -3,7 +3,6 @@ package org.jetbrains.dokka.gradle.kotlin
import org.gradle.api.Project
import org.gradle.api.file.FileCollection
import org.jetbrains.dokka.gradle.isAndroidTarget
-import org.jetbrains.dokka.utilities.cast
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
import org.jetbrains.kotlin.gradle.plugin.mpp.AbstractKotlinNativeCompilation
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation
@@ -25,7 +24,7 @@ internal fun Project.classpathOf(sourceSet: KotlinSourceSet): FileCollection {
* Ignore [org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation] for `commonMain` sourceSet with name `main`
*/
.filterNot { compilation -> isHMPPEnabled && compilation is KotlinCommonCompilation && compilation.name == "main" }
- .map { compilation -> compileClasspathOf(compilation) }
+ .map { compilation -> compilation.compileClasspathOf(project = this) }
.reduce { acc, fileCollection -> acc + fileCollection }
} else {
sourceSet.withAllDependentSourceSets()
@@ -35,19 +34,38 @@ internal fun Project.classpathOf(sourceSet: KotlinSourceSet): FileCollection {
}
}
-private fun Project.compileClasspathOf(compilation: KotlinCompilation): FileCollection {
- if (compilation.target.isAndroidTarget()) {
- // This is a workaround for https://youtrack.jetbrains.com/issue/KT-33893
- @Suppress("DEPRECATION") // for compatibility
- return compilation.compileKotlinTask.cast<KotlinCompile>().classpath
+private fun KotlinCompilation.compileClasspathOf(project: Project): FileCollection {
+ if (this.target.isAndroidTarget()) { // Workaround for https://youtrack.jetbrains.com/issue/KT-33893
+ return this.classpathOf(project)
}
- val platformDependencyFiles: FileCollection = (compilation as? AbstractKotlinNativeCompilation)
+ val platformDependencyFiles: FileCollection = (this as? AbstractKotlinNativeCompilation)
?.target?.project?.configurations
- ?.findByName(compilation.defaultSourceSet.implementationMetadataConfigurationName)
- ?: files()
+ ?.findByName(this.defaultSourceSet.implementationMetadataConfigurationName)
+ ?: project.files()
- return compilation.compileDependencyFiles + platformDependencyFiles +
- @Suppress("DEPRECATION") // for compatibility
- (compilation.compileKotlinTask.run { this as? KotlinCompile }?.classpath ?: files())
+ return this.compileDependencyFiles + platformDependencyFiles + this.classpathOf(project)
+}
+
+private fun KotlinCompilation.classpathOf(project: Project): FileCollection {
+ val kgpVersion = project.getKgpVersion()
+ val kotlinCompile = this.getKotlinCompileTask(kgpVersion) ?: return project.files()
+
+ val shouldKeepBackwardsCompatibility = (kgpVersion != null && kgpVersion < KotlinGradlePluginVersion(1, 7, 0))
+ return if (shouldKeepBackwardsCompatibility) {
+ @Suppress("DEPRECATION_ERROR")
+ kotlinCompile.classpath // deprecated with error since 1.8.0, left for compatibility with < Kotlin 1.7
+ } else {
+ kotlinCompile.libraries // introduced in 1.7.0
+ }
+}
+
+private fun KotlinCompilation.getKotlinCompileTask(kgpVersion: KotlinGradlePluginVersion? = null): KotlinCompile? {
+ val shouldKeepBackwardsCompatibility = (kgpVersion != null && kgpVersion < KotlinGradlePluginVersion(1, 8, 0))
+ return if (shouldKeepBackwardsCompatibility) {
+ @Suppress("DEPRECATION") // for `compileKotlinTask` property, deprecated with warning since 1.8.0
+ this.compileKotlinTask as? KotlinCompile
+ } else {
+ this.compileTaskProvider.get() as? KotlinCompile // introduced in 1.8.0
+ }
}
diff --git a/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersionTest.kt b/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersionTest.kt
new file mode 100644
index 00000000..b24524f1
--- /dev/null
+++ b/runners/gradle-plugin/src/test/kotlin/org/jetbrains/dokka/gradle/kotlin/KotlinGradlePluginVersionTest.kt
@@ -0,0 +1,75 @@
+package org.jetbrains.dokka.gradle.kotlin
+
+import kotlin.test.*
+
+class KotlinGradlePluginVersionTest {
+
+ @Test
+ fun `should parse versions`() {
+ assertParsedVersion(input = "1.7.22", expectedMajor = 1, expectedMinor = 7, expectedPatch = 22)
+ assertParsedVersion(input = "2.0.0", expectedMajor = 2, expectedMinor = 0, expectedPatch = 0)
+ assertParsedVersion(input = "1.8.22-RC2", expectedMajor = 1, expectedMinor = 8, expectedPatch = 22)
+ assertParsedVersion(input = "1.5.22-Beta", expectedMajor = 1, expectedMinor = 5, expectedPatch = 22)
+ assertParsedVersion(input = "2.7.22-mercury-500", expectedMajor = 2, expectedMinor = 7, expectedPatch = 22)
+ assertParsedVersion(input = "1.7.100-dev-800", expectedMajor = 1, expectedMinor = 7, expectedPatch = 100)
+ }
+
+ @Test
+ fun `should return null on non parsable string`() {
+ assertNull(parse("1.7"))
+ assertNull(parse("1"))
+ assertNull(parse("6"))
+ assertNull(parse("17.0"))
+ assertNull(parse("1..7.0"))
+ assertNull(parse("1.7-Beta"))
+ assertNull(parse("1.7.0Beta"))
+ }
+
+ @Test
+ fun `should compare simple versions`() {
+ assertEquals(0, KotlinGradlePluginVersion(1, 7, 0).compareTo(KotlinGradlePluginVersion(1, 7, 0)))
+
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) >= KotlinGradlePluginVersion(1, 6, 10))
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) < KotlinGradlePluginVersion(1, 6, 20))
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) > KotlinGradlePluginVersion(1, 6, 0))
+
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) <= KotlinGradlePluginVersion(1, 4, 32))
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) < KotlinGradlePluginVersion(1, 6, 20))
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) > KotlinGradlePluginVersion(1, 3, 0))
+
+ assertTrue(KotlinGradlePluginVersion(2, 1, 0) > KotlinGradlePluginVersion(1, 8, 0))
+ assertTrue(KotlinGradlePluginVersion(1, 5, 31) < KotlinGradlePluginVersion(1, 7, 0))
+ }
+
+ @Test
+ fun `should compare custom dev versions with trailing strings`() {
+ assertEquals(0, KotlinGradlePluginVersion(1, 7, 0).compareTo(parseNotNull("1.7.0")))
+
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) >= parseNotNull("1.6.10-Beta"))
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) < parseNotNull("1.6.20"))
+ assertTrue(KotlinGradlePluginVersion(1, 6, 10) > parseNotNull("1.6.0-RC2"))
+
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) <= parseNotNull("1.4.32-dev-142"))
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) < parseNotNull("1.6.20-Beta"))
+ assertTrue(KotlinGradlePluginVersion(1, 4, 32) > parseNotNull("1.3.0-RC"))
+
+ assertTrue(KotlinGradlePluginVersion(2, 1, 0) > parseNotNull("1.8.0-mercury-500"))
+ }
+
+ private fun assertParsedVersion(
+ input: String,
+ expectedMajor: Int,
+ expectedMinor: Int,
+ expectedPatch: Int
+ ) {
+ val kgpVersion = parseNotNull(input)
+ assertEquals(expectedMajor, kgpVersion.major)
+ assertEquals(expectedMinor, kgpVersion.minor)
+ assertEquals(expectedPatch, kgpVersion.patch)
+ assertEquals(KotlinGradlePluginVersion(expectedMajor, expectedMinor, expectedPatch), kgpVersion)
+ }
+
+ private fun parseNotNull(input: String): KotlinGradlePluginVersion = assertNotNull(parse(input))
+
+ private fun parse(input: String): KotlinGradlePluginVersion? = parseKotlinVersion(input)
+}