sentry_flutter 5.0.0
sentry_flutter: ^5.0.0 copied to clipboard

Sentry SDK for Flutter. This package aims to support different Flutter targets by relying on the many platforms supported by Sentry with native SDKs.

5.0.0 #

  • Sound null safety
  • Fix: event.origin and event.environment tags have wrong value for iOS (#365) and (#369)
  • Fix: Fix deprecated registrar.messenger call in SentryFlutterWeb (#364)
  • Fix: Enable breadcrumb recording mechanism based on platform (#366)
  • Feat: Send default PII options (#360)
  • Bump: sentry-cocoa to v6.2.1 (#360)
  • Feat: Migration from package_info to package_info_plus plugin (#370)
  • Fix: Set SentryOptions.debug in sentry (#376)
  • Fix: Read all environment variables in sentry (#375)

Breaking Changes: #

  • Return type of Sentry.close() changed from void to Future<void> and Integration.close() changed from void to FutureOr<void> (#395)
  • Remove deprecated member enableLifecycleBreadcrumbs. Use enableAppLifecycleBreadcrumbs instead. (#366)

4.1.0-nullsafety.1 #

  • Bump: sentry-android to v4.3.0 (#343)
  • Fix: Multiple FlutterError.onError calls in FlutterErrorIntegration (#345)
  • Fix: Pass hint to EventProcessors (#356)
  • Fix: EventProcessors were not dropping events when returning null (#353)

Breaking Changes: #

  • Fix: Plugin Registrant class moved to barrel file (#358)
    • This changed the import from import 'package:sentry_flutter/src/sentry_flutter_web.dart'; to import 'package:sentry_flutter/sentry_flutter_web.dart';
    • This could lead to breaking changes. Typically it shouldn't because the referencing file is auto-generated.
  • Fix: Prefix classes with Sentry (#357)
    • A couple of classes were often conflicting with user's code. Thus this change renames the following classes:
      • App -> SentryApp
      • Browser -> SentryBrowser
      • Device -> SentryDevice
      • Gpu -> SentryGpu
      • Integration -> SentryIntegration
      • Message -> SentryMessage
      • OperatingSystem -> SentryOperatingSystem
      • Request -> SentryRequest
      • User -> SentryUser
      • Orientation -> SentryOrientation

4.1.0-nullsafety.0 #

  • Fix: Do not append stack trace to the exception if there are no frames
  • Fix: Empty DSN disables the SDK and runs the App
  • Feat: sentry and sentry_flutter null-safety thanks to @ueman and @fzyzcjy

4.0.6 #

  • Fix: captureMessage defaults SentryLevel to info
  • Fix: SentryEvent.throwable returns the unwrapped throwable instead of the throwableMechanism
  • Feat: Support enableNativeCrashHandling on iOS

4.0.5 #

  • Bump: sentry-android to v4.0.0
  • Fix: Pana Flutter upper bound deprecation
  • Fix: sentry_flutter static analysis (pana) using stable version

4.0.4 #

  • Fix: Call WidgetsFlutterBinding.ensureInitialized() within runZoneGuarded

4.0.3 #

  • Fix: Auto session tracking start on iOS #274
  • Bump: Sentry-cocoa to 6.1.4

4.0.2 #

  • Fix: Mark session as errored in iOS #270
  • Fix: Pass auto session tracking interval to iOS
  • Fix: Deprecated binaryMessenger (MethodChannel member) for Flutter Web
  • Ref: Make WidgetsFlutterBinding.ensureInitialized(); the first thing the Sentry SDK calls.
  • Bump: Sentry-cocoa to 6.0.12
  • Feat: Respect FlutterError silent flag #248
  • Bump: Android SDK to v3.2.1 #273

4.0.1 #

  • Ref: Changed category of Flutter lifecycle tracking #240
  • Fix: Envelope length should be based on the UTF8 array instead of String length

4.0.0 #

Release of Sentry's new SDK for Dart/Flutter.

New features not offered by <= v4.0.0:

Dart SDK #

Flutter SDK #

  • The Flutter SDK is built on top of the Dart SDK, so it includes all the available features, plus
  • Flutter SDK docs.
  • Automatic NavigatorObserver Breadcrumbs
  • Automatic Device's Breadcrumbs through the Android and iOS SDKs or via Sentry's WidgetsBindingObserver wrapper
  • No boilerplate for FlutterError.onError
  • All events are enriched with Contexts's data, this includes Device's, OS, App info, etc...
  • Offline caching
  • Release health
  • Captures not only Dart and Flutter errors, but also errors caused on the native platforms, Like Kotlin, Java, C and C++ for Android and Swift, ObjC, C, C++ for iOS
  • Supports Fatal crashes, Event is going to be sent on App's restart
  • Supports split-debug-info for Android only
  • Flutter Android, iOS and limited support for Flutter Web

Improvements:

  • Feat: Added a copyWith method to all the protocol classes

Packages were released on sentry pubdev and sentry_flutter pubdev

Sentry Self Hosted Compatibility #

  • Since version 4.0.0 of the sentry_flutter, Sentry's version >= v20.6.0 is required. This only applies to on-premise Sentry, if you are using sentry.io no action is needed.

We'd love to get feedback.

4.0.0-beta.2 #

  • Ref: Remove duplicated attachStackTrace field
  • Fix: Flutter Configurations should be able to mutate the SentryFlutterOptions
  • Enhancement: Add SentryWidgetsBindingObserver, an Integration that captures certain window and device events.
  • Enhancement: Set options.environment on SDK init based on the flags (kReleaseMode, kDebugMode, kProfileMode or SENTRY_ENVIRONMENT).
  • Feature: SentryHttpClient to capture HTTP requests as breadcrumbs
  • Ref: Only assign non-null option values in Android native integration in order preserve default values
  • Enhancement: Add 'attachThreads' in options. When enabled, threads are attached to all logged events for Android
  • Ref: Rename typedef Logger to SentryLogger to prevent name clashes with logging packages
  • Fix: Scope Event processors should be awaited
  • Fix: Package usage as git dependency

Breaking changes #

  • Logger typedef is renamed to SentryLogger
  • attachStackTrace is renamed to attachStacktrace

4.0.0-beta.1 #

  • Fix: StackTrace frames with 'package' uri.scheme are inApp by default #185
  • Fix: Missing App's StackTrace frames for Flutter errors
  • Enhancement: Add isolateErrorIntegration and runZonedGuardedIntegration to default integrations in sentry-dart
  • Fix: Breadcrumb list is a plain list instead of a values list #201
  • Ref: Remove deprecated classes (Flutter Plugin for Android) and cleaning up #186
  • Fix: Handle immutable event lists and maps
  • Fix: NDK integration was being disabled by a typo
  • Fix: Missing toList for debug meta #192
  • Enhancement: NavigationObserver to record Breadcrumbs for navigation events #197
  • Fix: Integrations should be closeable
  • Feat: Support split-debug-info for Android #191
  • Fix: the event payload must never serialize null or empty fields
  • Ref: Make hints optional

Breaking changes #

  • Sentry.init and SentryFlutter.init have an optional callback argument which runs the host App after Sentry initialization.
  • Integration is an Interface instead of a pure Function
  • Hints are optional arguments
  • Sentry Dart SDK adds an IsolateError handler by default

4.0.0-alpha.2 #

  • Enhancement: Contexts were added to the Scope #154
  • Fix: App. would hang if debug mode was enabled and refactoring ##157
  • Enhancement: Sentry Protocol v7
  • Enhancement: Added missing Protocol fields, Request, SentryStackTrace...) #155
  • Feat: Added attachStackTrace options to attach stack traces on captureMessage calls
  • Feat: Flutter SDK has the Native SDKs embedded (Android and Apple) #158

Breaking changes #

  • Sentry.init returns a Future.
  • Dart min. SDK is 2.8.0
  • Flutter min. SDK is 1.17.0
  • Timestamp has millis precision.
  • For better groupping, add your own package to the addInAppInclude list, e.g. options.addInAppInclude('sentry_flutter_example');
  • A few classes of the Protocol were renamed.

Sentry Self Hosted Compatibility #

  • Since version 4.0.0 of the sentry_flutter, Sentry version >= v20.6.0 is required. This only applies to on-premise Sentry, if you are using sentry.io no action is needed.

package:sentry changelog #

4.0.0-alpha.1 #

First Release of Sentry's new SDK for Dart/Flutter.

New features not offered by <= v4.0.0:

  • Sentry's Unified API.
  • Complete Sentry Protocol available.
  • Docs and Migration is under review on this PR
  • For all the breaking changes follow this PR, they'll be soon available on the Migration page.

Packages were released on pubdev

We'd love to get feedback and we'll work in getting the GA 4.0.0 out soon. Until then, the stable SDK offered by Sentry is at version 3.0.1

3.0.1 #

  • Add support for Contexts in Sentry events

3.0.0+1 #

  • pubspec.yaml and example code clean-up.

3.0.0 #

  • Support Web
    • SentryClient from package:sentry/sentry.dart with conditional import
    • SentryBrowserClient for web from package:sentry/browser_client.dart
    • SentryIOClient for VM and Flutter from package:sentry/io_client.dart

2.3.1 #

  • Support non-standard port numbers and paths in DSN URL.

2.3.0 #

2.2.0 #

  • Add a stackFrameFilter argument to SentryClient's capture method (96be842).
  • Clean-up code using pre-Dart 2 API (91c7706, b01ebf8).

2.1.1 #

2.1.0 #

  • Support DNS format without secret key.
  • Remove dependency on package:quiver.
  • The clock argument to SentryClient constructor should now be ClockProvider (but still accepts Clock for backwards compatibility).

2.0.2 #

  • Add support for user context in Sentry events.

2.0.1 #

  • Invert stack frames to be compatible with Sentry's default culprit detection.

2.0.0 #

  • Fixed deprecation warnings for Dart 2
  • Refactored tests to work with Dart 2

1.0.0 #

  • first and last Dart 1-compatible release (we may fix bugs on a separate branch if there's demand)
  • fix code for Dart 2

0.0.6 #

  • use UTC in the timestamp field

0.0.5 #

  • remove sub-seconds from the timestamp

0.0.4 #

  • parse and report async gaps in stack traces

0.0.3 #

  • environment attributes
  • auto-generate event_id and timestamp for events

0.0.2 #

  • parse and report stack traces
  • use x-sentry-error HTTP response header
  • gzip outgoing payloads by default

0.0.1 #

  • basic ability to send exception reports to Sentry.io
100
likes
130
pub points
97%
popularity

Publisher

sentry.io

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
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

flutter, flutter_web_plugins, package_info_plus, sentry

More

Packages that depend on sentry_flutter