Skip to content

Latest commit

 

History

History
548 lines (377 loc) · 23.5 KB

File metadata and controls

548 lines (377 loc) · 23.5 KB

Changelog

0.25.0

Features

  • Add generic log APIs with explicit level parameter (#520)
// New APIs:
// Simple message
Sentry.logger.log(SentryLogLevel.INFO, "User logged in")

// Message with parameters
Sentry.logger.log(SentryLogLevel.WARN, "Rate limit reached for %s", endpoint)

// Message with parameters and attributes
Sentry.logger.log(SentryLogLevel.ERROR, "Failed to process %s", request) {
    this["error.code"] = 500
    this["retry"] = true
}

// Full DSL
Sentry.logger.log(SentryLogLevel.FATAL) {
    message("Database connection pool exhausted for %s", dbHost)
    attributes {
        this["database"] = "users"
        this["activeConnections"] = 100
    }
}

Enhancements

  • Support proguardUuid option on JVM target in addition to Android (#533)

Dependencies

0.24.0

Features

  • Add structured logs support (#509)

Read the full documentation for more details.

Sentry.init {
    it.dsn = "YOUR_DSN"
    // Enable logs to be sent to Sentry
    it.logs.enabled = true
}
// Simple API
Sentry.logger.warn("Rate limit reached for %s", endpoint) {
  this["currentRequests"] = 120
  this["limit"] = 100
  this["retryAfterSeconds"] = 60
}

// Full DSL
Sentry.logger.fatal {
    message("Database connection pool exhausted for %s", dbHost)
    attributes {
        this["database"] = "users"
        this["activeConnections"] = 100
    }
}

0.23.1

Fixes

  • Fix UserFeedback not being sent on iOS (#503)

Dependencies

0.23.0

⚠️ This release will affect issue grouping for iOS events as Sentry now captures correct stacktraces for manually captured and crashed iOS events.

Features

  • Improve iOS crash reports by adding scope data (#491)
  • Improve stacktrace of manually captured exceptions on iOS (#493)

0.22.0

Features

Dependencies

0.21.0

Dependencies

0.20.0

Dependencies

0.19.0

Dependencies

0.18.0

Features

  • Add proguardUuid option to SentryOptions (#436)
    • This will propagate the proguardUuid value to Sentry Android

Fixes

  • Fix stack trace crash on Apple targets (#434)

0.17.1

Fixes

  • Gradle Plugin: allow new supported targets to be installed (#429)

0.17.0

Features

  • Add stubs/no-op support for unsupported targets (#426)

0.16.0

Potentially breaking: this release bumps the used Kotlin version to 2.1.21.

Dependencies

  • Bump Kotlin from 1.9.23 to 2.1.21 (#389)

Internal

  • Update distZip task to use the locally published artifacts via publishToMavenLocal (#425)

0.15.0

Enhancements

  • Gradle Plugin: implement conditional Cocoa linking for targets (#421, #423)

Dependencies

0.14.0

Dependencies

0.13.0

Features

  • Add sendDefaultPii option (#377)

Fixes

  • beforeSend overriding default release and dist even if it was not set explicitly (#376)

Dependencies

0.12.0

Features

  • Move replay options out of experimental (#367)
    • You can now access the replay options via options.sessionReplay

Fixes

  • Do not throw if exec operation fails (#360)
  • initWithPlatforms not sending events if beforeSend is not set on iOS (#366)

Miscellaneous

  • Update native android sdk name to sentry.native.android.kmp (#353)

Dependencies

0.11.0

Fixes

  • [Gradle Plugin]: Architecture folder name missmatch when using SPM and framework path searching (#320)
  • [Gradle Plugin]: Check exit value when executing xcodebuild command (#326)

Dependencies

0.10.0

Features

  • Add experimental session replay options to common code (#275)
Sentry.init { options ->
  // Adjust these values for production
  options.sessionReplay.onErrorSampleRate = 1.0
  options.sessionReplay.sessionSampleRate = 1.0
}
  • Add Sentry.isEnabled() API to common code (#273)
  • Add enableWatchdogTerminationTracking in common options (#281)
  • Add diagnosticLevel in common options (#287)

Dependencies

0.9.0

Improvements

  • Improve interop with objc headers (#265)
  • Plugin: dont use latest.release as default for the KMP dependency (#262)

Dependencies

  • Gradle Plugin: Bump default Cocoa SDK from v8.26.0 to v8.36.0 (#261)

0.8.0

Features

  • New Sentry KMP Gradle plugin (#230)
    • Install via plugins { id("io.sentry.kotlin.multiplatform.gradle") version "{version}" }
    • Enables auto installing of the KMP SDK to commonMain (if all targets are supported)
      • This also automatically installs the Sentry Android SDK
    • Enables auto installing of the required Sentry Cocoa SDK with Cocoapods (if Cocoapods plugin is enabled)
    • Configures linking for SPM (needed if you want to compile a dynamic framework with isStatic = false)
    • Configure via the sentryKmp configuration block in your build file
// Example configuration in build.gradle.kts
sentryKmp {
  // Disable auto installing the KMP SDK to commonMain
  autoInstall.commonMain.enabled = false
}

Dependencies

0.8.0-beta.1

Features

  • New Sentry KMP Gradle plugin (#230)
    • Install via plugins { id("io.sentry.kotlin.multiplatform.gradle") version "{version}" }
    • Enables auto installing of the KMP SDK to commonMain (if all targets are supported)
    • Enables auto installing of the required Sentry Cocoa SDK with Cocoapods (if Cocoapods plugin is enabled)
    • Configures linking for SPM (needed if you want to compile a dynamic framework)
    • Configure via the sentryKmp configuration block in your build file

Dependencies

0.7.1

Fixes

  • Symbol multiply defined when trying to run cocoa targets (#226)

0.7.0

Features

  • Allow initializing the KMP SDK with native options (#221)
    • This allows you to initialize the SDK with platform-specific options that may not be available in the common code of the KMP SDK yet.

Usage:

// build.gradle.kts
kotlin {
    sourceSets {
        all {
          languageSettings.optIn("kotlinx.cinterop.ExperimentalForeignApi")
        }
    }
}

// commonMain
fun init() {
  Sentry.initWithPlatformOptions(createPlatformOptions())
}

expect fun platformOptionsConfiguration(): PlatformOptionsConfiguration

// iOS
actual fun createPlatformOptions(): PlatformOptionsConfiguration = {
    dsn = "your_dsn"
    release = "1.0.0"
    // ...
}

// Android
actual fun createPlatformOptions(): PlatformOptionsConfiguration = {
  dsn = "your_dsn"
  release = "1.0.0"
  // ...
}

Dependencies

0.6.0

Note: This release includes a bump to Sentry Cocoa v8.25.0. Please use at least version 8.25.0 of the Sentry Cocoa SDK starting from this release. If you are using the Cocoapods gradle plugin you need to adjust your configuration:

pod("Sentry") {
    version = "8.25.0"
    // These extra options are required
    extraOpts += listOf("-compiler-option", "-fmodules")
}

Fixes

  • Don't crash app when applicationContext is not available (#217)

Enhancements

  • Make setSentryUnhandledExceptionHook public (#208)

Dependencies

0.5.0

Features

  • Add App Hang Tracking / ANR options (#187)
    • Use isAnrEnabled and anrTimeoutIntervalMillis to configure ANR tracking for Android
    • Use enableAppHangTracking and appHangTimeoutIntervalMillis to configure App Hang tracking for iOS
    • Both options are enabled by default
  • Add isCrashedLastRun (#186)
    • You can use it with Sentry.isCrashedLastRun()

Dependencies

0.4.0

Dependencies

0.3.0

Features

  • Add sample & trace rate configuration (#144)
  • Remove need for context in Sentry.init for Android (#117)

Dependencies

0.2.1

Fixes

  • fix: beforeBreadcrumb discarding if hook is not set (#105)

0.2.0

Features

  • feat: automatically disable io.sentry.auto-init (#93)

Fixes

  • fix: NSNumber to Kotlin Long crash during SentryException conversion (#92)

Improvements

  • ref: improve samples & add SPM docs (#82)

0.1.1

Fixes

  • fix: beforeSend dropping events if not set in options (#79)

0.1.0

Features

  • feat: beforeSend / fingerprinting (#70)
  • feat: configuring http client errors for Apple targets (#76)
  • feat: improve Objc/Swift experience with @HiddenFromObjc (#62)
  • feat: add view hierarchy (#53)

Fixes

  • ref: use explicit api & add code consistency (#63)
  • fix: cocoa crash handling due to sdkInfo removal in cocoa sdk (#68)

0.0.3

Fixes

  • fix: crash on Android API levels 23 and below (#61)

0.0.2

Various fixes & improvements

  • remove other sdks in .craft.yml (#58) by @buenaflor
  • fix: sdk name (#57) by @buenaflor
  • chore: update readme (#56) by @buenaflor
  • bump craft minVersion to 1.2.1 (#55) by @buenaflor

0.0.1-alpha.2

Features

  • JVM, Android, iOS, macOS, watchOS, tvOS integration
  • Sentry init and close
  • Capture Message
  • Capture Exception with proper stack traces
  • Custom unhandled exception handler on Cocoa to properly catch crashes and the stacktrace
  • Scope configuration globally and locally
  • User Feedback
  • Attachments to Scope
  • Screenshots option for Android and iOS
  • Add beforeBreadcrumb hook
  • Kotlin Multiplatform Sample project