From 213ba371ee26be07abafc48ddc033fcc639608d3 Mon Sep 17 00:00:00 2001 From: Jasjeet Singh <98077881+07jasjeet@users.noreply.github.com> Date: Sat, 27 Jan 2024 01:02:50 +0530 Subject: [PATCH] Added buildSrc --- app/build.gradle.kts | 16 +++++++-------- build.gradle.kts | 25 +++++++++++++++++++---- buildSrc/build.gradle.kts | 7 +++++++ buildSrc/src/main/kotlin/BuildVersions.kt | 10 +++++++++ settings.gradle.kts | 15 -------------- typesafe-datastore-gson/build.gradle.kts | 6 +++--- typesafe-datastore-test/build.gradle.kts | 8 ++++---- typesafe-datastore/build.gradle.kts | 6 +++--- 8 files changed, 56 insertions(+), 37 deletions(-) create mode 100644 buildSrc/build.gradle.kts create mode 100644 buildSrc/src/main/kotlin/BuildVersions.kt diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 2cdbbe4..ec5c6ed 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -4,15 +4,15 @@ plugins { } android { - namespace = "com.jasjeet.type_safedatastore" + namespace = "com.jasjeet.typesafe_datastore_app" compileSdk = 34 defaultConfig { - applicationId = "com.jasjeet.typesafe-datastore-app" + applicationId = "com.jasjeet.typesafe_datastore_app" minSdk = 21 targetSdk = 34 versionCode = 1 - versionName = "1.0" + versionName = "1.0.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" vectorDrawables { @@ -30,11 +30,11 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = BuildVersions.Java.javaVersion + targetCompatibility = BuildVersions.Java.javaVersion } kotlinOptions { - jvmTarget = "17" + jvmTarget = BuildVersions.Java.javaVersionNumber } buildFeatures { compose = true @@ -62,7 +62,7 @@ dependencies { implementation("androidx.datastore:datastore-preferences:1.0.0") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0") implementation("androidx.activity:activity-compose:1.8.2") - implementation(platform("androidx.compose:compose-bom:2023.08.00")) + implementation(platform("androidx.compose:compose-bom:2024.01.00")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") @@ -70,7 +70,7 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") - androidTestImplementation(platform("androidx.compose:compose-bom:2023.08.00")) + androidTestImplementation(platform("androidx.compose:compose-bom:2024.01.00")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") diff --git a/build.gradle.kts b/build.gradle.kts index 90dfaa9..f09e881 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,23 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. -plugins { - id("com.android.application") version "8.2.1" apply false - id("org.jetbrains.kotlin.android") version "1.9.22" apply false - id("com.android.library") version "8.2.1" apply false +buildscript { + repositories { + google() + mavenCentral() + } + + dependencies { + classpath("com.android.tools.build:gradle:8.2.1") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${BuildVersions.kotlinVersion}") + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +tasks.register("clean", Delete::class) { + delete(rootProject.buildDir) } \ No newline at end of file diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts new file mode 100644 index 0000000..b22ed73 --- /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/BuildVersions.kt b/buildSrc/src/main/kotlin/BuildVersions.kt new file mode 100644 index 0000000..407591a --- /dev/null +++ b/buildSrc/src/main/kotlin/BuildVersions.kt @@ -0,0 +1,10 @@ +import org.gradle.api.JavaVersion + +object BuildVersions { + object Java { + val javaVersion = JavaVersion.VERSION_17 + const val javaVersionNumber = "17" + } + + const val kotlinVersion = "1.9.22" +} \ No newline at end of file diff --git a/settings.gradle.kts b/settings.gradle.kts index 967d3f8..6b9d0dd 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,18 +1,3 @@ -pluginManagement { - repositories { - google() - mavenCentral() - gradlePluginPortal() - } -} -dependencyResolutionManagement { - repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) - repositories { - google() - mavenCentral() - } -} - rootProject.name = "typesafe-datastore" include(":app") include(":typesafe-datastore") diff --git a/typesafe-datastore-gson/build.gradle.kts b/typesafe-datastore-gson/build.gradle.kts index a57ce6d..0d6f310 100644 --- a/typesafe-datastore-gson/build.gradle.kts +++ b/typesafe-datastore-gson/build.gradle.kts @@ -25,11 +25,11 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = BuildVersions.Java.javaVersion + targetCompatibility = BuildVersions.Java.javaVersion } kotlinOptions { - jvmTarget = "17" + jvmTarget = BuildVersions.Java.javaVersionNumber } publishing { singleVariant("release") { diff --git a/typesafe-datastore-test/build.gradle.kts b/typesafe-datastore-test/build.gradle.kts index 87e5fd7..1929336 100644 --- a/typesafe-datastore-test/build.gradle.kts +++ b/typesafe-datastore-test/build.gradle.kts @@ -25,11 +25,11 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = BuildVersions.Java.javaVersion + targetCompatibility = BuildVersions.Java.javaVersion } kotlinOptions { - jvmTarget = "17" + jvmTarget = BuildVersions.Java.javaVersionNumber } publishing { singleVariant("release") { @@ -41,7 +41,7 @@ android { dependencies { implementation(project(":typesafe-datastore")) - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.1") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3") } publishing { diff --git a/typesafe-datastore/build.gradle.kts b/typesafe-datastore/build.gradle.kts index e502071..78e11c1 100644 --- a/typesafe-datastore/build.gradle.kts +++ b/typesafe-datastore/build.gradle.kts @@ -25,11 +25,11 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_17 - targetCompatibility = JavaVersion.VERSION_17 + sourceCompatibility = BuildVersions.Java.javaVersion + targetCompatibility = BuildVersions.Java.javaVersion } kotlinOptions { - jvmTarget = "17" + jvmTarget = BuildVersions.Java.javaVersionNumber } publishing { singleVariant("release") {