diff --git a/.gitignore b/.gitignore index 4406bafa4..142389e13 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,6 @@ .cxx /.idea/* /scripts/publish/_credentials.properties +/scripts/publish/_newCreds.properties +*.gpg +/buildSrc/build diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 7f38e0631..000000000 --- a/build.gradle +++ /dev/null @@ -1,51 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. -plugins { - alias(libs.plugins.dokka) - alias(libs.plugins.android.library) apply false - alias(libs.plugins.android.application) apply false - alias(libs.plugins.kotlin.android) apply false - alias(libs.plugins.kotlin.parcelize) apply false - alias(libs.plugins.ksp) apply false - alias(libs.plugins.detekt) apply false - alias(libs.plugins.ktlint) apply false -} - -allprojects { - repositories { - google() - mavenCentral() - // for testing Pluto staged repository - maven { url "https://s01.oss.sonatype.org/content/groups/staging/" } - } -} - -subprojects { -// if (project.name != "pluto-no-op") { - pluginManager.withPlugin('kotlin-android') { - apply from: "$rootDir/scripts/static-analysis/code-analysis.gradle" - } -// } -} - -task installGitHook(type: Copy) { - from new File(rootProject.rootDir, 'pre-commit') - into { new File(rootProject.rootDir, '.git/hooks') } - fileMode 0777 -} - -task clean(type: Delete) { - dependsOn(installGitHook) - delete rootProject.buildDir -} - -tasks.withType(io.gitlab.arturbosch.detekt.Detekt).configureEach { - exclude(".*/resources/.*,.*/build/.*") -} - -task prCheck { - dependsOn ':sample:assembleDebug' - dependsOn ':pluto:validateChanges' -} - -apply from: "$rootDir/scripts/project-dependancy-graph.gradle" -apply from: "$rootDir/maven-versions.gradle" \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 000000000..e92a24302 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,55 @@ +import org.gradle.api.tasks.Copy +import org.gradle.api.tasks.Delete +import io.gitlab.arturbosch.detekt.Detekt + +// Top-level build file where you can add configuration options common to all sub-projects/modules. +plugins { + alias(libs.plugins.dokka) + alias(libs.plugins.android.library) apply false + alias(libs.plugins.android.application) apply false + alias(libs.plugins.kotlin.android) apply false + alias(libs.plugins.kotlin.parcelize) apply false + alias(libs.plugins.ksp) apply false + alias(libs.plugins.detekt) apply false + alias(libs.plugins.ktlint) apply false +} + +allprojects { + repositories { + google() + mavenCentral() + // for testing Pluto staged repository + maven("https://s01.oss.sonatype.org/content/groups/staging/") + } +} + +subprojects { +// if (project.name != "pluto-no-op") { + pluginManager.withPlugin("kotlin-android") { + apply (from = "$rootDir/scripts/static-analysis/code-analysis.gradle") + } +// } +} + +val installGitHook by tasks.registering(Copy::class) { + from(File(rootProject.rootDir, "pre-commit")) + into(File(rootProject.rootDir, ".git/hooks")) + fileMode = "0777".toInt(8) +} + +val clean by tasks.registering(Delete::class) { + dependsOn(installGitHook) + delete(rootProject.buildDir) +} + +tasks.withType().configureEach { + exclude(".*/resources/.*,.*/build/.*") +} + +val prCheck by tasks.registering { + dependsOn(":sample:assembleDebug") + dependsOn(":pluto:validateChanges") +} + +apply (from = "$rootDir/scripts/project-dependancy-graph.gradle") +apply (from = "$rootDir/maven-versions.gradle.kts") \ No newline at end of file diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts new file mode 100644 index 000000000..b22ed732f --- /dev/null +++ b/buildSrc/build.gradle.kts @@ -0,0 +1,7 @@ +plugins { + `kotlin-dsl` +} + +repositories { + mavenCentral() +} \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Versioning.kt b/buildSrc/src/main/kotlin/Versioning.kt new file mode 100644 index 000000000..b62113ba3 --- /dev/null +++ b/buildSrc/src/main/kotlin/Versioning.kt @@ -0,0 +1,40 @@ +import java.io.File +import java.util.Properties + +object Versioning { + fun loadVersioningData(): Map { + val version = mutableMapOf() + + val versionProps = Properties().apply { + load(File("${System.getProperty("user.dir")}/version.properties").inputStream()) + } + + val versionMajor = versionProps["major"]?.toString()?.toInt() ?: 0 + val versionMinor = versionProps["minor"]?.toString()?.toInt() ?: 0 + val versionPatch = versionProps["patch"]?.toString()?.toInt() ?: 0 + val versionBuild = versionProps["build"]?.toString()?.toInt() ?: 0 + val versionChannel = versionProps["channel"]?.toString() ?: "release" + + version["code"] = (versionMajor * 1_000_000) + (versionMinor * 10_000) + (versionPatch * 100) + versionBuild + version["name"] = "$versionMajor.$versionMinor.$versionPatch-rc$versionBuild" + + var publishVersion = "$versionMajor.$versionMinor.$versionPatch" + if (versionChannel != "release") { + publishVersion = "$publishVersion-$versionChannel$versionBuild" + } + version["publish"] = publishVersion + + val gitSha = "git rev-parse --short=10 HEAD".runCommand()?.trim() ?: "" + version["gitSha"] = gitSha + + return version + } + + private fun String.runCommand(): String? { + return try { + ProcessBuilder("/bin/sh", "-c", this).start().inputStream.bufferedReader().readText() + } catch (e: Exception) { + null + } + } +} diff --git a/maven-versions.gradle b/maven-versions.gradle deleted file mode 100644 index f1e9539c1..000000000 --- a/maven-versions.gradle +++ /dev/null @@ -1,3 +0,0 @@ -ext { - plutoVersion = '2.0.5' -} \ No newline at end of file diff --git a/maven-versions.gradle.kts b/maven-versions.gradle.kts new file mode 100644 index 000000000..e4317b9b7 --- /dev/null +++ b/maven-versions.gradle.kts @@ -0,0 +1 @@ +extra["plutoVersion"] = "2.0.5" \ No newline at end of file diff --git a/pluto-plugins/base/lib/build.gradle b/pluto-plugins/base/lib/build.gradle deleted file mode 100644 index f75c56dc5..000000000 --- a/pluto-plugins/base/lib/build.gradle +++ /dev/null @@ -1,31 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib" - PUBLISH_ARTIFACT_ID = 'plugin' -} - -android { - resourcePrefix 'pluto___' - namespace 'com.pluto.plugin' -} - -dependencies { - implementation(libs.androidx.core) - implementation(libs.androidx.appcompat) - - api(libs.androidx.constraintlayout) - api(libs.androidx.navigation.fragment) - api(libs.androidx.recyclerview) - - api(libs.google.material) - - api(libs.androidx.cardview) - - api(libs.androidx.lifecycle.common) - api(libs.androidx.lifecycle.runtime) -} \ No newline at end of file diff --git a/pluto-plugins/base/lib/build.gradle.kts b/pluto-plugins/base/lib/build.gradle.kts new file mode 100644 index 000000000..faee1f0b2 --- /dev/null +++ b/pluto-plugins/base/lib/build.gradle.kts @@ -0,0 +1,71 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib" +extra["PUBLISH_ARTIFACT_ID"] = "plugin" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugin" + resourcePrefix = "pluto___" + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) + implementation(libs.androidx.appcompat) + + api(libs.androidx.constraintlayout) + api(libs.androidx.navigation.fragment) + api(libs.androidx.recyclerview) + + api(libs.google.material) + + api(libs.androidx.cardview) + + api(libs.androidx.lifecycle.common) + api(libs.androidx.lifecycle.runtime) +} diff --git a/pluto-plugins/bundle/lib-no-op/build.gradle b/pluto-plugins/bundle/lib-no-op/build.gradle deleted file mode 100644 index 7532bace8..000000000 --- a/pluto-plugins/bundle/lib-no-op/build.gradle +++ /dev/null @@ -1,26 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'bundle-core-no-op' -} - -android { - namespace 'com.pluto.plugins.bundle.core' -} - -dependencies { - api project(path: ':pluto-plugins:plugins:exceptions:lib-no-op') - api project(path: ':pluto-plugins:plugins:network:core:lib-no-op') - api project(path: ':pluto-plugins:plugins:network:interceptor-okhttp:lib-no-op') - api project(path: ':pluto-plugins:plugins:network:interceptor-ktor:lib-no-op') - api project(path: ':pluto-plugins:plugins:shared-preferences:lib-no-op') - api project(path: ':pluto-plugins:plugins:logger:lib-no-op') - api project(path: ':pluto-plugins:plugins:datastore:lib-no-op') - api project(path: ':pluto-plugins:plugins:rooms-database:lib-no-op') - api project(path: ':pluto-plugins:plugins:layout-inspector:lib-no-op') -} \ No newline at end of file diff --git a/pluto-plugins/bundle/lib-no-op/build.gradle.kts b/pluto-plugins/bundle/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..e84c910b5 --- /dev/null +++ b/pluto-plugins/bundle/lib-no-op/build.gradle.kts @@ -0,0 +1,62 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "bundle-core-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.bundle.core" + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + api(project(":pluto-plugins:plugins:exceptions:lib-no-op")) + api(project(":pluto-plugins:plugins:network:core:lib-no-op")) + api(project(":pluto-plugins:plugins:network:interceptor-ktor:lib-no-op")) + api(project(":pluto-plugins:plugins:network:interceptor-okhttp:lib-no-op")) + api(project(":pluto-plugins:plugins:shared-preferences:lib-no-op")) + api(project(":pluto-plugins:plugins:logger:lib-no-op")) + api(project(":pluto-plugins:plugins:datastore:lib-no-op")) + api(project(":pluto-plugins:plugins:rooms-database:lib-no-op")) + api(project(":pluto-plugins:plugins:layout-inspector:lib-no-op")) +} diff --git a/pluto-plugins/bundle/lib/build.gradle b/pluto-plugins/bundle/lib/build.gradle deleted file mode 100644 index 2f56e0698..000000000 --- a/pluto-plugins/bundle/lib/build.gradle +++ /dev/null @@ -1,26 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'bundle-core' -} - -android { - namespace 'com.pluto.plugins.bundle.core' -} - -dependencies { - api project(path: ':pluto-plugins:plugins:exceptions:lib') - api project(path: ':pluto-plugins:plugins:network:core:lib') - api project(path: ':pluto-plugins:plugins:network:interceptor-ktor:lib') - api project(path: ':pluto-plugins:plugins:network:interceptor-okhttp:lib') - api project(path: ':pluto-plugins:plugins:shared-preferences:lib') - api project(path: ':pluto-plugins:plugins:logger:lib') - api project(path: ':pluto-plugins:plugins:datastore:lib') - api project(path: ':pluto-plugins:plugins:rooms-database:lib') - api project(path: ':pluto-plugins:plugins:layout-inspector:lib') -} \ No newline at end of file diff --git a/pluto-plugins/bundle/lib/build.gradle.kts b/pluto-plugins/bundle/lib/build.gradle.kts new file mode 100644 index 000000000..402483e22 --- /dev/null +++ b/pluto-plugins/bundle/lib/build.gradle.kts @@ -0,0 +1,62 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "bundle-core" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.bundle.core" + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + api(project(":pluto-plugins:plugins:exceptions:lib")) + api(project(":pluto-plugins:plugins:network:core:lib")) + api(project(":pluto-plugins:plugins:network:interceptor-ktor:lib")) + api(project(":pluto-plugins:plugins:network:interceptor-okhttp:lib")) + api(project(":pluto-plugins:plugins:shared-preferences:lib")) + api(project(":pluto-plugins:plugins:logger:lib")) + api(project(":pluto-plugins:plugins:datastore:lib")) + api(project(":pluto-plugins:plugins:rooms-database:lib")) + api(project(":pluto-plugins:plugins:layout-inspector:lib")) +} diff --git a/pluto-plugins/plugins/datastore/lib-no-op/build.gradle b/pluto-plugins/plugins/datastore/lib-no-op/build.gradle deleted file mode 100644 index 6a5e6323a..000000000 --- a/pluto-plugins/plugins/datastore/lib-no-op/build.gradle +++ /dev/null @@ -1,19 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'datastore-pref-no-op' -} - -android { - namespace 'com.pluto.plugins.datastore.pref' -} - -dependencies { - implementation(libs.androidx.core) - implementation(libs.datastore.preferences) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/datastore/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/datastore/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..e4f7c691c --- /dev/null +++ b/pluto-plugins/plugins/datastore/lib-no-op/build.gradle.kts @@ -0,0 +1,55 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.datastore.pref" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) + implementation(libs.datastore.preferences) +} diff --git a/pluto-plugins/plugins/datastore/lib/build.gradle b/pluto-plugins/plugins/datastore/lib/build.gradle deleted file mode 100644 index 00e3e4158..000000000 --- a/pluto-plugins/plugins/datastore/lib/build.gradle +++ /dev/null @@ -1,37 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'datastore-pref' -} - -android { - buildFeatures { - compose true - } - - composeOptions { - kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() - } - - resourcePrefix 'pluto_dts___' - namespace 'com.pluto.plugins.datastore.pref' -} - -dependencies { - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) - implementation(libs.compose.material3) - implementation(libs.compose.foundation) - implementation(libs.compose.runtime) - implementation(libs.compose.ui) - implementation(libs.compose.ui.tooling) - implementation(libs.compose.ui.tooling.preview) - implementation(libs.constraintlayout.compose) - - implementation(libs.datastore.preferences) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/datastore/lib/build.gradle.kts b/pluto-plugins/plugins/datastore/lib/build.gradle.kts new file mode 100644 index 000000000..bdbe9d835 --- /dev/null +++ b/pluto-plugins/plugins/datastore/lib/build.gradle.kts @@ -0,0 +1,76 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "datastore-pref" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.datastore.pref" + resourcePrefix = "pluto_dts___" + + composeOptions { + kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get() + } + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + compose = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:base:lib")) + + implementation(libs.androidx.core) + implementation(libs.compose.material3) + implementation(libs.compose.foundation) + implementation(libs.compose.runtime) + implementation(libs.compose.ui) + implementation(libs.compose.ui.tooling) + implementation(libs.compose.ui.tooling.preview) + implementation(libs.constraintlayout.compose) + + implementation(libs.datastore.preferences) +} diff --git a/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle b/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle deleted file mode 100644 index d221df296..000000000 --- a/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'exceptions-no-op' -} - -android { - namespace 'com.pluto.plugins.exceptions' -} - -dependencies { - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..3aff03962 --- /dev/null +++ b/pluto-plugins/plugins/exceptions/lib-no-op/build.gradle.kts @@ -0,0 +1,54 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "exceptions-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.exceptions" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) +} diff --git a/pluto-plugins/plugins/exceptions/lib/build.gradle b/pluto-plugins/plugins/exceptions/lib/build.gradle deleted file mode 100644 index 794d499eb..000000000 --- a/pluto-plugins/plugins/exceptions/lib/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'exceptions' -} - -android { - resourcePrefix 'pluto_excep___' - namespace 'com.pluto.plugins.exceptions' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) - - implementation(libs.moshi) - ksp(libs.moshi.codegen) - - implementation(libs.room) - ksp(libs.room.compiler) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/exceptions/lib/build.gradle.kts b/pluto-plugins/plugins/exceptions/lib/build.gradle.kts new file mode 100644 index 000000000..92e027e78 --- /dev/null +++ b/pluto-plugins/plugins/exceptions/lib/build.gradle.kts @@ -0,0 +1,70 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.parcelize) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "exceptions" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.exceptions" + resourcePrefix = "pluto_excep___" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:base:lib")) + + implementation(libs.androidx.core) + + implementation(libs.moshi) + ksp(libs.moshi.codegen) + + implementation(libs.room) + ksp(libs.room.compiler) +} diff --git a/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle b/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle deleted file mode 100644 index 7c5241d97..000000000 --- a/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'layout-inspector-no-op' -} - -android { - namespace 'com.pluto.plugins.layoutinspector' -} - -dependencies { - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..d4b875627 --- /dev/null +++ b/pluto-plugins/plugins/layout-inspector/lib-no-op/build.gradle.kts @@ -0,0 +1,54 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "layout-inspector-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.layoutinspector" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) +} diff --git a/pluto-plugins/plugins/layout-inspector/lib/build.gradle b/pluto-plugins/plugins/layout-inspector/lib/build.gradle deleted file mode 100644 index c6ea9f6ee..000000000 --- a/pluto-plugins/plugins/layout-inspector/lib/build.gradle +++ /dev/null @@ -1,21 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'layout-inspector' -} - -android { - resourcePrefix 'pluto_li___' - namespace 'com.pluto.plugins.layoutinspector' -} - -dependencies { - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/layout-inspector/lib/build.gradle.kts b/pluto-plugins/plugins/layout-inspector/lib/build.gradle.kts new file mode 100644 index 000000000..bb7783f17 --- /dev/null +++ b/pluto-plugins/plugins/layout-inspector/lib/build.gradle.kts @@ -0,0 +1,62 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "layout-inspector" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.layoutinspector" + resourcePrefix = "pluto_li___" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:base:lib")) + + implementation(libs.androidx.core) +} diff --git a/pluto-plugins/plugins/logger/lib-no-op/build.gradle b/pluto-plugins/plugins/logger/lib-no-op/build.gradle deleted file mode 100644 index 8b27d64aa..000000000 --- a/pluto-plugins/plugins/logger/lib-no-op/build.gradle +++ /dev/null @@ -1,19 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'logger-no-op' -} - -android { - namespace 'com.pluto.plugins.logger' -} - -dependencies { - implementation(libs.androidx.core) - api 'com.jakewharton.timber:timber:5.0.1' -} \ No newline at end of file diff --git a/pluto-plugins/plugins/logger/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/logger/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..0d4f6b669 --- /dev/null +++ b/pluto-plugins/plugins/logger/lib-no-op/build.gradle.kts @@ -0,0 +1,55 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "logger-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.logger" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) + api(libs.timber) +} diff --git a/pluto-plugins/plugins/logger/lib/build.gradle b/pluto-plugins/plugins/logger/lib/build.gradle deleted file mode 100644 index 6cf576a34..000000000 --- a/pluto-plugins/plugins/logger/lib/build.gradle +++ /dev/null @@ -1,34 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'logger' -} - -android { - resourcePrefix 'pluto_logger___' - namespace 'com.pluto.plugins.logger' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.navigation.ui) - api(libs.timber) - implementation(libs.moshi) - ksp(libs.moshi.codegen) - - implementation(libs.room) - ksp(libs.room.compiler) -} - -task validateChanges { - dependsOn 'ktlintFormat' - dependsOn 'detekt' -} \ No newline at end of file diff --git a/pluto-plugins/plugins/logger/lib/build.gradle.kts b/pluto-plugins/plugins/logger/lib/build.gradle.kts new file mode 100644 index 000000000..be63dbee4 --- /dev/null +++ b/pluto-plugins/plugins/logger/lib/build.gradle.kts @@ -0,0 +1,69 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.parcelize) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "logger" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_logger___" + namespace = "com.pluto.plugins.logger" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:base:lib")) + implementation(libs.androidx.navigation.ui) + api(libs.timber) + implementation(libs.moshi) + ksp(libs.moshi.codegen) + + implementation(libs.room) + ksp(libs.room.compiler) +} diff --git a/pluto-plugins/plugins/network/core/lib-no-op/build.gradle b/pluto-plugins/plugins/network/core/lib-no-op/build.gradle deleted file mode 100644 index 753a183e7..000000000 --- a/pluto-plugins/plugins/network/core/lib-no-op/build.gradle +++ /dev/null @@ -1,17 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'network-no-op' -} - -android { - namespace 'com.pluto.plugins.network' -} - -dependencies { -} \ No newline at end of file diff --git a/pluto-plugins/plugins/network/core/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/network/core/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..65bf966fe --- /dev/null +++ b/pluto-plugins/plugins/network/core/lib-no-op/build.gradle.kts @@ -0,0 +1,53 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.network" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { +} diff --git a/pluto-plugins/plugins/network/core/lib/build.gradle b/pluto-plugins/plugins/network/core/lib/build.gradle deleted file mode 100644 index 6177851b0..000000000 --- a/pluto-plugins/plugins/network/core/lib/build.gradle +++ /dev/null @@ -1,35 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'network' -} - -android { - resourcePrefix 'pluto_network___' - namespace 'com.pluto.plugins.network' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) - - implementation(libs.okio) - implementation(libs.ktor.client.core.jvm) - - implementation(libs.room) - ksp(libs.room.compiler) - - implementation(libs.moshi) - ksp(libs.moshi.codegen) - - implementation(libs.androidx.browser) - testImplementation(libs.junit) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/network/core/lib/build.gradle.kts b/pluto-plugins/plugins/network/core/lib/build.gradle.kts new file mode 100644 index 000000000..38e275401 --- /dev/null +++ b/pluto-plugins/plugins/network/core/lib/build.gradle.kts @@ -0,0 +1,76 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.parcelize) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_network___" + namespace = "com.pluto.plugins.network" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { +// implementation 'com.plutolib:plugin:2.0.0' + implementation(project(":pluto-plugins:base:lib")) + implementation(libs.androidx.core) + + implementation(libs.okio) + implementation(libs.ktor.client.core.jvm) + + implementation(libs.room) + ksp(libs.room.compiler) + + implementation(libs.moshi) + ksp(libs.moshi.codegen) + + implementation(libs.androidx.browser) + testImplementation(libs.junit) +} diff --git a/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle b/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle deleted file mode 100644 index 06547b673..000000000 --- a/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle +++ /dev/null @@ -1,19 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'network-interceptor-ktor-no-op' -} - -android { - namespace 'com.pluto.plugins.network.ktor' -} - -dependencies { - implementation(libs.ktor.client.core.jvm) - -} \ No newline at end of file diff --git a/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..a21e7c33d --- /dev/null +++ b/pluto-plugins/plugins/network/interceptor-ktor/lib-no-op/build.gradle.kts @@ -0,0 +1,54 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network-interceptor-ktor-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.network.ktor" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.ktor.client.core.jvm) +} diff --git a/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle b/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle deleted file mode 100644 index 21b36648e..000000000 --- a/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle +++ /dev/null @@ -1,25 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = "network-interceptor-ktor" -} - -android { - resourcePrefix 'pluto_network___' - namespace 'com.pluto.plugins.network.ktor' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' -// implementation project(':pluto-plugins:base:lib') - implementation project(':pluto-plugins:plugins:network:core:lib') - - implementation(libs.ktor.client.core.jvm) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle.kts b/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle.kts new file mode 100644 index 000000000..6a3c7dda2 --- /dev/null +++ b/pluto-plugins/plugins/network/interceptor-ktor/lib/build.gradle.kts @@ -0,0 +1,64 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.parcelize) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network-interceptor-ktor" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_network___" + namespace = "com.pluto.plugins.network.ktor" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:plugins:network:core:lib")) + + implementation(libs.ktor.client.core.jvm) +} diff --git a/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle b/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle deleted file mode 100644 index 5648eec72..000000000 --- a/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle +++ /dev/null @@ -1,19 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'network-interceptor-okhttp-no-op' -} - -android { - namespace 'com.pluto.plugins.network.okhttp' -} - -dependencies { - implementation(libs.androidx.core) - implementation(libs.okhttp) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..13ed9dfe4 --- /dev/null +++ b/pluto-plugins/plugins/network/interceptor-okhttp/lib-no-op/build.gradle.kts @@ -0,0 +1,55 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network-interceptor-okhttp-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.network.okhttp" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { +// implementation(libs.androidx.core) + implementation(libs.okhttp) +} diff --git a/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle b/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle deleted file mode 100644 index 1f9aad5ac..000000000 --- a/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle +++ /dev/null @@ -1,25 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = "network-interceptor-okhttp" -} - -android { - resourcePrefix 'pluto_network___' - namespace 'com.pluto.plugins.network.okhttp' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(':pluto-plugins:base:lib') - implementation project(':pluto-plugins:plugins:network:core:lib') - - implementation(libs.okhttp) -} diff --git a/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle.kts b/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle.kts new file mode 100644 index 000000000..fbac6bfbf --- /dev/null +++ b/pluto-plugins/plugins/network/interceptor-okhttp/lib/build.gradle.kts @@ -0,0 +1,64 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "network-interceptor-okhttp" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_network___" + namespace = "com.pluto.plugins.network.okhttp" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { +// implementation 'com.plutolib:plugin:2.0.0' + implementation(project(":pluto-plugins:base:lib")) + implementation(project(":pluto-plugins:plugins:network:core:lib")) + + implementation(libs.okhttp) +} diff --git a/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle b/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle deleted file mode 100644 index 34e5bc452..000000000 --- a/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'rooms-db-no-op' -} - -android { - namespace 'com.pluto.plugins.rooms.db' -} - -dependencies { - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..da58617ba --- /dev/null +++ b/pluto-plugins/plugins/rooms-database/lib-no-op/build.gradle.kts @@ -0,0 +1,54 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "rooms-db-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.rooms.db" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) +} diff --git a/pluto-plugins/plugins/rooms-database/lib/build.gradle b/pluto-plugins/plugins/rooms-database/lib/build.gradle deleted file mode 100644 index cfe9023d3..000000000 --- a/pluto-plugins/plugins/rooms-database/lib/build.gradle +++ /dev/null @@ -1,27 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.kotlin.parcelize) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'rooms-db' -} - -android { - resourcePrefix 'pluto_rooms___' - namespace 'com.pluto.plugins.rooms.db' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) - implementation(libs.androidx.swiperefreshlayout) - - implementation(libs.room) - ksp(libs.room.compiler) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/rooms-database/lib/build.gradle.kts b/pluto-plugins/plugins/rooms-database/lib/build.gradle.kts new file mode 100644 index 000000000..65ec78605 --- /dev/null +++ b/pluto-plugins/plugins/rooms-database/lib/build.gradle.kts @@ -0,0 +1,68 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.kotlin.parcelize) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "rooms-db" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_rooms___" + namespace = "com.pluto.plugins.rooms.db" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(project(":pluto-plugins:base:lib")) + + implementation(libs.androidx.core) + implementation(libs.androidx.swiperefreshlayout) + + implementation(libs.room) + ksp(libs.room.compiler) +} diff --git a/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle b/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle deleted file mode 100644 index dcef3dcba..000000000 --- a/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'preferences-no-op' -} - -android { - namespace 'com.pluto.plugins.preferences' -} - -dependencies { - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle.kts b/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..b4b596473 --- /dev/null +++ b/pluto-plugins/plugins/shared-preferences/lib-no-op/build.gradle.kts @@ -0,0 +1,54 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "preferences-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto.plugins.preferences" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) +} diff --git a/pluto-plugins/plugins/shared-preferences/lib/build.gradle b/pluto-plugins/plugins/shared-preferences/lib/build.gradle deleted file mode 100644 index 1cb10acd8..000000000 --- a/pluto-plugins/plugins/shared-preferences/lib/build.gradle +++ /dev/null @@ -1,34 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib.plugins" - PUBLISH_ARTIFACT_ID = 'preferences' -} - -android { - resourcePrefix 'pluto_pref___' - namespace 'com.pluto.plugins.preferences' -} - -dependencies { -// implementation 'com.plutolib:plugin:2.0.0' - implementation project(path: ':pluto-plugins:base:lib') - implementation(libs.androidx.core) - implementation(libs.androidx.navigation.ui) - implementation(libs.google.material) - implementation(libs.androidx.navigation.fragment) - implementation(libs.androidx.preference) - - implementation(libs.moshi) - ksp(libs.moshi.codegen) -} - -task validateChanges { - dependsOn 'ktlintFormat' - dependsOn 'detekt' -} \ No newline at end of file diff --git a/pluto-plugins/plugins/shared-preferences/lib/build.gradle.kts b/pluto-plugins/plugins/shared-preferences/lib/build.gradle.kts new file mode 100644 index 000000000..c83b54e45 --- /dev/null +++ b/pluto-plugins/plugins/shared-preferences/lib/build.gradle.kts @@ -0,0 +1,70 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib.plugins" +extra["PUBLISH_ARTIFACT_ID"] = "preferences" +extra["PUBLISH_VERSION"] = verPublish + +android { + resourcePrefix = "pluto_pref___" + namespace = "com.pluto.plugins.preferences" + + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { +// implementation 'com.plutolib:plugin:2.0.0' + implementation(project(":pluto-plugins:base:lib")) + implementation(libs.androidx.core) + implementation(libs.androidx.navigation.ui) + implementation(libs.google.material) + implementation(libs.androidx.navigation.fragment) + implementation(libs.androidx.preference) + + implementation(libs.moshi) + ksp(libs.moshi.codegen) +} diff --git a/pluto/lib-no-op/build.gradle b/pluto/lib-no-op/build.gradle deleted file mode 100644 index 502a5f2cc..000000000 --- a/pluto/lib-no-op/build.gradle +++ /dev/null @@ -1,18 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib" - PUBLISH_ARTIFACT_ID = 'pluto-no-op' -} - -android { - namespace 'com.pluto' -} - -dependencies { - implementation(libs.androidx.core) -} \ No newline at end of file diff --git a/pluto/lib-no-op/build.gradle.kts b/pluto/lib-no-op/build.gradle.kts new file mode 100644 index 000000000..3e2454a61 --- /dev/null +++ b/pluto/lib-no-op/build.gradle.kts @@ -0,0 +1,58 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib" +extra["PUBLISH_ARTIFACT_ID"] = "pluto-no-op" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto" + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + implementation(libs.androidx.core) +} diff --git a/pluto/lib/build.gradle b/pluto/lib/build.gradle deleted file mode 100644 index 02624cb75..000000000 --- a/pluto/lib/build.gradle +++ /dev/null @@ -1,32 +0,0 @@ -plugins { - alias(libs.plugins.android.library) - alias(libs.plugins.kotlin.android) - alias(libs.plugins.ksp) -} -apply from: "$rootDir/scripts/pluginBuilder.gradle" - -ext { - PUBLISH_GROUP_ID = "com.plutolib" - PUBLISH_ARTIFACT_ID = 'pluto' -} - -android { - resourcePrefix 'pluto___' - namespace 'com.pluto' -} - -dependencies { - api project(path: ':pluto-plugins:base:lib') - - implementation(libs.androidx.core) - implementation(libs.androidx.appcompat) - - implementation(libs.retrofit) - implementation(libs.retrofit.converter.moshi) - implementation(libs.okhttp.logging.interceptor) - implementation(libs.okhttp) - implementation(libs.okio) - - implementation(libs.moshi) - ksp(libs.moshi.codegen) -} \ No newline at end of file diff --git a/pluto/lib/build.gradle.kts b/pluto/lib/build.gradle.kts new file mode 100644 index 000000000..840ac9177 --- /dev/null +++ b/pluto/lib/build.gradle.kts @@ -0,0 +1,72 @@ +plugins { + alias(libs.plugins.android.library) + alias(libs.plugins.kotlin.android) + alias(libs.plugins.ksp) +} + +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String +val verGitSHA = version["gitSha"] as String + +extra["PUBLISH_GROUP_ID"] = "com.plutolib" +extra["PUBLISH_ARTIFACT_ID"] = "pluto" +extra["PUBLISH_VERSION"] = verPublish + +android { + namespace = "com.pluto" + resourcePrefix = "pluto___" + compileSdk = libs.versions.compileSdk.get().toInt() + buildToolsVersion = libs.versions.buildTools.get() + + buildFeatures { + buildConfig = true + viewBinding = true + } + + defaultConfig { + minSdk = libs.versions.minSdk.get().toInt() + + buildConfigField("String", "VERSION_NAME", "\"$verPublish\"") + buildConfigField("long", "VERSION_CODE", "$verCode") + buildConfigField("String", "GIT_SHA", "\"$verGitSHA\"") + } + + buildTypes { + getByName("release") { +// isDebuggable = true + isMinifyEnabled = false + isShrinkResources = false + } + } + + compileOptions { + sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) + } + + kotlinOptions { + jvmTarget = libs.versions.java.get() + } + + lint { + abortOnError = false + targetSdk = libs.versions.targetSdk.get().toInt() + } +} + +dependencies { + api(project(":pluto-plugins:base:lib")) + + implementation(libs.androidx.core) + implementation(libs.androidx.appcompat) + + implementation(libs.retrofit) + implementation(libs.retrofit.converter.moshi) + implementation(libs.okhttp.logging.interceptor) + implementation(libs.okhttp) + implementation(libs.okio) + + implementation(libs.moshi) + ksp(libs.moshi.codegen) +} diff --git a/sample/build.gradle b/sample/build.gradle.kts similarity index 51% rename from sample/build.gradle rename to sample/build.gradle.kts index 1ff053f82..882a75353 100644 --- a/sample/build.gradle +++ b/sample/build.gradle.kts @@ -6,62 +6,64 @@ plugins { alias(libs.plugins.kotlin.serialization) } -apply from: "$rootDir/scripts/version.gradle" - -def version = loadVersioningData() -def verCode = version["code"] -def verPublish = version["publish"] +val version = Versioning.loadVersioningData() +val verCode = version["code"] as Int +val verPublish = version["publish"] as String android { - compileSdk = libs.versions.compileSdk.get().toInteger() + compileSdk = libs.versions.compileSdk.get().toInt() buildToolsVersion = libs.versions.buildTools.get() buildFeatures { - viewBinding true - buildConfig true + viewBinding = true + buildConfig = true } defaultConfig { - applicationId "com.sampleapp" - minSdk = libs.versions.minSdk.get().toInteger() - targetSdk = libs.versions.targetSdk.get().toInteger() - versionCode verCode - versionName verPublish + applicationId = "com.sampleapp" + minSdk = libs.versions.minSdk.get().toInt() + targetSdk = libs.versions.targetSdk.get().toInt() + versionCode = verCode + versionName = verPublish - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { /** * build type with lib modules */ - debug { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + getByName("debug") { + isMinifyEnabled = false + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" + ) } - debugMaven { - initWith debug - signingConfig signingConfigs.debug - matchingFallbacks = ['debug'] + create("debugMaven") { + initWith(getByName("debug")) + signingConfig = signingConfigs.getByName("debug") + matchingFallbacks.add("debug") } /** * build type with lib-no-op modules */ - debugNoOp { - initWith debug - signingConfig signingConfigs.debug - matchingFallbacks = ['debug'] + create("debugNoOp") { + initWith(getByName("debug")) + signingConfig = signingConfigs.getByName("debug") + matchingFallbacks.add("debug") } - debugNoOpMaven { - initWith debug - signingConfig signingConfigs.debug - matchingFallbacks = ['debug'] + create("debugNoOpMaven") { + initWith(getByName("debug")) + signingConfig = signingConfigs.getByName("debug") + matchingFallbacks.add("debug") } - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + getByName("release") { + isMinifyEnabled = false + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" + ) } } compileOptions { @@ -72,28 +74,28 @@ android { kotlinOptions { jvmTarget = libs.versions.java.get() } - namespace 'com.sampleapp' + namespace = "com.sampleapp" } dependencies { /* Local Op dependencies */ - debugImplementation project(path: ':pluto:lib') - debugImplementation project(path: ':pluto-plugins:bundle:lib') + "debugImplementation"(project(":pluto:lib")) + "debugImplementation"(project(":pluto-plugins:bundle:lib")) /* Maven Op dependencies */ - debugMavenImplementation "com.plutolib:pluto:$verPublish" - debugMavenImplementation "com.plutolib.plugins:bundle-core:$verPublish" + "debugMavenImplementation"("com.plutolib:pluto:$verPublish") + "debugMavenImplementation"("com.plutolib.plugins:bundle-core:$verPublish") /* Local NoOp dependencies */ - debugNoOpImplementation project(path: ':pluto:lib-no-op') - debugNoOpImplementation project(path: ':pluto-plugins:bundle:lib-no-op') + "debugNoOpImplementation"(project(":pluto:lib-no-op")) + "debugNoOpImplementation"(project(":pluto-plugins:bundle:lib-no-op")) /* Maven NoOp dependencies */ - debugNoOpMavenImplementation "com.plutolib:pluto-no-op:$verPublish" - debugNoOpMavenImplementation "com.plutolib.plugins:bundle-core-no-op:$verPublish" + "debugNoOpMavenImplementation"("com.plutolib:pluto-no-op:$verPublish") + "debugNoOpMavenImplementation"("com.plutolib.plugins:bundle-core-no-op:$verPublish") - releaseImplementation "com.plutolib:pluto:$verPublish" - releaseImplementation "com.plutolib.plugins:bundle-core:$verPublish" + "releaseImplementation"("com.plutolib:pluto:$verPublish") + "releaseImplementation"("com.plutolib.plugins:bundle-core:$verPublish") /** * Other dependencies diff --git a/scripts/pluginBuilder.gradle b/scripts/pluginBuilder.gradle deleted file mode 100644 index 947a31a69..000000000 --- a/scripts/pluginBuilder.gradle +++ /dev/null @@ -1,53 +0,0 @@ -apply from: "$rootDir/scripts/version.gradle" -//apply from: "$rootDir/scripts/publish/publish.gradle" - - -def version = loadVersioningData() -def verCode = version["code"] -def verPublish = version["publish"] -def verGitSHA = version["gitSha"] - -ext { - PUBLISH_VERSION = verPublish -} - -android { - compileSdk = libs.versions.compileSdk.get().toInteger() - buildToolsVersion = libs.versions.buildTools.get() - - buildFeatures { - buildConfig true - viewBinding true - } - - defaultConfig { - minSdk = libs.versions.minSdk.get().toInteger() - targetSdk = libs.versions.targetSdk.get().toInteger() - - buildConfigField ("String", "VERSION_NAME", "\"${verPublish}\"") - buildConfigField ("long", "VERSION_CODE", "${verCode}") - buildConfigField ("String", "GIT_SHA", "\"${verGitSHA}\"") - } - - buildTypes { - release { - debuggable true - minifyEnabled false - shrinkResources false - } - } - - compileOptions { - sourceCompatibility = JavaVersion.toVersion(libs.versions.java.get()) - targetCompatibility = JavaVersion.toVersion(libs.versions.java.get()) - } - - kotlinOptions { - jvmTarget = libs.versions.java.get() -// freeCompilerArgs += listOf("-module-name", project.name) - } - - lint { - abortOnError false - } -} \ No newline at end of file diff --git a/scripts/static-analysis/.editorconfig b/scripts/static-analysis/.editorconfig index a49126efb..8914c9d0f 100644 --- a/scripts/static-analysis/.editorconfig +++ b/scripts/static-analysis/.editorconfig @@ -1,5 +1,5 @@ [*.{kt, kts}] -max_line_length = 160 +max_line_length = 200 insert_final_newline = true indent_size = 4 indent_style = space \ No newline at end of file diff --git a/scripts/version.gradle b/scripts/version.gradle deleted file mode 100644 index 62a6817f7..000000000 --- a/scripts/version.gradle +++ /dev/null @@ -1,22 +0,0 @@ -ext.loadVersioningData = { - def version = [:] - - Properties versionProps = new Properties() - versionProps.load(new FileInputStream(file("$project.rootDir/version.properties"))) - - def versionMajor = versionProps['major'].toInteger() - def versionMinor = versionProps['minor'].toInteger() - def versionPatch = versionProps['patch'].toInteger() - def versionBuild = versionProps['build'].toInteger() - def versionChannel = versionProps['channel'] - - version["code"] = (versionMajor * 1000000) + (versionMinor * 10000) + (versionPatch * 100) + versionBuild - version["name"] = "${versionMajor}.${versionMinor}.${versionPatch}-rc${versionBuild}" - version["publish"] = "${versionMajor}.${versionMinor}.${versionPatch}" - if (versionChannel != "release") { - version["publish"] = "${verPublish}-${versionChannel}${versionBuild}" - } - version["gitSha"] = 'git rev-parse --short=10 HEAD'.execute().text.trim() - - return version -}