Releases: getsentry/sentry-dart
Releases · getsentry/sentry-dart
9.0.0-RC.3
Features
- Sentry Structured Logs (#2919)
// Enable in `SentryOptions`:
options.enableLogs = true;
// Use `Sentry.logger`
Sentry.logger.info("This is a info log.");
Sentry.logger.warn("This is a warning log with attributes.", attributes: {
'attribute1': SentryLogAttribute.string('string'),
'attribute2': SentryLogAttribute.int(1),
'attribute3': SentryLogAttribute.double(1.0),
'attribute4': SentryLogAttribute.bool(true),
});Enhancements
- Align User Feedback API (#2949)
- Don’t apply breadcrumbs and extras from scope to feedback events
- Capture session replay when processing feedback events
- Record
feedbackclient report for dropped feedback events - Record
feedbackclient report for errors when usingHttpTransport
- Truncate feedback message to max 4096 characters (#2954)
Dependencies
9.0.0-RC.2
Fixes
- Add
hasSizeguard when using a renderObject inSentryUserInteractionWidget(#2946)
9.0.0-RC.1
Fixes
- Fix feature flag model keys (#2943)
9.0.0-RC
9.0.0 is now a release candidate.
9.0.0-beta.2
9.0.0-beta.1
Features
- Properly generates and links trace IDs for errors and spans (#2869, #2861):
- With
SentryNavigatorObserver- each navigation event starts a new trace. - Without
SentryNavigatorObserveron non-web platforms - a new trace is started from app
lifecycle hooks. - Web without
SentryNavigatorObserver- the same trace ID is reused until the page is
refreshed or closed.
- With
- Add
FeatureFlagIntegration(#2825)
// Manually track a feature flag
Sentry.addFeatureFlag('my-feature', true);- Firebase Remote Config Integration (#2837)
// Add the integration to automatically track feature flags from firebase remote config.
await SentryFlutter.init(
(options) {
options.dsn = 'https://[email protected]/add-your-dsn-here';
options.addIntegration(
SentryFirebaseRemoteConfigIntegration(
firebaseRemoteConfig: yourFirebaseRemoteConfig,
),
);
},
);Fixes
- Trace propagation in HTTP tracing clients not correctly set up if performance is disabled (#2850)
Behavioral changes
- Mutable Data Classes (#2818)
- Some SDK classes do not have
constconstructors anymore. - The
copyWithandclonemethods of SDK classes were deprecated.
- Some SDK classes do not have
- Set log level to
warningby default whendebug = true(#2836) - Set HTTP client breadcrumbs log level based on response status code (#2847)
- 5xx is mapped to
SentryLevel.error - 4xx is mapped to
SentryLevel.warning
- 5xx is mapped to
- Parent-child relationship for the PlatformExceptions and Cause (#2803, #2858)
- Improves and changes exception grouping. To opt in, set
groupExceptions=true
- Improves and changes exception grouping. To opt in, set
- Set
anrEnabledenabled per default (#2878)
API Changes
- Update naming of
LoadImagesListIntegrationtoLoadNativeDebugImagesIntegration(#2833) - Remove
otherfromSentryRequest(#2879)
Dependencies
8.14.2 (Stable)
9.0.0-alpha.2
Features
- Add support for Flutter Web release health (#2794)
- Requires using
SentryNavigatorObserver;
- Requires using
Dependencies
- Bump Native SDK from v0.7.20 to v0.8.2 (#2761, #2807)
- Bump Javascript SDK from v8.42.0 to v9.5.0 (#2784)
Behavioral changes
- Set sentry-native backend to
crashpadby default andbreakpadfor Windows ARM64 (#2791)- Setting the
SENTRY_NATIVE_BACKENDenvironment variable will override the defaults.
- Setting the
- Remove renderer from
flutter_context(#2751)
API changes
8.14.1 (Stable)
8.14.0
This release fixes an issue where Cold starts can be incorrectly reported as Warm starts on Android.
Behavioral changes
⚠️ Auto IP assignment forSentryUseris now guarded bysendDefaultPii(#2726)- If you rely on Sentry automatically processing the IP address of the user, set
options.sendDefaultPii = trueor manually set the IP address of theSentryUserto{{auto}}
- If you rely on Sentry automatically processing the IP address of the user, set
- Adding the device name to Contexts is now guarded by
sendDefaultPii(#2741)- Set
options.sendDefaultPii = trueif you want to have the device name reported
- Set
- Remove macOS display refresh rate support (#2628)
- Can't reliably detect on multi-monitor systems and on older macOS versions.
- Not very meaningful, as other applications may be running in parallel and affecting it.
Enhancements
- Add Flutter runtime information (#2742)
- This works if the version of Flutter you're using includes this code.
- Use
loadDebugImagesForAddressesAPI for Android (#2706)- This reduces the envelope size and data transferred across method channels
- If debug images received by
loadDebugImagesForAddressesare empty, the SDK loads all debug images as fallback
- Disable
ScreenshotIntegration,WidgetsBindingIntegrationandSentryWidgetin multi-view apps #2366 (#2366)
Fixes
- Pass missing
captureFailedRequestsparam toFailedRequestInterceptor(#2744) - Bind root screen transaction to scope (#2756)
- Reference to
SentryWidgetsFlutterBindingin warning message inFramesTrackingIntegration(#2704)
Deprecations
- Deprecate Drift
SentryQueryExecutor(#2715)- This will be replace by
SentryQueryInterceptorin the next major v9
- This will be replace by
// Example usage in Sentry Flutter v9
final executor = NativeDatabase.memory().interceptWith(
SentryQueryInterceptor(databaseName: 'your_db_name'),
);
final db = AppDatabase(executor);- Deprecate
autoAppStartandsetAppStartEnd(#2681)