Skip to content

Releases: getsentry/sentry-dart

9.0.0-beta.1

24 Apr 12:45
Compare
Choose a tag to compare
9.0.0-beta.1 Pre-release
Pre-release

Features

  • Properly generates and links trace IDs for errors and spans (#2869, #2861):
    • With SentryNavigatorObserver - each navigation event starts a new trace.
    • Without SentryNavigatorObserver on 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.
  • 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://example@sentry.io/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 const constructors anymore.
    • The copyWith and clone methods of SDK classes were deprecated.
  • Set log level to warning by default when debug = 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
  • Parent-child relationship for the PlatformExceptions and Cause (#2803, #2858)
    • Improves and changes exception grouping. To opt in, set groupExceptions=true
  • Set anrEnabled enabled per default (#2878)

API Changes

  • Update naming of LoadImagesListIntegration to LoadNativeDebugImagesIntegration (#2833)
  • Remove other from SentryRequest (#2879)

Dependencies

8.14.2 (Stable)

22 Apr 09:40
Compare
Choose a tag to compare

Improvements

  • Improve performance of frames tracking (#2854)
  • Clean up getSpan() log (#2865)

Fixes

  • options.diagnosticLevel not affecting logs (#2856)

9.0.0-alpha.2

25 Mar 12:51
Compare
Choose a tag to compare
9.0.0-alpha.2 Pre-release
Pre-release

Features

  • Add support for Flutter Web release health (#2794)
    • Requires using SentryNavigatorObserver;

Dependencies

Behavioral changes

  • Set sentry-native backend to crashpad by default and breakpad for Windows ARM64 (#2791)
    • Setting the SENTRY_NATIVE_BACKEND environment variable will override the defaults.
  • Remove renderer from flutter_context (#2751)

API changes

  • Move replay and privacy from experimental to options (#2755)
  • Cleanup platform mocking (#2730)
    • The PlatformChecker was renamed to RuntimeChecker
    • Moved PlatformChecker.platform to options.platform

8.14.1 (Stable)

24 Mar 14:09
Compare
Choose a tag to compare

Fixes

  • Improve platform memory collection on windows/linux (#2798)
    • Fixes an issue where total memory on windows was not read.
    • Free memory collection was removed on windows/linux, due to performance issues.
  • Fix adding runtime to contexts (#2813)

Dependencies

8.14.0

12 Mar 13:03
Compare
Choose a tag to compare

This release fixes an issue where Cold starts can be incorrectly reported as Warm starts on Android.

Behavioral changes

  • ⚠️ Auto IP assignment for SentryUser is now guarded by sendDefaultPii (#2726)
    • If you rely on Sentry automatically processing the IP address of the user, set options.sendDefaultPii = true or manually set the IP address of the SentryUser to {{auto}}
  • Adding the device name to Contexts is now guarded by sendDefaultPii (#2741)
    • Set options.sendDefaultPii = true if you want to have the device name reported
  • 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 loadDebugImagesForAddresses API for Android (#2706)
    • This reduces the envelope size and data transferred across method channels
    • If debug images received by loadDebugImagesForAddresses are empty, the SDK loads all debug images as fallback
  • Disable ScreenshotIntegration, WidgetsBindingIntegration and SentryWidget in multi-view apps #2366 (#2366)

Fixes

  • Pass missing captureFailedRequests param to FailedRequestInterceptor (#2744)
  • Bind root screen transaction to scope (#2756)
  • Reference to SentryWidgetsFlutterBinding in warning message in FramesTrackingIntegration (#2704)

Deprecations

  • Deprecate Drift SentryQueryExecutor (#2715)
    • This will be replace by SentryQueryInterceptor in the next major v9
// Example usage in Sentry Flutter v9
final executor = NativeDatabase.memory().interceptWith(
  SentryQueryInterceptor(databaseName: 'your_db_name'),
);

final db = AppDatabase(executor);
  • Deprecate autoAppStart and setAppStartEnd (#2681)

Dependencies

8.13.3 (Stable)

11 Mar 17:15
Compare
Choose a tag to compare

This release fixes an issue where Cold starts can be incorrectly reported as Warm starts on Android.

Dependencies

9.0.0-alpha.1

21 Feb 12:29
Compare
Choose a tag to compare
9.0.0-alpha.1 Pre-release
Pre-release

Breaking changes

  • Remove SentryDisplayWidget and manual TTID implementation (#2668)
  • Increase minimum SDK version requirements to Dart v3.5.0 and Flutter v3.24.0 (#2643)
  • Remove screenshot option attachScreenshotOnlyWhenResumed (#2664)
  • Remove deprecated beforeScreenshot (#2662)
  • Remove old user feedback api (#2686)
  • Remove deprecated loggers (#2685)
  • Remove user segment (#2687)
  • Enable JS SDK native integration by default (#2688)
  • Remove enableTracing (#2695)
  • Remove options.autoAppStart and setAppStartEnd (#2680)
  • Bump Drift min version to 2.24.0 and use QueryInterceptor instead of QueryExecutor (#2679)
  • Add hint for transactions (#2675)
    • BeforeSendTransactionCallback now has a Hint parameter
  • Remove dart:html usage in favour of package:web (#2710)
  • Remove max response body size (#2709)
    • Responses are now only attached if size is below ~0.15mb
    • Responses are attached to the Hint object, which can be read in beforeSend/beforeSendTransaction callbacks via hint.response.
    • For now, only the dio integration is supported.
  • Enable privacy masking for screenshots by default (#2728)

Enhancements

  • Replay: improve Android native interop performance by using JNI (#2670)

Dependencies

8.14.0-beta.1

20 Feb 18:33
Compare
Choose a tag to compare
8.14.0-beta.1 Pre-release
Pre-release

Behavioral changes

  • ⚠️ Auto IP assignment for SentryUser is now guarded by sendDefaultPii (#2726)
    • If you rely on Sentry automatically processing the IP address of the user, set options.sendDefaultPii = true or manually set the IP address of the SentryUser to {{auto}}
  • Adding the device name to Contexts is now guarded by sendDefaultPii (#2741)
    • Set options.sendDefaultPii = true if you want to have the device name reported

Features

  • Disable ScreenshotIntegration, WidgetsBindingIntegration and SentryWidget in multi-view apps #2366 (#2366)

Enhancements

  • Use loadDebugImagesForAddresses API for Android (#2706)
    • This reduces the envelope size and data transferred across method channels
    • If debug images received by loadDebugImagesForAddresses are empty, the SDK loads all debug images as fallback

Fixes

  • Reference to SentryWidgetsFlutterBinding in warning message in FramesTrackingIntegration (#2704)

Deprecations

  • Deprecate Drift SentryQueryExecutor (#2715)
    • This will be replace by SentryQueryInterceptor in the next major v9
// Example usage in Sentry Flutter v9
final executor = NativeDatabase.memory().interceptWith(
  SentryQueryInterceptor(databaseName: 'your_db_name'),
);

final db = AppDatabase(executor);
  • Deprecate autoAppStart and setAppStartEnd (#2681)

Other

  • 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.

Dependencies

8.13.2

20 Feb 16:12
Compare
Choose a tag to compare

Warning

This release contains an issue where Cold starts can be incorrectly reported as Warm starts on Android. We recommend staying on version 8.12.0 or updating to 8.13.3 if you use this feature on Android.
See issue #2769 for more details.

Fixes

  • build_web_compiler error (#2736)
    • Use if (dart.library.html) instead of if (dart.html) for imports

8.13.1

19 Feb 17:17
Compare
Choose a tag to compare

Warning

This release contains an issue where Cold starts can be incorrectly reported as Warm starts on Android. We recommend staying on version 8.12.0 or updating to 8.13.3 if you use this feature on Android.
See issue #2769 for more details.

Fixes

  • Replay video interruption if a navigation breadcrumb is missing to route info (#2720)

Dependencies