From 839d8bcc044f7f4ca4cefe5e9e781f377cf05160 Mon Sep 17 00:00:00 2001 From: Nik Clayton Date: Sun, 30 Jul 2023 15:50:04 +0200 Subject: [PATCH] Migrate to AGP 8.0.2 / Android Studio Flamingo / Java 17 (#3541) - Update AGP in version catalog to 8.0.2 - Set Java version to 17 - Enable non-final resource IDs --- .github/workflows/ci.yml | 10 +++++----- app/build.gradle | 4 ++-- .../keylesspalace/tusky/usecase/TimelineCasesTest.kt | 2 +- bitrise.yml | 9 +++++++++ build.gradle | 2 +- gradle.properties | 5 ----- gradle/libs.versions.toml | 2 +- 7 files changed, 19 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c9f5ac74f..8e36ee795 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: - uses: actions/setup-java@v3 with: - java-version: '11' + java-version: '17' distribution: 'temurin' - name: Gradle Wrapper Validation @@ -27,15 +27,15 @@ jobs: uses: gradle/gradle-build-action@v2 with: cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }} - + - name: ktlint run: ./gradlew clean ktlintCheck - + - name: Regular lint run: ./gradlew app:lintGreenDebug - + - name: Test run: ./gradlew app:testGreenDebugUnitTest - + - name: Build run: ./gradlew app:buildGreenDebug diff --git a/app/build.gradle b/app/build.gradle index 88c2ad7b3..b7f60b3a8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -103,8 +103,8 @@ android { // Can remove this once https://issuetracker.google.com/issues/260059413 is fixed. // https://kotlinlang.org/docs/gradle-configure-project.html#gradle-java-toolchains-support compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } applicationVariants.configureEach { variant -> variant.outputs.configureEach { diff --git a/app/src/test/java/com/keylesspalace/tusky/usecase/TimelineCasesTest.kt b/app/src/test/java/com/keylesspalace/tusky/usecase/TimelineCasesTest.kt index 688622853..bcb690641 100644 --- a/app/src/test/java/com/keylesspalace/tusky/usecase/TimelineCasesTest.kt +++ b/app/src/test/java/com/keylesspalace/tusky/usecase/TimelineCasesTest.kt @@ -19,7 +19,7 @@ import org.mockito.kotlin.stub import org.robolectric.annotation.Config import retrofit2.HttpException import retrofit2.Response -import java.util.* +import java.util.Date @Config(sdk = [28]) @RunWith(AndroidJUnit4::class) diff --git a/bitrise.yml b/bitrise.yml index 1a01709ee..714b3dd89 100644 --- a/bitrise.yml +++ b/bitrise.yml @@ -11,6 +11,9 @@ trigger_map: workflows: nightly: steps: + - set-java-version@1: + inputs: + - set_java_version: '17' - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone@8.0: {} @@ -50,6 +53,9 @@ workflows: - cache-push@2.7: {} primary: steps: + - set-java-version@1: + inputs: + - set_java_version: '17' - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} @@ -87,6 +93,9 @@ workflows: - cache-push@2.7: {} release: steps: + - set-java-version@1: + inputs: + - set_java_version: '17' - activate-ssh-key: run_if: '{{getenv "SSH_RSA_PRIVATE_KEY" | ne ""}}' - git-clone: {} diff --git a/build.gradle b/build.gradle index 7689e2fb6..fb0ac0197 100644 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,7 @@ allprojects { plugins.withType(JavaBasePlugin).configureEach { java { - toolchain.languageVersion = JavaLanguageVersion.of(11) + toolchain.languageVersion = JavaLanguageVersion.of(17) } } } diff --git a/gradle.properties b/gradle.properties index 45c7b7e09..84a07ffd3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -9,11 +9,6 @@ org.gradle.configuration-cache=true kotlin.incremental.useClasspathSnapshot=true # Disable buildFeatures flags by default -android.defaults.buildfeatures.aidl=false -android.defaults.buildfeatures.buildconfig=false -android.defaults.buildfeatures.renderscript=false android.defaults.buildfeatures.resvalues=false android.defaults.buildfeatures.shaders=false -android.enableR8.fullMode=true -android.nonTransitiveRClass=true android.useAndroidX=true diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4a97a287f..1d855edfa 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -agp = "7.4.2" +agp = "8.0.2" androidx-activity = "1.7.2" androidx-appcompat = "1.6.1" androidx-browser = "1.5.0"