Skip to content

Commit 00ead7f

Browse files
committed
Update to Kotlin 2.2
1 parent 8fd2401 commit 00ead7f

File tree

9 files changed

+33
-43
lines changed

9 files changed

+33
-43
lines changed

buildSrc/build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
plugins {
22
id "java-gradle-plugin"
3+
id "groovy-gradle-plugin"
34
id "java"
45
id "groovy"
56
}
@@ -76,6 +77,7 @@ dependencies {
7677
implementation libs.com.github.spullara.mustache.java.compiler
7778
implementation libs.io.spring.javaformat.spring.javaformat.gradle.plugin
7879
implementation libs.io.spring.nohttp.nohttp.gradle
80+
implementation libs.org.jetbrains.kotlin.kotlin.gradle.plugin
7981
implementation (libs.net.sourceforge.htmlunit) {
8082
exclude group: 'org.eclipse.jetty.websocket', module: 'websocket-client'
8183
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2+
3+
plugins {
4+
id 'kotlin'
5+
}
6+
7+
project.plugins.withId("org.jetbrains.kotlin.jvm", (kotlinProject) -> {
8+
project.tasks.withType(KotlinCompile).configureEach {
9+
kotlinOptions {
10+
languageVersion = '2.2'
11+
apiVersion = '2.2'
12+
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
13+
jvmTarget = '17'
14+
15+
}
16+
}
17+
})

config/spring-security-config.gradle

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import trang.RncToXsd
44

55
apply plugin: 'io.spring.convention.spring-module'
66
apply plugin: 'trang'
7-
apply plugin: 'kotlin'
7+
apply plugin: 'security-kotlin'
88

99
configurations {
1010
opensaml5 {
@@ -153,15 +153,6 @@ tasks.named('sourcesJar', Jar).configure {
153153
}
154154
}
155155

156-
tasks.withType(KotlinCompile).configureEach {
157-
kotlinOptions {
158-
languageVersion = "1.7"
159-
apiVersion = "1.7"
160-
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
161-
jvmTarget = "17"
162-
}
163-
}
164-
165156
configure(project.tasks.withType(Test)) {
166157
doFirst {
167158
systemProperties['springSecurityVersion'] = version

config/src/test/kotlin/org/springframework/security/config/web/server/ServerX509DslTests.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ class ServerX509DslTests {
205205
@Nullable httpHandlerBuilder: WebHttpHandlerBuilder?,
206206
@Nullable connector: ClientHttpConnector?) {
207207
val filter = SetSslInfoWebFilter(certificate)
208-
httpHandlerBuilder!!.filters { filters: MutableList<WebFilter?> -> filters.add(0, filter) }
208+
httpHandlerBuilder!!.filters { filters: MutableList<WebFilter> -> filters.add(0, filter) }
209209
}
210210
}
211211

core/spring-security-core.gradle

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
1-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2-
31
import java.util.concurrent.Callable
42

53
apply plugin: 'io.spring.convention.spring-module'
6-
apply plugin: 'kotlin'
4+
apply plugin: 'security-kotlin'
75

86
dependencies {
97
management platform(project(":spring-security-dependencies"))
@@ -66,12 +64,3 @@ Callable<String> springVersion() {
6664
return (Callable<String>) { project.configurations.compileClasspath.resolvedConfiguration.resolvedArtifacts
6765
.find { it.name == 'spring-core' }.moduleVersion.id.version }
6866
}
69-
70-
tasks.withType(KotlinCompile).configureEach {
71-
kotlinOptions {
72-
languageVersion = "1.7"
73-
apiVersion = "1.7"
74-
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
75-
jvmTarget = "17"
76-
}
77-
}

docs/spring-security-docs.gradle

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2-
31
plugins {
42
id 'org.antora' version '1.0.0'
53
id 'io.spring.antora.generate-antora-yml' version '0.0.1'
64
id 'io.spring.convention.repository'
7-
id 'kotlin'
5+
id 'security-kotlin'
86
}
97

108
apply plugin: 'io.spring.convention.docs'
@@ -100,12 +98,3 @@ def resolvedVersions(Configuration configuration) {
10098
test {
10199
useJUnitPlatform()
102100
}
103-
104-
tasks.withType(KotlinCompile).configureEach {
105-
kotlinOptions {
106-
languageVersion = "1.7"
107-
apiVersion = "1.7"
108-
freeCompilerArgs = ["-Xjsr305=strict", "-Xsuppress-version-warnings"]
109-
jvmTarget = "17"
110-
}
111-
}

docs/src/test/kotlin/org/springframework/security/kt/docs/features/integrations/rest/configurationwebclient/ServerWebClientHttpInterfaceIntegrationConfiguration.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,11 @@ class ServerWebClientHttpInterfaceIntegrationConfiguration {
5454

5555
@Bean
5656
fun groupConfigurer(server: MockWebServer): WebClientHttpServiceGroupConfigurer {
57-
return WebClientHttpServiceGroupConfigurer { groups: HttpServiceGroupConfigurer.Groups<WebClient.Builder?>? ->
57+
return WebClientHttpServiceGroupConfigurer { groups: HttpServiceGroupConfigurer.Groups<WebClient.Builder> ->
5858
val baseUrl = server.url("").toString()
5959
groups!!
60-
.forEachClient(ClientCallback { group: HttpServiceGroup?, builder: WebClient.Builder? ->
61-
builder!!
60+
.forEachClient(ClientCallback { group: HttpServiceGroup, builder: WebClient.Builder ->
61+
builder
6262
.baseUrl(baseUrl)
6363
.defaultHeader("Accept", "application/vnd.github.v3+json")
6464
})

docs/src/test/kotlin/org/springframework/security/kt/docs/reactive/authentication/reactivex509/X509ConfigurationTests.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import org.springframework.security.test.web.reactive.server.WebTestClientBuilde
2828
import org.springframework.security.web.authentication.preauth.x509.X509TestUtils
2929
import org.springframework.test.web.reactive.server.WebTestClient
3030
import org.springframework.test.web.reactive.server.WebTestClientConfigurer
31+
import org.springframework.util.Assert
3132
import org.springframework.web.server.ServerWebExchange
3233
import org.springframework.web.server.WebFilter
3334
import org.springframework.web.server.WebFilterChain
@@ -108,18 +109,19 @@ class X509ConfigurationTests {
108109

109110
companion object {
110111
private fun x509(certificate: X509Certificate): WebTestClientConfigurer {
111-
return WebTestClientConfigurer { builder: WebTestClient.Builder, httpHandlerBuilder: WebHttpHandlerBuilder, connector: ClientHttpConnector? ->
112+
return WebTestClientConfigurer { builder: WebTestClient.Builder, httpHandlerBuilder: WebHttpHandlerBuilder?, connector: ClientHttpConnector? ->
112113

113114
val sslInfo: SslInfo = object : SslInfo {
114115
override fun getSessionId(): String {
115116
return "sessionId"
116117
}
117118

118-
override fun getPeerCertificates(): Array<X509Certificate?> {
119+
override fun getPeerCertificates(): Array<X509Certificate> {
119120
return arrayOf(certificate)
120121
}
121122
}
122-
httpHandlerBuilder.filters(Consumer { filters: MutableList<WebFilter> ->
123+
Assert.notNull(httpHandlerBuilder, "httpHandlerBuilder should not be null")
124+
httpHandlerBuilder!!.filters(Consumer { filters: MutableList<WebFilter> ->
123125
filters.add(
124126
0,
125127
SslInfoOverrideWebFilter(sslInfo)

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ org-apache-maven-resolver = "1.9.23"
88
org-aspectj = "1.9.24"
99
org-bouncycastle = "1.80"
1010
org-eclipse-jetty = "11.0.25"
11-
org-jetbrains-kotlin = "1.9.25"
11+
org-jetbrains-kotlin = "2.2.0"
1212
org-jetbrains-kotlinx = "1.10.2"
1313
org-mockito = "5.17.0"
1414
org-opensaml = "4.3.2"
@@ -67,7 +67,7 @@ org-hamcrest = "org.hamcrest:hamcrest:2.2"
6767
org-hibernate-orm-hibernate-core = "org.hibernate.orm:hibernate-core:7.0.1.Final"
6868
org-hsqldb = "org.hsqldb:hsqldb:2.7.4"
6969
org-jetbrains-kotlin-kotlin-bom = { module = "org.jetbrains.kotlin:kotlin-bom", version.ref = "org-jetbrains-kotlin" }
70-
org-jetbrains-kotlin-kotlin-gradle-plugin = "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.25"
70+
org-jetbrains-kotlin-kotlin-gradle-plugin = "org.jetbrains.kotlin:kotlin-gradle-plugin:2.2.0"
7171
org-jetbrains-kotlinx-kotlinx-coroutines-bom = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-bom", version.ref = "org-jetbrains-kotlinx" }
7272
org-junit-junit-bom = "org.junit:junit-bom:5.12.2"
7373
org-mockito-mockito-bom = { module = "org.mockito:mockito-bom", version.ref = "org-mockito" }

0 commit comments

Comments
 (0)