Skip to content

Commit 478e5c8

Browse files
committed
Merge branch 'main' into release/0.10.0
2 parents f738c20 + 842ac62 commit 478e5c8

File tree

12 files changed

+51
-24
lines changed

12 files changed

+51
-24
lines changed

CHANGELOG.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,16 @@ Sentry.init { options ->
1414
```
1515
- Add `Sentry.isEnabled()` API to common code ([#273](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/273))
1616
- Add `enableWatchdogTerminationTracking` in common options ([#281](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/281))
17+
- Add `diagnosticLevel` in common options ([#287](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/287))
1718

1819
### Dependencies
1920

2021
- Bump Cocoa SDK from v8.36.0 to v8.38.0 ([#279](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/279), [#285](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/285))
2122
- [changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#8380)
2223
- [diff](https://github.com/getsentry/sentry-cocoa/compare/8.36.0...8.38.0)
23-
- Bump Java SDK from v7.14.0 to v7.15.0 ([#284](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/284))
24-
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#7150)
25-
- [diff](https://github.com/getsentry/sentry-java/compare/7.14.0...7.15.0)
24+
- Bump Java SDK from v7.14.0 to v7.16.0 ([#284](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/284), [#289](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/289))
25+
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#7160)
26+
- [diff](https://github.com/getsentry/sentry-java/compare/7.14.0...7.16.0)
2627

2728
## 0.9.0
2829

buildSrc/src/main/java/Config.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ object Config {
3232
object Libs {
3333
val kotlinStd = "org.jetbrains.kotlin:kotlin-stdlib"
3434

35-
val sentryJavaVersion = "7.15.0"
35+
val sentryJavaVersion = "7.16.0"
3636
val sentryAndroid = "io.sentry:sentry-android:$sentryJavaVersion"
3737
val sentryJava = "io.sentry:sentry:$sentryJavaVersion"
3838

sentry-kotlin-multiplatform/api/android/sentry-kotlin-multiplatform.api

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,7 @@ public class io/sentry/kotlin/multiplatform/SentryOptions {
169169
public final fun getBeforeBreadcrumb ()Lkotlin/jvm/functions/Function1;
170170
public final fun getBeforeSend ()Lkotlin/jvm/functions/Function1;
171171
public final fun getDebug ()Z
172+
public final fun getDiagnosticLevel ()Lio/sentry/kotlin/multiplatform/SentryLevel;
172173
public final fun getDist ()Ljava/lang/String;
173174
public final fun getDsn ()Ljava/lang/String;
174175
public final fun getEnableAppHangTracking ()Z
@@ -197,6 +198,7 @@ public class io/sentry/kotlin/multiplatform/SentryOptions {
197198
public final fun setBeforeBreadcrumb (Lkotlin/jvm/functions/Function1;)V
198199
public final fun setBeforeSend (Lkotlin/jvm/functions/Function1;)V
199200
public final fun setDebug (Z)V
201+
public final fun setDiagnosticLevel (Lio/sentry/kotlin/multiplatform/SentryLevel;)V
200202
public final fun setDist (Ljava/lang/String;)V
201203
public final fun setDsn (Ljava/lang/String;)V
202204
public final fun setEnableAppHangTracking (Z)V

sentry-kotlin-multiplatform/api/jvm/sentry-kotlin-multiplatform.api

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ public class io/sentry/kotlin/multiplatform/SentryOptions {
166166
public final fun getBeforeBreadcrumb ()Lkotlin/jvm/functions/Function1;
167167
public final fun getBeforeSend ()Lkotlin/jvm/functions/Function1;
168168
public final fun getDebug ()Z
169+
public final fun getDiagnosticLevel ()Lio/sentry/kotlin/multiplatform/SentryLevel;
169170
public final fun getDist ()Ljava/lang/String;
170171
public final fun getDsn ()Ljava/lang/String;
171172
public final fun getEnableAppHangTracking ()Z
@@ -194,6 +195,7 @@ public class io/sentry/kotlin/multiplatform/SentryOptions {
194195
public final fun setBeforeBreadcrumb (Lkotlin/jvm/functions/Function1;)V
195196
public final fun setBeforeSend (Lkotlin/jvm/functions/Function1;)V
196197
public final fun setDebug (Z)V
198+
public final fun setDiagnosticLevel (Lio/sentry/kotlin/multiplatform/SentryLevel;)V
197199
public final fun setDist (Ljava/lang/String;)V
198200
public final fun setDsn (Ljava/lang/String;)V
199201
public final fun setEnableAppHangTracking (Z)V

sentry-kotlin-multiplatform/src/androidUnitTest/kotlin/io/sentry/kotlin/multiplatform/PlatformOptions.android.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package io.sentry.kotlin.multiplatform
22

33
import io.sentry.android.core.SentryAndroidOptions
44
import io.sentry.kotlin.multiplatform.extensions.toAndroidSentryOptionsCallback
5+
import io.sentry.kotlin.multiplatform.extensions.toKmpSentryLevel
56
import io.sentry.kotlin.multiplatform.utils.fakeDsn
67
import kotlin.test.assertContains
78
import kotlin.test.assertEquals
@@ -30,6 +31,9 @@ class SentryAndroidOptionsWrapper(private val androidOptions: SentryAndroidOptio
3031
override val debug: Boolean
3132
get() = androidOptions.isDebug
3233

34+
override val diagnosticLevel: SentryLevel
35+
get() = androidOptions.diagnosticLevel.toKmpSentryLevel()!!
36+
3337
override val environment: String?
3438
get() = androidOptions.environment
3539

sentry-kotlin-multiplatform/src/appleMain/kotlin/io/sentry/kotlin/multiplatform/extensions/SentryOptionsExtensions.apple.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ internal fun CocoaSentryOptions.applyCocoaBaseOptions(kmpOptions: SentryOptions)
3232
cocoaOptions.enableAppHangTracking = kmpOptions.enableAppHangTracking
3333
cocoaOptions.enableWatchdogTerminationTracking = kmpOptions.enableWatchdogTerminationTracking
3434
cocoaOptions.appHangTimeoutInterval = kmpOptions.appHangTimeoutIntervalMillis.toDouble()
35+
cocoaOptions.diagnosticLevel = kmpOptions.diagnosticLevel.toCocoaSentryLevel()
3536
kmpOptions.sampleRate?.let {
3637
cocoaOptions.sampleRate = NSNumber(double = it)
3738
}

sentry-kotlin-multiplatform/src/appleTest/kotlin/io/sentry/kotlin/multiplatform/PlatformOptions.apple.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package io.sentry.kotlin.multiplatform
22

33
import io.sentry.kotlin.multiplatform.extensions.toCocoaOptionsConfiguration
4+
import io.sentry.kotlin.multiplatform.extensions.toKmpSentryLevel
45
import io.sentry.kotlin.multiplatform.utils.fakeDsn
56
import kotlinx.cinterop.convert
67
import kotlin.test.assertEquals
@@ -50,6 +51,9 @@ open class SentryAppleOptionsWrapper(private val cocoaOptions: CocoaSentryOption
5051
override val enableWatchdogTerminationTracking: Boolean
5152
get() = cocoaOptions.enableWatchdogTerminationTracking
5253

54+
override val diagnosticLevel: SentryLevel
55+
get() = cocoaOptions.diagnosticLevel.toKmpSentryLevel()!!
56+
5357
override fun applyFromOptions(options: SentryOptions) {
5458
options.toCocoaOptionsConfiguration().invoke(cocoaOptions)
5559
}

sentry-kotlin-multiplatform/src/commonJvmMain/kotlin/io/sentry/kotlin/multiplatform/extensions/SentryOptionsExtensions.jvm.kt

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -16,32 +16,34 @@ internal fun SentryOptions.toJvmSentryOptionsCallback(): (JvmSentryOptions) -> U
1616
* Applies the given base SentryOptions to this JvmSentryOption
1717
* This avoids code duplication during init on Android
1818
*/
19-
internal fun JvmSentryOptions.applyJvmBaseOptions(options: SentryOptions) {
20-
dsn = options.dsn
21-
isAttachThreads = options.attachThreads
22-
isAttachStacktrace = options.attachStackTrace
23-
dist = options.dist
24-
environment = options.environment
25-
release = options.release
26-
isDebug = options.debug
27-
sessionTrackingIntervalMillis = options.sessionTrackingIntervalMillis
28-
isEnableAutoSessionTracking = options.enableAutoSessionTracking
29-
maxAttachmentSize = options.maxAttachmentSize
30-
maxBreadcrumbs = options.maxBreadcrumbs
31-
sampleRate = options.sampleRate
32-
tracesSampleRate = options.tracesSampleRate
33-
setBeforeBreadcrumb { jvmBreadcrumb, _ ->
34-
if (options.beforeBreadcrumb == null) {
19+
internal fun JvmSentryOptions.applyJvmBaseOptions(kmpOptions: SentryOptions) {
20+
val jvmOptions = this
21+
jvmOptions.dsn = kmpOptions.dsn
22+
jvmOptions.isAttachThreads = kmpOptions.attachThreads
23+
jvmOptions.isAttachStacktrace = kmpOptions.attachStackTrace
24+
jvmOptions.dist = kmpOptions.dist
25+
jvmOptions.environment = kmpOptions.environment
26+
jvmOptions.release = kmpOptions.release
27+
jvmOptions.isDebug = kmpOptions.debug
28+
jvmOptions.sessionTrackingIntervalMillis = kmpOptions.sessionTrackingIntervalMillis
29+
jvmOptions.isEnableAutoSessionTracking = kmpOptions.enableAutoSessionTracking
30+
jvmOptions.maxAttachmentSize = kmpOptions.maxAttachmentSize
31+
jvmOptions.maxBreadcrumbs = kmpOptions.maxBreadcrumbs
32+
jvmOptions.sampleRate = kmpOptions.sampleRate
33+
jvmOptions.tracesSampleRate = kmpOptions.tracesSampleRate
34+
jvmOptions.setDiagnosticLevel(kmpOptions.diagnosticLevel.toJvmSentryLevel())
35+
jvmOptions.setBeforeBreadcrumb { jvmBreadcrumb, _ ->
36+
if (kmpOptions.beforeBreadcrumb == null) {
3537
jvmBreadcrumb
3638
} else {
37-
options.beforeBreadcrumb?.invoke(jvmBreadcrumb.toKmpBreadcrumb())?.toJvmBreadcrumb()
39+
kmpOptions.beforeBreadcrumb?.invoke(jvmBreadcrumb.toKmpBreadcrumb())?.toJvmBreadcrumb()
3840
}
3941
}
40-
setBeforeSend { jvmSentryEvent, hint ->
41-
if (options.beforeSend == null) {
42+
jvmOptions.setBeforeSend { jvmSentryEvent, hint ->
43+
if (kmpOptions.beforeSend == null) {
4244
jvmSentryEvent
4345
} else {
44-
options.beforeSend?.invoke(SentryEvent(jvmSentryEvent))?.let {
46+
kmpOptions.beforeSend?.invoke(SentryEvent(jvmSentryEvent))?.let {
4547
jvmSentryEvent.applyKmpEvent(it)
4648
}
4749
}

sentry-kotlin-multiplatform/src/commonMain/kotlin/io/sentry/kotlin/multiplatform/SentryOptions.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ public open class SentryOptions {
7070
/** Information about the Sentry SDK that generated this event. */
7171
public var sdk: SdkVersion? = null
7272

73+
/** Sets the minimum log level. Default is [SentryLevel.DEBUG] */
74+
public var diagnosticLevel: SentryLevel = SentryLevel.DEBUG
75+
7376
/** This variable controls the total amount of breadcrumbs that should be captured. Default is 100. */
7477
public var maxBreadcrumbs: Int = DEFAULT_MAX_BREADCRUMBS
7578

sentry-kotlin-multiplatform/src/commonTest/kotlin/io/sentry/kotlin/multiplatform/PlatformOptions.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ interface CommonPlatformOptions {
66
val release: String?
77
val debug: Boolean
88
val environment: String?
9+
val diagnosticLevel: SentryLevel
910
val dist: String?
1011
val enableAutoSessionTracking: Boolean
1112
val sessionTrackingIntervalMillis: Long

0 commit comments

Comments
 (0)