diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 44fa0b17..2a852215 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -22,11 +22,11 @@ kotlinx-serialization = "1.10.0" # https://plugins.gradle.org/plugin/org.sonarqube sonar = "7.2.2.6593" # https://developer.android.com/build/releases/gradle-plugin -android-gradlePlugin = "8.13.2" +android-gradlePlugin = "9.0.0" # https://developer.android.com/studio/write/java8-support#library-desugaring android-desugarJdkLibs = "2.1.5" # https://github.com/Triple-T/gradle-play-publisher/releases/latest -triplet-playPublisher = "3.13.0" +triplet-playPublisher = "4.0.0" # https://github.com/dropbox/dependency-guard/releases/latest dependency-guard = "0.5.0" # # https://github.com/ben-manes/gradle-versions-plugin/releases/latest @@ -38,7 +38,7 @@ gradle-doctor = "0.12.1" # https://github.com/gradle/android-cache-fix-gradle-plugin/releases gradle-androidCacheFix = "3.0.3" # https://github.com/google/dagger/releases/latest -hilt = "2.57.2" +hilt = "2.59.1" # ALL: https://developer.android.com/jetpack/androidx/versions # LATEST: https://developer.android.com/jetpack/androidx/versions/stable-channel androidx-activity = "1.12.2" @@ -124,7 +124,7 @@ retrofit = "3.0.0" okhttp = "5.3.2" # https://github.com/ChuckerTeam/chucker/releases/latest # https://github.com/ChuckerTeam/chucker/blob/main/CHANGELOG.md -chucker = "4.2.0" +chucker = "4.3.0" # https://github.com/google/gson/releases/latest # https://github.com/google/gson/blob/main/CHANGELOG.md gson = "2.13.2" @@ -221,6 +221,7 @@ playInsightLint = { module = "com.google.play.policy.insights:insights-lint", ve protobuf-compiler = { module = "com.google.protobuf:protoc", version.ref = "protobuf" } protobuf-java = { module = "com.google.protobuf:protobuf-java", version.ref = "protobuf" } protobuf-javaLite = { module = "com.google.protobuf:protobuf-javalite", version.ref = "protobuf" } +protobuf-kotlin = { module = "com.google.protobuf:protobuf-kotlin", version.ref = "protobuf" } retrofit = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit" } retrofit-gsonConverter = { module = "com.squareup.retrofit2:converter-gson", version.ref = "retrofit" } okhttp-bom = { module = "com.squareup.okhttp3:okhttp-bom", version.ref = "okhttp" } @@ -352,7 +353,6 @@ gms = { id = "com.google.gms.google-services", version.ref = "gps-plugin" } androidx-room = { id = "androidx.room", version.ref = "androidx-room" } hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" } kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } -kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } kotlinx-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } google-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" } triplet-playPublisher = { id = "com.github.triplet.play", version.ref = "triplet-playPublisher" } diff --git a/shared-main/app-android/dependencies/releaseCompileClasspath.txt b/shared-main/app-android/dependencies/releaseCompileClasspath.txt index 3db354ba..b1e9db84 100644 --- a/shared-main/app-android/dependencies/releaseCompileClasspath.txt +++ b/shared-main/app-android/dependencies/releaseCompileClasspath.txt @@ -1,6 +1,6 @@ androidx.activity:activity-ktx:1.12.2 androidx.activity:activity:1.12.2 -androidx.annotation:annotation-experimental:1.5.0 +androidx.annotation:annotation-experimental:1.4.1 androidx.annotation:annotation-jvm:1.9.1 androidx.annotation:annotation:1.9.1 androidx.appcompat:appcompat-resources:1.7.1 @@ -22,13 +22,9 @@ androidx.core:core-viewtree:1.0.0 androidx.core:core:1.17.0 androidx.cursoradapter:cursoradapter:1.0.0 androidx.customview:customview:1.1.0 -androidx.databinding:viewbinding:8.13.2 -androidx.datastore:datastore-android:1.1.7 -androidx.datastore:datastore-core-android:1.1.7 -androidx.datastore:datastore-core-okio-jvm:1.1.7 -androidx.datastore:datastore-core-okio:1.1.7 -androidx.datastore:datastore-core:1.1.7 -androidx.datastore:datastore:1.1.7 +androidx.databinding:viewbinding:9.0.0 +androidx.datastore:datastore-core:1.0.0 +androidx.datastore:datastore:1.0.0 androidx.documentfile:documentfile:1.0.0 androidx.drawerlayout:drawerlayout:1.1.1 androidx.dynamicanimation:dynamicanimation:1.1.0 @@ -83,9 +79,9 @@ androidx.sqlite:sqlite-android:2.6.2 androidx.sqlite:sqlite-framework-android:2.6.2 androidx.sqlite:sqlite-framework:2.6.2 androidx.sqlite:sqlite:2.6.2 -androidx.startup:startup-runtime:1.2.0 +androidx.startup:startup-runtime:1.0.0 androidx.swiperefreshlayout:swiperefreshlayout:1.2.0 -androidx.tracing:tracing:1.2.0 +androidx.tracing:tracing:1.0.0 androidx.transition:transition:1.5.0 androidx.vectordrawable:vectordrawable-animated:1.1.0 androidx.vectordrawable:vectordrawable:1.2.0 @@ -93,7 +89,7 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 androidx.viewpager2:viewpager2:1.1.0 androidx.viewpager:viewpager:1.0.0 androidx.webkit:webkit:1.15.0 -androidx.work:work-runtime:2.11.0 +androidx.work:work-runtime:2.7.0 com.android.billingclient:billing-ktx:8.3.0 com.android.billingclient:billing:8.3.0 com.android.volley:volley:1.2.1 @@ -105,13 +101,13 @@ com.github.bumptech.glide:disklrucache:5.0.5 com.github.bumptech.glide:gifdecoder:5.0.5 com.github.bumptech.glide:glide:5.0.5 com.github.bumptech.glide:okhttp3-integration:5.0.5 -com.github.chuckerteam.chucker:library-no-op:4.2.0 +com.github.chuckerteam.chucker:library-no-op:4.3.0 com.google.ads.mediation:applovin:13.5.1.0 com.google.ads.mediation:facebook:6.21.0.0 com.google.ads.mediation:vungle:7.6.3.1 -com.google.android.datatransport:transport-api:3.2.0 -com.google.android.datatransport:transport-backend-cct:3.3.0 -com.google.android.datatransport:transport-runtime:3.3.0 +com.google.android.datatransport:transport-api:3.1.0 +com.google.android.datatransport:transport-backend-cct:3.2.0 +com.google.android.datatransport:transport-runtime:3.2.0 com.google.android.gms:play-services-ads-api:24.9.0 com.google.android.gms:play-services-ads-identifier:18.0.0 com.google.android.gms:play-services-ads:24.9.0 @@ -137,10 +133,10 @@ com.google.android.ump:user-messaging-platform:4.0.0 com.google.auto.value:auto-value-annotations:1.6.2 com.google.code.findbugs:jsr305:3.0.2 com.google.code.gson:gson:2.13.2 -com.google.dagger:dagger-lint-aar:2.57.2 -com.google.dagger:dagger:2.57.2 -com.google.dagger:hilt-android:2.57.2 -com.google.dagger:hilt-core:2.57.2 +com.google.dagger:dagger-lint-aar:2.59.1 +com.google.dagger:dagger:2.59.1 +com.google.dagger:hilt-android:2.59.1 +com.google.dagger:hilt-core:2.59.1 com.google.errorprone:error_prone_annotations:2.41.0 com.google.firebase:firebase-abt:21.1.1 com.google.firebase:firebase-analytics:23.0.0 @@ -160,10 +156,10 @@ com.google.firebase:firebase-measurement-connector:20.0.1 com.google.firebase:firebase-perf:22.0.4 com.google.firebase:firebase-sessions:3.0.4 com.google.firebase:protolite-well-known-types:18.0.1 -com.google.guava:failureaccess:1.0.3 -com.google.guava:guava:33.5.0-android +com.google.guava:failureaccess:1.0.2 +com.google.guava:guava:33.3.0-android com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava -com.google.j2objc:j2objc-annotations:3.1 +com.google.j2objc:j2objc-annotations:3.0.0 com.google.maps.android:android-maps-utils:4.0.0 com.google.maps.android:maps-ktx:6.0.0 com.google.maps.android:maps-utils-ktx:6.0.0 @@ -180,6 +176,7 @@ com.squareup.retrofit2:retrofit:3.0.0 com.vungle:vungle-ads:7.6.3 jakarta.inject:jakarta.inject-api:2.0.1 javax.inject:javax.inject:1 +org.checkerframework:checker-qual:3.43.0 org.jacoco:org.jacoco.core:0.8.8 org.jetbrains.kotlin:kotlin-bom:2.3.0 org.jetbrains.kotlin:kotlin-stdlib-jdk7:2.3.0 diff --git a/shared-main/app-android/dependencies/releaseRuntimeClasspath.txt b/shared-main/app-android/dependencies/releaseRuntimeClasspath.txt index 04f3434a..69608b78 100644 --- a/shared-main/app-android/dependencies/releaseRuntimeClasspath.txt +++ b/shared-main/app-android/dependencies/releaseRuntimeClasspath.txt @@ -26,7 +26,7 @@ androidx.core:core:1.17.0 androidx.cursoradapter:cursoradapter:1.0.0 androidx.customview:customview-poolingcontainer:1.0.0 androidx.customview:customview:1.1.0 -androidx.databinding:viewbinding:8.13.2 +androidx.databinding:viewbinding:9.0.0 androidx.datastore:datastore-android:1.1.7 androidx.datastore:datastore-core-android:1.1.7 androidx.datastore:datastore-core-okio-jvm:1.1.7 @@ -123,7 +123,7 @@ com.github.bumptech.glide:disklrucache:5.0.5 com.github.bumptech.glide:gifdecoder:5.0.5 com.github.bumptech.glide:glide:5.0.5 com.github.bumptech.glide:okhttp3-integration:5.0.5 -com.github.chuckerteam.chucker:library-no-op:4.2.0 +com.github.chuckerteam.chucker:library-no-op:4.3.0 com.google.ads.mediation:applovin:13.5.1.0 com.google.ads.mediation:facebook:6.21.0.0 com.google.ads.mediation:vungle:7.6.3.1 @@ -158,10 +158,10 @@ com.google.android.ump:user-messaging-platform:4.0.0 com.google.auto.value:auto-value-annotations:1.6.2 com.google.code.findbugs:jsr305:3.0.2 com.google.code.gson:gson:2.13.2 -com.google.dagger:dagger-lint-aar:2.57.2 -com.google.dagger:dagger:2.57.2 -com.google.dagger:hilt-android:2.57.2 -com.google.dagger:hilt-core:2.57.2 +com.google.dagger:dagger-lint-aar:2.59.1 +com.google.dagger:dagger:2.59.1 +com.google.dagger:hilt-android:2.59.1 +com.google.dagger:hilt-core:2.59.1 com.google.errorprone:error_prone_annotations:2.41.0 com.google.firebase:firebase-abt:21.1.1 com.google.firebase:firebase-analytics:23.0.0 @@ -190,6 +190,7 @@ com.google.maps.android:android-maps-utils:4.0.0 com.google.maps.android:maps-ktx:6.0.0 com.google.maps.android:maps-utils-ktx:6.0.0 com.google.protobuf:protobuf-javalite:3.25.6 +com.google.protobuf:protobuf-kotlin:4.33.4 com.squareup.okhttp3:logging-interceptor:5.3.2 com.squareup.okhttp3:okhttp-android:5.3.2 com.squareup.okhttp3:okhttp-bom:5.3.2 diff --git a/shared-opt-dir/agency-parser/build.gradle b/shared-opt-dir/agency-parser/build.gradle index 81241974..ec870d20 100644 --- a/shared-opt-dir/agency-parser/build.gradle +++ b/shared-opt-dir/agency-parser/build.gradle @@ -23,15 +23,10 @@ java { targetCompatibility = rootProject.javaVersion toolchain.languageVersion = JavaLanguageVersion.of(rootProject.javaToolchainVersion.toString()) } -compileKotlin { - kotlinOptions { - jvmTarget = rootProject.javaVersion - allWarningsAsErrors = true - } -} -compileTestKotlin { - kotlinOptions { - jvmTarget = rootProject.javaVersion + +kotlin { + compilerOptions { + jvmTarget = rootProject.kotlinJvmTarget allWarningsAsErrors = true } } diff --git a/shared/app-android/build.gradle b/shared/app-android/build.gradle index 32ab19ff..da9b178a 100644 --- a/shared/app-android/build.gradle +++ b/shared/app-android/build.gradle @@ -3,7 +3,6 @@ import com.github.triplet.gradle.androidpublisher.ReleaseStatus plugins { alias(libs.plugins.android.application) alias(libs.plugins.gradle.androidCacheFix) - alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlinx.serialization) alias(libs.plugins.triplet.playPublisher) } @@ -58,9 +57,11 @@ android { sourceCompatibility = rootProject.javaVersion targetCompatibility = rootProject.javaVersion } - kotlinOptions { - jvmTarget = rootProject.javaVersion - // allWarningsAsErrors = true // replaced by "DeprecatedCall" in lint + kotlin { + compilerOptions { + // jvmTarget = rootProject.kotlinJvmTarget // same as android.compileOptions.targetCompatibility + // allWarningsAsErrors = true // replaced by "DeprecatedCall" in lint + } } if (!projectPkg.empty) { @@ -342,6 +343,7 @@ if (isMainApp) { room { schemaDirectory("$projectDir/schemas") } + hilt { enableAggregatingTask = true } diff --git a/shared/build.gradle b/shared/build.gradle index 87a75a61..ca46a00f 100644 --- a/shared/build.gradle +++ b/shared/build.gradle @@ -1,6 +1,7 @@ buildscript { ext { javaVersion = JavaVersion.VERSION_11 + kotlinJvmTarget = "JVM_11" // same as javaVersion javaToolchainVersion = JavaVersion.VERSION_17 } @@ -23,7 +24,6 @@ plugins { alias(libs.plugins.android.lint) apply false alias(libs.plugins.kotlin.jvm) apply false - alias(libs.plugins.kotlin.android) apply false alias(libs.plugins.kotlinx.serialization) apply false alias(libs.plugins.google.ksp) apply false diff --git a/shared/gradle.properties b/shared/gradle.properties index da6decb7..e958b46c 100644 --- a/shared/gradle.properties +++ b/shared/gradle.properties @@ -49,3 +49,7 @@ android.enableR8.fullMode=false # Kotlin kotlin.code.style=official + +# AGP 9.0 compat +# Protobuf Plugin not compatible https://github.com/google/protobuf-gradle-plugin/issues/793 +android.newDsl=false