Breaking Changes
- Require Dart 3.12.0 or newer and Flutter 3.44.0 or newer. (#3784)
- Remove CocoaPods support. Flutter apps targeting Apple platforms must use Swift Package Manager. (#3879)
- Remove
enableLogsandenableMetrics. Logs and metrics are always enabled. The logging integration forwards Sentry logs by default; adjustminSentryLogLevelor set it toLevel.OFFto disable forwarding. (#3983) - Remove
enableStandaloneAppStartTracing. When tracing is enabled, app start is always reported as a standaloneapp.startroot on Android and iOS. (#3981) - Make native failed-request capture opt-in. (#3885)
- Run error sampling after event processors and
beforeSend. These callbacks now also run for events that are subsequently sampled out. (#3955) - Require
traceIdonSentryLog, make logger methods returnvoid, and removeSentryLogAttribute. (#3842, #3852, #3843) - Add a
Hintparameter to the before-send callbacks for logs, metrics, and spans. (#3847) - Make feature flags hub/scope-based. (#3848)
- Remove SDK profiling and deprecated performance collectors. (#3891, #3850)
- Remove deprecated
copyWithAPIs and protocol clones, and makeclone()internal. (#3877, #3845) - Remove the deprecated
SentryFeedbackWidget. (#3844) - Replace
options.logwith internal logging and makeBindingWrapperandbindingUtilsinternal. (#3932, #3940) - Align span attributes with Sentry Conventions and remove
file.asyncfrom file instrumentation. (#3805, #3841) - Use Breakpad as the default native crash backend on Windows and Linux. (#4045)
Features
- Add manual Session Replay controls on Android and iOS through
SentryFlutter.replay:start,startBuffering,pause,resume,stop, andflush. Explicitly started replays work even when both automatic sample rates are0. (#4010) - Add app-start extension APIs and lifecycle-specific span getters, and improve startup frame spans. (#3896, #3918, #4018)
- Include sampled-out errors in release health, and report unhandled Flutter errors as unhandled sessions rather than crashes. (#4008, #4007)
- Mask
SensitiveContentby default in Session Replay. (#3973) - Record Android replay segment names and span segment-name sources. (#3897, #3904)
- Support array attributes in telemetry and attach feature flags to the hub span. (#3778, #3806)
- Graduate span streaming and other mature v10 APIs from experimental status. (#3756, #3940)
Enhancements
- Improve Android scope synchronization and replay screenshot transfer performance. (#3924)
- Support 64-bit integer values from Sentry Native. (#3760)
- Migrate the Android plugin to Flutter’s built-in Kotlin support. (#3961)
Fixes
- Isolate failures in user-provided callbacks. (#4026)
- Close background JNI workers when their owning isolate exits while preserving native reporting across cached-engine view detachment and reattachment. (#3987)
- Await in-flight replay captures during scheduler shutdown and skip new captures while the app is not resumed. (#3935)
- Prevent delayed-frame state errors and guard script completion. (#3876, #3912)
- Add the app-start screen attribute and exclude later frame builds from startup timing. (#3893, 8ee2d41)
- Align HTTP client error type and value. (#3934)
- Accept double timestamps in Android network breadcrumbs. (#3859)
- Read normalized rate-limit headers and report missing metric byte outcomes. (#3883, #3905)