Skip to content

Commit 7e2d605

Browse files
authored
Merge pull request #724 from skydoves/kotlin/2.2.0
Bump Kotlin to 2.2.0 and jvm target to 17
2 parents efe4162 + de9a707 commit 7e2d605

File tree

10 files changed

+33
-35
lines changed

10 files changed

+33
-35
lines changed

app/build.gradle.kts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
import com.github.skydoves.landscapist.Configuration
1818

19-
@Suppress("DSL_SCOPE_VIOLATION")
2019
plugins {
2120
id("landscapist.application.compose")
2221
id("landscapist.spotless")

build-logic/convention/src/main/kotlin/AndroidLibraryComposeConventionPlugin.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,14 @@
1717
import com.android.build.gradle.LibraryExtension
1818
import com.skydoves.landscapist.configureAndroidCompose
1919
import com.skydoves.landscapist.configureKotlinAndroid
20-
import com.skydoves.landscapist.kotlinOptions
2120
import org.gradle.api.Plugin
2221
import org.gradle.api.Project
2322
import org.gradle.api.artifacts.VersionCatalogsExtension
2423
import org.gradle.api.tasks.compile.JavaCompile
2524
import org.gradle.kotlin.dsl.configure
2625
import org.gradle.kotlin.dsl.dependencies
2726
import org.gradle.kotlin.dsl.getByType
27+
import org.gradle.kotlin.dsl.withType
2828

2929
class AndroidLibraryComposeConventionPlugin : Plugin<Project> {
3030
override fun apply(target: Project) {
@@ -40,8 +40,10 @@ class AndroidLibraryComposeConventionPlugin : Plugin<Project> {
4040
configureKotlinAndroid(this)
4141
configureAndroidCompose(this)
4242

43-
kotlinOptions {
44-
freeCompilerArgs = freeCompilerArgs + listOf("-Xexplicit-api=strict")
43+
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
44+
compilerOptions {
45+
freeCompilerArgs.addAll(listOf("-Xexplicit-api=strict"))
46+
}
4547
}
4648
}
4749

build-logic/convention/src/main/kotlin/ComposeMultiplatformLibraryConventionPlugin.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,7 @@
1515
*/
1616

1717
import com.android.build.gradle.LibraryExtension
18-
import com.skydoves.landscapist.configureAndroidCompose
1918
import com.skydoves.landscapist.configureComposeMultiplatform
20-
import com.skydoves.landscapist.configureKotlinAndroid
21-
import com.skydoves.landscapist.kotlinOptions
2219
import org.gradle.api.Plugin
2320
import org.gradle.api.Project
2421
import org.gradle.api.artifacts.VersionCatalogsExtension

build-logic/convention/src/main/kotlin/com/skydoves/landscapist/KotlinAndroid.kt

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ import com.android.build.api.dsl.CommonExtension
2222
import org.gradle.api.JavaVersion
2323
import org.gradle.api.Project
2424
import org.gradle.api.artifacts.VersionCatalogsExtension
25-
import org.gradle.api.plugins.ExtensionAware
26-
import org.gradle.api.tasks.compile.JavaCompile
27-
import org.gradle.kotlin.dsl.dependencies
2825
import org.gradle.kotlin.dsl.getByType
29-
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
26+
import org.gradle.kotlin.dsl.named
27+
import org.gradle.kotlin.dsl.withType
28+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
29+
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
3030

3131
/**
3232
* Configure base Kotlin with Android options
@@ -39,25 +39,25 @@ internal fun Project.configureKotlinAndroid(
3939
commonExtension.apply {
4040

4141
compileOptions {
42-
sourceCompatibility = JavaVersion.VERSION_11
43-
targetCompatibility = JavaVersion.VERSION_11
42+
sourceCompatibility = JavaVersion.VERSION_17
43+
targetCompatibility = JavaVersion.VERSION_17
4444
}
4545

46-
kotlinOptions {
47-
jvmTarget = libs.findVersion("jvmTarget").get().toString()
48-
freeCompilerArgs = freeCompilerArgs + listOf(
49-
"-opt-in=kotlin.RequiresOptIn",
50-
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
51-
"-opt-in=com.skydoves.landscapist.InternalLandscapistApi",
52-
)
46+
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>() {
47+
compilerOptions {
48+
jvmTarget.set(JvmTarget.fromTarget(libs.findVersion("jvmTarget").get().toString()))
49+
freeCompilerArgs.addAll(
50+
listOf(
51+
"-opt-in=kotlin.RequiresOptIn",
52+
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
53+
"-opt-in=com.skydoves.landscapist.InternalLandscapistApi",
54+
)
55+
)
56+
}
5357
}
5458

5559
lint {
5660
abortOnError = false
5761
}
5862
}
59-
}
60-
61-
fun CommonExtension<*, *, *, *, *, *>.kotlinOptions(block: KotlinJvmOptions.() -> Unit) {
62-
(this as ExtensionAware).extensions.configure("kotlinOptions", block)
63-
}
63+
}

coil3/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ baselineProfile {
124124

125125
tasks.withType<KotlinJvmCompile>().configureEach {
126126
compilerOptions {
127-
jvmTarget.set(JvmTarget.JVM_11)
127+
jvmTarget.set(JvmTarget.JVM_17)
128128
freeCompilerArgs.addAll(
129129
"-opt-in=coil3.annotation.ExperimentalCoilApi",
130130
)

gradle/libs.versions.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
[versions]
2-
kotlin = "2.1.21"
2+
kotlin = "2.2.0"
33
dokka = "2.0.0"
4-
jvmTarget = "11"
5-
nexusPlugin = "0.32.0"
4+
jvmTarget = "17"
5+
nexusPlugin = "0.34.0"
66
kotlinxCoroutines = "1.10.2"
7-
kotlinBinaryCompatibility = "0.17.0"
7+
kotlinBinaryCompatibility = "0.18.1"
88
androidGradlePlugin = "8.12.0"
99
androidxActivity = "1.10.1"
1010
androidxMaterial = "1.12.0"
@@ -17,7 +17,7 @@ androidxJunit = "1.3.0"
1717
androidxMacroBenchmark = "1.4.0"
1818
androidxProfileinstaller = "1.4.1"
1919
androidxUiAutomator = "2.3.0"
20-
kotlinxSerializationJson = "1.8.1"
20+
kotlinxSerializationJson = "1.9.0"
2121
jetbrains-compose = "1.8.2"
2222
glide = "4.16.0"
2323
fresco = "3.6.0"

landscapist-animation/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ baselineProfile {
9090

9191
tasks.withType<KotlinJvmCompile>().configureEach {
9292
compilerOptions {
93-
jvmTarget.set(JvmTarget.JVM_11)
93+
jvmTarget.set(JvmTarget.JVM_17)
9494
freeCompilerArgs.addAll(
9595
"-Xexplicit-api=strict",
9696
"-opt-in=kotlin.RequiresOptIn",

landscapist-palette/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ baselineProfile {
8585

8686
tasks.withType<KotlinJvmCompile>().configureEach {
8787
compilerOptions {
88-
jvmTarget.set(JvmTarget.JVM_11)
88+
jvmTarget.set(JvmTarget.JVM_17)
8989
freeCompilerArgs.addAll(
9090
"-Xexplicit-api=strict",
9191
"-opt-in=kotlin.RequiresOptIn",

landscapist-placeholder/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ baselineProfile {
9090

9191
tasks.withType<KotlinJvmCompile>().configureEach {
9292
compilerOptions {
93-
jvmTarget.set(JvmTarget.JVM_11)
93+
jvmTarget.set(JvmTarget.JVM_17)
9494
freeCompilerArgs.addAll(
9595
"-Xexplicit-api=strict",
9696
"-opt-in=kotlin.RequiresOptIn",

landscapist/build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ baselineProfile {
8787

8888
tasks.withType<KotlinJvmCompile>().configureEach {
8989
compilerOptions {
90-
jvmTarget.set(JvmTarget.JVM_11)
90+
jvmTarget.set(JvmTarget.JVM_17)
9191

9292
}
9393
}

0 commit comments

Comments
 (0)