Browse Source

Update Gradle and AGP to v8.0 (#283)

* Update dependency gradle to v8

* Handle upgrading Gradle to v8.0.2

* Update AGP to 8.0.0-RC01

* Try to set JAVA_HOME to JDK17

* Update lint version.

* Use right JDK for dependency analysis, replace deprecated env var

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
test/jme/compound-poc
Jorge Martin Espinosa 1 year ago committed by GitHub
parent
commit
cda0606a0d
  1. 5
      .github/workflows/build.yml
  2. 5
      .github/workflows/maestro.yml
  3. 5
      .github/workflows/nightly.yml
  4. 5
      .github/workflows/nightly_manual.yml
  5. 12
      .github/workflows/quality.yml
  6. 5
      .github/workflows/tests.yml
  7. 7
      app/build.gradle.kts
  8. 2
      gradle.properties
  9. 4
      gradle/libs.versions.toml
  10. 4
      gradle/wrapper/gradle-wrapper.properties
  11. 4
      libraries/core/build.gradle.kts
  12. 4
      libraries/coroutines/build.gradle.kts
  13. 4
      libraries/designsystem/build.gradle.kts
  14. 4
      libraries/matrix/api/build.gradle.kts
  15. 4
      libraries/statemachine/build.gradle.kts
  16. 7
      libraries/ui-strings/build.gradle.kts
  17. 2
      plugins/src/main/kotlin/Versions.kt
  18. 4
      plugins/src/main/kotlin/extension/CommonExtension.kt
  19. 9
      plugins/src/main/kotlin/extension/DependencyHandleScope.kt

5
.github/workflows/build.yml

@ -28,6 +28,11 @@ jobs: @@ -28,6 +28,11 @@ jobs:
# Ensure we are building the branch and not the branch after being merged on develop
# https://github.com/actions/checkout/issues/881
ref: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.ref }}
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Configure gradle
uses: gradle/gradle-build-action@v2
with:

5
.github/workflows/maestro.yml

@ -24,6 +24,11 @@ jobs: @@ -24,6 +24,11 @@ jobs:
cancel-in-progress: true
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
name: Use JDK 17
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Assemble debug APK
run: ./gradlew assembleDebug $CI_GRADLE_ARG_PROPERTIES
- uses: mobile-dev-inc/action-maestro-cloud@v1.3.1

5
.github/workflows/nightly.yml

@ -15,6 +15,11 @@ jobs: @@ -15,6 +15,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Install towncrier
run: |
python3 -m pip install towncrier

5
.github/workflows/nightly_manual.yml

@ -13,6 +13,11 @@ jobs: @@ -13,6 +13,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Install towncrier
run: |
python3 -m pip install towncrier

12
.github/workflows/quality.yml

@ -8,7 +8,7 @@ on: @@ -8,7 +8,7 @@ on:
# Enrich gradle.properties for CI/CD
env:
GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3072m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -XX:MaxPermSize=512m -Dkotlin.daemon.jvm.options="-Xmx2g" -Dkotlin.incremental=false
GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3072m -Dfile.encoding=UTF-8 -XX:+HeapDumpOnOutOfMemoryError" -XX:MaxMetaspaceSize=512m -Dkotlin.daemon.jvm.options="-Xmx2g" -Dkotlin.incremental=false
CI_GRADLE_ARG_PROPERTIES: --stacktrace -PpreDexEnable=false --max-workers 2 --no-daemon
jobs:
@ -21,6 +21,11 @@ jobs: @@ -21,6 +21,11 @@ jobs:
cancel-in-progress: true
steps:
- uses: actions/checkout@v3
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Configure gradle
uses: gradle/gradle-build-action@v2
with:
@ -60,6 +65,11 @@ jobs: @@ -60,6 +65,11 @@ jobs:
cancel-in-progress: true
steps:
- uses: actions/checkout@v3
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Configure gradle
uses: gradle/gradle-build-action@v2
with:

5
.github/workflows/tests.yml

@ -25,6 +25,11 @@ jobs: @@ -25,6 +25,11 @@ jobs:
uses: actions/checkout@v3
with:
lfs: 'true'
- name: Use JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- name: Configure gradle
uses: gradle/gradle-build-action@v2
with:

7
app/build.gradle.kts

@ -25,7 +25,6 @@ import extension.allServicesImpl @@ -25,7 +25,6 @@ import extension.allServicesImpl
@Suppress("DSL_SCOPE_VIOLATION")
plugins {
id("io.element.android-compose-application")
alias(libs.plugins.stem)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.anvil)
alias(libs.plugins.ksp)
@ -140,7 +139,7 @@ android { @@ -140,7 +139,7 @@ android {
}
}
kotlinOptions {
jvmTarget = "1.8"
jvmTarget = "17"
}
// Waiting for https://github.com/google/ksp/issues/37
@ -151,6 +150,10 @@ android { @@ -151,6 +150,10 @@ android {
}
}
}
buildFeatures {
buildConfig = true
}
}
androidComponents {

2
gradle.properties

@ -46,7 +46,7 @@ signing.element.nightly.keyPassword=Secret @@ -46,7 +46,7 @@ signing.element.nightly.keyPassword=Secret
# Customise the Lint version to use a more recent version than the one bundled with AGP
# https://googlesamples.github.io/android-custom-lint-rules/usage/newer-lint.md.html
android.experimental.lint.version=8.0.0-alpha10
android.experimental.lint.version=8.0.0-rc01
# Enable test fixture for all modules by default
android.experimental.enableTestFixtures=true

4
gradle/libs.versions.toml

@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
[versions]
# Project
android_gradle_plugin = "7.4.2"
android_gradle_plugin = "8.0.0-rc01"
firebase_gradle_plugin = "3.2.0"
kotlin = "1.8.10"
ksp = "1.8.10-1.0.9"
@ -156,8 +156,6 @@ detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" } @@ -156,8 +156,6 @@ detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
ktlint = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint" }
dependencygraph = { id = "com.savvasdalkitsis.module-dependency-graph", version.ref = "dependencygraph" }
dependencycheck = { id = "org.owasp.dependencycheck", version.ref = "dependencycheck" }
stem = { id = "com.likethesalad.stem", version.ref = "stem" }
stemlibrary = { id = "com.likethesalad.stem-library", version.ref = "stem" }
paparazzi = "app.cash.paparazzi:1.2.0"
sonarqube = "org.sonarqube:4.0.0.2929"
kover = "org.jetbrains.kotlinx.kover:0.6.1"

4
gradle/wrapper/gradle-wrapper.properties vendored

@ -16,8 +16,8 @@ @@ -16,8 +16,8 @@
#Fri Oct 07 15:02:00 CEST 2022
distributionBase=GRADLE_USER_HOME
distributionSha256Sum=518a863631feb7452b8f1b3dc2aaee5f388355cc3421bbd0275fbeadd77e84b2
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.1-all.zip
distributionSha256Sum=47a5bfed9ef814f90f8debcbbb315e8e7c654109acd224595ea39fca95c5d4da
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-all.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

4
libraries/core/build.gradle.kts

@ -23,8 +23,8 @@ plugins { @@ -23,8 +23,8 @@ plugins {
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
dependencies {

4
libraries/coroutines/build.gradle.kts

@ -21,8 +21,8 @@ plugins { @@ -21,8 +21,8 @@ plugins {
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
dependencies {

4
libraries/designsystem/build.gradle.kts

@ -24,6 +24,10 @@ plugins { @@ -24,6 +24,10 @@ plugins {
android {
namespace = "io.element.android.libraries.designsystem"
buildFeatures {
buildConfig = true
}
dependencies {
// Should not be there, but this is a POC
implementation(libs.coil.compose)

4
libraries/matrix/api/build.gradle.kts

@ -25,6 +25,10 @@ plugins { @@ -25,6 +25,10 @@ plugins {
android {
namespace = "io.element.android.libraries.matrix.api"
buildFeatures {
buildConfig = true
}
}
anvil {

4
libraries/statemachine/build.gradle.kts

@ -23,8 +23,8 @@ plugins { @@ -23,8 +23,8 @@ plugins {
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
dependencies {

7
libraries/ui-strings/build.gradle.kts

@ -18,15 +18,8 @@ @@ -18,15 +18,8 @@
@Suppress("DSL_SCOPE_VIOLATION")
plugins {
id("io.element.android-library")
alias(libs.plugins.stemlibrary)
}
android {
namespace = "io.element.android.libraries.ui.strings"
}
// forcing the stem string template generator to be cacheable, without this the templates
// are regenerated causing the app module to recompile its sources
tasks.withType(com.likethesalad.android.templates.common.tasks.BaseTask::class.java) {
outputs.cacheIf { true }
}

2
plugins/src/main/kotlin/Versions.kt

@ -24,6 +24,6 @@ object Versions { @@ -24,6 +24,6 @@ object Versions {
const val compileSdk = 33
const val targetSdk = 33
const val minSdk = 23
val javaCompileVersion = JavaVersion.VERSION_11
val javaCompileVersion = JavaVersion.VERSION_17
val javaLanguageVersion: JavaLanguageVersion = JavaLanguageVersion.of(11)
}

4
plugins/src/main/kotlin/extension/CommonExtension.kt

@ -32,8 +32,8 @@ fun CommonExtension<*, *, *, *>.androidConfig(project: Project) { @@ -32,8 +32,8 @@ fun CommonExtension<*, *, *, *>.androidConfig(project: Project) {
compileOptions {
isCoreLibraryDesugaringEnabled = true
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
testOptions {

9
plugins/src/main/kotlin/extension/DependencyHandleScope.kt

@ -16,14 +16,17 @@ @@ -16,14 +16,17 @@
package extension
import gradle.kotlin.dsl.accessors._71f190358cebd46a469f2989484fd643.androidTestImplementation
import gradle.kotlin.dsl.accessors._71f190358cebd46a469f2989484fd643.debugImplementation
import gradle.kotlin.dsl.accessors._71f190358cebd46a469f2989484fd643.implementation
import org.gradle.accessors.dm.LibrariesForLibs
import org.gradle.kotlin.dsl.DependencyHandlerScope
import org.gradle.kotlin.dsl.project
import java.io.File
private fun DependencyHandlerScope.implementation(dependency: Any) = dependencies.add("implementation", dependency)
private fun DependencyHandlerScope.androidTestImplementation(dependency: Any) = dependencies.add("androidTestImplementation", dependency)
private fun DependencyHandlerScope.debugImplementation(dependency: Any) = dependencies.add("debugImplementation", dependency)
/**
* Dependencies used by all the modules
*/

Loading…
Cancel
Save