-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
140 lines (135 loc) · 5.7 KB
/
build.gradle
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
buildscript {
ext.versions = [
androidGradlePlugin: '8.7.2',
androidx: [
activity: '1.9.2',
annotations: '1.9.1',
appcompat: '1.7.0',
collection: '1.4.3',
coordinatorlayout: '1.2.0',
core: '1.13.1',
drawerlayout: '1.2.0',
fragment: '1.8.2',
lifecycle: '2.8.4',
paging: '3.3.2',
preference: '1.2.1',
recyclerview: '1.3.2',
recyclerviewSelection: '1.1.0',
savedstate: '1.2.1',
splashscreen: '1.0.1'
],
billing: '7.1.1',
compileSdk: 35,
coroutines: '1.8.1',
dagger: '2.52',
demomode: '0.6.0',
diskcrashreporter: '0.2.2',
junit: '4.13.2',
kotlin: '2.0.21',
ktor: '3.0.0',
leakcanary: '2.14',
material: '1.12.0',
moshi: '1.15.1',
okhttp: '4.12.0',
okio: '3.9.1',
retrofit: '2.11.0',
retrofitLogging: '0.12.0',
sqldelight: '2.0.2',
truth: '1.4.3'
]
ext.deps = [
androidx: [
activity: "androidx.activity:activity-ktx:$versions.androidx.activity",
annotations: "androidx.annotation:annotation:$versions.androidx.annotations",
appcompat: "androidx.appcompat:appcompat:$versions.androidx.appcompat",
collection: "androidx.collection:collection-ktx:$versions.androidx.collection",
coordinatorlayout: "androidx.coordinatorlayout:coordinatorlayout:$versions.androidx.coordinatorlayout",
core: "androidx.core:core-ktx:$versions.androidx.core",
drawerlayout: "androidx.drawerlayout:drawerlayout:$versions.androidx.drawerlayout",
fragment: "androidx.fragment:fragment:$versions.androidx.fragment",
lifecycleLivedataCore: "androidx.lifecycle:lifecycle-livedata-core-ktx:$versions.androidx.lifecycle",
lifecycleRuntime: "androidx.lifecycle:lifecycle-runtime-ktx:$versions.androidx.lifecycle",
lifecycleViewmodel: "androidx.lifecycle:lifecycle-viewmodel:$versions.androidx.lifecycle",
paging: "androidx.paging:paging-runtime:$versions.androidx.paging",
preference: "androidx.preference:preference-ktx:$versions.androidx.preference",
recyclerview: "androidx.recyclerview:recyclerview:$versions.androidx.recyclerview",
recyclerviewSelection: "androidx.recyclerview:recyclerview-selection:$versions.androidx.recyclerviewSelection",
savedstate: "androidx.savedstate:savedstate-ktx:$versions.androidx.savedstate",
splashscreen: "androidx.core:core-splashscreen:$versions.androidx.splashscreen"
],
androidGradlePlugin: "com.android.tools.build:gradle:$versions.androidGradlePlugin",
billing: "com.android.billingclient:billing-ktx:$versions.billing",
dagger: [
compiler: "com.google.dagger:dagger-compiler:$versions.dagger",
runtime: "com.google.dagger:dagger:$versions.dagger"
],
daggerAndroid: [
compiler: "com.google.dagger:dagger-android-processor:$versions.dagger",
runtime: "com.google.dagger:dagger-android:$versions.dagger"
],
demomode: "com.nightlynexus.demomode:demomode:$versions.demomode",
diskcrashreporter: "com.nightlynexus.diskcrashreporter:diskcrashreporter:$versions.diskcrashreporter",
junit: "junit:junit:$versions.junit",
kotlin: [
coroutines: "org.jetbrains.kotlinx:kotlinx-coroutines-core:$versions.coroutines",
coroutinesAndroid: "org.jetbrains.kotlinx:kotlinx-coroutines-android:$versions.coroutines",
gradlePlugin: "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlin",
stdlibJdk8: "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$versions.kotlin",
test: "org.jetbrains.kotlin:kotlin-test:$versions.kotlin"
],
ktor: [
core: "io.ktor:ktor-server-core:$versions.ktor",
netty: "io.ktor:ktor-server-netty:$versions.ktor"
],
leakcanary: "com.squareup.leakcanary:leakcanary-android:$versions.leakcanary",
material: "com.google.android.material:material:$versions.material",
moshi: [
core: "com.squareup.moshi:moshi:$versions.moshi",
kotlinCodegen: "com.squareup.moshi:moshi-kotlin-codegen:$versions.moshi"
],
okhttp: [
core: "com.squareup.okhttp3:okhttp:$versions.okhttp",
mockwebserver: "com.squareup.okhttp3:mockwebserver:$versions.okhttp"
],
okio: "com.squareup.okio:okio:$versions.okio",
retrofit: [
converterMoshi: "com.squareup.retrofit2:converter-moshi:$versions.retrofit",
core: "com.squareup.retrofit2:retrofit:$versions.retrofit",
logging: "com.nightlynexus.logging-retrofit:logging:$versions.retrofitLogging"
],
sqldelight: [
androidDriver: "app.cash.sqldelight:android-driver:$versions.sqldelight",
gradlePlugin: "app.cash.sqldelight:gradle-plugin:$versions.sqldelight",
sqliteDriver: "app.cash.sqldelight:sqlite-driver:$versions.sqldelight"
],
truth: "com.google.truth:truth:$versions.truth"
]
dependencies {
classpath deps.androidGradlePlugin
classpath deps.kotlin.gradlePlugin
classpath deps.sqldelight.gradlePlugin
}
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
allprojects {
repositories {
google()
mavenCentral()
}
afterEvaluate { project ->
project.configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.version.endsWith('+')) {
throw new GradleException(
"Wildcard dependency forbidden: ${requested.group}:${requested.name}:${requested.version}"
)
}
}
}
}
}