forked from gkd-kit/gkd
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
51 lines (48 loc) · 1.82 KB
/
Copy pathbuild.gradle.kts
File metadata and controls
51 lines (48 loc) · 1.82 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
ext {
set("android.namespace", "li.songe.gkd")
set("android.buildToolsVersion", "36.1.0")
set("android.compileSdk", 36)
set("android.targetSdk", 36)
set("android.minSdk", 26)
set("android.javaVersion", JavaVersion.VERSION_11)
set("kotlin.jvmTarget", JvmTarget.JVM_11)
}
plugins {
alias(libs.plugins.google.ksp) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.android.application) apply false
alias(libs.plugins.androidx.room) apply false
alias(libs.plugins.kotlin.serialization) apply false
alias(libs.plugins.kotlin.multiplatform) apply false
alias(libs.plugins.kotlin.parcelize) apply false
alias(libs.plugins.kotlin.compose) apply false
alias(libs.plugins.kotlinx.atomicfu) apply false
alias(libs.plugins.rikka.refine) apply false
alias(libs.plugins.loc) apply false
alias(libs.plugins.benmanes.version)
alias(libs.plugins.littlerobots.version)
}
val normalVersionRegex by lazy { "^[0-9\\.]+".toRegex() }
fun isSameTypeVersion(currentVersion: String, newVersion: String): Boolean {
if (normalVersionRegex.matches(currentVersion)) {
return normalVersionRegex.matches(newVersion)
}
arrayOf("alpha", "beta", "dev", "rc").forEach { v ->
if (currentVersion.contains(v, true)) {
return newVersion.contains(v, true)
}
}
throw IllegalArgumentException("Unknown version type: $currentVersion -> $newVersion")
}
tasks.withType<com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask> {
rejectVersionIf {
!isSameTypeVersion(currentVersion, candidate.version)
}
}
// ./gradlew versionCatalogUpdate --interactive
projectDir.resolve("./gradle/libs.versions.updates.toml").apply {
if (exists()) {
delete()
}
}