Skip to content

Commit 4e23f71

Browse files
committed
Remove configurations and code for Kotlin versions prior to 2.0
1 parent 2e19a82 commit 4e23f71

File tree

65 files changed

+79
-1501
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+79
-1501
lines changed

README.md

+2-5
Original file line numberDiff line numberDiff line change
@@ -157,11 +157,8 @@ Integrations in progress:
157157
- Integration with [gRPC](https://grpc.io/) (in prototype)
158158

159159
## Kotlin compatibility
160-
We support all stable Kotlin versions starting from 1.7.0:
161-
- 1.7.0, 1.7.10, 1.7.20, 1.7.21, 1.7.22
162-
- 1.8.0, 1.8.10, 1.8.20, 1.8.21, 1.8.22
163-
- 1.9.0, 1.9.10, 1.9.20, 1.9.21, 1.9.22, 1.9.23, 1.9.24, 1.9.25
164-
- 2.0.0, 2.0.10
160+
We support all stable Kotlin versions starting from 2.0.0:
161+
- 2.0.0, 2.0.10, 2.0.20, 2.0.21
165162

166163
To simplify project configuration, our Gradle plugin sets a proper library version automatically using BOM,
167164
based on the project's Kotlin version:

build.gradle.kts

+1-6
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,7 @@ plugins {
1111
alias(libs.plugins.conventions.kover)
1212
alias(libs.plugins.conventions.gradle.doctor)
1313
alias(libs.plugins.binary.compatibility.validator)
14-
15-
if (libs.versions.atomicfu.get() >= "0.24.0") {
16-
alias(libs.plugins.atomicfu.new)
17-
} else {
18-
alias(libs.plugins.atomicfu.old)
19-
}
14+
alias(libs.plugins.atomicfu)
2015
}
2116

2217
// useful for dependencies introspection

compiler-plugin/compiler-plugin-backend/src/main/core/kotlinx/rpc/codegen/extension/RPCDeclarationScanner.kt

+1-9
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.ir.declarations.IrProperty
1313
import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction
1414
import org.jetbrains.kotlin.ir.types.classOrNull
1515
import org.jetbrains.kotlin.ir.util.dumpKotlinLike
16-
import org.jetbrains.kotlin.ir.util.packageFqName
1716

1817
/**
1918
* This class scans user declared RPC service
@@ -73,15 +72,8 @@ internal object RPCDeclarationScanner {
7372
}
7473
}
7574

76-
val packageName = service.packageFqName?.asString()
77-
?: error("Expected package name of the ${service.name.asString()}")
78-
7975
val stubClassNotNull = stubClass
80-
// only for KSP generation
81-
?: ctx.getIrClassSymbol(
82-
packageName = packageName,
83-
name = "${service.name.asString()}${RpcNames.SERVICE_STUB_NAME_KSP.asString()}"
84-
).owner
76+
?: error("Expected generated stub class to be present in ${service.name.asString()}. FIR failed to do so.")
8577

8678
return ServiceDeclaration(
8779
service = service,

compiler-plugin/compiler-plugin-backend/src/main/core/kotlinx/rpc/codegen/extension/RPCStubGenerator.kt

+10-17
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ package kotlinx.rpc.codegen.extension
77
import kotlinx.rpc.codegen.VersionSpecificApi
88
import kotlinx.rpc.codegen.VersionSpecificApiImpl.copyToVS
99
import kotlinx.rpc.codegen.common.rpcMethodClassName
10-
import kotlinx.rpc.codegen.common.rpcMethodClassNameKsp
1110
import org.jetbrains.kotlin.backend.common.lower.DeclarationIrBuilder
1211
import org.jetbrains.kotlin.backend.jvm.functionByName
1312
import org.jetbrains.kotlin.cli.common.messages.MessageCollector
@@ -156,7 +155,7 @@ internal class RPCStubGenerator(
156155
propertyName: String,
157156
propertyType: IrType,
158157
valueParameter: IrValueParameter,
159-
propertyVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE
158+
propertyVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE,
160159
): IrProperty {
161160
return addConstructorProperty(Name.identifier(propertyName), propertyType, valueParameter, propertyVisibility)
162161
}
@@ -165,7 +164,7 @@ internal class RPCStubGenerator(
165164
propertyName: Name,
166165
propertyType: IrType,
167166
valueParameter: IrValueParameter,
168-
propertyVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE
167+
propertyVisibility: DescriptorVisibility = DescriptorVisibilities.PRIVATE,
169168
): IrProperty {
170169
return addProperty {
171170
name = propertyName
@@ -537,8 +536,7 @@ internal class RPCStubGenerator(
537536
val isMethodObject = method.arguments.isEmpty()
538537

539538
val methodClassName = method.function.name.rpcMethodClassName
540-
val methodClassNameKsp = method.function.name.rpcMethodClassNameKsp
541-
val methodClass: IrClass = initiateAndGetMethodClass(methodClassName, methodClassNameKsp, method)
539+
val methodClass: IrClass = initiateAndGetMethodClass(methodClassName, method)
542540

543541
addFunction {
544542
name = method.function.name
@@ -652,17 +650,12 @@ internal class RPCStubGenerator(
652650
* }
653651
* ```
654652
*/
655-
private fun IrClass.initiateAndGetMethodClass(
656-
methodClassName: Name,
657-
methodClassNameKsp: Name,
658-
method: ServiceDeclaration.Method
659-
): IrClass {
660-
val methodClass = findDeclaration<IrClass> {
661-
it.name == methodClassName || it.name == methodClassNameKsp
662-
} ?: error(
663-
"Expected $methodClassName or $methodClassNameKsp class to be present in stub class " +
664-
"${declaration.service.name}${declaration.stubClass.name}"
665-
)
653+
private fun IrClass.initiateAndGetMethodClass(methodClassName: Name, method: ServiceDeclaration.Method): IrClass {
654+
val methodClass = findDeclaration<IrClass> { it.name == methodClassName }
655+
?: error(
656+
"Expected $methodClassName class to be present in stub class " +
657+
"${declaration.service.name}${declaration.stubClass.name}"
658+
)
666659

667660
methodClasses.add(methodClass)
668661

@@ -764,7 +757,7 @@ internal class RPCStubGenerator(
764757
functionThisReceiver: IrValueParameter,
765758
isMethodObject: Boolean,
766759
methodClass: IrClass,
767-
arguments: List<IrValueParameter>
760+
arguments: List<IrValueParameter>,
768761
): IrCall {
769762
val call = irCall(
770763
callee = ctx.functions.rpcClientCall.symbol,

compiler-plugin/compiler-plugin-backend/src/main/v_1_7/kotlinx/rpc/codegen/VersionSpecificApiImpl.kt

-59
This file was deleted.

compiler-plugin/compiler-plugin-backend/src/main/v_1_7_2/kotlinx/rpc/codegen/VersionSpecificApiImpl.kt

-73
This file was deleted.

compiler-plugin/compiler-plugin-backend/src/main/v_1_8/kotlinx/rpc/codegen/VersionSpecificApiImpl.kt

-77
This file was deleted.

0 commit comments

Comments
 (0)