diff --git a/idea/build.gradle.kts b/idea/build.gradle.kts index 292217ebd95..87d07ccc353 100644 --- a/idea/build.gradle.kts +++ b/idea/build.gradle.kts @@ -1,8 +1,12 @@ +import org.apache.tools.ant.filters.ReplaceTokens + plugins { kotlin("jvm") id("jps-compatible") } +val kotlinVersion: String by rootProject.extra + repositories { maven("https://jetbrains.bintray.com/markdown") } @@ -181,6 +185,17 @@ dependencies { } tasks.named("processResources") { + val currentIde = IdeVersionConfigurator.currentIde + val pluginPatchNumber = findProperty("pluginPatchNumber") as String? ?: "1" + val defaultPluginVersion = "$kotlinVersion-${currentIde.kind.shortName}${currentIde.platform.version}-$pluginPatchNumber" + val pluginVersion = findProperty("pluginVersion") as String? ?: defaultPluginVersion + + inputs.property("pluginVersion", pluginVersion) + + filesMatching("META-INF/plugin.xml") { + filter("tokens" to mapOf("snapshot" to pluginVersion)) + } + from(provider { project(":compiler:cli-common").mainSourceSet.resources }) { include("META-INF/extensions/compiler.xml") } diff --git a/prepare/build.version/build.gradle.kts b/prepare/build.version/build.gradle.kts index 6907a4cef1b..0179f7b5a9c 100644 --- a/prepare/build.version/build.gradle.kts +++ b/prepare/build.version/build.gradle.kts @@ -44,20 +44,6 @@ val writeStdlibVersion by tasks.registering { } } -val writePluginVersion by tasks.registering { - val versionFile = project(":idea").projectDir.resolve("resources/META-INF/plugin.xml") - val pluginVersion = rootProject.findProperty("pluginVersion") as String? - inputs.property("version", pluginVersion) - outputs.file(versionFile) - doLast { - requireNotNull(pluginVersion) { "Specify 'pluginVersion' property" } - replaceVersion(versionFile, """([^<]+)""") { - logger.lifecycle("Writing new plugin version: $pluginVersion") - pluginVersion!! - } - } -} - val writeVersions by tasks.registering { dependsOn(writeBuildNumber, writeStdlibVersion) }