Skip to content

Commit 83567f1

Browse files
committed
UPDATE_KOTLIN_VERSION: 2.1.20-Beta2
1 parent 2b9eeb0 commit 83567f1

File tree

5 files changed

+16
-15
lines changed

5 files changed

+16
-15
lines changed

compiler-plugin/build.gradle.kts

+1
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ dependencies {
6666
testRuntimeOnly("org.junit.platform:junit-platform-suite:$junitPlatformVersion")
6767
testImplementation("org.jetbrains.kotlin:kotlin-compiler:$kotlinBaseVersion")
6868
testImplementation("org.jetbrains.kotlin:kotlin-compiler-internal-test-framework:$kotlinBaseVersion")
69+
testImplementation("org.jetbrains.kotlin:analysis-api-test-framework:$kotlinBaseVersion")
6970
testImplementation(project(":test-utils"))
7071

7172
libsForTesting(kotlin("stdlib", kotlinBaseVersion))

compiler-plugin/src/main/kotlin/com/google/devtools/ksp/processing/impl/ResolverImpl.kt

+5-10
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,10 @@ import com.intellij.psi.*
5656
import com.intellij.psi.impl.source.PsiClassReferenceType
5757
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
5858
import org.jetbrains.kotlin.builtins.jvm.JavaToKotlinClassMap
59-
import org.jetbrains.kotlin.codegen.ClassBuilderMode
60-
import org.jetbrains.kotlin.codegen.OwnerKind
6159
import org.jetbrains.kotlin.codegen.signature.BothSignatureWriter
6260
import org.jetbrains.kotlin.codegen.state.KotlinTypeMapper
61+
import org.jetbrains.kotlin.config.ApiVersion
62+
import org.jetbrains.kotlin.config.LanguageVersion
6363
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
6464
import org.jetbrains.kotlin.container.ComponentProvider
6565
import org.jetbrains.kotlin.container.get
@@ -147,9 +147,8 @@ class ResolverImpl(
147147

148148
private val moduleIdentifier = module.name.getNonSpecialIdentifier()
149149
private val typeMapper = KotlinTypeMapper(
150-
BindingContext.EMPTY, ClassBuilderMode.LIGHT_CLASSES,
151150
moduleIdentifier,
152-
KotlinTypeMapper.LANGUAGE_VERSION_SETTINGS_DEFAULT, // TODO use proper LanguageVersionSettings
151+
LanguageVersionSettingsImpl(LanguageVersion.KOTLIN_1_9, ApiVersion.KOTLIN_1_9),
153152
true
154153
)
155154
private val qualifiedExpressionResolver = QualifiedExpressionResolver(LanguageVersionSettingsImpl.DEFAULT)
@@ -893,17 +892,13 @@ class ResolverImpl(
893892

894893
@KspExperimental
895894
override fun getJvmName(accessor: KSPropertyAccessor): String? {
896-
return resolvePropertyAccessorDeclaration(accessor)?.let {
897-
typeMapper.mapFunctionName(it, OwnerKind.IMPLEMENTATION)
898-
}
895+
return resolvePropertyAccessorDeclaration(accessor)?.let(typeMapper::mapFunctionName)
899896
}
900897

901898
@KspExperimental
902899
override fun getJvmName(declaration: KSFunctionDeclaration): String? {
903900
// function names might be mangled if they receive inline class parameters or they are internal
904-
return (resolveFunctionDeclaration(declaration) as? FunctionDescriptor)?.let {
905-
typeMapper.mapFunctionName(it, OwnerKind.IMPLEMENTATION)
906-
}
901+
return (resolveFunctionDeclaration(declaration) as? FunctionDescriptor)?.let(typeMapper::mapFunctionName)
907902
}
908903

909904
@KspExperimental

compiler-plugin/src/main/kotlin/com/google/devtools/ksp/symbol/impl/kotlin/KSAnnotationImpl.kt

+1
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ class KSAnnotationImpl private constructor(val ktAnnotationEntry: KtAnnotationEn
103103
CONSTRUCTOR_PARAMETER -> AnnotationUseSiteTarget.PARAM
104104
SETTER_PARAMETER -> AnnotationUseSiteTarget.SETPARAM
105105
PROPERTY_DELEGATE_FIELD -> AnnotationUseSiteTarget.DELEGATE
106+
ALL -> null
106107
}
107108
}
108109

compiler-plugin/src/test/kotlin/com/google/devtools/ksp/test/AbstractKSPTest.kt

+8-4
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ import com.intellij.openapi.Disposable
2222
import com.intellij.openapi.project.Project
2323
import com.intellij.openapi.util.Disposer
2424
import com.intellij.testFramework.TestDataFile
25+
import org.jetbrains.kotlin.analysis.test.framework.services.TargetPlatformDirectives
26+
import org.jetbrains.kotlin.analysis.test.framework.services.TargetPlatformProviderForAnalysisApiTests
2527
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
2628
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
2729
import org.jetbrains.kotlin.cli.jvm.config.addJavaSourceRoot
@@ -121,9 +123,11 @@ abstract class AbstractKSPTest(frontend: FrontendKind<*>) : DisposableTest() {
121123
useAdditionalService<TemporaryDirectoryManager>(::TemporaryDirectoryManagerImpl)
122124
useAdditionalService<ApplicationDisposableProvider> { ExecutionListenerBasedDisposableProvider() }
123125
useAdditionalService<KotlinStandardLibrariesPathProvider> { StandardLibrariesPathProviderForKotlinProject }
126+
useAdditionalService<TargetPlatformProvider>(::TargetPlatformProviderForAnalysisApiTests)
124127

125128
useDirectives(*AbstractKotlinCompilerTest.defaultDirectiveContainers.toTypedArray())
126129
useDirectives(JvmEnvironmentConfigurationDirectives)
130+
useDirectives(TargetPlatformDirectives)
127131

128132
defaultDirectives {
129133
+JvmEnvironmentConfigurationDirectives.FULL_JDK
@@ -163,7 +167,7 @@ abstract class AbstractKSPTest(frontend: FrontendKind<*>) : DisposableTest() {
163167
open fun compileModule(module: TestModule, testServices: TestServices) {
164168
val javaFiles = module.writeJavaFiles()
165169
val compilerConfiguration = testServices.compilerConfigurationProvider.getCompilerConfiguration(module)
166-
val dependencies = module.allDependencies.map { outDirForModule(it.moduleName) }
170+
val dependencies = module.allDependencies.map { outDirForModule(it.dependencyModule.name) }
167171
compilerConfiguration.addJvmClasspathRoots(dependencies)
168172
compilerConfiguration.addJavaSourceRoot(module.javaDir)
169173

@@ -185,7 +189,7 @@ abstract class AbstractKSPTest(frontend: FrontendKind<*>) : DisposableTest() {
185189
"-classpath", classpath,
186190
"-d", module.outDir.path
187191
)
188-
compileJavaFiles(javaFiles, options, assertions = JUnit5Assertions)
192+
compileJavaFiles(javaFiles, options)
189193
}
190194

191195
fun runTest(@TestDataFile path: String) {
@@ -196,8 +200,8 @@ abstract class AbstractKSPTest(frontend: FrontendKind<*>) : DisposableTest() {
196200
path,
197201
testConfiguration.directives,
198202
)
199-
val dependencyProvider = DependencyProviderImpl(testServices, moduleStructure.modules)
200-
testServices.registerDependencyProvider(dependencyProvider)
203+
val dependencyProvider = ArtifactsProvider(testServices, moduleStructure.modules)
204+
testServices.registerArtifactsProvider(dependencyProvider)
201205
testServices.register(TestModuleStructure::class, moduleStructure)
202206

203207
val mainModule = moduleStructure.modules.last()

gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Copied from kotlinc
22
org.gradle.jvmargs=-Duser.country=US -Dkotlin.daemon.jvm.options=-Xmx4096m -Dfile.encoding=UTF-8
33

4-
kotlinBaseVersion=2.1.10
4+
kotlinBaseVersion=2.1.20-Beta2
55
agpBaseVersion=8.10.0-alpha03
66
intellijVersion=233.13135.128
77
junitVersion=4.13.1

0 commit comments

Comments
 (0)