From baca7cffed60f9b2c0de398025a8bcdfc0297c9c Mon Sep 17 00:00:00 2001 From: davidoskky Date: Thu, 13 Jul 2023 14:51:17 +0200 Subject: [PATCH] Upgrade to gradle 8 --- androidApp/build.gradle.kts | 15 +++++------ build.gradle.kts | 10 +++---- gradle.properties | 9 +------ gradle/wrapper/gradle-wrapper.properties | 6 ++--- shared/build.gradle.kts | 33 +++++++++++++----------- 5 files changed, 34 insertions(+), 39 deletions(-) diff --git a/androidApp/build.gradle.kts b/androidApp/build.gradle.kts index 63dae0c..f333042 100644 --- a/androidApp/build.gradle.kts +++ b/androidApp/build.gradle.kts @@ -8,7 +8,7 @@ plugins { kotlin("android") kotlin("kapt") id("com.mikepenz.aboutlibraries.plugin") - id("org.jetbrains.kotlinx.kover") version "0.6.1" + id("org.jetbrains.kotlinx.kover") } fun Project.execWithOutput(cmd: String, ignore: Boolean = false): String { @@ -16,7 +16,7 @@ fun Project.execWithOutput(cmd: String, ignore: Boolean = false): String { project.exec { commandLine = cmd.split(" ") standardOutput = outputStream - isIgnoreExitValue = ignore ?: false + isIgnoreExitValue = ignore } outputStream.toString() } @@ -24,9 +24,8 @@ fun Project.execWithOutput(cmd: String, ignore: Boolean = false): String { } fun gitVersion(): String { - var process = "" val maybeTagOfCurrentCommit = execWithOutput("git -C ../ describe --contains HEAD", true) - process = if (maybeTagOfCurrentCommit.isEmpty()) { + var process = if (maybeTagOfCurrentCommit.isEmpty()) { println("No tag on current commit. Will take the latest one.") execWithOutput("git -C ../ for-each-ref refs/tags --sort=-refname --format='%(refname:short)' --count=1") } else { @@ -58,13 +57,13 @@ android { compileOptions { isCoreLibraryDesugaringEnabled = true // Flag to enable support for the new language APIs - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } // For Kotlin projects kotlinOptions { - jvmTarget = "11" + jvmTarget = "17" } compileSdk = 33 buildToolsVersion = "33.0.0" @@ -171,7 +170,7 @@ dependencies { //PhotoView implementation("com.github.chrisbanes:PhotoView:2.3.0") - implementation("androidx.core:core-ktx:1.8.0") + implementation("androidx.core:core-ktx:1.10.1") implementation("androidx.lifecycle:lifecycle-extensions:2.2.0") diff --git a/build.gradle.kts b/build.gradle.kts index f20c5f3..814db5b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,12 +7,12 @@ buildscript { plugins { //trick: for the same plugin versions in all sub-modules - id("com.android.application").version("7.4.0").apply(false) - id("com.android.library").version("7.4.0").apply(false) - kotlin("android").version("1.7.20").apply(false) - kotlin("multiplatform").version("1.7.20").apply(false) + id("com.android.application").version("8.1.0").apply(false) + id("com.android.library").version("8.1.0").apply(false) + id("org.jetbrains.kotlin.android").version("1.9.10").apply(false) + kotlin("multiplatform").version("1.9.10").apply(false) id("com.mikepenz.aboutlibraries.plugin").version("10.5.1").apply(false) - id("org.jetbrains.kotlinx.kover") version "0.6.1" + id("org.jetbrains.kotlinx.kover").version("0.6.1").apply(true) } allprojects { diff --git a/gradle.properties b/gradle.properties index a7c8941..4bc8df2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -13,22 +13,15 @@ #Tue Mar 22 16:50:00 CET 2022 #Gradle org.gradle.jvmargs=-Xmx2048M -Dfile.encoding=UTF-8 -Dkotlin.daemon.jvm.options\="-Xmx2048M" - #Kotlin kotlin.code.style=official - #Android android.useAndroidX=true -kotlin.native.enableDependencyPropagation=false #android.nonTransitiveRClass=true android.enableJetifier=true - - +android.nonTransitiveRClass=false #MPP kotlin.mpp.enableCInteropCommonization=true -kotlin.mpp.enableGranularSourceSetsMetadata=true - - org.gradle.parallel=true org.gradle.caching=true ignoreGitVersion=false diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 881598f..9100ea2 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Mon Jan 23 20:47:46 CET 2023 +#Thu Jul 13 11:41:19 CEST 2023 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip distributionPath=wrapper/dists -zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/shared/build.gradle.kts b/shared/build.gradle.kts index 8408522..780615b 100644 --- a/shared/build.gradle.kts +++ b/shared/build.gradle.kts @@ -1,3 +1,5 @@ +val ktorVersion = "2.3.2" + object SqlDelight { const val runtime = "com.squareup.sqldelight:runtime:1.5.4" const val android = "com.squareup.sqldelight:android-driver:1.5.4" @@ -9,12 +11,12 @@ plugins { kotlin("multiplatform") id("com.android.library") id("com.squareup.sqldelight") - kotlin("plugin.serialization") version "1.4.10" - id("org.jetbrains.kotlinx.kover") version "0.6.1" + kotlin("plugin.serialization") version "1.9.0" + id("org.jetbrains.kotlinx.kover") } kotlin { - android() + androidTarget() listOf( iosX64(), @@ -29,13 +31,14 @@ kotlin { sourceSets { val commonMain by getting { dependencies { - implementation("io.ktor:ktor-client-core:2.1.1") - implementation("io.ktor:ktor-client-content-negotiation:2.1.1") - implementation("io.ktor:ktor-serialization-kotlinx-json:2.1.1") - implementation("io.ktor:ktor-client-logging:2.1.1") + implementation("io.ktor:ktor-client-core:$ktorVersion") + implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion") + implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion") + implementation("io.ktor:ktor-client-logging:$ktorVersion") + implementation("io.ktor:ktor-client-auth:$ktorVersion") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0") - implementation("io.ktor:ktor-client-auth:2.1.1") - implementation("org.jsoup:jsoup:1.14.3") + + implementation("org.jsoup:jsoup:1.15.4") //Dependency Injection implementation("org.kodein.di:kodein-di:7.12.0") @@ -58,14 +61,15 @@ kotlin { } val androidMain by getting { dependencies { - implementation("io.ktor:ktor-client-okhttp:2.1.1") + implementation("com.squareup.okhttp3:okhttp:4.10.0") + implementation("io.ktor:ktor-client-okhttp:2.2.4") implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.4.0") // Sql implementation(SqlDelight.android) } } - val androidTest by getting { + val androidUnitTest by getting { dependencies { implementation(kotlin("test-junit")) implementation("junit:junit:4.13.2") @@ -98,15 +102,14 @@ kotlin { } android { - compileSdk = 32 + compileSdk = 33 sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") defaultConfig { minSdk = 21 - targetSdk = 32 } compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } namespace = "bou.amine.apps.readerforselfossv2" }