Skip to content

Commit c2bb3d2

Browse files
authored
Merge pull request #1606 from joreilly/bump-gradle-and-kotlin
bump Kotlin, Gradle and a bunch of other things
2 parents 7a05702 + 85f80dd commit c2bb3d2

File tree

14 files changed

+178
-216
lines changed

14 files changed

+178
-216
lines changed

backend/datastore/build.gradle.kts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
1+
import compat.patrouille.configureJavaCompatibility
2+
13
plugins {
24
kotlin("multiplatform")
35
}
46

5-
configureCompilerOptions(17)
7+
configureJavaCompatibility(17)
68

79
kotlin {
810
jvm()

backend/service-graphql/build.gradle.kts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import compat.patrouille.configureJavaCompatibility
12
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
23

34
plugins {
@@ -9,7 +10,7 @@ plugins {
910
id("com.apollographql.execution")
1011
}
1112

12-
configureCompilerOptions(17)
13+
configureJavaCompatibility(17)
1314

1415
dependencies {
1516
implementation(libs.spring.boot.starter.webflux)

backend/service-graphql/src/main/kotlin/dev/johnoreilly/confetti/backend/DefaultApplication.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
package dev.johnoreilly.confetti.backend
44

55
import com.apollographql.apollo.api.ExecutionContext
6-
import com.apollographql.execution.ExecutableSchema
7-
import com.apollographql.execution.GraphQLResponse
8-
import com.apollographql.execution.InMemoryPersistedDocumentCache
6+
import com.apollographql.apollo.execution.ExecutableSchema
7+
import com.apollographql.apollo.execution.GraphQLResponse
8+
import com.apollographql.apollo.execution.InMemoryPersistedDocumentCache
99
import com.apollographql.execution.reporting.ApolloReportingInstrumentation
1010
import com.apollographql.execution.reporting.ApolloReportingOperationContext
1111
import com.apollographql.execution.spring.apolloSandboxRoutes

backend/service-graphql/src/main/kotlin/dev/johnoreilly/confetti/backend/graphql/model.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ package dev.johnoreilly.confetti.backend.graphql
33
import com.apollographql.apollo.api.ExecutionContext
44
import com.apollographql.apollo.ast.GQLStringValue
55
import com.apollographql.apollo.ast.GQLValue
6-
import com.apollographql.execution.Coercing
6+
import com.apollographql.apollo.execution.Coercing
7+
import com.apollographql.apollo.execution.ExternalValue
78
import com.apollographql.execution.annotation.*
8-
import com.apollographql.execution.ExternalValue
99
import com.google.firebase.auth.FirebaseAuth
1010
import dev.johnoreilly.confetti.backend.*
1111
import dev.johnoreilly.confetti.backend.datastore.DDirection
@@ -20,15 +20,15 @@ import kotlinx.datetime.LocalDateTime as KotlinxLocalDateTime
2020
*/
2121
@GraphQLScalar(InstantCoercing::class)
2222
typealias Instant = KotlinxInstant
23-
@GraphQLScalar(LocalDateCoercing::class)
2423
/**
2524
* A type representing a formatted kotlinx.datetime.LocalDate
2625
*/
26+
@GraphQLScalar(LocalDateCoercing::class)
2727
typealias LocalDate = KotlinxLocalDate
28-
@GraphQLScalar(LocalDateTimeCoercing::class)
2928
/**
3029
* A type representing a formatted kotlinx.datetime.LocalDateTime
3130
*/
31+
@GraphQLScalar(LocalDateTimeCoercing::class)
3232
typealias LocalDateTime = KotlinxLocalDateTime
3333

3434
object InstantCoercing : Coercing<Instant> {

backend/service-import/build.gradle.kts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
import com.android.build.gradle.internal.tasks.factory.dependsOn
2+
import compat.patrouille.configureJavaCompatibility
23

34
plugins {
45
kotlin("multiplatform")
56
id("org.jetbrains.kotlin.plugin.serialization")
67
}
78

8-
configureCompilerOptions(17)
9+
configureJavaCompatibility(17)
910

1011
kotlin {
1112
jvm()

build-logic/build.gradle.kts

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2-
31
plugins {
4-
alias(libs.plugins.kotlin19)
5-
alias(libs.plugins.ksp19)
2+
alias(libs.plugins.kgp.jvm)
3+
alias(libs.plugins.ksp)
64
alias(libs.plugins.gratatouille)
5+
alias(libs.plugins.compat.patrouille)
76
}
87

98
dependencies {
@@ -33,13 +32,12 @@ dependencies {
3332
implementation(libs.google.cloud.run)
3433
implementation(libs.kotlinx.datetime)
3534
implementation(libs.roborazzi.gradle.plugin)
35+
implementation(libs.compat.patrouille)
3636
}
3737

3838
group = "build-logic"
39-
tasks.withType(JavaCompile::class.java).configureEach {
40-
this.options.release.set(17)
41-
}
4239

43-
tasks.withType(KotlinCompile::class.java).configureEach {
44-
this.kotlinOptions.jvmTarget = "17"
40+
compatPatrouille {
41+
java(17)
42+
kotlin(embeddedKotlinVersion)
4543
}
Lines changed: 2 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,6 @@
1-
import com.android.build.gradle.BaseExtension
2-
import org.gradle.api.JavaVersion
1+
import compat.patrouille.configureJavaCompatibility
32
import org.gradle.api.Project
4-
import org.gradle.api.plugins.JavaPluginExtension
5-
import org.gradle.api.tasks.compile.JavaCompile
6-
import org.gradle.jvm.toolchain.JavaLanguageVersion
7-
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
8-
import org.jetbrains.kotlin.gradle.dsl.KotlinCompile
9-
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
10-
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
113

12-
private fun Int.toJavaVersion(): String = when(this) {
13-
8 -> "1.8"
14-
else -> toString()
15-
}
164
fun Project.configureCompilerOptions(jvmVersion: Int = 17) {
17-
tasks.withType(KotlinCompile::class.java).configureEach {
18-
it.kotlinOptions {
19-
(this as? KotlinJvmOptions)?.let {
20-
it.jvmTarget = jvmVersion.toJavaVersion()
21-
}
22-
}
23-
}
24-
25-
// project.tasks.withType(JavaCompile::class.java).configureEach {
26-
// // Ensure "org.gradle.jvm.version" is set to "8" in Gradle metadata of jvm-only modules.
27-
// it.options.release.set(jvmVersion)
28-
// }
29-
30-
extensions.getByName("java").apply {
31-
this as JavaPluginExtension
32-
toolchain {
33-
it.languageVersion.set(JavaLanguageVersion.of(17))
34-
}
35-
}
36-
37-
// extensions.findByName("android")?.apply{
38-
// this as BaseExtension
39-
// compileOptions {
40-
// it.sourceCompatibility = JavaVersion.toVersion(jvmVersion.toJavaVersion())
41-
// it.targetCompatibility = JavaVersion.toVersion(jvmVersion.toJavaVersion())
42-
// }
43-
// }
5+
project.configureJavaCompatibility(javaVersion = jvmVersion)
446
}

gradle.properties

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ org.jetbrains.compose.experimental.jscanvas.enabled=true
2222

2323
xcodeproj=./iosApp
2424

25+
ksp.allow.all.target.configuration=false
26+
2527
# KMMBridge
2628
LIBRARY_VERSION=0.9
2729
GROUP=dev.johnoreilly.confetti

gradle/libs.versions.toml

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
[versions]
2-
kotlin19 = "1.9.25"
3-
ksp19 = "1.9.25-1.0.20"
42
kotlin = "2.1.20"
5-
ksp = "2.1.20-1.0.31"
3+
ksp = "2.1.20-2.0.0"
64
kotlinx-coroutines = "1.10.1"
75
kotlinx-datetime = "0.6.2"
8-
apollo-kotlin-execution = "0.1.1-SNAPSHOT-3e89cc694ab96bae7b4c1b7b6394c211065551c1"
6+
apollo-kotlin-execution = "0.1.1-SNAPSHOT-fd7fa806b95c5b9046494989a7dd478c47237e12"
7+
compatPatrouille = "0.0.0"
98

109
agp = "8.8.0"
1110
activity-compose = "1.10.1"
@@ -200,7 +199,7 @@ plugin-kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serializat
200199
plugin-kotlin-spring = { module = "org.jetbrains.kotlin:kotlin-allopen", version.ref = "kotlin" }
201200
plugin-ksp = { module = "com.google.devtools.ksp:symbol-processing-gradle-plugin", version.ref = "ksp" }
202201
plugin-spring-boot = { module = "org.springframework.boot:spring-boot-gradle-plugin", version = "3.4.4" }
203-
plugin-wire = { module = "com.squareup.wire:wire-gradle-plugin", version = "4.9.11" }
202+
plugin-wire = { module = "com.squareup.wire:wire-gradle-plugin", version = "5.3.1" }
204203
plugin-compose-multiplatform = { module = "org.jetbrains.compose:compose-gradle-plugin", version.ref = "compose-multiplatform" }
205204
roborazzi-gradle-plugin = { module = "io.github.takahirom.roborazzi:roborazzi-gradle-plugin", version.ref = "roborazzi" }
206205
scrimage-core = "com.sksamuel.scrimage:scrimage-core:4.3.0"
@@ -224,7 +223,7 @@ kermit = { module = "co.touchlab:kermit", version.ref = "kermit" }
224223
tink = "com.google.crypto.tink:tink:1.17.0"
225224
jib-core = "com.google.cloud.tools:jib-core:0.27.2"
226225
google-cloud-run = "com.google.cloud:google-cloud-run:0.54.0"
227-
226+
compat-patrouille = { module = "com.gradleup.compat.patrouille:com.gradleup.compat.patrouille.gradle.plugin", version.ref = "compatPatrouille" }
228227
generativeai = { module = "dev.shreyaspatil.generativeai:generativeai-google", version.ref = "generativeai" }
229228

230229
roborazzi = { group = "io.github.takahirom.roborazzi", name = "roborazzi", version.ref = "roborazzi" }
@@ -242,9 +241,7 @@ jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "compose-multip
242241
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
243242
composeHotReload = { id = "org.jetbrains.compose.hot-reload", version.ref = "compose-hot-reload" }
244243
screenshot = { id = "com.android.compose.screenshot", version.ref = "screenshot"}
245-
#noinspection SimilarGradleDependency
244+
kgp-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
246245
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
247-
#noinspection SimilarGradleDependency
248-
ksp19 = { id = "com.google.devtools.ksp", version.ref = "ksp19" }
249-
kotlin19 = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin19" }
250246
gratatouille = { id = "com.gradleup.gratatouille", version = "0.0.4" }
247+
compat-patrouille = { id = "com.gradleup.compat.patrouille", version.ref = "compatPatrouille" }

gradle/wrapper/gradle-wrapper.jar

122 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)