Skip to content

Releases: getsentry/sentry-dart

8.4.0-beta.1

04 Jul 14:26
Compare
Choose a tag to compare
8.4.0-beta.1 Pre-release
Pre-release

Features

  • Add API for pausing/resuming iOS and macOS app hang tracking (#2134)
    • This is useful to prevent the Cocoa SDK from reporting wrongly detected app hangs when the OS shows a system dialog for asking specific permissions.
    • Use SentryFlutter.pauseAppHangTracking() and SentryFlutter.resumeAppHangTracking()
  • Capture total frames, frames delay, slow & frozen frames and attach to spans (#2106)
  • Support WebAssembly compilation (dart2wasm) (#2113)

Deprecated

  • User segment is now deprecated and will be removed in version 9.0.0. Use a custom tag or context instead. (#2119)

Dependencies

8.3.0

17 Jun 15:07
Compare
Choose a tag to compare

Fixes

  • Load contexts integration not setting SentryUser (#2089)
  • Change app start span description from Cold start to Cold Start and Warm start to Warm Start (#2076)
  • Parse PlatformException from details instead of message (#2052)

Dependencies

  • Bump sqflite minimum version from ^2.0.0 to ^2.2.8 (#2075)
    • This is not a breaking change since we are using api internally that is only valid from that version.
  • Bump Cocoa SDK from v8.25.2 to v8.29.0 (#2060, #2092, #2100)
  • Bump Android SDK from v7.9.0 to v7.10.0 (#2090)

8.2.0

14 May 11:10
Compare
Choose a tag to compare

Enhancements

  • Include sentry frames in stacktraces to enable SDK crash detection (#2050)

Fixes

  • Event processor blocking transactions from being sent if autoAppStart is false (#2028)

Features

  • Create app start transaction when no SentryNavigatorObserver is present (#2017)
  • Adds native spans to app start transaction (#2027)
  • Adds app start spans to first transaction (#2009)

Fixes

  • Fix PlatformException title parsing (#2033)

Dependencies

7.20.2

10 May 11:33
Compare
Choose a tag to compare

Fixes

  • Event processor blocking transactions from being sent if autoAppStart is false (#2045)

8.1.0

30 Apr 17:01
52a7052
Compare
Choose a tag to compare

Feature

  • Set snapshot to true if stacktrace is not provided (#2000)
    • If the stacktrace is not provided, the Sentry SDK will fetch the current stacktrace via StackTrace.current and the snapshot will be set to true - this may change the grouping behavior
    • snapshot = true means it's a synthetic exception, reflecting the current state of the thread rather than the stack trace of a real exception

Fixes

  • Timing metric aggregates metrics in the created span (#1994)

Dependencies

  • Bump Cocoa SDK from v8.21.0 to v8.25.0 (#2018)
  • Expand dependency range of package_info_plus to allow an open range starting from version 1 (#2010)

7.20.1

30 Apr 07:19
Compare
Choose a tag to compare

Dependencies

  • Bump Cocoa SDK from v8.21.0 to v8.25.0 (#2018)
  • Expand dependency range of package_info_plus to allow an open range starting from version 1 (#2024)

8.0.0

22 Apr 07:36
Compare
Choose a tag to compare

This release contains breaking changes, please read the changelog carefully.

Changes from the latest v7 release are included in this major release

Breaking Changes

  • Bump iOS minimum deployment target from 11 to 12 (#1821)
  • Mark exceptions not handled by the user as handled: false (#1535)
    • This will affect your release health data, and is therefore considered a breaking change.
  • Refrain from overwriting the span status for unfinished spans (#1577)
    • Older self-hosted sentry instances will drop transactions containing unfinished spans.
  • Do not leak extensions of external classes (#1576)
  • Make hint non-nullable in BeforeSendCallback, BeforeBreadcrumbCall and EventProcessor (#1574)
    • This will affect your callbacks, making this a breaking change.
  • Load Device Contexts from Sentry Java (#1616)
    • Now the device context from Android is available in BeforeSendCallback
  • Set ip_address to {{auto}} by default, even if sendDefaultPII is disabled (#1665)
    • Instead use the "Prevent Storing of IP Addresses" option in the "Security & Privacy" project settings on sentry.io

Features

  • Add support for exception aggregates (#1866)

7.20.0

17 Apr 09:06
Compare
Choose a tag to compare

Build

  • Bump compileSdkVersion to 34 in Gradle buildscripts (#1980)

Features

  • Add textScale(r) value to Flutter context (#1886)

Dependencies

  • Expand dependency range of package_info_plus to include major version 7 (#1984)
  • Bump Android SDK from v7.6.0 to v7.8.0 (#1977)

7.19.0

09 Apr 16:13
Compare
Choose a tag to compare

Features

  • Experimental: Add support for Sentry Developer Metrics (#1940, #1949, #1954, #1958)
    Use the Metrics API to track processing time, download sizes, user signups, and conversion rates and correlate them back to tracing data in order to get deeper insights and solve issues faster. Our API supports counters, distributions, sets, gauges and timers, and it's easy to get started:
    Sentry.metrics()
        .increment(
        'button_login_click', // key
        value: 1.0,
        unit: null,
        tags: {"provider": "e-mail"}
    );
    To learn more about Sentry Developer Metrics, head over to our Dart and Flutter docs page.

Dependencies

  • Expand package_info_plus version range to 6.0.0 (#1948)

Improvements

  • Set sentry_flutter.podspec version from pubspec.yaml (#1941)

7.18.0

13 Mar 17:22
df926cb
Compare
Choose a tag to compare

Features

  • Add TTFD (time to full display), which allows you to measure the time it takes to render the full screen (#1920)
    • Requires using the routing instrumentation.
    • Set enableTimeToFullDisplayTracing = true in your SentryFlutterOptions to enable TTFD
    • Manually report the end of the full display by calling SentryFlutter.reportFullyDisplayed()
    • If not reported within 30 seconds, the span will be automatically finish with the status deadline_exceeded
  • Add TTID (time to initial display), which allows you to measure the time it takes to render the first frame of your screen (#1910)
    • Requires using the routing instrumentation.
    • Introduces two modes:
      • automatic mode is enabled by default for all screens and will yield only an approximation result.
      • manual mode requires manual instrumentation and will yield a more accurate result.
        • To use manual mode, you need to wrap your desired widget: SentryDisplayWidget(child: MyScreen()).
      • You can mix and match both modes in your app.
    • Other significant fixes
      • didPop doesn't trigger a new transaction
      • Change transaction operation name to ui.load instead of navigation
  • Add override captureFailedRequests option (#1931)
    • The dio integration and SentryHttpClient now take an additional captureFailedRequests option.
    • This is useful if you want to disable this option on native and only enable it on dio for example.

Improvements

  • Update root name for navigator observer (#1934)
    • The root name for transactions is now root / instead of root ("/").

Dependencies