|
1 | 1 | # Changelog |
2 | 2 |
|
3 | | -## Unreleased |
| 3 | +## 8.10.1 |
| 4 | + |
| 5 | +### Fixes |
| 6 | + |
| 7 | +- Android build error when compiling ([#2397](https://github.com/getsentry/sentry-dart/pull/2397)) |
| 8 | + |
| 9 | +## 8.10.0 |
4 | 10 |
|
5 | 11 | ### Features |
6 | 12 |
|
| 13 | +- Emit `transaction.data` inside `contexts.trace.data` ([#2284](https://github.com/getsentry/sentry-dart/pull/2284)) |
| 14 | +- Blocking app starts span if "appLaunchedInForeground" is false. (Android only) ([#2291](https://github.com/getsentry/sentry-dart/pull/2291)) |
| 15 | +- Replay: user-configurable masking (redaction) for widget classes and specific widget instances. ([#2324](https://github.com/getsentry/sentry-dart/pull/2324)) |
| 16 | + Some examples of the configuration: |
| 17 | + |
| 18 | + ```dart |
| 19 | + await SentryFlutter.init( |
| 20 | + (options) { |
| 21 | + ... |
| 22 | + options.experimental.replay.mask<IconButton>(); |
| 23 | + options.experimental.replay.unmask<Image>(); |
| 24 | + options.experimental.replay.maskCallback<Text>( |
| 25 | + (Element element, Text widget) => |
| 26 | + (widget.data?.contains('secret') ?? false) |
| 27 | + ? SentryMaskingDecision.mask |
| 28 | + : SentryMaskingDecision.continueProcessing); |
| 29 | + }, |
| 30 | + appRunner: () => runApp(MyApp()), |
| 31 | + ); |
| 32 | + ``` |
| 33 | + |
| 34 | + Also, you can wrap any of your widgets with `SentryMask()` or `SentryUnmask()` widgets to mask/unmask them, respectively. For example: |
| 35 | + |
| 36 | + ```dart |
| 37 | + SentryUnmask(Text('Not secret at all')); |
| 38 | + ``` |
| 39 | + |
| 40 | +- Support `captureFeedback` ([#2230](https://github.com/getsentry/sentry-dart/pull/2230)) |
| 41 | + - Deprecated `Sentry.captureUserFeedback`, use `captureFeedback` instead. |
| 42 | + - Deprecated `Hub.captureUserFeedback`, use `captureFeedback` instead. |
| 43 | + - Deprecated `SentryClient.captureUserFeedback`, use `captureFeedback` instead. |
| 44 | + - Deprecated `SentryUserFeedback`, use `SentryFeedback` instead. |
| 45 | +- Add `SentryFeedbackWidget` ([#2240](https://github.com/getsentry/sentry-dart/pull/2240)) |
| 46 | + |
| 47 | + ```dart |
| 48 | + Navigator.push( |
| 49 | + context, |
| 50 | + MaterialPageRoute( |
| 51 | + builder: (context) => SentryFeedbackWidget(associatedEventId: id), |
| 52 | + fullscreenDialog: true, |
| 53 | + ), |
| 54 | + ); |
| 55 | + ``` |
| 56 | + |
7 | 57 | - Add screenshot to `SentryFeedbackWidget` ([#2369](https://github.com/getsentry/sentry-dart/pull/2369)) |
8 | 58 | - Use `SentryFlutter.captureScreenshot` to create a screenshot attachment |
9 | 59 | - Call `SentryFeedbackWidget` with this attachment to add it to the user feedback |
|
29 | 79 |
|
30 | 80 | ### Enhancements |
31 | 81 |
|
| 82 | +- Avoid sending too many empty client reports when Http Transport is used ([#2380](https://github.com/getsentry/sentry-dart/pull/2380)) |
32 | 83 | - Cache parsed DSN ([#2365](https://github.com/getsentry/sentry-dart/pull/2365)) |
33 | 84 | - Handle backpressure earlier in pipeline ([#2371](https://github.com/getsentry/sentry-dart/pull/2371)) |
34 | 85 | - Drops max un-awaited parallel tasks earlier, so event processors & callbacks are not executed for them. |
35 | 86 | - Change by setting `SentryOptions.maxQueueSize`. Default is 30. |
| 87 | +- Use native spotlight integrations on Flutter Android, iOS, macOS ([#2285](https://github.com/getsentry/sentry-dart/pull/2285)) |
| 88 | +- Improve app start integration ([#2266](https://github.com/getsentry/sentry-dart/pull/2266)) |
| 89 | + - Fixes pendingTimer during tests ([#2103](https://github.com/getsentry/sentry-dart/issues/2103)) |
| 90 | + - Fixes transaction slows app start ([#2233](https://github.com/getsentry/sentry-dart/issues/2233)) |
| 91 | +- Only store slow and frozen frames for frame delay calculation ([#2337](https://github.com/getsentry/sentry-dart/pull/2337)) |
| 92 | +- Add ReplayIntegration to the integrations list on events when replay is enabled. ([#2349](https://github.com/getsentry/sentry-dart/pull/2349)) |
| 93 | + |
| 94 | +### Fixes |
| 95 | + |
| 96 | +- App lag with frame tracking enabled when span finishes after a long time ([#2311](https://github.com/getsentry/sentry-dart/pull/2311)) |
| 97 | +- Only start frame tracking if we receive valid display refresh data ([#2307](https://github.com/getsentry/sentry-dart/pull/2307)) |
| 98 | +- Rounding error used on frames.total and reject frame measurements if frames.total is less than frames.slow or frames.frozen ([#2308](https://github.com/getsentry/sentry-dart/pull/2308)) |
| 99 | +- iOS replay integration when only `onErrorSampleRate` is specified ([#2306](https://github.com/getsentry/sentry-dart/pull/2306)) |
| 100 | +- Fix TTID timing issue ([#2326](https://github.com/getsentry/sentry-dart/pull/2326)) |
| 101 | +- TTFD fixes |
| 102 | + - Start missing TTFD for root screen transaction ([#2332](https://github.com/getsentry/sentry-dart/pull/2332)) |
| 103 | + - Match TTFD to TTID end timespan if TTFD is unfinished when user navigates to another screen ([#2347](https://github.com/getsentry/sentry-dart/pull/2347)) |
| 104 | + - TTFD measurements should only be added for successful TTFD spans ([#2348](https://github.com/getsentry/sentry-dart/pull/2348)) |
| 105 | + - Error when calling `SentryFlutter.reportFullyDisplayed()` twice ([#2339](https://github.com/getsentry/sentry-dart/pull/2339)) |
| 106 | +- Accessing invalid json fields from `fetchNativeAppStart` should return null ([#2340](https://github.com/getsentry/sentry-dart/pull/2340)) |
| 107 | + |
| 108 | +### Deprecate |
| 109 | + |
| 110 | +- Metrics API ([#2312](https://github.com/getsentry/sentry-dart/pull/2312)) |
| 111 | + - Learn more: https://sentry.zendesk.com/hc/en-us/articles/26369339769883-Metrics-Beta-Coming-to-an-End |
36 | 112 |
|
| 113 | +### Dependencies |
| 114 | + |
| 115 | +- Bump Native SDK from v0.7.10 to v0.7.12 ([#2390](https://github.com/getsentry/sentry-dart/pull/2390)) |
| 116 | + - [changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#0712) |
| 117 | + - [diff](https://github.com/getsentry/sentry-native/compare/0.7.10...0.7.12) |
| 118 | +- Bump Android SDK from v7.15.0 to v7.16.0 ([#2373](https://github.com/getsentry/sentry-dart/pull/2373)) |
| 119 | + - [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#7160) |
| 120 | + - [diff](https://github.com/getsentry/sentry-java/compare/7.15.0...7.16.0) |
| 121 | +- Bump Cocoa SDK from v8.37.0 to v8.40.1 ([#2394](https://github.com/getsentry/sentry-dart/pull/2394)) |
| 122 | + - [changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#8401) |
| 123 | + - [diff](https://github.com/getsentry/sentry-cocoa/compare/8.37.0...8.40.1) |
| 124 | + |
37 | 125 | ## 8.10.0-beta.2 |
38 | 126 |
|
39 | 127 | ### Fixes |
|
0 commit comments