mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-14 08:17:04 +05:30
feat(build): add Detekt
This commit is contained in:
parent
5ab0774689
commit
f0cff549b4
3 changed files with 21 additions and 1 deletions
|
@ -51,6 +51,7 @@ gradlePlugin {
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation(libs.build.agp)
|
implementation(libs.build.agp)
|
||||||
|
implementation(libs.build.detekt)
|
||||||
implementation(libs.build.kotlin.gradle)
|
implementation(libs.build.kotlin.gradle)
|
||||||
implementation(libs.build.kotlin.serialization)
|
implementation(libs.build.kotlin.serialization)
|
||||||
implementation(libs.build.spotless)
|
implementation(libs.build.spotless)
|
||||||
|
|
|
@ -5,20 +5,38 @@
|
||||||
|
|
||||||
package dev.msfjarvis.aps.gradle
|
package dev.msfjarvis.aps.gradle
|
||||||
|
|
||||||
|
import io.gitlab.arturbosch.detekt.DetektPlugin
|
||||||
|
import io.gitlab.arturbosch.detekt.extensions.DetektExtension
|
||||||
import org.gradle.api.JavaVersion
|
import org.gradle.api.JavaVersion
|
||||||
import org.gradle.api.Plugin
|
import org.gradle.api.Plugin
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
import org.gradle.api.tasks.compile.JavaCompile
|
import org.gradle.api.tasks.compile.JavaCompile
|
||||||
import org.gradle.api.tasks.testing.Test
|
import org.gradle.api.tasks.testing.Test
|
||||||
import org.gradle.api.tasks.testing.logging.TestLogEvent
|
import org.gradle.api.tasks.testing.logging.TestLogEvent
|
||||||
|
import org.gradle.kotlin.dsl.configure
|
||||||
import org.gradle.kotlin.dsl.withType
|
import org.gradle.kotlin.dsl.withType
|
||||||
|
import org.gradle.language.base.plugins.LifecycleBasePlugin
|
||||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||||
|
|
||||||
@Suppress("Unused")
|
@Suppress("Unused")
|
||||||
class KotlinCommonPlugin : Plugin<Project> {
|
class KotlinCommonPlugin : Plugin<Project> {
|
||||||
|
|
||||||
override fun apply(project: Project) {
|
override fun apply(project: Project) {
|
||||||
|
project.pluginManager.apply(DetektPlugin::class.java)
|
||||||
|
project.extensions.configure<DetektExtension> {
|
||||||
|
parallel = true
|
||||||
|
ignoredBuildTypes = listOf("benchmark", "release")
|
||||||
|
basePath = project.layout.projectDirectory.toString()
|
||||||
|
baseline =
|
||||||
|
project.rootProject.layout.projectDirectory
|
||||||
|
.dir("detekt-baselines")
|
||||||
|
.file("${project.name}.xml")
|
||||||
|
.asFile
|
||||||
|
}
|
||||||
project.tasks.run {
|
project.tasks.run {
|
||||||
|
project.pluginManager.withPlugin("base") {
|
||||||
|
named(LifecycleBasePlugin.CHECK_TASK_NAME).configure { this.dependsOn(named("detekt")) }
|
||||||
|
}
|
||||||
withType<JavaCompile>().configureEach {
|
withType<JavaCompile>().configureEach {
|
||||||
sourceCompatibility = JavaVersion.VERSION_11.toString()
|
sourceCompatibility = JavaVersion.VERSION_11.toString()
|
||||||
targetCompatibility = JavaVersion.VERSION_11.toString()
|
targetCompatibility = JavaVersion.VERSION_11.toString()
|
||||||
|
|
|
@ -49,6 +49,7 @@ androidx-test-uiautomator = "androidx.test.uiautomator:uiautomator:2.3.0-alpha01
|
||||||
androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "workmanager" }
|
androidx-work-runtime-ktx = { module = "androidx.work:work-runtime-ktx", version.ref = "workmanager" }
|
||||||
build-agp = { module = "com.android.tools.build:gradle", version.ref = "agp" }
|
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.5.7"
|
build-cachefix = "org.gradle.android.cache-fix:org.gradle.android.cache-fix.gradle.plugin:2.5.7"
|
||||||
|
build-detekt = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.21.0"
|
||||||
build-kotlin-gradle = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
build-kotlin-gradle = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
|
||||||
build-kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" }
|
build-kotlin-serialization = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" }
|
||||||
build-semver = "com.vdurmont:semver4j:3.1.0"
|
build-semver = "com.vdurmont:semver4j:3.1.0"
|
||||||
|
@ -87,5 +88,5 @@ testparameterinjector = "com.google.testparameterinjector:test-parameter-injecto
|
||||||
[plugins]
|
[plugins]
|
||||||
android-test = { id = "com.android.test", version.ref = "agp" }
|
android-test = { id = "com.android.test", version.ref = "agp" }
|
||||||
hilt = { id = "com.google.dagger.hilt.android", version.ref = "dagger" }
|
hilt = { id = "com.google.dagger.hilt.android", version.ref = "dagger" }
|
||||||
sqldelight = { id = "app.cash.sqldelight", version.ref = "sqldelight" }
|
|
||||||
napt = { id = "com.sergei-lapin.napt", version = "1.17" }
|
napt = { id = "com.sergei-lapin.napt", version = "1.17" }
|
||||||
|
sqldelight = { id = "app.cash.sqldelight", version.ref = "sqldelight" }
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue