-
-
Notifications
You must be signed in to change notification settings - Fork 350
/
build.gradle
117 lines (101 loc) · 3.27 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
buildscript {
ext {
kotlinVersion = '2.0.21'
androidGradleVersion = '8.7.2'
coroutineVersion = '1.9.0'
// Google libraries
activityVersion = '1.9.3'
appCompatVersion = '1.7.0'
constraintLayoutVersion = '2.2.0'
materialComponentsVersion = '1.12.0'
fragmentVersion = '1.8.5'
roomVersion = '2.6.1'
lifecycleVersion = '2.8.7'
androidXCoreVersion = '2.2.0'
paletteKtxVersion = '1.0.0'
kspVersion = '2.0.21-1.0.26'
// Networking
brotliVersion = '0.1.2'
gsonVersion = '2.11.0'
okhttpVersion = '4.12.0'
retrofitVersion = '2.11.0'
wireVersion = '5.1.0'
// Debug and quality control
binaryCompatibilityValidator = '0.16.3'
detektVersion = '1.23.7'
ktLintGradleVersion = '12.1.1'
leakcanaryVersion = '2.14'
// Apollo
apolloVersion = '3.8.5'
// Testing
androidxTestCoreVersion = '1.6.1'
junitGradlePluignVersion = '1.11.2.0'
junitVersion = '5.11.3'
junit4Version = '4.13.2'
mockkVersion = '1.13.13'
robolectricVersion = '4.13'
truthVersion = '1.4.4'
androidXTestRunner = '1.6.2'
androidXTestRules = '1.6.1'
androidXTestExt = '1.2.1'
// Publishing
nexusStagingPlugin = '0.30.0'
}
repositories {
google()
gradlePluginPortal()
}
dependencies {
classpath "com.android.tools.build:gradle:$androidGradleVersion"
classpath "de.mannodermaus.gradle.plugins:android-junit5:$junitGradlePluignVersion"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
classpath "com.apollographql.apollo3:apollo-gradle-plugin:$apolloVersion"
classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:$detektVersion"
classpath "org.jlleitschuh.gradle:ktlint-gradle:$ktLintGradleVersion"
classpath "org.jetbrains.kotlinx:binary-compatibility-validator:$binaryCompatibilityValidator"
classpath "com.squareup.wire:wire-gradle-plugin:$wireVersion"
classpath "io.codearte.gradle.nexus:gradle-nexus-staging-plugin:$nexusStagingPlugin"
classpath "com.google.devtools.ksp:symbol-processing-gradle-plugin:$kspVersion"
}
}
apply plugin: 'binary-compatibility-validator'
apply plugin: 'io.codearte.nexus-staging'
apiValidation {
ignoredProjects += ["sample"]
ignoredPackages += [
"com.chuckerteam.chucker.internal",
"com.chuckerteam.chucker.databinding"
]
}
allprojects {
version = VERSION_NAME
group = GROUP
repositories {
google()
mavenCentral()
}
tasks.withType(Test) {
testLogging {
events "skipped", "failed", "passed"
}
}
}
task installGitHook(type: Copy) {
from new File(rootProject.rootDir, 'pre-commit')
into { new File(rootProject.rootDir, '.git/hooks') }
fileMode 0777
}
task clean(type: Delete) {
dependsOn(installGitHook)
delete rootProject.buildDir
}
ext {
minSdkVersion = 21
targetSdkVersion = 35
compileSdkVersion = 35
}
nexusStaging {
username = findProperty("NEXUS_USERNAME")
password = findProperty("NEXUS_PASSWORD")
stagingProfileId = "ea09119de9f4"
}