diff --git a/docs/build.gradle b/docs/build.gradle index a016be253f..24cfebd52a 100644 --- a/docs/build.gradle +++ b/docs/build.gradle @@ -46,29 +46,17 @@ kotlin { } } -private Closure includeSourcesInDokka(String... approximateNames) { - return { - parent.subprojects.forEach { - if (it != project) { - File srcDir = new File(it.projectDir.absolutePath, "src") - if (srcDir.exists() && srcDir.isDirectory()) { - srcDir.eachFile { file -> - if (approximateNames.any { file.name.contains(it) } && file.isDirectory()) { - String pathToSrc = file.absolutePath - sourceRoot { - path = pathToSrc - } - } - } - } +private List findSourcesWithName(String... approximateNames) { + return parent.subprojects + .findAll { it != project } + .collectMany { it.kotlin.sourceSets } + .findAll { sourceSet -> approximateNames.any { + nameToFilter -> sourceSet.name.contains(nameToFilter) } - } - } + }.collect { it.kotlin } } -dokka { - outputFormat = 'html' - +tasks.dokkaHtml { switch (true) { case project.hasProperty("DOKKA_PATH"): outputDirectory = project.property("DOKKA_PATH").toString() @@ -78,19 +66,27 @@ dokka { break } - multiplatform { - global { - skipDeprecated = true + dokkaSourceSets { + configureEach { + skipDeprecated.set(true) sourceLink { - path = "./" - url = "https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/" - lineSuffix = "#L" + localDirectory.set(file("./")) + remoteUrl.set(new URL("https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/")) + remoteLineSuffix.set("#L") } } - common(includeSourcesInDokka("commonMain")) - js(includeSourcesInDokka("jsMain"/*, "commonMain"*/)) - jvm(includeSourcesInDokka("jvmMain"/*, "commonMain"*/)) + named("commonMain") { + sourceRoots.setFrom(findSourcesWithName("commonMain")) + } + + named("jsMain") { + sourceRoots.setFrom(findSourcesWithName("jsMain", "commonMain")) + } + + named("jvmMain") { + sourceRoots.setFrom(findSourcesWithName("jvmMain", "commonMain")) + } } } diff --git a/docs/gradle.properties b/docs/gradle.properties index 3e3f5a7521..55021b5f4e 100644 --- a/docs/gradle.properties +++ b/docs/gradle.properties @@ -1,3 +1,3 @@ -dokka_version=0.10.1 +dokka_version=1.4.0 org.gradle.jvmargs=-Xmx1024m diff --git a/gradle.properties b/gradle.properties index a07f5a51b1..58ea578fb8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -org.gradle.jvmargs=-Xmx1024m +org.gradle.jvmargs=-Xmx2048m kotlin.code.style=official org.gradle.parallel=true kotlin.js.generate.externals=true diff --git a/settings.gradle b/settings.gradle index 6c80087f13..f765964ad9 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,3 +1,10 @@ +pluginManagement { + repositories { + gradlePluginPortal() + jcenter() + } +} + include ":tgbotapi.core" include ":tgbotapi.extensions.api" include ":tgbotapi.extensions.utils"