feat: move up to AGP 8.2.x
This commit is contained in:
parent
e92929910d
commit
37e6c87046
|
@ -78,6 +78,7 @@ dependencies {
|
|||
implementation(libs.build.agp)
|
||||
implementation(libs.build.cachefix)
|
||||
implementation(libs.build.kotlin.gradle)
|
||||
implementation(libs.build.r8)
|
||||
implementation(libs.build.semver)
|
||||
implementation(libs.build.sentry)
|
||||
implementation(libs.build.spotless)
|
||||
|
|
|
@ -15,7 +15,6 @@ dependencyResolutionManagement {
|
|||
filter {
|
||||
includeGroup("androidx.databinding")
|
||||
includeGroup("com.android")
|
||||
includeGroup("com.android.tools")
|
||||
includeGroup("com.android.tools.analytics-library")
|
||||
includeGroup("com.android.tools.build")
|
||||
includeGroup("com.android.tools.build.jetifier")
|
||||
|
@ -25,6 +24,15 @@ dependencyResolutionManagement {
|
|||
includeGroup("com.android.tools.lint")
|
||||
includeGroup("com.android.tools.utp")
|
||||
includeGroup("com.google.testing.platform")
|
||||
includeModule("com.android.tools", "annotations")
|
||||
includeModule("com.android.tools", "common")
|
||||
includeModule("com.android.tools", "desugar_jdk_libs")
|
||||
includeModule("com.android.tools", "desugar_jdk_libs_configuration")
|
||||
includeModule("com.android.tools", "dvlib")
|
||||
includeModule("com.android.tools", "play-sdk-proto")
|
||||
includeModule("com.android.tools", "repository")
|
||||
includeModule("com.android.tools", "sdklib")
|
||||
includeModule("com.android.tools", "sdk-common")
|
||||
}
|
||||
}
|
||||
exclusiveContent {
|
||||
|
@ -35,6 +43,10 @@ dependencyResolutionManagement {
|
|||
includeModule("gradle.plugin.org.gradle.android", "android-cache-fix-gradle-plugin")
|
||||
}
|
||||
}
|
||||
exclusiveContent {
|
||||
forRepository { maven("https://storage.googleapis.com/r8-releases/raw") }
|
||||
filter { includeModule("com.android.tools", "r8") }
|
||||
}
|
||||
mavenCentral()
|
||||
}
|
||||
versionCatalogs { create("libs") { from(files("../gradle/libs.versions.toml")) } }
|
||||
|
|
|
@ -11,6 +11,7 @@ package dev.msfjarvis.claw.gradle
|
|||
import com.android.build.api.dsl.ApplicationExtension
|
||||
import com.android.build.api.dsl.LibraryExtension
|
||||
import com.android.build.api.variant.ApplicationAndroidComponentsExtension
|
||||
import com.android.build.api.variant.HasUnitTestBuilder
|
||||
import com.android.build.api.variant.LibraryAndroidComponentsExtension
|
||||
import com.android.build.gradle.BaseExtension
|
||||
import dev.msfjarvis.claw.gradle.LintConfig.configureLint
|
||||
|
@ -73,7 +74,7 @@ private fun Project.configureSlimTests() {
|
|||
// Disable unit test tasks on the release build type for Android Library projects
|
||||
extensions.findByType<LibraryAndroidComponentsExtension>()?.run {
|
||||
beforeVariants(selector().withBuildType("release")) {
|
||||
it.enableUnitTest = false
|
||||
(it as HasUnitTestBuilder).enableUnitTest = false
|
||||
it.enableAndroidTest = false
|
||||
}
|
||||
}
|
||||
|
@ -81,7 +82,7 @@ private fun Project.configureSlimTests() {
|
|||
// Disable unit test tasks on the release build type for Android Application projects.
|
||||
extensions.findByType<ApplicationAndroidComponentsExtension>()?.run {
|
||||
beforeVariants(selector().withBuildType("release")) {
|
||||
it.enableUnitTest = false
|
||||
(it as HasUnitTestBuilder).enableUnitTest = false
|
||||
it.enableAndroidTest = false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
*/
|
||||
@file:Suppress("UnstableApiUsage")
|
||||
|
||||
import com.android.build.api.variant.HasUnitTestBuilder
|
||||
|
||||
plugins {
|
||||
id("dev.msfjarvis.claw.android-library")
|
||||
id("dev.msfjarvis.claw.kotlin-android")
|
||||
|
@ -25,7 +27,7 @@ android {
|
|||
namespace = "dev.msfjarvis.claw.common"
|
||||
}
|
||||
|
||||
androidComponents { beforeVariants { it.enableUnitTest = false } }
|
||||
androidComponents { beforeVariants { (it as HasUnitTestBuilder).enableUnitTest = false } }
|
||||
|
||||
anvil { generateDaggerFactories.set(true) }
|
||||
|
||||
|
|
|
@ -12,6 +12,9 @@ systemProp.org.gradle.android.cache-fix.ignoreVersionCheck=true
|
|||
org.gradle.configuration-cache=true
|
||||
org.gradle.configuration-cache-problems=warn
|
||||
|
||||
# Enable kotlin-assignment plugin
|
||||
systemProp.org.gradle.unsafe.kotlin.assignment=true
|
||||
|
||||
# Enable Kotlin incremental compilation
|
||||
kotlin.incremental=true
|
||||
|
||||
|
@ -24,48 +27,30 @@ kapt.incremental.apt=true
|
|||
# Turn off AP discovery in compile path to enable compile avoidance
|
||||
kapt.include.compile.classpath=false
|
||||
|
||||
# Force disable testOnly flag in manifest
|
||||
android.injected.testOnly=false
|
||||
|
||||
# New incremental compilation for Kotlin
|
||||
kotlin.incremental.useClasspathSnapshot=true
|
||||
kotlin.build.report.output=file
|
||||
|
||||
# Use R8 instead of ProGuard for code shrinking.
|
||||
android.enableR8.fullMode=false
|
||||
|
||||
# Enable AndroidX
|
||||
android.useAndroidX=true
|
||||
|
||||
# Enable non-transitive R class namespacing where each library only contains
|
||||
# references to the resources it declares instead of declarations plus all
|
||||
# transitive dependency references.
|
||||
android.nonTransitiveRClass=true
|
||||
|
||||
# Only keep the single relevant constructor for types mentioned in XML files
|
||||
# instead of using a parameter wildcard which keeps them all.
|
||||
android.useMinimalKeepRules=true
|
||||
|
||||
# Default Android build features
|
||||
android.defaults.buildfeatures.buildconfig=false
|
||||
android.defaults.buildfeatures.aidl=false
|
||||
android.defaults.buildfeatures.renderscript=false
|
||||
# Disable mostly unused default Android build features
|
||||
android.defaults.buildfeatures.resvalues=false
|
||||
android.defaults.buildfeatures.shaders=false
|
||||
android.library.defaults.buildfeatures.androidresources=false
|
||||
|
||||
# Experimental features
|
||||
# Disallow resolution of dependencies at configuration time
|
||||
android.dependencyResolutionAtConfigurationTime.disallow=true
|
||||
|
||||
# Disallow parsing the manifest too early in the build process
|
||||
android.disableEarlyManifestParsing=true
|
||||
android.enablePartialRIncrementalBuilds=true
|
||||
android.experimental.testOptions.uninstallIncompatibleApks=true
|
||||
android.enableBuildConfigAsBytecode=true
|
||||
android.experimental.enableNewResourceShrinker.preciseShrinking=true
|
||||
|
||||
# Disable warnings about unsupported features, we know what we're doing
|
||||
android.suppressUnsupportedOptionWarnings=android.disableEarlyManifestParsing,android.enablePartialRIncrementalBuilds,android.experimental.testOptions.uninstallIncompatibleApks,android.enableBuildConfigAsBytecode,android.experimental.enableNewResourceShrinker.preciseShrinking,android.suppressUnsupportedOptionWarnings
|
||||
# Disable warnings about unsupported features
|
||||
android.suppressUnsupportedOptionWarnings=android.dependencyResolutionAtConfigurationTime.disallow,android.disableEarlyManifestParsing,android.suppressUnsupportedOptionWarnings
|
||||
|
||||
# Add opens for KAPT
|
||||
# https://youtrack.jetbrains.com/issue/KT-45545#focus=Comments-27-4862682.0-0
|
||||
org.gradle.jvmargs=-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 \
|
||||
org.gradle.jvmargs=-Dfile.encoding=UTF-8 \
|
||||
--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED \
|
||||
--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED \
|
||||
--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED \
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[versions]
|
||||
accompanist = "0.30.1"
|
||||
agp = "8.0.2"
|
||||
agp = "8.2.0-alpha04"
|
||||
coil = "2.4.0"
|
||||
# @keep used for kotlinCompilerExtensionVersion
|
||||
composeCompiler = "1.4.4"
|
||||
|
@ -48,6 +48,7 @@ androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version
|
|||
build-agp = { module = "com.android.tools.build:gradle", version.ref = "agp" }
|
||||
build-cachefix = "org.gradle.android.cache-fix:org.gradle.android.cache-fix.gradle.plugin:2.7.1"
|
||||
build-kotlin-gradle = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
||||
build-r8 = "com.android.tools:r8:8.2.8-dev"
|
||||
build-semver = "com.vdurmont:semver4j:3.1.0"
|
||||
build-sentry = "io.sentry.android.gradle:io.sentry.android.gradle.gradle.plugin:3.7.0"
|
||||
build-spotless = "com.diffplug.spotless:spotless-plugin-gradle:6.19.0"
|
||||
|
|
|
@ -13,7 +13,7 @@ pluginManagement {
|
|||
filter {
|
||||
includeGroup("androidx.databinding")
|
||||
includeGroup("com.android")
|
||||
includeGroup("com.android.tools")
|
||||
includeModule("com.android.test", "com.android.test.gradle.plugin")
|
||||
includeGroup("com.android.tools.analytics-library")
|
||||
includeGroup("com.android.tools.build")
|
||||
includeGroup("com.android.tools.build.jetifier")
|
||||
|
@ -23,7 +23,15 @@ pluginManagement {
|
|||
includeGroup("com.android.tools.lint")
|
||||
includeGroup("com.android.tools.utp")
|
||||
includeGroup("com.google.testing.platform")
|
||||
includeModule("com.android.test", "com.android.test.gradle.plugin")
|
||||
includeModule("com.android.tools", "annotations")
|
||||
includeModule("com.android.tools", "common")
|
||||
includeModule("com.android.tools", "desugar_jdk_libs")
|
||||
includeModule("com.android.tools", "desugar_jdk_libs_configuration")
|
||||
includeModule("com.android.tools", "dvlib")
|
||||
includeModule("com.android.tools", "play-sdk-proto")
|
||||
includeModule("com.android.tools", "repository")
|
||||
includeModule("com.android.tools", "sdklib")
|
||||
includeModule("com.android.tools", "sdk-common")
|
||||
}
|
||||
}
|
||||
exclusiveContent {
|
||||
|
@ -40,6 +48,10 @@ pluginManagement {
|
|||
forRepository { maven("https://oss.sonatype.org/content/repositories/snapshots/") }
|
||||
filter { includeGroup("dev.msfjarvis.whetstone") }
|
||||
}
|
||||
exclusiveContent {
|
||||
forRepository { maven("https://storage.googleapis.com/r8-releases/raw") }
|
||||
filter { includeModule("com.android.tools", "r8") }
|
||||
}
|
||||
includeBuild("build-logic")
|
||||
mavenCentral()
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue