feat: add slack-lint-checks

This commit is contained in:
Harsh Shandilya 2023-06-01 18:24:45 +05:30
parent 59dc6d27de
commit 53476f612b
No known key found for this signature in database
3 changed files with 12 additions and 4 deletions

View file

@ -47,11 +47,11 @@ object AndroidCommon {
} }
project.extensions.findByType<ApplicationExtension>()?.run { lint.configureLint(project) } project.extensions.findByType<ApplicationExtension>()?.run { lint.configureLint(project) }
project.extensions.findByType<LibraryExtension>()?.run { lint.configureLint(project) } project.extensions.findByType<LibraryExtension>()?.run { lint.configureLint(project) }
val lintDepKeys = listOf("thirdparty-compose-lints", "thirdparty-slack-lints")
val catalog = project.extensions.getByType<VersionCatalogsExtension>() val catalog = project.extensions.getByType<VersionCatalogsExtension>()
val libs = catalog.named("libs") val libs = catalog.named("libs")
project.dependencies.addProvider( lintDepKeys.forEach { key ->
"lintChecks", project.dependencies.addProvider("lintChecks", libs.findLibrary(key).get())
libs.findLibrary("thirdparty-compose-lints").get() }
)
} }
} }

View file

@ -29,8 +29,15 @@ object LintConfig {
// False-positives abound due to use of ViewBinding // False-positives abound due to use of ViewBinding
disable += "UnusedIds" disable += "UnusedIds"
if (!isJVM) { if (!isJVM) {
// Enable compose-lint-checks' Material 2 detector
enable += "ComposeM2Api" enable += "ComposeM2Api"
error += "ComposeM2Api" 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"
} }
baseline = project.file("lint-baseline.xml") baseline = project.file("lint-baseline.xml")
} }

View file

@ -94,6 +94,7 @@ thirdparty-nonfree-googlePlayAuthApiPhone = "com.google.android.gms:play-service
thirdparty-nonfree-sentry = "io.sentry:sentry-android:6.21.0" thirdparty-nonfree-sentry = "io.sentry:sentry-android:6.21.0"
thirdparty-pgpainless = "org.pgpainless:pgpainless-core:1.5.1" thirdparty-pgpainless = "org.pgpainless:pgpainless-core:1.5.1"
thirdparty-plumber = { module = "com.squareup.leakcanary:plumber-android-startup", version.ref = "leakcanary" } thirdparty-plumber = { module = "com.squareup.leakcanary:plumber-android-startup", version.ref = "leakcanary" }
thirdparty-slack-lints = "com.slack.lint:slack-lint-checks:0.3.0"
# TODO: Remove the explicit bcpkix dependency when upgrading this to a BC 1.71 compatible version # TODO: Remove the explicit bcpkix dependency when upgrading this to a BC 1.71 compatible version
thirdparty-sshj = "com.hierynomus:sshj:0.35.0" thirdparty-sshj = "com.hierynomus:sshj:0.35.0"
thirdparty-uri = "com.eygraber:uri-kmp:0.0.11" thirdparty-uri = "com.eygraber:uri-kmp:0.0.11"