1+ import java.util.Locale
12
23buildscript {
34 repositories {
@@ -16,10 +17,10 @@ plugins {
1617 `java- library`
1718 `maven- publish`
1819 signing
19- id( " org.jetbrains .kotlin.jvm" ) version " 1.9.22 "
20- kotlin( " plugin.serialization " ) version " 1.9.22 "
21- id( " org. jlleitschuh.gradle. ktlint" ) version " 10.0.0 "
22- id( " com.github .ben- manes.versions" ) version " 0.42.0 "
20+ alias(libs.plugins .kotlin.jvm)
21+ alias(libs.plugins.kotlinx.serialization)
22+ alias(libs.plugins. jlleitschuh.ktlint)
23+ alias(libs.plugins .ben. manes.versions)
2324}
2425
2526group = " dev.gitlive"
@@ -87,7 +88,7 @@ val jar by tasks.getting(Jar::class) {
8788val sourceSets = project.the<SourceSetContainer >()
8889
8990val cleanLibs by tasks.creating(Delete ::class ) {
90- delete(" $buildDir /libs" )
91+ delete(" $${layout.buildDirectory.asFile.get().path} /libs" )
9192}
9293
9394publishing {
@@ -202,39 +203,40 @@ val includeList = listOf(
202203 " slidingpanelayout-*.jar" ,
203204 " swiperefreshlayout-*.jar" ,
204205 " versionedparcelable-*.jar" ,
205- " viewpager-*.jar" ,
206+ " viewpager-*.jar"
206207)
207208
208209dependencies {
209- compileOnly(" org.robolectric:android-all:12.1-robolectric-8229987" )
210- testImplementation(" junit:junit:4.13.2" )
211- testImplementation(" org.jetbrains.kotlinx:kotlinx-coroutines-swing:1.7.3" )
212- testImplementation(" org.jetbrains.kotlinx:kotlinx-coroutines-play-services:1.7.3" )
213- testImplementation(" org.mockito:mockito-core:5.12.0" )
210+ compileOnly(libs.robolectric.android.all)
211+ testImplementation(libs.junit)
212+ testImplementation(libs.kotlinx.coroutines.play.services)
213+ testImplementation(libs.kotlinx.coroutines.swing)
214+ testImplementation(libs.kotlinx.coroutines.test)
215+ testImplementation(libs.mockito.core)
214216 // firebase aars
215- aar(" com.google.firebase:firebase-firestore:24.10.0" )
216- aar(" com.google.firebase:firebase-functions:20.4.0" )
217- aar(" com.google.firebase:firebase-database:20.3.0" )
218- aar(" com.google.firebase:firebase-config:21.6.0" )
219- aar(" com.google.firebase:firebase-installations:17.2.0" )
220- aar(" com.google.firebase:firebase-storage:21.0.0" )
217+ aar(platform(libs.google.firebase.bom))
218+ aar(libs.google.firebase.firestore)
219+ aar(libs.google.firebase.functions)
220+ aar(libs.google.firebase.database)
221+ aar(libs.google.firebase.config)
222+ aar(libs.google.firebase.installations)
223+ aar(libs.google.firebase.storage)
221224 // extracted aar dependencies
222225 api(fileTree(mapOf (" dir" to " build/jar" , " include" to includeList)))
223226 // polyfill dependencies
224- implementation(" org.jetbrains.kotlin:kotlin-stdlib" )
225- implementation(" org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3" )
226- implementation(" org.jetbrains.kotlinx:kotlinx-serialization-core:1.6.0" )
227- implementation(" org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0" )
228- implementation(" org.xerial:sqlite-jdbc:3.44.1.0" )
227+ implementation(libs.kotlinx.coroutines.core)
228+ implementation(libs.kotlinx.serialization.core)
229+ implementation(libs.kotlinx.serialization.json)
230+ implementation(libs.xerial.sqlite.jdbc)
229231 // firebase dependencies
230- implementation(" javax.inject: javax.inject:1 " )
231- implementation(" com.squareup.okhttp3: okhttp:3.12.13 " )
232- implementation(" io.grpc:grpc- protobuf-lite:1.52.1 " )
233- implementation(" io.grpc:grpc-stub:1.52.1 " )
234- implementation(" androidx.collection:collection:1.2.0 " )
235- implementation(" io.grpc:grpc-okhttp:1.52.1 " )
236- implementation(" androidx.lifecycle:lifecycle-common:2.8.0-rc01 " )
237- implementation(" androidx.lifecycle:lifecycle-viewmodel:2.8.0-rc01 " )
232+ implementation(libs. javax.inject)
233+ implementation(libs. okhttp)
234+ implementation(libs. io.grpc. protobuf.lite )
235+ implementation(libs. io.grpc.stub )
236+ implementation(libs. androidx.collection)
237+ implementation(libs. io.grpc.okhttp )
238+ implementation(libs. androidx.lifecycle.common )
239+ implementation(libs. androidx.lifecycle.viewmodel )
238240}
239241
240242tasks.named(" publishToMavenLocal" ).configure {
@@ -246,7 +248,7 @@ tasks.named("publish").configure {
246248}
247249
248250ktlint {
249- version.set(" 0.41.0 " )
251+ version.set(libs.versions.ktlint.get() )
250252}
251253
252254signing {
@@ -259,7 +261,8 @@ signing {
259261tasks.withType< com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask > {
260262
261263 fun isNonStable (version : String ): Boolean {
262- val stableKeyword = listOf (" RELEASE" , " FINAL" , " GA" ).any { version.toUpperCase().contains(it) }
264+ val stableKeyword = listOf (" RELEASE" , " FINAL" , " GA" )
265+ .any { version.uppercase(Locale .ROOT ).contains(it) }
263266 val versionMatch = " ^[0-9,.v-]+(-r)?$" .toRegex().matches(version)
264267
265268 return (stableKeyword || versionMatch).not ()
0 commit comments