Skip to content

Commit

Permalink
Fix: sentry-android-timber package sets sentry.java.android.timber as…
Browse files Browse the repository at this point in the history
… SDK name (#1456)
  • Loading branch information
marandaneto committed May 3, 2021
1 parent 1602f79 commit 2a966a4
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 4 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
@@ -1,5 +1,7 @@
# Unreleased

* Fix: sentry-android-timber package sets sentry.java.android.timber as SDK name (#1456)

Breaking Changes:

* Remove: Settings.Secure.ANDROID_ID in favor of generated installationId (#1455)
Expand Down
1 change: 1 addition & 0 deletions buildSrc/src/main/java/Config.kt
Expand Up @@ -125,6 +125,7 @@ object Config {
object Sentry {
val SENTRY_JAVA_SDK_NAME = "sentry.java"
val SENTRY_ANDROID_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.android"
val SENTRY_TIMBER_SDK_NAME = "$SENTRY_ANDROID_SDK_NAME.timber"
val SENTRY_LOGBACK_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.logback"
val SENTRY_JUL_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.jul"
val SENTRY_LOG4J2_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.log4j2"
Expand Down
1 change: 1 addition & 0 deletions sentry-android-timber/api/sentry-android-timber.api
Expand Up @@ -2,6 +2,7 @@ public final class io/sentry/android/timber/BuildConfig {
public static final field BUILD_TYPE Ljava/lang/String;
public static final field DEBUG Z
public static final field LIBRARY_PACKAGE_NAME Ljava/lang/String;
public static final field SENTRY_TIMBER_SDK_NAME Ljava/lang/String;
public static final field VERSION_NAME Ljava/lang/String;
public fun <init> ()V
}
Expand Down
1 change: 1 addition & 0 deletions sentry-android-timber/build.gradle.kts
Expand Up @@ -25,6 +25,7 @@ android {

// for AGP 4.1
buildConfigField("String", "VERSION_NAME", "\"$versionName\"")
buildConfigField("String", "SENTRY_TIMBER_SDK_NAME", "\"${Config.Sentry.SENTRY_TIMBER_SDK_NAME}\"")
}

buildTypes {
Expand Down
Expand Up @@ -5,6 +5,8 @@ import io.sentry.ILogger
import io.sentry.Integration
import io.sentry.SentryLevel
import io.sentry.SentryOptions
import io.sentry.android.timber.BuildConfig.SENTRY_TIMBER_SDK_NAME
import io.sentry.android.timber.BuildConfig.VERSION_NAME
import io.sentry.protocol.SdkVersion
import java.io.Closeable
import timber.log.Timber
Expand All @@ -20,7 +22,7 @@ class SentryTimberIntegration(
private lateinit var logger: ILogger

override fun register(hub: IHub, options: SentryOptions) {
addPackage(options.sdkVersion)
createSdkVersion(options)
logger = options.logger

tree = SentryTimberTree(hub, minEventLevel, minBreadcrumbLevel)
Expand All @@ -39,7 +41,15 @@ class SentryTimberIntegration(
}
}

private fun addPackage(sdkVersion: SdkVersion?) {
sdkVersion?.addPackage("maven:io.sentry:sentry-android-timber", BuildConfig.VERSION_NAME)
private fun createSdkVersion(options: SentryOptions): SdkVersion {
var sdkVersion = options.sdkVersion

val name = SENTRY_TIMBER_SDK_NAME
val version = VERSION_NAME
sdkVersion = SdkVersion.updateSdkVersion(sdkVersion, name, version)

sdkVersion.addPackage("maven:io.sentry:sentry-android-timber", VERSION_NAME)

return sdkVersion
}
}
Expand Up @@ -18,7 +18,7 @@ class SentryTimberIntegrationTest {
private class Fixture {
val hub = mock<IHub>()
val options = SentryOptions().apply {
sdkVersion = SdkVersion()
sdkVersion = SdkVersion("test", "1.2.3")
}

fun getSut(
Expand Down Expand Up @@ -96,4 +96,15 @@ class SentryTimberIntegrationTest {
it.version == BuildConfig.VERSION_NAME
})
}

@Test
fun `Integration sets SDK name and version to options`() {
val sut = fixture.getSut()
sut.register(fixture.hub, fixture.options)

val sdkVersion = fixture.options.sdkVersion!!

assertEquals(sdkVersion.name, "sentry.java.android.timber")
assertEquals(sdkVersion.version, BuildConfig.VERSION_NAME)
}
}

0 comments on commit 2a966a4

Please sign in to comment.