Skip to content

Commit 1180951

Browse files
bnormSpace Cloud
authored andcommitted
[Plugins] Require a unique pluginId for all compiler plugins
^KT-55300
1 parent 62ba08e commit 1180951

File tree

25 files changed

+71
-13
lines changed

25 files changed

+71
-13
lines changed

compiler/plugin-api/src/org/jetbrains/kotlin/compiler/plugin/CompilerPluginRegistrar.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@ abstract class CompilerPluginRegistrar {
2323
* Uniquely identifies the Kotlin compiler plugin. Must match the `pluginId` specified in [CommandLineProcessor].
2424
* The ID can be used in combination with `-Xcompiler-plugin-order` to control execution order of compiler plugins.
2525
*/
26-
open val pluginId: String
27-
get() = "" // TODO(KT-55300) property will be made abstract in immediate followup.
26+
abstract val pluginId: String
2827

2928
abstract fun ExtensionStorage.registerExtensions(configuration: CompilerConfiguration)
3029

libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/compilerPlugins/incrementalChangeInPlugin/plugin/src/main/kotlin/test/compiler/plugin/TestComponentRegistrar.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@ class TestComponentRegistrar : CompilerPluginRegistrar() {
1616
IrGenerationExtension.registerExtension(MyMethodGenerator())
1717
}
1818

19+
override val pluginId: String get() = "test.compiler.plugin"
1920
override val supportsK2: Boolean = true
2021
}

libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/compilerPlugins/pluginUsesJdkClass/plugin/src/main/kotlin/test/compiler/plugin/TestComponentRegistrar.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,6 @@ class TestComponentRegistrar : CompilerPluginRegistrar() {
3131
}
3232
}
3333

34-
override val supportsK2: Boolean = true
34+
override val pluginId: String get() = "test.compiler.plugin"
35+
override val supportsK2: Boolean get() = true
3536
}

libraries/tools/kotlin-maven-plugin-test/src/it/test-plugins/test-extension/src/main/kotlin/org/jetbrains/kotlin/test/TestKotlinPluginRegistrar.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,6 @@ class TestKotlinPluginRegistrar : CompilerPluginRegistrar() {
4343
collector.report(CompilerMessageSeverity.INFO, "Option value: $option")
4444
}
4545

46-
override val supportsK2: Boolean
47-
get() = true
46+
override val pluginId: String get() = "test.compiler.plugin"
47+
override val supportsK2: Boolean get() = true
4848
}

plugins/allopen/allopen.cli/src/org/jetbrains/kotlin/allopen/AllOpenPlugin.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ class AllOpenComponentRegistrar : CompilerPluginRegistrar() {
5656
FirExtensionRegistrarAdapter.registerExtension(FirAllOpenExtensionRegistrar(annotations))
5757
}
5858

59+
override val pluginId: String get() = AllOpenPluginNames.PLUGIN_ID
60+
5961
override val supportsK2: Boolean
6062
get() = true
6163
}

plugins/assign-plugin/assign-plugin.cli/src/org/jetbrains/kotlin/assignment/plugin/ValueContainerAssignmentPlugin.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ class AssignmentComponentRegistrar : CompilerPluginRegistrar() {
5454
}
5555
}
5656

57+
override val pluginId: String get() = PLUGIN_ID
58+
5759
override val supportsK2: Boolean
5860
get() = true
5961
}

plugins/atomicfu/atomicfu-compiler/src/org/jetbrains/kotlinx/atomicfu/compiler/extensions/AtomicfuComponentRegistrar.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ class AtomicfuComponentRegistrar : CompilerPluginRegistrar() {
2929
registerExtensions(this)
3030
}
3131

32+
override val pluginId: String get() = "org.jetbrains.kotlinx.atomicfu"
33+
3234
override val supportsK2: Boolean
3335
get() = true
3436

plugins/compose/compiler-hosted/src/main/java/androidx/compose/compiler/plugins/kotlin/ComposePlugin.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -577,6 +577,8 @@ fun validateFeatureFlag(
577577

578578
@OptIn(ExperimentalCompilerApi::class)
579579
class ComposePluginRegistrar : CompilerPluginRegistrar() {
580+
override val pluginId: String get() = COMPOSE_PLUGIN_ID
581+
580582
override val supportsK2: Boolean
581583
get() = true
582584

plugins/js-plain-objects/compiler-plugin/js-plain-objects.cli/src/org/jetbrains/kotlinx/jso/compiler/cli/JsPlainObjectsComponentRegistrar.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import org.jetbrains.kotlinx.jspo.compiler.backend.JsPlainObjectsLoweringExtensi
1313
import org.jetbrains.kotlinx.jspo.compiler.fir.JsPlainObjectsExtensionRegistrar
1414

1515
class JsPlainObjectsComponentRegistrar : CompilerPluginRegistrar() {
16+
override val pluginId: String get() = "org.jetbrains.kotlinx.jspo"
1617
override val supportsK2: Boolean get() = true
1718

1819
override fun ExtensionStorage.registerExtensions(configuration: CompilerConfiguration) {

plugins/jvm-abi-gen/src/org/jetbrains/kotlin/jvm/abi/JvmAbiComponentRegistrar.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.codegen.extensions.ClassFileFactoryFinalizerExtensio
1313
import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar
1414
import org.jetbrains.kotlin.config.CompilerConfiguration
1515
import org.jetbrains.kotlin.config.messageCollector
16+
import org.jetbrains.kotlin.jvm.abi.JvmAbiCommandLineProcessor.Companion.COMPILER_PLUGIN_ID
1617
import java.io.File
1718

1819
/**
@@ -52,6 +53,8 @@ class JvmAbiComponentRegistrar(
5253
ClassFileFactoryFinalizerExtension.registerExtension(outputExtension)
5354
}
5455

56+
override val pluginId: String get() = COMPILER_PLUGIN_ID
57+
5558
override val supportsK2: Boolean
5659
get() = true
5760
}

0 commit comments

Comments
 (0)