Skip to content

8.11.0-beta.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@getsentry-bot getsentry-bot released this 21 Nov 16:38

Features

  • Windows native error & obfuscation support (#2286, #2426)
  • Improve app start measurements by using addTimingsCallback instead of addPostFrameCallback to determine app start end (#2405)
    • ⚠️ This change may result in reporting of shorter app start durations
  • Improve frame tracking accuracy (#2372)
    • Introduces SentryWidgetsFlutterBinding that tracks a frame starting from handleBeginFrame and ending in handleDrawFrame, this is approximately the buildDuration 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:
    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)
  • Remove sentry frames if SDK falls back to current stack trace (#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

  • Apply default IP address ({{auto}}) to transactions (#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