Skip to content

Commit 9118e45

Browse files
authored
Kotlin 2.2.20 (#478)
1 parent c690e55 commit 9118e45

File tree

21 files changed

+3443
-10111
lines changed

21 files changed

+3443
-10111
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
[![Kotlin Experimental](https://kotl.in/badges/experimental.svg)](https://kotlinlang.org/docs/components-stability.html)
99
[![Official JetBrains project](http://jb.gg/badges/official.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
10-
[![Kotlin](https://img.shields.io/badge/kotlin-2.0.0--2.2.10-blue.svg?logo=kotlin)](http://kotlinlang.org)
10+
[![Kotlin](https://img.shields.io/badge/kotlin-2.0.0--2.2.20-blue.svg?logo=kotlin)](http://kotlinlang.org)
1111
[![GitHub License](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg?style=flat)](http://www.apache.org/licenses/LICENSE-2.0)
1212

1313
[//]: # ([![TeamCity build](https://img.shields.io/teamcity/build/s/Build_kRPC_All.svg?server=http%3A%2F%2Fkrpc.teamcity.com)](https://teamcity.jetbrains.com/viewType.html?buildTypeId=Build_kRPC_All&guest=1))
@@ -102,7 +102,7 @@ To ensure that all IDE features of our compiler plugin work properly on IntelliJ
102102
We support all stable Kotlin versions starting from 2.0.0:
103103
- 2.0.0, 2.0.10, 2.0.20, 2.0.21
104104
- 2.1.0, 2.1.10, 2.1.20, 2.1.21
105-
- 2.2.0, 2.2.10
105+
- 2.2.0, 2.2.10, 2.2.20
106106

107107
For a full compatibility checklist,
108108
see [Versions](https://kotlin.github.io/kotlinx-rpc/versions.html).
@@ -134,8 +134,8 @@ that will set up code generation in a project.
134134
Example of a setup in a project's `build.gradle.kts`:
135135
```kotlin
136136
plugins {
137-
kotlin("multiplatform") version "2.2.10"
138-
kotlin("plugin.serialization") version "2.2.10"
137+
kotlin("multiplatform") version "2.2.20"
138+
kotlin("plugin.serialization") version "2.2.20"
139139
id("org.jetbrains.kotlinx.rpc.plugin") version "0.9.1"
140140
}
141141
```

compiler-plugin/compiler-plugin-cli/src/main/kotlin/kotlinx/rpc/codegen/RpcCompilerPlugin.kt renamed to compiler-plugin/compiler-plugin-cli/src/main/kotlin/kotlinx/rpc/codegen/RpcCommandLineProcessor.kt

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,14 @@
44

55
package kotlinx.rpc.codegen
66

7-
import kotlinx.rpc.codegen.extension.RpcIrExtension
8-
import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
97
import org.jetbrains.kotlin.compiler.plugin.AbstractCliOption
108
import org.jetbrains.kotlin.compiler.plugin.CommandLineProcessor
11-
import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar
129
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
1310
import org.jetbrains.kotlin.config.CompilerConfiguration
14-
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrarAdapter
1511

1612
@OptIn(ExperimentalCompilerApi::class)
1713
class RpcCommandLineProcessor : CommandLineProcessor {
18-
override val pluginId = "kotlinx-rpc"
14+
override val pluginId = PLUGIN_ID
1915

2016
override val pluginOptions = listOf(
2117
RpcFirCliOptions.ANNOTATION_TYPE_SAFETY,
@@ -37,20 +33,3 @@ class RpcCommandLineProcessor : CommandLineProcessor {
3733
}
3834
}
3935
}
40-
41-
@OptIn(ExperimentalCompilerApi::class)
42-
class RpcCompilerPlugin : CompilerPluginRegistrar() {
43-
override val supportsK2: Boolean = true
44-
45-
override fun ExtensionStorage.registerExtensions(configuration: CompilerConfiguration) {
46-
registerRpcExtensions(configuration)
47-
}
48-
}
49-
50-
@OptIn(ExperimentalCompilerApi::class)
51-
fun CompilerPluginRegistrar.ExtensionStorage.registerRpcExtensions(configuration: CompilerConfiguration) {
52-
VersionSpecificApi.INSTANCE = VersionSpecificApiImpl
53-
54-
IrGenerationExtension.registerExtension(RpcIrExtension(configuration))
55-
FirExtensionRegistrarAdapter.registerExtension(FirRpcExtensionRegistrar(configuration))
56-
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
/*
2+
* Copyright 2023-2025 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license.
3+
*/
4+
5+
package kotlinx.rpc.codegen
6+
7+
const val PLUGIN_ID = "org.jetbrains.kotlinx.rpc"
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
/*
2+
* Copyright 2023-2025 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license.
3+
*/
4+
5+
package kotlinx.rpc.codegen
6+
7+
import kotlinx.rpc.codegen.extension.RpcIrExtension
8+
import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
9+
import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar
10+
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
11+
import org.jetbrains.kotlin.config.CompilerConfiguration
12+
import org.jetbrains.kotlin.fir.extensions.FirExtensionRegistrarAdapter
13+
14+
@OptIn(ExperimentalCompilerApi::class)
15+
fun CompilerPluginRegistrar.ExtensionStorage.registerRpcExtensions(configuration: CompilerConfiguration) {
16+
VersionSpecificApi.INSTANCE = VersionSpecificApiImpl
17+
18+
IrGenerationExtension.registerExtension(RpcIrExtension(configuration))
19+
FirExtensionRegistrarAdapter.registerExtension(FirRpcExtensionRegistrar(configuration))
20+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
/*
2+
* Copyright 2023-2025 JetBrains s.r.o and contributors. Use of this source code is governed by the Apache 2.0 license.
3+
*/
4+
5+
package kotlinx.rpc.codegen
6+
7+
import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar
8+
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
9+
import org.jetbrains.kotlin.config.CompilerConfiguration
10+
11+
@OptIn(ExperimentalCompilerApi::class)
12+
class RpcCompilerPlugin : CompilerPluginRegistrar() {
13+
override val supportsK2: Boolean = true
14+
15+
//##csm RpcCompilerPlugin.pluginId
16+
//##csm specific=[2.0.0...2.2.99]
17+
//##csm /specific
18+
//##csm default
19+
override val pluginId: String = PLUGIN_ID
20+
//##csm /default
21+
//##csm /RpcCompilerPlugin.pluginId
22+
23+
override fun ExtensionStorage.registerExtensions(configuration: CompilerConfiguration) {
24+
registerRpcExtensions(configuration)
25+
}
26+
}

compiler-plugin/compiler-plugin-k2/src/main/kotlin/kotlinx/rpc/codegen/FirRpcServiceGenerator.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ class FirRpcServiceGenerator(
9696
* Generates [owner]'s service stub.
9797
* Scrapes the functions from the [owner] to generate method classes.
9898
*/
99-
private fun generateRpcServiceStubClass(owner: FirClassSymbol<*>): FirRegularClassSymbol? {
99+
private fun generateRpcServiceStubClass(owner: FirClassSymbol<*>): FirRegularClassSymbol {
100100
return createNestedClass(owner, RpcNames.SERVICE_STUB_NAME, RpcGeneratedStubKey(owner.name)) {
101101
visibility = Visibilities.Public
102102
modality = Modality.FINAL

compiler-plugin/gradle.properties

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,6 @@ org.gradle.configuration-cache=true
2020
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
2121
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
2222

23-
# https://youtrack.jetbrains.com/issue/KT-78504
24-
kotlin.js.yarn=false
25-
2623
# development mode for kotlinx.rpc gradle plugin. Uses local project paths to apply the compiler plugin
2724
kotlinx.rpc.plugin.internalDevelopment=true
2825

docs/pages/kotlinx-rpc/topics/versions.topic

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
<list>
2525
<li>2.0.0, 2.0.10, 2.0.20, 2.0.21</li>
2626
<li>2.1.0, 2.1.10, 2.1.20, 2.1.21</li>
27-
<li>2.2.0, 2.2.10</li>
27+
<li>2.2.0, 2.2.10, 2.2.20</li>
2828
</list>
2929
<p>
3030
Our code generation will support these versions (See more on <a anchor="code-generation-artifacts">code

docs/pages/kotlinx-rpc/v.list

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,5 @@
1515

1616
<!-- Library versions -->
1717
<var name="kotlinx-rpc-version" value="0.9.1"/>
18-
<var name="kotlin-version" value="2.2.10"/>
18+
<var name="kotlin-version" value="2.2.20"/>
1919
</vars>

dokka-plugin/gradle.properties

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,6 @@ org.gradle.configuration-cache=true
2020
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
2121
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
2222

23-
# https://youtrack.jetbrains.com/issue/KT-78504
24-
kotlin.js.yarn=false
25-
2623
# development mode for kotlinx.rpc gradle plugin. Uses local project paths to apply the compiler plugin
2724
kotlinx.rpc.plugin.internalDevelopment=true
2825

0 commit comments

Comments
 (0)