refactor(build-logic): simplify plugin setup

This commit is contained in:
Harsh Shandilya 2022-12-20 16:01:18 +05:30
parent 7cc81047d4
commit 36ab72226c
No known key found for this signature in database
9 changed files with 17 additions and 28 deletions

View file

@ -7,8 +7,7 @@
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
plugins {
kotlin("android")
id("dev.msfjarvis.claw.kotlin-common")
id("dev.msfjarvis.claw.kotlin-android")
id("dev.msfjarvis.claw.android-library")
alias(libs.plugins.anvil)
alias(libs.plugins.whetstone)

View file

@ -47,14 +47,14 @@ gradlePlugin {
id = "dev.msfjarvis.claw.kotlin-common"
implementationClass = "dev.msfjarvis.claw.gradle.KotlinCommonPlugin"
}
register("kotlin-jvm") {
id = "dev.msfjarvis.claw.kotlin-jvm"
implementationClass = "dev.msfjarvis.claw.gradle.KotlinJvmPlugin"
}
register("kotlin-kapt") {
id = "dev.msfjarvis.claw.kotlin-kapt"
implementationClass = "dev.msfjarvis.claw.gradle.KotlinKaptPlugin"
}
register("kotlin-library") {
id = "dev.msfjarvis.claw.kotlin-library"
implementationClass = "dev.msfjarvis.claw.gradle.KotlinLibraryPlugin"
}
register("rename-artifacts") {
id = "dev.msfjarvis.claw.rename-artifacts"
implementationClass = "dev.msfjarvis.claw.gradle.RenameArtifactsPlugin"
@ -79,7 +79,6 @@ dependencies {
implementation(libs.build.cachefix)
implementation(libs.build.detekt)
implementation(libs.build.kotlin.gradle)
implementation(libs.build.kotlin.serialization)
implementation(libs.build.semver)
implementation(libs.build.spotless)
implementation(libs.build.vcu)

View file

@ -8,12 +8,12 @@ package dev.msfjarvis.claw.gradle
import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.kotlin.dsl.apply
import org.jetbrains.kotlin.gradle.plugin.KotlinPluginWrapper
@Suppress("Unused")
class KotlinLibraryPlugin : Plugin<Project> {
class KotlinJvmPlugin : Plugin<Project> {
override fun apply(project: Project) {
project.pluginManager.apply(KotlinCommonPlugin::class)
project.pluginManager.apply(KotlinPluginWrapper::class.java)
project.pluginManager.apply(KotlinCommonPlugin::class.java)
}
}

View file

@ -7,8 +7,7 @@
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
plugins {
kotlin("android")
id("dev.msfjarvis.claw.kotlin-common")
id("dev.msfjarvis.claw.kotlin-android")
id("dev.msfjarvis.claw.android-library")
alias(libs.plugins.anvil)
alias(libs.plugins.whetstone)

View file

@ -4,10 +4,7 @@
* license that can be found in the LICENSE file or at
* https://opensource.org/licenses/MIT.
*/
plugins {
kotlin("jvm")
id("dev.msfjarvis.claw.kotlin-library")
}
plugins { id("dev.msfjarvis.claw.kotlin-jvm") }
dependencies {
api(libs.kotlinx.coroutines.core)

View file

@ -7,11 +7,10 @@
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
plugins {
kotlin("android")
alias(libs.plugins.sqldelight)
id("dev.msfjarvis.claw.kotlin-common")
id("dev.msfjarvis.claw.kotlin-android")
id("dev.msfjarvis.claw.android-library")
alias(libs.plugins.anvil)
alias(libs.plugins.sqldelight)
alias(libs.plugins.whetstone)
}

View file

@ -51,7 +51,6 @@ 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.6.0"
build-detekt = "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.22.0"
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-semver = "com.vdurmont:semver4j:3.1.0"
build-spotless = "com.diffplug.spotless:spotless-plugin-gradle:6.12.0"
build-vcu = "nl.littlerobots.version-catalog-update:nl.littlerobots.version-catalog-update.gradle.plugin:0.7.0"
@ -89,5 +88,6 @@ whetstone = { module = "com.deliveryhero.whetstone:whetstone", version.ref = "wh
[plugins]
android-test = { id = "com.android.test", version.ref = "agp" }
anvil = "com.squareup.anvil:2.4.3"
kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
sqldelight = { id = "app.cash.sqldelight", version.ref = "sqldelight" }
whetstone = { id = "dev.msfjarvis.whetstone", version.ref = "whetstone" }

View file

@ -6,10 +6,7 @@
*/
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
plugins {
kotlin("jvm")
id("dev.msfjarvis.claw.kotlin-library")
}
plugins { id("dev.msfjarvis.claw.kotlin-jvm") }
dependencies {
api(libs.crux)

View file

@ -7,9 +7,8 @@
@file:Suppress("DSL_SCOPE_VIOLATION", "UnstableApiUsage")
plugins {
kotlin("jvm")
kotlin("plugin.serialization")
id("dev.msfjarvis.claw.kotlin-common")
id("dev.msfjarvis.claw.kotlin-jvm")
alias(libs.plugins.kotlin.serialization)
}
dependencies { implementation(libs.kotlinx.serialization.core) }