Skip to content

Commit

Permalink
Merge pull request #2474 from getsentry/rel-8.11.0
Browse files Browse the repository at this point in the history
8.11.0 release
  • Loading branch information
vaind authored Dec 10, 2024
2 parents c3d30f4 + 161a1d5 commit 0095354
Show file tree
Hide file tree
Showing 20 changed files with 137 additions and 27 deletions.
110 changes: 110 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,116 @@

- Masking semi-transparent widgets ([#2472](https://github.com/getsentry/sentry-dart/pull/2472))

## 8.11.0

### Features

- Support for screenshot PII content masking ([#2361](https://github.com/getsentry/sentry-dart/pull/2361))
By default, masking is enabled for SessionReplay. To also enable it for screenshots captured with events, you can specify `options.experimental.privacy`:

```dart
await SentryFlutter.init(
(options) {
...
// the defaults are:
options.experimental.privacy.maskAllText = true;
options.experimental.privacy.maskAllImages = true;
options.experimental.privacy.maskAssetImages = false;
// you cal also set up custom masking, for example:
options.experimental.privacy.mask<WebView>();
},
appRunner: () => runApp(MyApp()),
);
```

Actually, just accessing this field will cause it to be initialized with the default settings to mask all text and images:

```dart
await SentryFlutter.init(
(options) {
...
// this has a side-effect of creating the default privacy configuration, thus enabling Screenshot masking:
options.experimental.privacy;
},
appRunner: () => runApp(MyApp()),
);
```

- Linux native error & obfuscation support ([#2431](https://github.com/getsentry/sentry-dart/pull/2431))
- Improve Device context on plain Dart and Flutter desktop apps ([#2441](https://github.com/getsentry/sentry-dart/pull/2441))
- Add debounce to capturing screenshots ([#2368](https://github.com/getsentry/sentry-dart/pull/2368))
- Per default, screenshots are debounced for 2 seconds.
- If you need more granular screenshots, you can opt out of debouncing:

```dart
await SentryFlutter.init((options) {
options.beforeCaptureScreenshot = (event, hint, debounce) {
if (debounce) {
return true; // Capture screenshot even if the SDK wants to debounce it.
} else {
// check event and hint
...
}
};
});
```
- Replace deprecated `BeforeScreenshotCallback` with new `BeforeCaptureCallback`.
- Windows native error & obfuscation support ([#2286](https://github.com/getsentry/sentry-dart/pull/2286), [#2426](https://github.com/getsentry/sentry-dart/pull/2426))
- Improve app start measurements by using `addTimingsCallback` instead of `addPostFrameCallback` to determine app start end ([#2405](https://github.com/getsentry/sentry-dart/pull/2405))
- ⚠️ This change may result in reporting of shorter app start durations
- Improve frame tracking accuracy ([#2372](https://github.com/getsentry/sentry-dart/pull/2372))
- Introduces `SentryWidgetsFlutterBinding` that tracks a frame starting from `handleBeginFrame` and ending in `handleDrawFrame`, this is approximately the [buildDuration](https://api.flutter.dev/flutter/dart-ui/FrameTiming/buildDuration.html) time
- By default, `SentryFlutter.init()` automatically initializes `SentryWidgetsFlutterBinding` through the `WidgetsFlutterBindingIntegration`
- If you need to initialize the binding before `SentryFlutter.init`, use `SentryWidgetsFlutterBinding.ensureInitialized` instead of `WidgetsFlutterBinding.ensureInitialized`:
```dart
void main() async {
// Replace WidgetsFlutterBinding.ensureInitialized()
SentryWidgetsFlutterBinding.ensureInitialized();
await SentryFlutter.init(...);
runApp(MyApp());
}
```
- ⚠️ Frame tracking will be disabled if a different binding is used
### Enhancements
- Only send debug images referenced in the stacktrace for events ([#2329](https://github.com/getsentry/sentry-dart/pull/2329))
- Remove `sentry` frames if SDK falls back to current stack trace ([#2351](https://github.com/getsentry/sentry-dart/pull/2351))
- Flutter doesn't always provide stack traces for unhandled errors - this is normal Flutter behavior
- When no stack trace is provided (in Flutter errors, `captureException`, or `captureMessage`):
- SDK creates a synthetic trace using `StackTrace.current`
- Internal SDK frames are removed to reduce noise
- Original stack traces (when provided) are left unchanged
### Fixes
- Catch errors thrown during `handleBeginFrame` and `handleDrawFrame` ([#2446](https://github.com/getsentry/sentry-dart/pull/2446))
- OS & device contexts missing on Windows ([#2439](https://github.com/getsentry/sentry-dart/pull/2439))
- Native iOS/macOS SDK session didn't start after Flutter hot-restart ([#2452](https://github.com/getsentry/sentry-dart/pull/2452))
- Kotlin 2.1.0 compatibility on Android, bump Kotlin language version from `1.4` to `1.6` ([#2456](https://github.com/getsentry/sentry-dart/pull/2456))
- Apply default IP address (`{{auto}}`) to transactions ([#2395](https://github.com/getsentry/sentry-dart/pull/2395))
- Previously, transactions weren't getting the default IP address when user context was loaded
- Now consistently applies default IP address to both events and transactions when:
- No user context exists
- User context exists but IP address is null
### Dependencies
- Bump Cocoa SDK from v8.40.1 to v8.41.0 ([#2442](https://github.com/getsentry/sentry-dart/pull/2442))
- [changelog](https://github.com/getsentry/sentry-cocoa/blob/main/CHANGELOG.md#8410)
- [diff](https://github.com/getsentry/sentry-cocoa/compare/8.40.1...8.41.0)
- Bump Android SDK from v7.16.0 to v7.18.1 ([#2408](https://github.com/getsentry/sentry-dart/pull/2408), [#2419](https://github.com/getsentry/sentry-dart/pull/2419), [#2457](https://github.com/getsentry/sentry-dart/pull/2457))
- [changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md#7181)
- [diff](https://github.com/getsentry/sentry-java/compare/7.16.0...7.18.1)
- Bump Native SDK from v0.7.12 to v0.7.15 ([#2430](https://github.com/getsentry/sentry-dart/pull/2430))
- [changelog](https://github.com/getsentry/sentry-native/blob/master/CHANGELOG.md#0715)
- [diff](https://github.com/getsentry/sentry-native/compare/0.7.12...0.7.15)
## 8.11.0-beta.2
### Features
Expand Down
2 changes: 1 addition & 1 deletion dart/lib/src/version.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
library version;

/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

String sdkName(bool isWeb) => isWeb ? _browserSdkName : _ioSdkName;

Expand Down
2 changes: 1 addition & 1 deletion dart/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: sentry
version: 8.11.0-beta.2
version: 8.11.0
description: >
A crash reporting library for Dart that sends crash reports to Sentry.io.
This library supports Dart VM and Web. For Flutter consider sentry_flutter instead.
Expand Down
2 changes: 1 addition & 1 deletion dio/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_dio';
4 changes: 2 additions & 2 deletions dio/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_dio
description: An integration which adds support for performance tracing for the Dio package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/dart/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -19,7 +19,7 @@ platforms:

dependencies:
dio: ^5.0.0
sentry: 8.11.0-beta.2
sentry: 8.11.0

dev_dependencies:
meta: ^1.3.0
Expand Down
2 changes: 1 addition & 1 deletion drift/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_drift';
4 changes: 2 additions & 2 deletions drift/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_drift
description: An integration which adds support for performance tracing for the drift package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/flutter/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -17,7 +17,7 @@ platforms:
web:

dependencies:
sentry: 8.11.0-beta.2
sentry: 8.11.0
meta: ^1.3.0
drift: ^2.13.0

Expand Down
2 changes: 1 addition & 1 deletion file/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_file';
4 changes: 2 additions & 2 deletions file/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_file
description: An integration which adds support for performance tracing for dart.io.File.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/dart/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -17,7 +17,7 @@ platforms:
windows:

dependencies:
sentry: 8.11.0-beta.2
sentry: 8.11.0
meta: ^1.3.0

dev_dependencies:
Expand Down
2 changes: 1 addition & 1 deletion flutter/example/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_flutter_example
description: Demonstrates how to use the sentry_flutter plugin.
version: 8.11.0-beta.2
version: 8.11.0

publish_to: 'none' # Remove this line if you wish to publish to pub.dev

Expand Down
2 changes: 1 addition & 1 deletion flutter/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The default SDK name reported to Sentry.io in the submitted events.
const String sdkName = 'sentry.dart.flutter';
4 changes: 2 additions & 2 deletions flutter/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: sentry_flutter
version: 8.11.0-beta.2
version: 8.11.0
description: Sentry SDK for Flutter. This package aims to support different Flutter targets by relying on the many platforms supported by Sentry with native SDKs.
homepage: https://docs.sentry.io/platforms/flutter/
repository: https://github.com/getsentry/sentry-dart
Expand All @@ -23,7 +23,7 @@ dependencies:
sdk: flutter
flutter_web_plugins:
sdk: flutter
sentry: 8.11.0-beta.2
sentry: 8.11.0
package_info_plus: '>=1.0.0'
meta: ^1.3.0
ffi: ^2.0.0
Expand Down
2 changes: 1 addition & 1 deletion hive/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_hive';
4 changes: 2 additions & 2 deletions hive/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_hive
description: An integration which adds support for performance tracing for the hive package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/flutter/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -17,7 +17,7 @@ platforms:
web:

dependencies:
sentry: 8.11.0-beta.2
sentry: 8.11.0
hive: ^2.2.3
meta: ^1.3.0

Expand Down
2 changes: 1 addition & 1 deletion isar/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_isar';
4 changes: 2 additions & 2 deletions isar/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_isar
description: An integration which adds support for performance tracing for the isar package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/flutter/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -20,7 +20,7 @@ platforms:
dependencies:
isar: ^3.1.0
isar_flutter_libs: ^3.1.0 # contains Isar Core
sentry: 8.11.0-beta.2
sentry: 8.11.0
meta: ^1.3.0
path: ^1.8.3

Expand Down
2 changes: 1 addition & 1 deletion logging/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_logging';
4 changes: 2 additions & 2 deletions logging/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_logging
description: An integration which adds support for recording log from the logging package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/dart/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -19,7 +19,7 @@ platforms:

dependencies:
logging: ^1.0.0
sentry: 8.11.0-beta.2
sentry: 8.11.0

dev_dependencies:
lints: '>=2.0.0'
Expand Down
2 changes: 1 addition & 1 deletion sqflite/lib/src/version.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/// The SDK version reported to Sentry.io in the submitted events.
const String sdkVersion = '8.11.0-beta.2';
const String sdkVersion = '8.11.0';

/// The package name reported to Sentry.io in the submitted events.
const String packageName = 'pub:sentry_sqflite';
4 changes: 2 additions & 2 deletions sqflite/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: sentry_sqflite
description: An integration which adds support for performance tracing for the sqflite package.
version: 8.11.0-beta.2
version: 8.11.0
homepage: https://docs.sentry.io/platforms/flutter/
repository: https://github.com/getsentry/sentry-dart
issue_tracker: https://github.com/getsentry/sentry-dart/issues
Expand All @@ -15,7 +15,7 @@ platforms:
macos:

dependencies:
sentry: 8.11.0-beta.2
sentry: 8.11.0
sqflite: ^2.2.8
sqflite_common: ^2.0.0
meta: ^1.3.0
Expand Down

0 comments on commit 0095354

Please sign in to comment.