diff --git a/.gitignore b/.gitignore index 36e02236fc2..8f3779a5267 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,9 @@ # Java class files *.class +# Kotlin files +.kotlin/ + # Generated files bin/ gen/ diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 854d205b534..fdbc5caabc7 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -29,6 +29,7 @@ plugins { id(libs.plugins.wire.hilt.get().pluginId) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.ksp) + alias(libs.plugins.compose.compiler) id(libs.plugins.aboutLibraries.get().pluginId) diff --git a/build.gradle.kts b/build.gradle.kts index f7e2eb8891d..83110212400 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -44,6 +44,9 @@ buildscript { allprojects { repositories { + // temporary repo containing mockative 3.0.1 with a fix for a bug https://github.com/mockative/mockative/issues/143 + // until mockative releases a new version with a proper fix + maven(url = "https://raw.githubusercontent.com/saleniuk/mockative/fix/duplicates-while-merging-dex-archives-mvn/release") google() mavenCentral() maven(url = "https://jitpack.io") @@ -54,5 +57,6 @@ allprojects { plugins { id(ScriptPlugins.infrastructure) alias(libs.plugins.ksp) apply false // https://github.com/google/dagger/issues/3965 + alias(libs.plugins.compose.compiler) apply false } diff --git a/core/analytics-disabled/build.gradle.kts b/core/analytics-disabled/build.gradle.kts index ef9d07df4fb..de4eaef032d 100644 --- a/core/analytics-disabled/build.gradle.kts +++ b/core/analytics-disabled/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(libs.plugins.wire.android.library.get().pluginId) id(libs.plugins.wire.kover.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/core/analytics-enabled/build.gradle.kts b/core/analytics-enabled/build.gradle.kts index ef37bc49626..50e05412cbf 100644 --- a/core/analytics-enabled/build.gradle.kts +++ b/core/analytics-enabled/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(libs.plugins.wire.android.library.get().pluginId) id(libs.plugins.wire.kover.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/core/analytics/build.gradle.kts b/core/analytics/build.gradle.kts index a40f795b64d..4006ca35366 100644 --- a/core/analytics/build.gradle.kts +++ b/core/analytics/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(libs.plugins.wire.android.library.get().pluginId) id(libs.plugins.wire.kover.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/core/navigation/build.gradle.kts b/core/navigation/build.gradle.kts index 55736070aaf..99af50e95ac 100644 --- a/core/navigation/build.gradle.kts +++ b/core/navigation/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(libs.plugins.wire.android.library.get().pluginId) id(libs.plugins.wire.kover.get().pluginId) + alias(libs.plugins.compose.compiler) } android { diff --git a/core/ui-common/build.gradle.kts b/core/ui-common/build.gradle.kts index 3aaec16c7c1..9a818f1f310 100644 --- a/core/ui-common/build.gradle.kts +++ b/core/ui-common/build.gradle.kts @@ -3,6 +3,7 @@ plugins { id(libs.plugins.wire.kover.get().pluginId) alias(libs.plugins.kotlin.serialization) id(BuildPlugins.junit5) + alias(libs.plugins.compose.compiler) } android { diff --git a/features/cells/build.gradle.kts b/features/cells/build.gradle.kts index 29aef9b8f70..9ea1cec1774 100644 --- a/features/cells/build.gradle.kts +++ b/features/cells/build.gradle.kts @@ -6,6 +6,7 @@ plugins { id(BuildPlugins.junit5) alias(libs.plugins.ksp) id(libs.plugins.wire.android.navigation.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/features/sketch/build.gradle.kts b/features/sketch/build.gradle.kts index 45db56ee2ab..9e41ca89486 100644 --- a/features/sketch/build.gradle.kts +++ b/features/sketch/build.gradle.kts @@ -5,6 +5,7 @@ plugins { id(BuildPlugins.junit5) alias(libs.plugins.ksp) id(libs.plugins.wire.android.navigation.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/features/template/build.gradle.kts b/features/template/build.gradle.kts index 89bb9604ba3..c9b2ed7bd86 100644 --- a/features/template/build.gradle.kts +++ b/features/template/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(libs.plugins.wire.android.library.get().pluginId) id(libs.plugins.wire.kover.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index e9bc747339f..65a69e8493e 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -5,7 +5,7 @@ gradle = "8.8" # Kotlin grgitCore = "5.2.2" -kotlin = "1.9.23" +kotlin = "2.1.0" # KotlinX coroutines = "1.9.0" @@ -17,7 +17,7 @@ ktx-serialization = "1.6.3" detekt = "1.23.6" google-gms = "4.4.2" gms-location = "21.3.0" -android-gradlePlugin = "8.5.2" +android-gradlePlugin = "8.6.0" desugaring = "2.1.3" firebaseBOM = "33.6.0" fragment = "1.5.6" @@ -59,7 +59,7 @@ screenshot = "0.0.1-alpha08" compose-edgetoedge-preview = "0.3.0" # update after changing target sdk to 35 and androidx-core to 1.15.0 # Hilt -hilt = "2.51.1" +hilt = "2.53" hilt-composeNavigation = "1.2.0" hilt-work = "1.2.0" @@ -88,7 +88,7 @@ openIdAppAuth = "0.11.1" # Other Tools aboutLibraries = "11.1.4" leakCanary = "2.14" -ksp = "1.9.23-1.0.20" +ksp = "2.1.0-1.0.28" # Benchmark benchmark-macro-junit4 = "1.3.3" @@ -121,6 +121,7 @@ kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", versi aboutLibraries = { id = "com.mikepenz.aboutlibraries.plugin", version.ref = "aboutLibraries" } ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } screenshot = { id = "com.android.compose.screenshot", version.ref = "screenshot"} +compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } # Home-made convention plugins defined in build-logic wire-android-application = { id = "com.wire.android.application" } diff --git a/kalium b/kalium index 4d586223236..0ab964c5006 160000 --- a/kalium +++ b/kalium @@ -1 +1 @@ -Subproject commit 4d5862232369f2f9b115e02db8e56f9cb032dcf9 +Subproject commit 0ab964c5006c7945c1e11e93f8a55869a6a32a5e diff --git a/tests/testsCore/build.gradle.kts b/tests/testsCore/build.gradle.kts index 8840bbc72e0..5479ec740de 100644 --- a/tests/testsCore/build.gradle.kts +++ b/tests/testsCore/build.gradle.kts @@ -1,5 +1,6 @@ plugins { id(libs.plugins.wire.android.test.library.get().pluginId) + alias(libs.plugins.compose.compiler) } android { diff --git a/tests/testsSupport/build.gradle.kts b/tests/testsSupport/build.gradle.kts index a4c419e74c5..fa189d3f7b5 100644 --- a/tests/testsSupport/build.gradle.kts +++ b/tests/testsSupport/build.gradle.kts @@ -1,5 +1,6 @@ plugins { id(libs.plugins.wire.android.test.library.get().pluginId) + alias(libs.plugins.compose.compiler) } dependencies {