Skip to content

Commit

Permalink
Remove support for AGP 7.X versions and Java 11 (#471)
Browse files Browse the repository at this point in the history
  • Loading branch information
runningcode authored Feb 24, 2025
1 parent 02d1b61 commit d2bc538
Show file tree
Hide file tree
Showing 11 changed files with 16 additions and 245 deletions.
8 changes: 1 addition & 7 deletions gradle-plugin/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -431,13 +431,7 @@ emerge {

## Testing

Java 11 & Java 17 must be installed and respective environment variables must be set:

- `JAVA_HOME_11_{arch}`, ex `JAVA_HOME_11_aarch64`
- `JAVA_HOME_17_{arch}`, ex `JAVA_HOME_17_aarch64`

Both Java 17 & Java 11 must be installed as we test against both AGP 7 & 8, which requires Java 11 &
17 respectively.
Java 17 must be installed as we test against AGP 8

Additionally, `ANDROID_SDK_ROOT` must be set and point to the Android SDK location to run tests.

Expand Down
12 changes: 4 additions & 8 deletions gradle-plugin/plugin/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,16 @@ version = libs.versions.emerge.gradle.plugin.get()


java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
withJavadocJar()
withSourcesJar()
}

tasks.withType<KotlinCompile>().configureEach {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_11)
jvmTarget.set(JvmTarget.JVM_17)
}
}

Expand All @@ -40,11 +41,6 @@ val kgpClasspathDir = project.layout.buildDirectory.dir("kgp-classpath")
// ATTENTION: Must be kept in sync with the EmergeGradleRunner list.
val supportedAgpVersions =
setOf(
"7.0.0",
"7.1.0",
"7.2.0",
"7.3.0",
"7.4.2",
"8.0.0",
)

Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
package com.emergetools.android.gradle

import com.autonomousapps.kit.truth.TestKitTruth.Companion.assertThat
import com.emergetools.android.gradle.base.EmergeGradleRunner.Companion.LATEST_AGP_7_VERSION
import com.emergetools.android.gradle.base.EmergeGradleRunner2
import com.emergetools.android.gradle.mocks.assertSuccessfulUploadRequests
import com.emergetools.android.gradle.projects.SimpleGradleProject
import org.gradle.util.GradleVersion
import org.junit.jupiter.api.Test

class SimpleEmergePluginTest : EmergePluginTest() {
Expand All @@ -20,17 +18,6 @@ class SimpleEmergePluginTest : EmergePluginTest() {
assertThat(runner).task(":app:emergeUploadReleaseAab").succeeded()
}

@Test
fun simpleBundleAgp7_3_0() {
val project = SimpleGradleProject.createWithVcsInExtension(this, LATEST_AGP_7_VERSION)
val runner = EmergeGradleRunner2(project.gradleProject.rootDir, GradleVersion.version("7.5.1"))
.withArguments("emergeUploadReleaseAab")
.build()

assertSuccessfulUploadRequests(server)
assertThat(runner).task(":app:emergeUploadReleaseAab").succeeded()
}

@Test
fun simpleBundleTimeout() {
enableServerTimeout()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import org.gradle.internal.impldep.com.google.common.io.Files
import org.gradle.testkit.runner.BuildResult
import org.gradle.testkit.runner.GradleRunner
import org.gradle.util.GradleVersion
import org.gradle.util.internal.VersionNumber
import java.io.File

/**
Expand All @@ -19,15 +18,9 @@ class EmergeGradleRunner private constructor(
private val projectDir: String,
) {
companion object {
const val LATEST_AGP_7_VERSION = "7.4.2"
/** Must be kept in sync with the build.gradle list. */
val SUPPORTED_ANDROID_GRADLE_PLUGIN_VERSIONS =
sortedSetOf(
"7.0.0",
"7.1.0",
"7.2.0",
"7.3.0",
LATEST_AGP_7_VERSION,
"8.0.0",
)

Expand Down Expand Up @@ -107,12 +100,6 @@ class EmergeGradleRunner private constructor(
arguments = arguments + "-Pandroid.useAndroidX=true"
arguments = arguments + "--stacktrace"

if (VersionNumber.parse(androidGradlePluginVersion).major >= 8) {
withJavaVersion("17")
} else {
withJavaVersion("11")
}

val customEnvironment =
mapOf(
*environment.toList().toTypedArray(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package com.emergetools.android.gradle.snapshots

import com.emergetools.android.gradle.EmergePluginTest
import com.emergetools.android.gradle.base.EmergeGradleRunner
import com.emergetools.android.gradle.base.EmergeGradleRunner.Companion.LATEST_AGP_7_VERSION
import com.emergetools.android.gradle.mocks.assertSuccessfulUploadRequests
import org.junit.jupiter.api.Test

Expand All @@ -18,18 +17,4 @@ class MultiProjectSnapshotUploadTest : EmergePluginTest() {
}
.build()
}

@Test
fun multiProjectUploadSnapshotBundle_AGP_7_2_0() {
EmergeGradleRunner.create("multi-project-agp-7.2.0")
.withAndroidGradlePluginVersion(LATEST_AGP_7_VERSION)
.withGradleVersion("7.5.1")
.withArguments("emergeUploadSnapshotBundleDebug")
.withDefaultServer()
.assert { result, server ->
assertSuccessfulUploadRequests(server)
result.assertSuccessfulTask(":app:emergeUploadSnapshotBundleDebug")
}
.build()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package com.emergetools.android.gradle.snapshots

import com.emergetools.android.gradle.EmergePluginTest
import com.emergetools.android.gradle.base.EmergeGradleRunner
import com.emergetools.android.gradle.base.EmergeGradleRunner.Companion.LATEST_AGP_7_VERSION
import com.emergetools.android.gradle.mocks.assertSuccessfulUploadRequests
import org.junit.jupiter.api.Test

Expand All @@ -18,18 +17,4 @@ class SimpleSnapshotUploadTest : EmergePluginTest() {
}
.build()
}

@Test
fun simpleUploadSnapshotBundle_AGP_7_2_0() {
EmergeGradleRunner.create("simple")
.withAndroidGradlePluginVersion(LATEST_AGP_7_VERSION)
.withGradleVersion("7.5.1")
.withArguments("emergeUploadSnapshotBundleDebug")
.withDefaultServer()
.assert { result, server ->
assertSuccessfulUploadRequests(server)
result.assertSuccessfulTask(":emergeUploadSnapshotBundleDebug")
}
.build()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ class EmergePlugin : Plugin<Project> {
private val appVariants = mutableListOf<ApplicationVariant>()

override fun apply(project: Project) {
if (AgpVersions.CURRENT < AgpVersions.VERSION_7_0) {
if (AgpVersions.CURRENT < AgpVersions.VERSION_8_0) {
throw StopExecutionException(
"Version ${AgpVersions.CURRENT} of AGP is not supported with the " +
"Emerge gradle plugin. Please use AGP 7.0+.",
"Emerge gradle plugin. Please use AGP 8.0+.",
)
}

Expand Down
2 changes: 1 addition & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ grgit = { id = "org.ajoberstar.grgit", version = "5.3.0" }
autonomousapps-testkit = { id = "com.autonomousapps.testkit", version = "0.12" }

[libraries]
android-gradle-plugin = "com.android.tools.build:gradle:7.4.2"
android-gradle-plugin = "com.android.tools.build:gradle:8.8.1"

androidx-activity = { module = "androidx.activity:activity", version.ref = "androidxactivity" }
androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidxactivity" }
Expand Down
13 changes: 8 additions & 5 deletions snapshots/snapshots-shared/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.text.SimpleDateFormat
import java.util.Date
Expand All @@ -21,14 +23,15 @@ java {
withJavadocJar()
withSourcesJar()

sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
}

tasks.withType<KotlinCompile> {
kotlinOptions {
jvmTarget = JavaVersion.VERSION_11.toString()
languageVersion = "1.7"
compilerOptions {
jvmTarget.set(JvmTarget.JVM_17)
languageVersion.set(KotlinVersion.KOTLIN_1_9)
}
}

Expand Down

0 comments on commit d2bc538

Please sign in to comment.