Skip to content

Commit d64f9e8

Browse files
authored
Merge pull request #101 from swingmx/migrate-to-version-catalogs
`refactor:` Migrate to Gradle Version Catalogs
2 parents e20143a + 78e34ba commit d64f9e8

File tree

16 files changed

+502
-344
lines changed

16 files changed

+502
-344
lines changed

app/build.gradle.kts

Lines changed: 38 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
plugins {
2-
id("com.android.application")
3-
id("org.jetbrains.kotlin.android")
4-
id("org.jetbrains.kotlin.plugin.compose")
5-
id("com.google.dagger.hilt.android")
6-
id("com.google.devtools.ksp")
2+
alias(libs.plugins.android.application)
3+
alias(libs.plugins.kotlin.android)
4+
alias(libs.plugins.kotlin.compose)
5+
alias(libs.plugins.hilt.android)
6+
alias(libs.plugins.ksp)
77
}
88

99
android {
1010
namespace = "com.android.swingmusic"
11-
compileSdk = 36
11+
compileSdk = libs.versions.compileSdk.get().toInt()
1212

1313
defaultConfig {
1414
applicationId = "com.android.swingmusic"
15-
minSdk = 26
16-
targetSdk = 36
15+
minSdk = libs.versions.minSdk.get().toInt()
16+
targetSdk = libs.versions.targetSdk.get().toInt()
1717
versionCode = project.findProperty("versionCode")?.toString()?.toInt() ?: 1
1818
versionName = project.findProperty("versionName")?.toString() ?: "1.0.0"
1919

@@ -84,63 +84,59 @@ dependencies {
8484
implementation(project(":feature:common"))
8585

8686
// Core
87-
// implementation("androidx.core:core-ktx:1.13.1")
88-
implementation("androidx.activity:activity-ktx:1.9.3")
89-
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
87+
implementation(libs.androidx.activity.ktx)
88+
implementation(libs.androidx.lifecycle.runtime.ktx)
9089

9190
// Compose
92-
implementation(platform("androidx.compose:compose-bom:2025.05.00"))
93-
implementation("androidx.compose.ui:ui")
94-
implementation("androidx.compose.ui:ui-graphics")
95-
implementation("androidx.compose.ui:ui-tooling-preview")
96-
implementation("androidx.compose.material3:material3")
97-
debugImplementation("androidx.compose.ui:ui-tooling")
98-
debugImplementation("androidx.compose.ui:ui-test-manifest")
91+
implementation(platform(libs.androidx.compose.bom))
92+
implementation(libs.androidx.compose.ui)
93+
implementation(libs.androidx.compose.ui.graphics)
94+
implementation(libs.androidx.compose.ui.tooling.preview)
95+
implementation(libs.androidx.compose.material3)
96+
debugImplementation(libs.androidx.compose.ui.tooling)
97+
debugImplementation(libs.androidx.compose.ui.test.manifest)
9998

100-
testImplementation("junit:junit:4.13.2")
99+
testImplementation(libs.junit)
101100

102101
// Hilt DI
103-
implementation("com.google.dagger:hilt-android:2.53.1")
104-
ksp("com.google.dagger:hilt-android-compiler:2.53.1")
102+
implementation(libs.hilt.android)
103+
ksp(libs.hilt.android.compiler)
105104

106105
// Hilt Navigation-Compose
107-
implementation("androidx.hilt:hilt-navigation-compose:1.2.0")
106+
implementation(libs.androidx.hilt.navigation.compose)
108107

109108
// Room
110-
implementation("androidx.room:room-runtime:2.6.1")
111-
annotationProcessor("androidx.room:room-compiler:2.6.1")
112-
implementation("androidx.room:room-ktx:2.6.1")
113-
ksp("androidx.room:room-compiler:2.6.1")
109+
implementation(libs.androidx.room.runtime)
110+
annotationProcessor(libs.androidx.room.compiler)
111+
implementation(libs.androidx.room.ktx)
112+
ksp(libs.androidx.room.compiler)
114113

115114
// Retrofit
116-
implementation("com.squareup.retrofit2:retrofit:2.11.0")
115+
implementation(libs.retrofit)
117116

118117
// Timber
119-
implementation("com.jakewharton.timber:timber:5.0.1")
118+
implementation(libs.timber)
120119

121120
// WorkManger
122-
implementation("androidx.work:work-runtime-ktx:2.10.0")
123-
implementation("androidx.hilt:hilt-work:1.2.0")
121+
implementation(libs.androidx.work.runtime.ktx)
122+
implementation(libs.androidx.hilt.work)
124123

125124
// Navigation
126-
// implementation("io.github.raamcosta.compose-destinations:core:1.9.63")
127-
implementation("io.github.raamcosta.compose-destinations:animations-core:1.9.63")
128-
ksp("io.github.raamcosta.compose-destinations:ksp:1.9.63")
125+
implementation(libs.compose.destinations.animations.core)
126+
ksp(libs.compose.destinations.ksp)
129127

130128
// Media3-Player
131-
implementation("androidx.media3:media3-exoplayer:1.4.1")
132-
implementation("androidx.media3:media3-session:1.4.1")
133-
// implementation("androidx.media3:media3-exoplayer-hls:1.3.1")
134-
// implementation("androidx.media3:media3-exoplayer-dash:1.3.1")
129+
implementation(libs.androidx.media3.exoplayer)
130+
implementation(libs.androidx.media3.session)
135131

136132
// Coil Image Loader
137-
implementation("io.coil-kt:coil-compose:2.6.0")
133+
implementation(libs.coil.compose)
138134

139135
// Coroutines
140-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.0")
141-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.0")
142-
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
143-
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.7")
136+
implementation(libs.kotlinx.coroutines.core)
137+
implementation(libs.kotlinx.coroutines.android)
138+
implementation(libs.androidx.lifecycle.runtime.ktx)
139+
implementation(libs.androidx.lifecycle.viewmodel.compose)
144140
}
145141

146142
kotlin {

auth/build.gradle.kts

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
plugins {
2-
id("com.android.library")
3-
id("org.jetbrains.kotlin.android")
4-
id("org.jetbrains.kotlin.plugin.compose")
5-
id("com.google.dagger.hilt.android")
6-
id("com.google.devtools.ksp")
2+
alias(libs.plugins.android.library)
3+
alias(libs.plugins.kotlin.android)
4+
alias(libs.plugins.kotlin.compose)
5+
alias(libs.plugins.hilt.android)
6+
alias(libs.plugins.ksp)
77
}
88

99
android {
1010
namespace = "com.android.swingmusic.auth"
11-
compileSdk = 36
11+
compileSdk = libs.versions.compileSdk.get().toInt()
1212

1313
defaultConfig {
14-
minSdk = 26
14+
minSdk = libs.versions.minSdk.get().toInt()
1515

1616
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
1717
}
@@ -48,56 +48,56 @@ dependencies {
4848
implementation(project(":feature:common"))
4949

5050
// Core
51-
implementation("androidx.core:core-ktx:1.15.0")
52-
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
51+
implementation(libs.androidx.core.ktx)
52+
implementation(libs.androidx.lifecycle.runtime.ktx)
5353

5454
// Compose
55-
implementation(platform("androidx.compose:compose-bom:2025.05.00"))
56-
implementation("androidx.compose.ui:ui")
57-
implementation("androidx.compose.ui:ui-graphics")
58-
implementation("androidx.compose.ui:ui-tooling-preview")
59-
implementation("androidx.compose.material3:material3")
60-
debugImplementation("androidx.compose.ui:ui-tooling")
61-
debugImplementation("androidx.compose.ui:ui-test-manifest")
55+
implementation(platform(libs.androidx.compose.bom))
56+
implementation(libs.androidx.compose.ui)
57+
implementation(libs.androidx.compose.ui.graphics)
58+
implementation(libs.androidx.compose.ui.tooling.preview)
59+
implementation(libs.androidx.compose.material3)
60+
debugImplementation(libs.androidx.compose.ui.tooling)
61+
debugImplementation(libs.androidx.compose.ui.test.manifest)
6262

6363
// KMP - QR Code Scanner
64-
implementation("network.chaintech:qr-kit:3.0.7")
64+
implementation(libs.qr.kit)
6565

6666
// Retrofit
67-
implementation("com.squareup.retrofit2:retrofit:2.11.0")
68-
implementation("com.squareup.retrofit2:converter-gson:2.9.0")
69-
implementation("com.squareup.okhttp3:logging-interceptor:4.5.0")
67+
implementation(libs.retrofit)
68+
implementation(libs.retrofit.converter.gson)
69+
implementation(libs.okhttp.logging.interceptor)
7070

7171
// Chucker
72-
debugImplementation("com.github.chuckerteam.chucker:library:4.0.0")
73-
releaseImplementation("com.github.chuckerteam.chucker:library-no-op:4.0.0")
72+
debugImplementation(libs.chucker.library)
73+
releaseImplementation(libs.chucker.library.no.op)
7474

7575
// Hilt DI
76-
implementation("com.google.dagger:hilt-android:2.53.1")
77-
ksp("com.google.dagger:hilt-android-compiler:2.53.1")
76+
implementation(libs.hilt.android)
77+
ksp(libs.hilt.android.compiler)
7878

7979
// Hilt Navigation-Compose
80-
implementation("androidx.hilt:hilt-navigation-compose:1.2.0")
80+
implementation(libs.androidx.hilt.navigation.compose)
8181

8282
//Prefs Datastore
83-
implementation("androidx.datastore:datastore-preferences:1.2.0")
83+
implementation(libs.androidx.datastore.preferences)
8484

8585
// WorkManger
86-
implementation("androidx.work:work-runtime-ktx:2.10.0")
87-
implementation("androidx.hilt:hilt-work:1.2.0")
86+
implementation(libs.androidx.work.runtime.ktx)
87+
implementation(libs.androidx.hilt.work)
8888

8989
// Timber
90-
implementation("com.jakewharton.timber:timber:5.0.1")
90+
implementation(libs.timber)
9191

9292
// Navigation
93-
implementation("io.github.raamcosta.compose-destinations:core:1.9.63")
94-
ksp("io.github.raamcosta.compose-destinations:ksp:1.9.63")
93+
implementation(libs.compose.destinations.core)
94+
ksp(libs.compose.destinations.ksp)
9595

9696
// Coroutines
97-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1")
98-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.0")
99-
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
100-
implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.7")
97+
implementation(libs.kotlinx.coroutines.core)
98+
implementation(libs.kotlinx.coroutines.android)
99+
implementation(libs.androidx.lifecycle.runtime.ktx)
100+
implementation(libs.androidx.lifecycle.viewmodel.compose)
101101
}
102102

103103
kotlin {

build.gradle.kts

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22
plugins {
3-
id("com.android.application") version "8.9.1" apply false
4-
id("org.jetbrains.kotlin.android") version "2.1.0" apply false
5-
id("org.jetbrains.kotlin.plugin.compose") version "2.1.0" apply false
6-
id("com.google.dagger.hilt.android") version "2.53.1" apply false
7-
id("com.google.devtools.ksp") version "2.1.0-1.0.29" apply false
8-
id("com.android.library") version "8.9.1" apply false
3+
alias(libs.plugins.android.application) apply false
4+
alias(libs.plugins.android.library) apply false
5+
alias(libs.plugins.kotlin.android) apply false
6+
alias(libs.plugins.kotlin.compose) apply false
7+
alias(libs.plugins.hilt.android) apply false
8+
alias(libs.plugins.ksp) apply false
9+
}
910

10-
// id("dev.iurysouza.modulegraph") version "0.10.0"
11+
allprojects {
12+
tasks.withType<JavaCompile>().configureEach {
13+
options.compilerArgs.addAll(listOf("-Xlint:-processing"))
14+
}
1115
}
1216

1317
/*

core/build.gradle.kts

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
plugins {
2-
id("com.android.library")
3-
id("org.jetbrains.kotlin.android")
2+
alias(libs.plugins.android.library)
3+
alias(libs.plugins.kotlin.android)
44
}
55

66
android {
77
namespace = "com.android.swingmusic.core"
8-
compileSdk = 36
8+
compileSdk = libs.versions.compileSdk.get().toInt()
99

1010
defaultConfig {
11-
minSdk = 26
11+
minSdk = libs.versions.minSdk.get().toInt()
1212

1313
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
1414
}
@@ -28,19 +28,19 @@ android {
2828
}
2929

3030
dependencies {
31-
implementation("androidx.core:core-ktx:1.15.0")
32-
testImplementation("junit:junit:4.13.2")
33-
androidTestImplementation("androidx.test.ext:junit:1.2.1")
34-
androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")
31+
implementation(libs.androidx.core.ktx)
32+
testImplementation(libs.junit)
33+
androidTestImplementation(libs.androidx.test.ext.junit)
34+
androidTestImplementation(libs.androidx.test.espresso.core)
3535

3636
// Retrofit
37-
implementation("com.squareup.retrofit2:retrofit:2.11.0")
38-
implementation ("com.squareup.retrofit2:converter-gson:2.9.0")
39-
implementation ("com.squareup.okhttp3:logging-interceptor:4.5.0")
37+
implementation(libs.retrofit)
38+
implementation(libs.retrofit.converter.gson)
39+
implementation(libs.okhttp.logging.interceptor)
4040

4141
// Timber
42-
implementation("com.jakewharton.timber:timber:5.0.1")
42+
implementation(libs.timber)
4343

4444
// Coroutines
45-
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.0")
45+
implementation(libs.kotlinx.coroutines.android)
4646
}

database/build.gradle.kts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
plugins {
2-
id("com.android.library")
3-
id("org.jetbrains.kotlin.android")
4-
id("com.google.devtools.ksp")
2+
alias(libs.plugins.android.library)
3+
alias(libs.plugins.kotlin.android)
4+
alias(libs.plugins.ksp)
55
}
66

77
android {
88
namespace = "com.android.swingmusic.database"
9-
compileSdk = 36
9+
compileSdk = libs.versions.compileSdk.get().toInt()
1010

1111
defaultConfig {
12-
minSdk = 26
12+
minSdk = libs.versions.minSdk.get().toInt()
1313

1414
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
1515
}
@@ -33,15 +33,15 @@ dependencies {
3333
implementation(project(":core"))
3434

3535
// Gson
36-
implementation("com.google.code.gson:gson:2.10.1")
36+
implementation(libs.gson)
3737

3838
// Hilt
39-
implementation("com.google.dagger:hilt-android:2.53.1")
40-
ksp("com.google.dagger:hilt-android-compiler:2.53.1")
39+
implementation(libs.hilt.android)
40+
ksp(libs.hilt.android.compiler)
4141

4242
// Room
43-
implementation("androidx.room:room-runtime:2.6.1")
44-
annotationProcessor("androidx.room:room-compiler:2.6.1")
45-
implementation("androidx.room:room-ktx:2.6.1")
46-
ksp("androidx.room:room-compiler:2.6.1")
43+
implementation(libs.androidx.room.runtime)
44+
annotationProcessor(libs.androidx.room.compiler)
45+
implementation(libs.androidx.room.ktx)
46+
ksp(libs.androidx.room.compiler)
4747
}

0 commit comments

Comments
 (0)