Releases: getsentry/sentry-java
Releases · getsentry/sentry-java
7.0.0-beta.1
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
SendCachedEnvelopeFireAndForgetIntegrationas mentioned in https://docs.sentry.io/platforms/java/configuration/#configuring-offline-caching and provide your own implementation ofIConnectionStatusProviderviaSentryOptions
- 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
abortedin 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-coreversion1.6.1or 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
defaultinterface 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,-okhttpor other packages)
6.30.0
Features
- Add
sendModulesoption for disable sending modules (#2926) - Send
db.systemanddb.namein span data for androidx.sqlite spans (#2928) - Check-ins (CRONS) support (#2952)
Fixes
- Always send memory stats for transactions (#2936)
- This makes it possible to query transactions by the
device.classtag on Sentry
- This makes it possible to query transactions by the
- Add
sentry.enable-aot-compatibilityproperty to SpringBoot JakartaSentryAutoConfigurationto enable building for GraalVM (#2915)
Dependencies
- Bump Gradle from v8.2.1 to v8.3.0 (#2900)
- [changelog](https://github.com/gradle/gradle/blob/master release-test/CHANGELOG.md#v830)
- diff
6.29.0
6.28.0
Features
- Add HTTP response code to Spring WebFlux transactions (#2870)
- Add
sampledto Dynamic Sampling Context (#2869) - Improve server side GraphQL support for spring-graphql and Nextflix DGS (#2856)
- If you have already been using
SentryDataFetcherExceptionHandlerthat still works but has been deprecated. Please useSentryGenericDataFetcherExceptionHandlercombined withSentryInstrumentationinstead for better error reporting. - More exceptions and errors caught and reported to Sentry by also looking at the
ExecutionResult(more specifically itserrors)- You may want to filter out certain errors, please see docs on filtering
- More details for Sentry events: query, variables and response (where possible)
- Breadcrumbs for operation (query, mutation, subscription), data fetchers and data loaders (Spring only)
- Better hub propagation by using
GraphQLContext
- If you have already been using
- Add autoconfigure modules for Spring Boot called
sentry-spring-bootandsentry-spring-boot-jakarta(#2880)- The autoconfigure modules
sentry-spring-bootandsentry-spring-boot-jakartahave acompileOnlydependency onspring-boot-starterwhich is needed for our auto installation in sentry-android-gradle-plugin - The starter modules
sentry-spring-boot-starterandsentry-spring-boot-starter-jakartanow bringspring-boot-starteras a dependency
- The autoconfigure modules
- You can now disable Sentry by setting the
enabledoption tofalse(#2840)
Fixes
- Propagate OkHttp status to parent spans (#2872)
6.27.0
Features
- Add TraceOrigin to Transactions and Spans (#2803)
Fixes
- Deduplicate events happening in multiple threads simultaneously (e.g.
OutOfMemoryError) (#2845)- This will improve Crash-Free Session Rate as we no longer will send multiple Session updates with
Crashedstatus, but only the one that is relevant
- This will improve Crash-Free Session Rate as we no longer will send multiple Session updates with
- Ensure no Java 8 method reference sugar is used for Android (#2857)
- Do not send session updates for terminated sessions (#2849)
6.26.0
6.25.2
6.25.1
6.25.0
Features
- Add manifest
AutoInitto integrations list (#2795) - Tracing headers (
sentry-traceandbaggage) are now attached and passed through even if performance is disabled (#2788)
Fixes
- Set
environmentfromSentryOptionsif none persisted in ANRv2 (#2809) - Remove code that set
tracesSampleRateto0.0for Spring Boot if not set (#2800)- This used to enable performance but not send any transactions by default.
- Performance is now disabled by default.
- Fix slow/frozen frames were not reported with transactions (#2811)
Dependencies
6.24.0
Features
- Add debouncing mechanism and before-capture callbacks for screenshots and view hierarchies (#2773)
- Improve ANRv2 implementation (#2792)
- Add a proguard rule to keep
ApplicationNotRespondingclass from obfuscation - Add a new option
setReportHistoricalAnrs; when enabled, it will report all of the ANRs from the getHistoricalExitReasons list.
By default, the SDK only reports and enriches the latest ANR and only this one counts towards ANR rate.
Worth noting that this option is mainly useful when updating the SDK to the version where ANRv2 has been introduced, to report all ANRs happened prior to the SDK update. After that, the SDK will always pick up the latest ANR from the historical exit reasons list on next app restart, so there should be no historical ANRs to report.
These ANRs are reported with theHistoricalAppExitInfomechanism. - Add a new option
setAttachAnrThreadDumpto send ANR thread dump from the system as an attachment.
This is only useful as additional information, because the SDK attempts to parse the thread dump into proper threads with stacktraces by default. - If ApplicationExitInfo#getTraceInputStream returns null, the SDK no longer reports an ANR event, as these events are not very useful without it.
- Enhance regex patterns for native stackframes
- Add a proguard rule to keep