Skip to content

Commit 6284e75

Browse files
Merge e1b07be into 4c4fed9
2 parents 4c4fed9 + e1b07be commit 6284e75

File tree

8 files changed

+52
-0
lines changed

8 files changed

+52
-0
lines changed

gradle/libs.versions.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ targetSdk = "34"
3737
compileSdk = "34"
3838
minSdk = "21"
3939
spotless = "7.0.4"
40+
gummyBears = "0.12.0"
4041

4142
[plugins]
4243
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
@@ -62,6 +63,7 @@ springboot3 = { id = "org.springframework.boot", version.ref = "springboot3" }
6263
springboot4 = { id = "org.springframework.boot", version.ref = "springboot4" }
6364
spring-dependency-management = { id = "io.spring.dependency-management", version = "1.0.11.RELEASE" }
6465
gretty = { id = "org.gretty", version = "4.0.0" }
66+
animalsniffer = { id = "ru.vyarus.animalsniffer", version = "2.0.1" }
6567

6668
[libraries]
6769
apache-httpclient = { module = "org.apache.httpcomponents.client5:httpclient5", version = "5.0.4" }
@@ -176,6 +178,9 @@ springboot4-starter-jdbc = { module = "org.springframework.boot:spring-boot-star
176178
springboot4-starter-actuator = { module = "org.springframework.boot:spring-boot-starter-actuator", version.ref = "springboot4" }
177179
timber = { module = "com.jakewharton.timber:timber", version = "4.7.1" }
178180

181+
# Animalsniffer signature
182+
gummy-bears-api21 = { module = "com.toasttab.android:gummy-bears-api-21", version.ref = "gummyBears" }
183+
179184
# tomcat libraries
180185
tomcat-catalina = { module = "org.apache.tomcat:tomcat-catalina", version = "9.0.108" }
181186
tomcat-embed-jasper = { module = "org.apache.tomcat.embed:tomcat-embed-jasper", version = "9.0.108" }

sentry-apollo-3/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -37,6 +38,9 @@ dependencies {
3738
testImplementation(libs.mockito.kotlin)
3839
testImplementation(libs.mockito.inline)
3940
testImplementation(libs.okhttp.mockwebserver)
41+
42+
val gummyBearsModule = libs.gummy.bears.api21.get().module
43+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
4044
}
4145

4246
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -57,6 +61,7 @@ tasks {
5761
check {
5862
dependsOn(jacocoTestCoverageVerification)
5963
dependsOn(jacocoTestReport)
64+
dependsOn(animalsnifferMain)
6065
}
6166
}
6267

sentry-apollo-4/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
configure<JavaPluginExtension> {
@@ -44,6 +45,9 @@ dependencies {
4445
testImplementation(libs.mockito.inline)
4546
testImplementation(libs.okhttp.mockwebserver)
4647
testImplementation("org.jetbrains.kotlin:kotlin-reflect:2.0.0")
48+
49+
val gummyBearsModule = libs.gummy.bears.api21.get().module
50+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
4751
}
4852

4953
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -64,6 +68,7 @@ tasks {
6468
check {
6569
dependsOn(jacocoTestCoverageVerification)
6670
dependsOn(jacocoTestReport)
71+
dependsOn(animalsnifferMain)
6772
}
6873
}
6974

sentry-apollo/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -38,6 +39,9 @@ dependencies {
3839
testImplementation(libs.mockito.kotlin)
3940
testImplementation(libs.mockito.inline)
4041
testImplementation(libs.okhttp.mockwebserver)
42+
43+
val gummyBearsModule = libs.gummy.bears.api21.get().module
44+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
4145
}
4246

4347
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -58,6 +62,7 @@ tasks {
5862
check {
5963
dependsOn(jacocoTestCoverageVerification)
6064
dependsOn(jacocoTestReport)
65+
dependsOn(animalsnifferMain)
6166
}
6267
}
6368

sentry-kotlin-extensions/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.detekt)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -32,6 +33,9 @@ dependencies {
3233
testImplementation(libs.kotlinx.coroutines)
3334
testImplementation(libs.kotlinx.coroutines.test)
3435
testImplementation(libs.mockito.kotlin)
36+
37+
val gummyBearsModule = libs.gummy.bears.api21.get().module
38+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
3539
}
3640

3741
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -52,6 +56,7 @@ tasks {
5256
check {
5357
dependsOn(jacocoTestCoverageVerification)
5458
dependsOn(jacocoTestReport)
59+
dependsOn(animalsnifferMain)
5560
}
5661
}
5762

sentry-ktor-client/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -39,6 +40,9 @@ dependencies {
3940
testImplementation(libs.ktor.client.core)
4041
testImplementation(libs.ktor.client.java)
4142
testImplementation(libs.okhttp.mockwebserver)
43+
44+
val gummyBearsModule = libs.gummy.bears.api21.get().module
45+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
4246
}
4347

4448
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -59,6 +63,7 @@ tasks {
5963
check {
6064
dependsOn(jacocoTestCoverageVerification)
6165
dependsOn(jacocoTestReport)
66+
dependsOn(animalsnifferMain)
6267
}
6368
}
6469

sentry-okhttp/build.gradle.kts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -38,6 +39,9 @@ dependencies {
3839
testImplementation(libs.mockito.inline)
3940
testImplementation(libs.okhttp)
4041
testImplementation(libs.okhttp.mockwebserver)
42+
43+
val gummyBearsModule = libs.gummy.bears.api21.get().module
44+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
4145
}
4246

4347
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -58,6 +62,7 @@ tasks {
5862
check {
5963
dependsOn(jacocoTestCoverageVerification)
6064
dependsOn(jacocoTestReport)
65+
dependsOn(animalsnifferMain)
6166
}
6267
}
6368

sentry/build.gradle.kts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ plugins {
99
alias(libs.plugins.errorprone)
1010
alias(libs.plugins.gradle.versions)
1111
alias(libs.plugins.buildconfig)
12+
alias(libs.plugins.animalsniffer)
1213
}
1314

1415
tasks.withType<KotlinCompile>().configureEach {
@@ -31,6 +32,9 @@ dependencies {
3132
testImplementation(libs.msgpack)
3233
testImplementation(libs.okio)
3334
testImplementation(projects.sentryTestSupport)
35+
36+
val gummyBearsModule = libs.gummy.bears.api21.get().module
37+
signature("${gummyBearsModule}:${libs.versions.gummyBears.get()}@signature")
3438
}
3539

3640
configure<SourceSetContainer> { test { java.srcDir("src/test/java") } }
@@ -44,13 +48,26 @@ tasks.jacocoTestReport {
4448
}
4549
}
4650

51+
animalsniffer {
52+
ignore = listOf(
53+
// We manually check on Android if it's available (API 26+).
54+
"java.time.Instant",
55+
)
56+
}
57+
58+
tasks.animalsnifferMain {
59+
// Uses java.util.function.Supplier, but must be manually invoked.
60+
exclude("**/io/sentry/SentryWrapper.class")
61+
}
62+
4763
tasks {
4864
jacocoTestCoverageVerification {
4965
violationRules { rule { limit { minimum = Config.QualityPlugins.Jacoco.minimumCoverage } } }
5066
}
5167
check {
5268
dependsOn(jacocoTestCoverageVerification)
5369
dependsOn(jacocoTestReport)
70+
dependsOn(animalsnifferMain)
5471
}
5572
test {
5673
jvmArgs("--add-opens", "java.base/java.util.concurrent=ALL-UNNAMED")

0 commit comments

Comments
 (0)