Hello Spring Boot team-
While I am aware of the System Requirements and Kotlin Support documentation, I am wondering whether I am missing more specific details on Kotlin supported versions.
As mentioned in Requirements, "Spring Boot requires at least Kotlin 1.7.x
...".
Technically, Spring Boot seems to use a Kotlin 1.9.x
baseline, and specifically 1.9.25
(here as applied here).
Would it be advisable to call out supported Kotlin versions in System Requirements in the same manner as Spring Boot does for Java, having a baseline of Java 17
, but compatible up to and including Java 23
?
For example:
"Spring Boot is based on Kotlin 1.9.x
(err... 1.7.x
?), currently 1.9.25
, but is compatible with versions up to and including Kotlin 2.0.x
."
NOTE: JetBrains has currently released Kotlin
2.0.21
in2.0.x
, and2.1.10
in2.1.x
.
I am quite certain Spring Boot will work with Kotlin 2.0.21
and likely even 2.1.x
. I already have some examples of using Kotlin 2.0.21
with Spring Boot in the work I am doing, but I feel that some sort of reassurance from the Spring Boot team, probably having done the testing effort to assert compatibility with Kotlin 2.0.x
, maybe even 2.1.x
, would definitely cement users early confidence.
WDYT?
Comment From: jxblum
To provide a bit more context:
I recently came across issues with Detekt, which I am finding is quite commonly used across Kotlin projects and teams.
Versioning becomes really important when using certain Kotlin tools, like Detekt, that are strictly coupled with the Kotlin compiler version, even at the patch-level, no less. :( See the Compatibility Table.
I have experienced errors like this even between patch versions 1.9.23
and 1.9.25
.
As you can see, Detekt has a version based on 1.9.23
, but not 1.9.25
. While Detekt clearly does not follow semver, and the Detekt team seems to have their reasons, as you can imagine, this does complicate things.
To be clear, I am not expecting the stars to align between disparate projects, but that the path to resolution is more clear.
I am currently in the process of making an early decision to base Kotlin projects, for which I am partly responsible for, on Kotlin 2.0.21
and preserve our strong interest in Spring Boot, hence my ask in this ticket.
Comment From: jxblum
DISCLAIMER: I am still learning and have a lot to learn in the Kotlin space.
Comment From: jxblum
Another quick questions...
I feel pretty confident in saying that (asking if) Spring Boot's next significant (e.g. major) version bump of Kotlin (i.e. 2.x
) will likely occur in Spring Boot 4?