Skip to content

Commit 8e3b541

Browse files
committed
Update to Kotlin 1.8.0 and idea 2022.3
1 parent d521897 commit 8e3b541

File tree

11 files changed

+37
-32
lines changed

11 files changed

+37
-32
lines changed

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
plugins {
44
kotlin("multiplatform") apply false
5-
id("me.him188.maven-central-publish") version "1.0.0-dev-3" apply false
5+
id("me.him188.maven-central-publish") version "1.0.0" apply false
66
kotlin("kapt") apply false
77
kotlin("plugin.serialization") version Versions.kotlin apply false
88
id("com.gradle.plugin-publish") version "0.18.0" apply false

buildSrc/build.gradle.kts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ repositories {
99

1010
kotlin {
1111
sourceSets.all {
12-
languageSettings.useExperimentalAnnotation("kotlin.Experimental")
13-
languageSettings.useExperimentalAnnotation("kotlin.RequiresOptIn")
12+
languageSettings.optIn("kotlin.Experimental")
13+
languageSettings.optIn("kotlin.RequiresOptIn")
1414
}
1515
}
1616

@@ -20,6 +20,7 @@ dependencies {
2020

2121
compileOnly(gradleApi())
2222
api("org.jetbrains.kotlin:kotlin-gradle-plugin:${version("kotlin")}")
23+
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.0")
2324

2425
compileOnly("com.github.jengelman.gradle.plugins:shadow:6.0.0")
2526
}

buildSrc/src/main/kotlin/Versions.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
@file:Suppress("MemberVisibilityCanBePrivate")
22

33
object Versions {
4-
const val intellij = "2022.2.4"
4+
const val intellij = "2022.3"
55

66
const val project = "2.2.0-180.1"
7-
const val idePlugin = "222-$project"
7+
const val idePlugin = "223-$project"
88

9-
const val kotlin = "1.8.0-Beta"
10-
const val kotlinIdea = "222-1.8.0-Beta-release-224-IJ4167.29@eap"
11-
const val coroutines = "1.6.1"
9+
const val kotlin = "1.8.0"
10+
val kotlinIdea: String? = null
11+
const val coroutines = "1.6.4"
1212

1313
const val publicationGroup = "me.him188"
1414
}

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#Wed Mar 04 22:27:09 CST 2020
2-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
2+
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip
33
distributionBase=GRADLE_USER_HOME
44
distributionPath=wrapper/dists
55
zipStorePath=wrapper/dists

ide-plugin/build.gradle.kts

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
22

33
plugins {
4-
id("org.jetbrains.intellij") version "1.7.0"
4+
id("org.jetbrains.intellij") version "1.12.0"
55
kotlin("jvm")
66
kotlin("plugin.serialization")
77

@@ -13,16 +13,14 @@ kotlin.targets.asSequence()
1313
.filter { it.platformType == org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType.jvm }
1414
.map { it.kotlinOptions }
1515
.filterIsInstance<org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions>()
16-
.forEach { it.jvmTarget = "11" }
16+
.forEach { it.jvmTarget = "17" }
1717

1818
java {
19-
sourceCompatibility = JavaVersion.VERSION_11
20-
targetCompatibility = JavaVersion.VERSION_11
19+
sourceCompatibility = JavaVersion.VERSION_17
20+
targetCompatibility = JavaVersion.VERSION_17
2121
}
2222

2323
dependencies {
24-
compileOnly(kotlin("stdlib-jdk8"))
25-
2624
api(project(":kotlin-jvm-blocking-bridge-runtime"))
2725
api(project(":kotlin-jvm-blocking-bridge-compiler"))
2826

@@ -47,7 +45,10 @@ intellij {
4745
listOf(
4846
// "org.jetbrains.kotlin:211-1.5.30-M1-release-141-IJ7442.40@eap",
4947
"java",
50-
"org.jetbrains.kotlin:${Versions.kotlinIdea}"
48+
if (Versions.kotlinIdea == null)
49+
"org.jetbrains.kotlin"
50+
else
51+
"org.jetbrains.kotlin:${Versions.kotlinIdea}"
5152
)
5253
)
5354
}
@@ -63,11 +64,11 @@ tasks.getByName("publishPlugin", org.jetbrains.intellij.tasks.PublishPluginTask:
6364
}
6465

6566
tasks.withType<org.jetbrains.intellij.tasks.PatchPluginXmlTask> {
66-
sinceBuild.set("213.0")
67-
untilBuild.set("222.*")
67+
sinceBuild.set("223.0")
68+
untilBuild.set("223.*")
6869
changeNotes.set(
6970
"""
70-
See <a href="">Release notes</a>
71+
See <a href="https://github.com/Him188/kotlin-jvm-blocking-bridge">Release notes</a>
7172
""".trimIndent()
7273
)
7374
}

ide-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/ide/BridgeProjectImportListener.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,9 @@ import com.intellij.openapi.Disposable
44
import com.intellij.openapi.externalSystem.model.task.ExternalSystemTaskId
55
import com.intellij.openapi.externalSystem.model.task.ExternalSystemTaskNotificationListenerAdapter
66
import com.intellij.openapi.externalSystem.model.task.ExternalSystemTaskType
7+
import com.intellij.openapi.progress.util.BackgroundTaskUtil
78
import com.intellij.openapi.project.Project
8-
import org.jetbrains.kotlin.idea.util.ProgressIndicatorUtils
9+
import com.intellij.openapi.util.Computable
910
import org.jetbrains.kotlin.idea.util.projectStructure.allModules
1011

1112
class BridgeProjectImportListener : Disposable, ExternalSystemTaskNotificationListenerAdapter() {
@@ -17,11 +18,11 @@ class BridgeProjectImportListener : Disposable, ExternalSystemTaskNotificationLi
1718
if (id.type == ExternalSystemTaskType.RESOLVE_PROJECT) {
1819
// At this point changes might be still not applied to project structure yet.
1920
val project = id.findResolvedProject() ?: return
20-
ProgressIndicatorUtils.runUnderDisposeAwareIndicator(this) {
21+
BackgroundTaskUtil.runUnderDisposeAwareIndicator(this, Computable {
2122
for (module in project.allModules()) {
2223
module.getServiceIfCreated(BridgeModuleCacheService::class.java)?.initialized = false
2324
}
24-
}
25+
})
2526
}
2627
}
2728
}

ide-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/ide/JvmBlockingBridgePsiAugmentProvider.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import org.jetbrains.kotlin.psi.*
2828
import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject
2929
import org.jetbrains.kotlin.resolve.BindingContext
3030
import org.jetbrains.kotlin.resolve.jvm.diagnostics.JvmDeclarationOriginKind
31-
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
3231

3332
/**
3433
* Allows inserting elements into a PsiElement
@@ -195,7 +194,7 @@ internal fun KtLightMethod.generateLightMethod(
195194
return BlockingBridgeStubMethod(kotlinOrigin, containingClass, originMethod, parameters)
196195
}
197196

198-
val overloads = originMethod.kotlinOrigin.safeAs<KtNamedFunction>()?.valueParameters // last is Continuation
197+
val overloads = (originMethod.kotlinOrigin as? KtNamedFunction)?.valueParameters // last is Continuation
199198
?.jvmOverloads(originMethod.parameterList) ?: return emptyList()
200199

201200
if (overloads.isEmpty()) return emptyList()
@@ -317,6 +316,7 @@ internal class BlockingBridgeStubMethod(
317316
is PsiWildcardType -> { // ? super String
318317
(type.bound ?: type).coerceUnitToVoid()
319318
}
319+
320320
else -> {
321321
type.coerceUnitToVoid()
322322
}

ide-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/ide/bridgeExt.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package me.him188.kotlin.jvm.blocking.bridge.ide
22

33
import com.intellij.openapi.module.Module
44
import com.intellij.psi.PsiElement
5-
import com.intellij.util.castSafelyTo
65
import me.him188.kotlin.jvm.blocking.bridge.compiler.extensions.BridgeCommandLineProcessor
76
import me.him188.kotlin.jvm.blocking.bridge.compiler.extensions.IBridgeConfiguration
87
import me.him188.kotlin.jvm.blocking.bridge.compiler.extensions.createBridgeConfig
@@ -59,7 +58,7 @@ inline fun <R> Module.useBridgeCacheOrInit(
5958

6059
fun ModuleDescriptor.isIr(): Boolean {
6160
val compilerArguments = kotlinFacetSettings()?.compilerArguments ?: return true // true by default
62-
if (compilerArguments.castSafelyTo<K2JVMCompilerArguments>()?.useOldBackend == true) {
61+
if ((compilerArguments as? K2JVMCompilerArguments?)?.useOldBackend == true) {
6362
return false
6463
}
6564
return true

ide-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/ide/fix/RemoveJvmBlockingBridgeFix.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.idea.util.findAnnotation
1414
import org.jetbrains.kotlin.psi.KtAnnotationEntry
1515
import org.jetbrains.kotlin.psi.KtFunction
1616
import org.jetbrains.kotlin.psi.KtModifierListOwner
17-
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
1817

1918
class RemoveJvmBlockingBridgeFix(
2019
element: KtFunction,
@@ -29,8 +28,10 @@ class RemoveJvmBlockingBridgeFix(
2928

3029
companion object : KotlinSingleIntentionActionFactory() {
3130
override fun createAction(diagnostic: Diagnostic): IntentionAction? {
32-
val target = diagnostic.psiElement.safeAs<KtAnnotationEntry>()?.parentsOfType<KtFunction>()?.firstOrNull()
33-
?: return null
31+
val target =
32+
(diagnostic.psiElement as? KtAnnotationEntry)?.parentsOfType<KtFunction>()
33+
?.firstOrNull()
34+
?: return null
3435
return RemoveJvmBlockingBridgeFix(target)
3536
}
3637

ide-plugin/src/main/kotlin/me/him188/kotlin/jvm/blocking/bridge/ide/fix/RemoveJvmSyntheticFix.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.psi.KtAnnotationEntry
1414
import org.jetbrains.kotlin.psi.KtFunction
1515
import org.jetbrains.kotlin.psi.KtModifierListOwner
1616
import org.jetbrains.kotlin.resolve.jvm.annotations.JVM_SYNTHETIC_ANNOTATION_FQ_NAME
17-
import org.jetbrains.kotlin.utils.addToStdlib.safeAs
1817

1918
class RemoveJvmSyntheticFix(
2019
element: KtFunction,
@@ -29,8 +28,10 @@ class RemoveJvmSyntheticFix(
2928

3029
companion object : KotlinSingleIntentionActionFactory() {
3130
override fun createAction(diagnostic: Diagnostic): IntentionAction? {
32-
val target = diagnostic.psiElement.safeAs<KtAnnotationEntry>()?.parentsOfType<KtFunction>()?.firstOrNull()
33-
?: return null
31+
val target =
32+
(diagnostic.psiElement as? KtAnnotationEntry)?.parentsOfType<KtFunction>()
33+
?.firstOrNull()
34+
?: return null
3435
return RemoveJvmSyntheticFix(target)
3536
}
3637

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
pluginManagement {
22
repositories {
33
gradlePluginPortal()
4+
maven("https://oss.sonatype.org/content/repositories/snapshots/")
45
mavenLocal()
56
}
67
}

0 commit comments

Comments
 (0)