Skip to content

8.27.0

Latest

Choose a tag to compare

@sentry-release-bot sentry-release-bot released this 17 Sep 10:55

Warning

iOS native crashes now set mechanism.synthetic, taking the mach/signal name out of the grouping hash. Expect a one-time regrouping as your app adopts this version.

Features

  • Add Session Replay runtime controls to start, stop, and manage recording manually (#6703)

    • Use Sentry.getReplay() to access the active replay and control it at runtime with the same API on iOS, Android, and Web:

      const replay = Sentry.getReplay();
      replay?.start(); // start recording a session replay
      replay?.startBuffering(); // start recording in buffering mode
      replay?.stop(); // stop recording
      replay?.pause(); // pause recording (no-op on Web)
      replay?.resume(); // resume a paused recording (no-op on Web)
      replay?.flush(); // flush the buffered replay to Sentry
  • Add per-class Session Replay masking via maskedViewClasses / unmaskedViewClasses on mobileReplayIntegration (#6725)

  • Add experimental avoidForegroundResumeHang (iOS) to mobileReplayIntegration to work around a fatal App Hang that can occur when Session Replay resumes capture on returning to the foreground with a heavy view hierarchy on screen (#6727)

Fixes

  • Prevent a fatal JavaCallback was already settled crash from getNewScreenTimeToDisplay under rapid navigation on Android (#6722)
  • Mask React Native <Image> in Session Replay on the iOS New Architecture when maskAllImages is enabled (#6726)
  • Background root spans (app-start, expo-updates) no longer overwrite the native propagation context of an active navigation trace (#6720)
  • Honor the host app's pinned ndkVersion on Android instead of letting AGP download its own default NDK for the module's native code (#6724)

Dependencies