Features
Breaking changes:
- Capture failed HTTP requests by default (#2794)
- Reduce flush timeout to 4s on Android to avoid ANRs (#2858)
- Set ip_address to {{auto}} by default, even if sendDefaultPII is disabled (#2860)
- Instead use the "Prevent Storing of IP Addresses" option in the "Security & Privacy" project settings on sentry.io
- Reduce timeout of AsyncHttpTransport to avoid ANR (#2879)
- Add deadline timeout for automatic transactions (#2865)
- This affects all automatically generated transactions on Android (UI, clicks), the default timeout is 30s
- Apollo v2 BeforeSpanCallback now allows returning null (#2890)
- Automatic user interaction tracking: every click now starts a new automatic transaction (#2891)
- Previously performing a click on the same UI widget twice would keep the existing transaction running, the new behavior now better aligns with other SDKs
- Android only: If global hub mode is enabled, Sentry.getSpan() returns the root span instead of the latest span (#2855)
- Observe network state to upload any unsent envelopes (#2910)
- Android: it works out-of-the-box as part of the default
SendCachedEnvelopeIntegration
- JVM: you'd have to install
SendCachedEnvelopeFireAndForgetIntegration
as mentioned in https://docs.sentry.io/platforms/java/configuration/#configuring-offline-caching and provide your own implementation ofIConnectionStatusProvider
viaSentryOptions
- Android: it works out-of-the-box as part of the default
- Do not try to send and drop cached envelopes when rate-limiting is active (#2937)
Fixes
- Measure AppStart time till First Draw instead of
onResume
(#2851) - Do not overwrite UI transaction status if set by the user (#2852)
- Capture unfinished transaction on Scope with status
aborted
in case a crash happens (#2938)- This will fix the link between transactions and corresponding crashes, you'll be able to see them in a single trace
Breaking changes:
- Move enableNdk from SentryOptions to SentryAndroidOptions (#2793)
- Fix Coroutine Context Propagation using CopyableThreadContextElement, requires
kotlinx-coroutines-core
version1.6.1
or higher (#2838) - Bump min API to 19 (#2883)
- Fix don't overwrite the span status of unfinished spans (#2859)
- If you're using a self hosted version of sentry, sentry self hosted >= 22.12.0 is required
- Migrate from
default
interface methods to proper implementations in each interface implementor (#2847)- This prevents issues when using the SDK on older AGP versions (< 4.x.x)
- Make sure to align Sentry dependencies to the same version when bumping the SDK to 7.+, otherwise it will crash at runtime due to binary incompatibility.
(E.g. if you're using-timber
,-okhttp
or other packages)