Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 2 additions & 15 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
import org.jetbrains.kotlin.gradle.dsl.JvmTarget

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.stream.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
}

kotlin {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_11)
freeCompilerArgs.addAll(
"-opt-in=io.getstream.android.core.annotations.StreamInternalApi",
"-XXLanguage:+PropertyParamAnnotationDefaultTargetMode"
Expand All @@ -18,12 +15,9 @@ kotlin {

android {
namespace = "io.getstream.android.core"
compileSdk = 36

defaultConfig {
applicationId = "io.getstream.android.core.sample"
minSdk = 21
targetSdk = 36
versionCode = 1
versionName = "1.0"

Expand All @@ -39,13 +33,6 @@ android {
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
buildFeatures {
compose = true
}
Expand Down Expand Up @@ -73,4 +60,4 @@ dependencies {
androidTestImplementation(libs.androidx.ui.test.junit4)
debugImplementation(libs.androidx.ui.tooling)
debugImplementation(libs.androidx.ui.test.manifest)
}
}
30 changes: 29 additions & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import com.android.build.api.dsl.ApplicationExtension
import com.android.build.api.dsl.LibraryExtension
import java.io.FileNotFoundException
import java.util.Calendar

Expand All @@ -7,6 +9,9 @@ apply(plugin = "org.jetbrains.dokka")
apply(from = "${rootDir}/gradle/scripts/sonar.gradle")
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
alias(libs.plugins.stream.android.library) apply false
alias(libs.plugins.stream.android.application) apply false
alias(libs.plugins.stream.java.library) apply false
alias(libs.plugins.android.application) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.jetbrains.kotlin.jvm) apply false
Expand Down Expand Up @@ -38,6 +43,29 @@ detekt {
buildUponDefaultConfig = true
}

subprojects {
// Configure Android projects with common SDK versions as soon as either plugin is applied
pluginManager.withPlugin("com.android.library") {
extensions.configure<LibraryExtension> {
defaultConfig {
compileSdk = libs.versions.compileSdk.get().toInt()
minSdk = libs.versions.minSdk.get().toInt()
lint.targetSdk = libs.versions.targetSdk.get().toInt()
testOptions.targetSdk = libs.versions.targetSdk.get().toInt()
}
}
}
pluginManager.withPlugin("com.android.application") {
extensions.configure<ApplicationExtension> {
defaultConfig {
compileSdk = libs.versions.compileSdk.get().toInt()
minSdk = libs.versions.minSdk.get().toInt()
targetSdk = libs.versions.targetSdk.get().toInt()
}
}
}
}

// License tasks
subprojects {
apply(from = "${rootDir}/gradle/scripts/coverage.gradle")
Expand Down Expand Up @@ -76,4 +104,4 @@ subprojects {
}
}

apply(from = "${rootDir}/scripts/publish-root.gradle")
apply(from = "${rootDir}/scripts/publish-root.gradle")
4 changes: 0 additions & 4 deletions buildSrc/src/main/kotlin/io/getstream/core/Configuration.kt
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,6 @@
package io.getstream.core

object Configuration {
const val compileSdk = 36
const val targetSdk = 36
const val sampleTargetSdk = 36
const val minSdk = 21
const val majorVersion = 1
const val minorVersion = 0
const val patchVersion = 0
Expand Down
8 changes: 7 additions & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
[versions]
compileSdk = "36"
targetSdk = "36"
minSdk = "21"
agp = "8.11.1"
core = "1.7.0"
kotlin = "2.2.0"
Expand All @@ -23,6 +26,7 @@ ksp = "2.2.0-2.0.2"
robolectric = "4.15.1"
detekt = "1.23.8"
spotless = "7.2.1"
streamConventions = "0.2.0"
kover = "0.9.1"
sonarqube = "6.0.1.5171"
kotlinDokka = "1.9.20"
Expand Down Expand Up @@ -76,8 +80,10 @@ kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "ko
ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
arturbosch-detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
stream-android-library = { id = "io.getstream.android.library", version.ref = "streamConventions" }
stream-android-application = { id = "io.getstream.android.application", version.ref = "streamConventions" }
stream-java-library = { id = "io.getstream.java.library", version.ref = "streamConventions" }
dokka = { id = "org.jetbrains.dokka", version.ref = "kotlinDokka" }
nexus = { id = "io.github.gradle-nexus.publish-plugin", version.ref = "nexusPlugin" }
kover = { id = "org.jetbrains.kotlinx.kover", version.ref = "kover"}
sonarqube = { id = "org.sonarqube", version.ref = "sonarqube"}

3 changes: 1 addition & 2 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
import java.net.URI

include(":stream-android-core-annotations")


pluginManagement {
repositories {
mavenLocal()
google {
content {
includeGroupByRegex("com\\.android.*")
Expand Down
9 changes: 1 addition & 8 deletions stream-android-core-annotations/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id("java-library")
alias(libs.plugins.stream.java.library)
alias(libs.plugins.jetbrains.kotlin.jvm)
}

Expand All @@ -12,12 +12,5 @@ rootProject.extra.apply {
apply(from = "${rootDir}/scripts/publish-module.gradle")

java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
withSourcesJar()
}
kotlin {
compilerOptions {
jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_11
}
}
11 changes: 2 additions & 9 deletions stream-android-core/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import io.getstream.core.Configuration
import org.jetbrains.kotlin.gradle.dsl.abi.ExperimentalAbiValidation

plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.stream.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.ksp)
alias(libs.plugins.arturbosch.detekt)
Expand Down Expand Up @@ -34,11 +34,8 @@ kotlin {

android {
namespace = "io.getstream.android.core"
compileSdk = Configuration.compileSdk

defaultConfig {
minSdk = Configuration.minSdk

testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
Expand All @@ -52,10 +49,6 @@ android {
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}

lint {
abortOnError = true
Expand Down Expand Up @@ -102,4 +95,4 @@ dependencies {
testImplementation(libs.mockk)
testImplementation(libs.kotlinx.coroutines.test)
testImplementation(libs.mockwebserver)
}
}