diff --git a/ci/templates/desktop-template/gradle.properties b/ci/templates/desktop-template/gradle.properties
index 0f9ea65a164..7de91c29427 100644
--- a/ci/templates/desktop-template/gradle.properties
+++ b/ci/templates/desktop-template/gradle.properties
@@ -1,4 +1,4 @@
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/ci/templates/html-library-template/gradle.properties b/ci/templates/html-library-template/gradle.properties
index 0f9ea65a164..7de91c29427 100644
--- a/ci/templates/html-library-template/gradle.properties
+++ b/ci/templates/html-library-template/gradle.properties
@@ -1,4 +1,4 @@
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/ci/templates/maven-test-project/pom.xml b/ci/templates/maven-test-project/pom.xml
index b89e883731b..488378a6356 100644
--- a/ci/templates/maven-test-project/pom.xml
+++ b/ci/templates/maven-test-project/pom.xml
@@ -12,7 +12,7 @@
UTF-8
official
11
- 2.3.20
+ 2.4.20-RC
1.10.1
1.9.0
diff --git a/ci/templates/multiplatform-template/gradle.properties b/ci/templates/multiplatform-template/gradle.properties
index 5894b8918bb..62a61da2b1a 100644
--- a/ci/templates/multiplatform-template/gradle.properties
+++ b/ci/templates/multiplatform-template/gradle.properties
@@ -2,6 +2,6 @@ org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
android.useAndroidX=true
android.enableJetifier=true
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=8.9.0
compose.version=1.10.1
diff --git a/components/gradle.properties b/components/gradle.properties
index 57171726b5a..46c4ce5cc43 100644
--- a/components/gradle.properties
+++ b/components/gradle.properties
@@ -7,7 +7,7 @@ org.gradle.configuration-cache=true
android.useAndroidX=true
#Versions
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.1.1
compose.version=1.12.10-alpha01+dev4472
deploy.version=9999.0.0-SNAPSHOT
diff --git a/examples/chat/gradle.properties b/examples/chat/gradle.properties
index 0291a14a5af..ea80c4e3003 100644
--- a/examples/chat/gradle.properties
+++ b/examples/chat/gradle.properties
@@ -5,6 +5,6 @@ org.gradle.jvmargs=-Xmx8g
org.gradle.configuration-cache=true
org.gradle.caching=true
org.jetbrains.compose.experimental.macos.enabled=true
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.2.1
compose.version=1.10.1
diff --git a/examples/codeviewer/gradle.properties b/examples/codeviewer/gradle.properties
index 0291a14a5af..ea80c4e3003 100644
--- a/examples/codeviewer/gradle.properties
+++ b/examples/codeviewer/gradle.properties
@@ -5,6 +5,6 @@ org.gradle.jvmargs=-Xmx8g
org.gradle.configuration-cache=true
org.gradle.caching=true
org.jetbrains.compose.experimental.macos.enabled=true
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.2.1
compose.version=1.10.1
diff --git a/examples/graphics-2d/gradle.properties b/examples/graphics-2d/gradle.properties
index 0291a14a5af..ea80c4e3003 100644
--- a/examples/graphics-2d/gradle.properties
+++ b/examples/graphics-2d/gradle.properties
@@ -5,6 +5,6 @@ org.gradle.jvmargs=-Xmx8g
org.gradle.configuration-cache=true
org.gradle.caching=true
org.jetbrains.compose.experimental.macos.enabled=true
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.2.1
compose.version=1.10.1
diff --git a/examples/html/compose-bird/gradle.properties b/examples/html/compose-bird/gradle.properties
index 8cef4a914ec..e7c62528f65 100644
--- a/examples/html/compose-bird/gradle.properties
+++ b/examples/html/compose-bird/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
org.gradle.configuration-cache=true
org.gradle.caching=true
diff --git a/examples/html/compose-in-js/gradle.properties b/examples/html/compose-in-js/gradle.properties
index f27dee8d9ee..3b46537f56b 100644
--- a/examples/html/compose-in-js/gradle.properties
+++ b/examples/html/compose-in-js/gradle.properties
@@ -1,6 +1,6 @@
kotlin.code.style=official
kotlin.js.webpack.major.version=4
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
org.gradle.configuration-cache=true
org.gradle.caching=true
diff --git a/examples/html/landing/gradle.properties b/examples/html/landing/gradle.properties
index 8cef4a914ec..e7c62528f65 100644
--- a/examples/html/landing/gradle.properties
+++ b/examples/html/landing/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
org.gradle.configuration-cache=true
org.gradle.caching=true
diff --git a/examples/html/with-react/gradle.properties b/examples/html/with-react/gradle.properties
index 8cef4a914ec..e7c62528f65 100644
--- a/examples/html/with-react/gradle.properties
+++ b/examples/html/with-react/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
org.gradle.configuration-cache=true
org.gradle.caching=true
diff --git a/examples/imageviewer/gradle.properties b/examples/imageviewer/gradle.properties
index 36498059547..250ac0cd35d 100644
--- a/examples/imageviewer/gradle.properties
+++ b/examples/imageviewer/gradle.properties
@@ -7,6 +7,6 @@ org.gradle.configuration-cache=true
org.gradle.caching=true
org.jetbrains.compose.experimental.jscanvas.enabled=true
org.jetbrains.compose.experimental.macos.enabled=true
-kotlin.version=2.4.10
-agp.version=9.1.1
+kotlin.version=2.4.20-RC
+agp.version=9.2.1
compose.version=1.11.1
diff --git a/examples/interop/ios-compose-in-swiftui/gradle.properties b/examples/interop/ios-compose-in-swiftui/gradle.properties
index c9b0cb5eac4..7b0acea9438 100644
--- a/examples/interop/ios-compose-in-swiftui/gradle.properties
+++ b/examples/interop/ios-compose-in-swiftui/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
xcodeproj=./iosApp
org.gradle.jvmargs=-Xmx3g
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/examples/interop/ios-compose-in-uikit/gradle.properties b/examples/interop/ios-compose-in-uikit/gradle.properties
index c9b0cb5eac4..7b0acea9438 100644
--- a/examples/interop/ios-compose-in-uikit/gradle.properties
+++ b/examples/interop/ios-compose-in-uikit/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
xcodeproj=./iosApp
org.gradle.jvmargs=-Xmx3g
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/examples/interop/ios-swiftui-in-compose/gradle.properties b/examples/interop/ios-swiftui-in-compose/gradle.properties
index c9b0cb5eac4..7b0acea9438 100644
--- a/examples/interop/ios-swiftui-in-compose/gradle.properties
+++ b/examples/interop/ios-swiftui-in-compose/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
xcodeproj=./iosApp
org.gradle.jvmargs=-Xmx3g
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/examples/interop/ios-uikit-in-compose/gradle.properties b/examples/interop/ios-uikit-in-compose/gradle.properties
index c9b0cb5eac4..7b0acea9438 100644
--- a/examples/interop/ios-uikit-in-compose/gradle.properties
+++ b/examples/interop/ios-uikit-in-compose/gradle.properties
@@ -1,5 +1,5 @@
kotlin.code.style=official
xcodeproj=./iosApp
org.gradle.jvmargs=-Xmx3g
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
compose.version=1.10.1
diff --git a/examples/issues/gradle.properties b/examples/issues/gradle.properties
index ed53376c78a..b4046642624 100644
--- a/examples/issues/gradle.properties
+++ b/examples/issues/gradle.properties
@@ -2,6 +2,6 @@ org.gradle.jvmargs=-Xmx2048m
org.gradle.caching=true
kotlin.code.style=official
android.useAndroidX=true
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.2.1
compose.version=1.10.1
diff --git a/examples/nav_cupcake/gradle.properties b/examples/nav_cupcake/gradle.properties
index 6a17916be10..b86ee78fa1d 100644
--- a/examples/nav_cupcake/gradle.properties
+++ b/examples/nav_cupcake/gradle.properties
@@ -2,6 +2,6 @@ kotlin.code.style=official
android.useAndroidX=true
org.gradle.jvmargs=-Xmx8g
org.gradle.caching=true
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
agp.version=9.2.1
compose.version=1.10.1
diff --git a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/GradlePluginTest.kt b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/GradlePluginTest.kt
index 2e53c060919..ff79309f9e1 100644
--- a/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/GradlePluginTest.kt
+++ b/gradle-plugins/compose/src/test/kotlin/org/jetbrains/compose/test/tests/integration/GradlePluginTest.kt
@@ -82,8 +82,8 @@ class GradlePluginTest : GradlePluginTestBase() {
}
}
- // Note: we can't test non-jvm targets with Kotlin older than 2.3.0, because of klib abi version bump in 2.3.0
- private val oldestSupportedKotlinVersion = "2.3.0"
+ // Note: we can't test non-jvm targets with Kotlin older than 2.4.0-Beta1, because of klib abi version bump in 2.4.0-Beta1
+ private val oldestSupportedKotlinVersion = "2.4.0-Beta1"
@Test
fun testOldestKotlinMpp() = with(
testProject(
diff --git a/gradle-plugins/compose/src/test/test-projects/application/newAndroidTarget/build.gradle b/gradle-plugins/compose/src/test/test-projects/application/newAndroidTarget/build.gradle
index 3ad95f32b71..8a783ced22f 100644
--- a/gradle-plugins/compose/src/test/test-projects/application/newAndroidTarget/build.gradle
+++ b/gradle-plugins/compose/src/test/test-projects/application/newAndroidTarget/build.gradle
@@ -6,8 +6,6 @@ plugins {
}
kotlin {
- targetHierarchy.default()
-
android {
namespace = "com.google.samples.apps.diceroller.shared"
compileSdk = 37
diff --git a/gradle-plugins/gradle.properties b/gradle-plugins/gradle.properties
index 29cf23ad8be..bf72201d274 100644
--- a/gradle-plugins/gradle.properties
+++ b/gradle-plugins/gradle.properties
@@ -11,7 +11,7 @@ dev.junit.parallel=false
compose.version=1.12.10-alpha01+dev4472
compose.material3.version=1.9.0
# The latest version of Kotlin compatible with compose.tests.compiler.version. Used only in tests/CI.
-compose.tests.kotlin.version=2.3.20
+compose.tests.kotlin.version=2.4.20-RC
# __SUPPORTED_GRADLE_VERSIONS__
# Don't forget to edit versions in .github/workflows/gradle-plugin.yml as well
# and Publish.Subtasks.buildTypes.gradle.GradlePluginTestKt#gradleVersions in the TC config
diff --git a/html/buildSrc/gradle.properties b/html/buildSrc/gradle.properties
index 32cb37e5e1c..f97ad8434ea 100644
--- a/html/buildSrc/gradle.properties
+++ b/html/buildSrc/gradle.properties
@@ -1 +1 @@
-kotlin.version=2.3.20
+kotlin.version=2.4.20-RC
diff --git a/tutorials/HTML/Getting_Started/README.md b/tutorials/HTML/Getting_Started/README.md
index 8cc8d3f9a8b..6991c9e4f11 100644
--- a/tutorials/HTML/Getting_Started/README.md
+++ b/tutorials/HTML/Getting_Started/README.md
@@ -35,7 +35,7 @@ pluginManagement {
``` kotlin
// Add compose gradle plugin
plugins {
- kotlin("multiplatform") version "2.3.20"
+ kotlin("multiplatform") version "2.4.20-RC"
id("org.jetbrains.compose") version "1.10.1"
}