diff options
Diffstat (limited to 'build-logic/src')
3 files changed, 13 insertions, 18 deletions
diff --git a/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt b/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt index 94b9c112..70d48586 100644 --- a/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt +++ b/build-logic/src/main/kotlin/app/passwordstore/gradle/AndroidCommon.kt @@ -20,7 +20,7 @@ object AndroidCommon { fun configure(project: Project) { project.extensions.getByType(CommonExtension::class.java).apply { compileSdk = 35 - defaultConfig.minSdk = 26 + defaultConfig.minSdk = 31 packaging.resources.excludes.add("**/*.version") packaging.resources.excludes.add("**/*.txt") diff --git a/build-logic/src/main/kotlin/app/passwordstore/gradle/ApplicationPlugin.kt b/build-logic/src/main/kotlin/app/passwordstore/gradle/ApplicationPlugin.kt index 6d38d1fc..b6332b6a 100644 --- a/build-logic/src/main/kotlin/app/passwordstore/gradle/ApplicationPlugin.kt +++ b/build-logic/src/main/kotlin/app/passwordstore/gradle/ApplicationPlugin.kt @@ -22,16 +22,21 @@ class ApplicationPlugin : Plugin<Project> { project.pluginManager.apply(AppPlugin::class) AndroidCommon.configure(project) val minifySwitch = project.providers.environmentVariable("DISABLE_MINIFY") + val commit = + project.providers + .exec { + commandLine("git", "rev-parse", "--short=8", "HEAD") + isIgnoreExitValue = true + } + .standardOutput + .asText project.extensions.configure<ApplicationExtension> { dependenciesInfo { includeInBundle = false includeInApk = false } - buildFeatures { - viewBinding = true - buildConfig = true - } + buildFeatures { buildConfig = true } buildTypes { named("release") { @@ -43,25 +48,19 @@ class ApplicationPlugin : Plugin<Project> { "proguard-rules-missing-classes.pro", ) ) - buildConfigField("boolean", "ENABLE_DEBUG_FEATURES", "${project.isSnapshot()}") + buildConfigField("boolean", "ENABLE_DEBUG_FEATURES", "false") + buildConfigField("String", "GIT_COMMIT", "\"\"") } named("debug") { applicationIdSuffix = ".debug" versionNameSuffix = "-debug" isMinifyEnabled = false buildConfigField("boolean", "ENABLE_DEBUG_FEATURES", "true") + buildConfigField("String", "GIT_COMMIT", "\"${commit.get().trim()}\"") } } project.configureBuildSigning() } } - - private fun Project.isSnapshot(): Boolean { - with(providers) { - val workflow = environmentVariable("GITHUB_WORKFLOW") - val snapshot = environmentVariable("SNAPSHOT") - return workflow.isPresent || snapshot.isPresent - } - } } diff --git a/build-logic/src/main/kotlin/app/passwordstore/gradle/LintConfig.kt b/build-logic/src/main/kotlin/app/passwordstore/gradle/LintConfig.kt index ba3c32e8..6f12065a 100644 --- a/build-logic/src/main/kotlin/app/passwordstore/gradle/LintConfig.kt +++ b/build-logic/src/main/kotlin/app/passwordstore/gradle/LintConfig.kt @@ -33,8 +33,6 @@ object LintConfig { disable += "SyntheticAccessor" // Noisy, not particularly actionable disable += "TypographyQuotes" - // False-positives abound due to use of ViewBinding - disable += "UnusedIds" // False-positive, not relevant on the API levels we support disable += "TrulyRandom" // I can't do anything about this @@ -45,8 +43,6 @@ object LintConfig { error += "ComposeM2Api" // slack-lint-checks' checker for deprecations is useless to me disable += "DeprecatedCall" - // Hilt only does field injection for fragments - disable += "FragmentFieldInjection" // Too pedantic disable += "ArgInFormattedQuantityStringRes" } |
